- refactored EntryPoint