bug found...in the so called efficient method