some function bodies added