initial app
improve extended version