base application method