Multiplying a MIMO `TransferFunction` by `1.0` multiplies by a matrix of ones, not identity

Multiplying a MIMO TransferFunction object by the Python float 1.0 appears to multiply it by a matrix of ones, rather than the identity matrix. The same goes for any scalar. Is this the intended behaviour? I checked in the documentation and didn't see anything.

Example:

import control

G = control.TransferFunction(
    [
        [[87.8], [-86.4]],
        [[108.2], [-109.6]],
    ],
    [
        [[1, 1], [1, 1]],
        [[1, 1], [1, 1]],
    ],
)

I = control.TransferFunction(
    [
        [[1], [1]],
        [[1], [1]],
    ],
    [
        [[1], [1]],
        [[1], [1]],
    ],
)

print(G)
print(1 * G)
print(I * G)