encapsulated things and added presentation mode