some commented out methods, pseudo code etc-- FINAL PUSH