some fix and updated