При обычном задании функций, такого вида: function f() {return 1;}
При запуске скрипта браузер сначала ищет все определения используемых функций. А только потом запускает выполнение основного скрипта. Это позволяет в том числе все используемые функции определять после основного тела скрипта.
У вас в скрипте имеется два определения такого вида. И соответственно браузер использует последнее из представленных.