Modify Camera abstraction