cm:Axis: us-gaap:UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis
| Unrecorded Unconditional Purchase Obligation by Category of Item Purchased [Axis] |
| us-gaap:UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis |
| Pertinent information about unrecorded unconditional purchase arrangements to acquire goods or services, by category of goods or services. arrangements to acquire goods or services, by category of goods or services. |
| cm:Axis |
| Text/String (xbrli:stringItemType) |
| For Period (duration) |
| (no balance type) |
| true |
| us-gaap:UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis |