docs for innerfunction