messy code for play