changes & bugs corrected