override onInsert instead of insert