# Block State Map (B112) - how to work with it?

The State Map block can be useful if we need to define some "non-algorithmizable" discrete function. In other words, in the block we fill the matrix X1 * X2 with values of type integer64. The output of the function is then the value entered at the position (X1, X2), the position is given by the values at the inputs.

#### Example:

Matrix with dimension 4 * 3

 1 2 3 4 5 6 7 8 9 10 11 12

has the output Y = 10 for inputs X1 = 1, X2 = 2 (rows and columns are counted from zero, so it is the 2nd column and the 3rd row).
However, the content of the matrix does not have parameter properties, ie it is not adjustable "remotely" via Remote Connection. When changing the contents of the matrix, it is necessary to upload the program. This is because the data structure of the matrix is not transferable using the standard variables Boolean, Double, Int64, etc.

So let's assume that by defining the contents of the matrix we determine the structure of the block rather than the parameters.