Hacked broken objects together to work - needs improvement