A key principle of ICHI’s architectural design is Modularity. The ICHI platform allows for components to be modular (similar to a microservices architecture) in order to allow for simplified and safe updates/upgrades when certain logic within contracts need to be changed. Additionally, the platform has certain components that are meant to be permanent, yet can be upgraded through a Proxy process. This allows ICHI to be simple and safe to upgrade as well as customizable (as it pertains to oneToken implementations). It increases separation of concerns, enables code reuse, and gives clarity into which jurisdiction applies to each guarded function.