#include<stdio.h> #include<string.h> #include<math.h> #include<stdlib.h> #include<algorithm> #include<iostream> #include<queue> #include<stack> #include<map> #include<set> #include<vector> #include<string> using namespace std; typedef long long LL; const LL MAXN=1e5+10; int ans[MAXN]={0}; int devide(vector<int>a,int b){ vector<int>c; int t=0; for(int i=0;i<a.size();i++){ t=t*10+a[i]; c.push_back(t/b); t%=b; } if(t)return t; else return 0; } int main(){ string s; while(cin>>s){ if(s=="-1")break; bool flag=false; vector<int>a; for(int i=0;i<s.size();i++)a.push_back(s[i]-'0'); for(int i=2;i<=9;i++){ vector<int>c=a; if(devide(c,i)==0){ cout<<i<<' '; flag=true; } } if(flag==false)cout<<"none"; cout<<endl; } return 0; }