restructure code, etc. etc.