modified app architecture