rearchitecture of view