[5.0] Use Contract For MessageBag