#include<iostream>
using namespace std;
int a[110][110],b[1001],n,m,ans=0,num,k;
void si(int m)
{
for(int i=0;i<ans;i++)
if(m==b[i])
return ;
b[ans]=m;
ans++;
return ;
}
void wu(int num,int i,int j)
{
num=num%k;
if(num==0)
{
si(num);
return ;
}
if(i>=n||j>=m)
return ;
if(i==n-1&&j==m-1)
{
si(num);
return ;
}
wu(num*a[i][j],i+1,j);
wu(num*a[i][j],i,j+1);
}
int main()
{
cin>>n>>m>>k;
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
cin>>a[i][j];
wu(1,0,0);
cout<<ans<<endl;
for(int i=0;i<ans;i++)
cout<<b[i]<<" ";
}