#include using namespace std; #define fst(t) std::get<0>(t) #define snd(t) std::get<1>(t) #define thd(t) std::get<2>(t) #define unless(p) if(!(p)) #define until(p) while(!(p)) using ll = long long; using P = std::tuple; const int dx[8] = {-1, 1, 0, 0, -1, -1, 1, 1}, dy[8] = {0, 0, -1, 1, -1, 1, -1, 1}; int A[3]; int main(){ std::cin.tie(nullptr); std::ios::sync_with_stdio(false); for(int i=0;i<3;++i){ std::cin >> A[i]; } if(A[0] != A[1] && A[1] != A[2] && A[2] != A[0] && ( *max_element(A, A+3) == A[1] || *min_element(A, A+3) == A[1] )){ std::cout << "INF" << std::endl; return 0; } int mx = *max_element(A, A+3), res = 0; for(int p=1;p<=mx;++p){ int B[3]; for(int i=0;i<3;++i){ B[i] = A[i] % p; } if(B[0] != B[1] && B[1] != B[2] && B[2] != B[0] && ( *max_element(B, B+3) == B[1] || *min_element(B, B+3) == B[1] )){ ++res; } } std::cout << res << std::endl; }