again some functions written, not compiles