fixed option handle and templateListener