implemented basic controls