#include
#include
#include
#include
using namespace std;
int n;
int m;
int dp[100005];
vectorgraph[100005];
int rec(int node){
int result=0;
if(node==n){
return 1;
}
if(dp[node]!=-1){
return dp[node];
}
int MOD = 1e9 + 7;
for(int i=0; i>n>>m;
for(int i=0; i>a>>b;
graph[a].push_back(b);
}
memset(dp, -1, sizeof dp);
cout<