Implemented basic functions