Used MVP design pattern