oo work in progress