refactored gensite
merged