It shouldn't leak outside of camera lib