fixed return stuff