first-working-version-clean-up-to-be-done