First half way done solution