have it working with OO logic now