added some ideas
Added increased canonicalization support for auto-generated types