#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long int ll; typedef pair P; const ll MOD=1e9+7; ll powmod(ll a, ll k){ ll ap=a, ans=1; while(k){ if(k&1){ ans*=ap; ans%=MOD; } ap=ap*ap; ap%=MOD; k>>=1; } return ans; } ll inv(ll a){ return powmod(a, MOD-2); } int main() { int n, m, x; cin>>n>>m>>x; int c[334][303]={}, d[334]={}; for(int j=0; j<30; j++){ d[j]=(x&1); x>>=1; } for(int i=0; i>a; for(int j=0; j<30; j++){ c[j][i]=(a&1); a>>=1; } } for(int i=0; i>t>>l>>r; l--; r--; for(int j=l; j<=r; j++){ c[i+30][j]=1; } d[i+30]=t; } m+=30; bool used[334]={}; int r=0; for(int i=0; i