compile error/warning cleanup
added functionality