moved code to architecture specific place
compare two different design structures