isSubstitutionFor() should be final