do not modify original option object on run hook and add self/dao reference for after* hooks in dao