Decent Solution