Switching canonicalization method