premise: In a few cases, however, you may not know about an object's properties and methods in advance, or you may simply want the flexibility of allowing an end user to specify properties or execute methods at run time.