# ECNA-2009

# Here`s a Product Which Will Make You Tensor

Most people are familiar with how to multiply two matrices together. However, an alternate form of multiplication known as tensor multiplication exists as well, and works more like you would expect matrix multiplication should. Let ** A** be a

**×**

*p***matrix**

*q***and**

**be an**

*B***×**

*n***matrix, where neither**

*m***nor**

*A***is a**

*B***1**×

**1**matrix. Then the tensor product

**A**

**B**is a

**×**

*pn***matrix formed by replacing each element**

*qm***in**

*a*_{ij}**A**with the matrix (

**)·**

*a*_{ij}**. Two examples are shown below, which also demonstrate that, like normal matrix multiplication, tensor multiplication is non-commutative:**

*B*Note that there is no restriction that the number of columns in the first matrix must equal the number of rows in the second, as there is with normal matrix multiplication. The object of this problem is to determine the number of ways (if any) a given matrix can be formed as a result of a tensor multiplication.

**Input**

The first line of input for a test case will contain two positive integers ** r** and

**indicating the number of rows and columns in the matrix. After this will follow**

*c***lines each containing**

*r***positive integers. The values of**

*c***and**

*r***will be ≤**

*c***500**, each entry in the matrix will be no greater than

**65,536**, and the last test case is followed by a line containing

**0 0**.

**Output**

For each test case, output the number of different ways the matrix could be the tensor product of two positive integer matrices, neither of which is a **1**×**1** matrix.

6 6 1 1 1 2 2 2 1 1 1 2 2 2 1 1 2 2 2 4 3 3 3 4 4 4 3 3 3 4 4 4 3 3 6 4 4 8 2 2 3 6 4 9 2 4 15 18 30 36 20 24 40 48 0 0

1 0 4