add principle scheme