improve module codes