* complete design rethinking