Working on recursive subtype check.