app_logic