#18 prepare for commonizing to XCMessage