created object-oriented conversion branch