after search implementation and a huge number of "correctons"