//#include <iostream>
//using namespace std;
//int jc(int n){
// if(n<=2){
// return n;
// }else{
// return jc(n-1)*n;
// }
//
//}
//int main(int argc, char** argv) {
// int n,a;
// cin>>n;
// a=jc(n);
// cout<<a;
// return 0;
//}
//#include <iostream>
//using namespace std;
//int main(int argc, char** argv) {
// int n,f[100];
// f[1]=1;
// f[2]=1;
// cin>>n;
// for(int i=3;i<=n;i++){
// f[i]=f[i-1]+f[i-2];
// }
// cout<<f[n];
// return 0;
//}
//// 1个月产2个卵 8个月后成虫个数
//// 月份 成虫 卵 卵成虫月份
//// 1 1 0
//// 2 1 2 -4
//// 3 1 2 -5
//// 4 3 2 -6
//// 5 5 6 -7
//// 6 7 10 -8
//// 7 13 14 -9
//// 8 23 26
//// 9 37 46
//#include <bits/stdc++.h>
//using namespace std;
//int main(int argc, char** argv) {
// int x,y,z;
// long long a[100]={},b[100]={};
// cin>>x>>y>>z;
// for(int i=1;i<=x;i++){
// a[i]=1;
// b[i]=0;
// }
// for(int i=x+1;i<=z+1;i++){
// b[i]=a[i-x]*y;
// a[i]=a[i-1]+b[i-2];
// }
// cout<<a[z+1]<<endl;
// return 0;
//}
//#include <bits/stdc++.h>
//using namespace std;
//int x,y,z;
//int kc(int z){
// if(z<x+2){
// return 1;
// }
// if(z>=x+2){
// return kc(z-1)+kc(z-x-2)*y;
// }
//}
//int main(int argc, char** argv) {
// int a;
// cin>>x>>y>>z;
// a=kc(z);
// cout<<a;
// return 0;
//} #include <bits/stdc++.h>
//using namespace std;
// int main(int argc, char** argv) {
//string a,b;
//cin>>a>>b;
//return 0;
//}