fixed return problem