#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define MOD 1000000007
#define print(A,n) for(ll i=0;i<n;++i)cout<<A[i]<<' ';cout<<endl;
#define take(A,n) for(ll i=0;i<n;++i)cin>>A[i];
//    for(auto& it : m)
void fastio(){ios_base::sync_with_stdio(false);cin.tie(NULL);}
//  priority_queue<ll int> pq;
//  priority_queue <ll int, vector<ll int>, greater<ll int> > pq;
//  vector<ll int> v;
//  vector< pair<ll int,ll int> > v;
//  set<ll int>::iterator it=s.begin();
//  unordered_map<  pair<ll int,ll int>, ll int> mp;

bool checkStackPermutation(int ip[], int op[], int n) 
{ 
    // Input queue 
    queue<int> input; 
    for (int i=0;i<n;i++) 
        input.push(ip[i]); 
  
    // output queue 
    queue<int> output; 
    for (int i=0;i<n;i++) 
        output.push(op[i]); 
  
    // stack to be used for permutation 
    stack <int> tempStack; 
    while (!input.empty()) 
    { 
        int ele = input.front(); 
        input.pop(); 
        if (ele == output.front()) 
        { 
            output.pop(); 
            while (!tempStack.empty()) 
            { 
                if (tempStack.top() == output.front()) 
                { 
                    tempStack.pop(); 
                    output.pop(); 
                } 
                else
                    break; 
            } 
        } 
        else
            tempStack.push(ele); 
    } 
  
    // If after processing, both input queue and 
    // stack are empty then the input queue is 
    // permutable otherwise not. 
    return (input.empty()&&tempStack.empty()); 
} 

int main()
{
  fastio();

 
 int T;
T=1;
//cin>>T;
while(T--)
{
ll int n,i,k;
ll int s,w;
cin>>s>>w;
if(w>=s)
  cout<<"unsafe"<<endl;
else
  cout<<"safe"<<endl;

}

    return 0;
}