some functions written, not compiles