cleanups and move generateProperties to action