basic structure with stubs