set source in percept, not various subtypes.