How VIPER works