The tensor shapes of [30, 2] x [30, 2] are invalid for a matrix multiplication and you would either need to permute one tensor or adapt the in_features of a linear layer as seen here:
a = torch.randn(30, 2)
b = torch.randn(30, 2)

c = torch.matmul(a, b)
> RuntimeError: mat1 and mat2 shapes cannot be multiplied (30x2 and 30x2)

b = torch.randn(2, 30)
c = torch.matmul(a, b) # works

b = torch.randn(2, 2)
c = torch.matmul(a, b) # works

Your current output is hard to read so note that you can post code snippets and logs by wrapping them into three backticks ```, which would make debugging easier.