Added application abstraction