Revert "Bad design"

This reverts commit 1cf2f418884f3473e42cecdb896d089a2ee798ff.