synthesize goes after the implementation