#include<iostream>
using namespace std;
const int N(205),M(2e3+5);
int n,m,x;
int tot,h[N],cur[N],to[M<<1],nxt[M<<1],flow[M<<1];
inline void add(int u,int v,int flw){
nxt[++tot]=h[u],to[h[u]=tot]=v,flow[tot]=flw;
nxt[++tot]=h[v],to[h[v]=tot]=u,flow[tot]=0;
}
int deep[N],q[N];
bool bfs(){
for(int i=1;i<=n;i++) deep[i]=0;
deep[1]=1;
int l=0,r=-1;
q[++r]=1;
while(l<=r){
int u=q[l++];
for(int i=h[u];i;i=nxt[i]){
int v=to[i];
if(deep[v]==0&&flow[i]){
deep[v]=deep[u]+1;
q[++r]=v;
if(v==n) return 1;
}
}
}
return deep[n]>0;
}
int dfs(int u,int flw){
if(u==n) return flw;
int sumflow=0;
for(int i=cur[u];i;i=nxt[i]){
cur[u]=i;
int v=to[i];
if(deep[v]==deep[u]+1&&flow[i]>0){
int canflow=dfs(v,min(flw,flow[i]));
flow[i]-=canflow;flow[i^1]+=canflow;
flw-=canflow;
sumflow+=canflow;
if(!flw) break;
}
}
return sumflow;
}
int ans;
inline void Dinic(){
while(bfs()){
for(int i=1;i<=n;i++) cur[i]=h[i];
ans+=dfs(1,1e18);
}
}
int main(){
#ifdef ytxy
freopen("in.txt","r",stdin);
#endif
ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);
cin>>n>>m>>x;
for(int i=1;i<=m;i++){
int u,v,flw;
cin>>u>>v>>flw;
add(u,v,flw);
}
Dinic();
if(ans==0) cout<<"Orz Ni Jinan Saint Cow!";
else cout<<ans<<' '<<(x-1)/ans+1;
}