moved lenses to their own module