mostly all code is there'
most of the code should be there. some chagne to data structures