major cleanup - removed main solution because of memory problems