got basic functions working