A service composition architecture with the following requirements needs to be created: 1. Services will have different periods of availability. 2. Sometimes the destination of a message cannot be determined until runtime. 3. All the services do not support the same messaging protocol. Of the following choices, which patterns should be used to address these requirements?