changed lenses to a more OO style