Better design while I have some time...