not done yet, but basic ideas should be visible