working way through the copiler errors