fix gradient bug