viper-architecture