optimize handler creation
merge origin/master