made actionHandlers optional on factory method