init
optimize code