Design v1(unfinished)