ちっとも動かずに、半日悩んでしまいました。
同じ変数名をグローバルと関数内で宣言してしまった場合、
関数内の変数の方が優先なんだね。