improved demo project