Modify architecture and interface