added isDefined