#include<bits/stdc++.h>
using namespace std;


#define int         long long
#define fast        ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(0);
#define all(a) a.begin(),a.end()
#define rall(a) a.rbegin(),a.rend()
int mod = 1000000007;
int mod2 = 998244353;
/*
//int arr[100000]={};
int binarysearch(int a[],int n,int s)
{
    int l=0,h=n-1,mid,ans = -1;
    while(l<=h)
    {
        mid = l + (h-l)/2;
        if(a[mid]<=s)
        {
            ans = mid;
            l = mid + 1;
        }
        else h = mid - 1;
    }
    //ans = max(ans,k);
    return ans;
}
/*
bool isprime(int n)
{
    int x = sqrt(n),f=0;
    for(int i=2;i<=x;i++)
    {
        if(n%i==0)
        {
            f=1;
            break;
        }
    }
    if(f)
    return false;
    else return true;
}

int find1(int n)
{
    int mn = 9;
    int x = n,s;
    while(x>=1)
    {
        s = x%10;
        mn = min(mn,s);
        x /= 10;
    }
    return mn;
}

int find2(int n)
{
    int mn = 0;
    int x = n,s;
    while(x>=1)
    {
        s = x%10;
        mn = max(mn,s);
        x /= 10;
    }
    return mn;
}
int recurs(int n,int k)
{
    if(k==1)
        return n;
    if(find1(n)==0)
        return n;
    return recurs(n + (find1(n)*find2(n)) , --k);
}*/
signed main()
{
    fast;
    int t = 1;

    //cin>>t;

    while(t--)
    {
        int n=0,m=0,k=0,r=0,f=0,cnt=0,x=0,l=0,y=0,z=0,mx=0,sum=0,mini=INT_MAX,mn=INT_MAX;
        string s,str;
        cin>>n;
        if(n%10=3)
            s = "bon";
        else if(n%10==0||n%10==1||n%10==6||n%10==8)
            s = "pon";
            else s = "hon";
            cout<<s;
    }
	cerr << "\nTime elapsed : " << 1.0 * clock() / CLOCKS_PER_SEC << " sec \n";
}
