interface NumberOperations {
  abstract fun Number.plus(other: Number): Number

}

class Matrix {
  constructor() /* primary */ {
    super/*Any*/()
    /* <init>() */

  }

}

fun Matrix.plus(_context_receiver_0: NumberOperations, other: Matrix): Matrix {
  return TODO()
}

fun NumberOperations.plusMatrix(m1: Matrix, m2: Matrix) {
  m1.plus(_context_receiver_0 = <this>, other = m2) /*~> Unit */
  m2.plus(_context_receiver_0 = <this>, other = m1) /*~> Unit */
}
