import java.io.*;
import java.util.*;
/**
 * Main
 */
public class Main {
        static Stack<Integer> subset = new Stack<>();
        static String input = "";
        static int stop = 0;
        static int mod  = 1000000007;
        static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));
        static HashMap<Integer,Integer> map = new HashMap<>();
        static ArrayList<String> list = new ArrayList<>();
        
       
    public static void main(String[] args) {
       MyScanner ms  = new MyScanner();
       int N = ms.nextInt();
    
       N%=10;
       pw.println(N==3?"bon":(N==0||N==1||N==6||N==8)?"pon":"hon");
        pw.flush();
    }


   

    static class IP {
        int r,c;
        IP(int r, int c){
            this.r =r ;
            this.c =c ;
        }
    }

    /**
     * 1.What is the unknown: the maxium number of nodes he can buy 2.What are the
     * data: the size of the array and element int he array 3.What is the condition:
     * the longest increasing usbsequece 4.What is the restriction: the 100,000 *100
     * = 100,000,000 = thus made N^2 for 3 second
     */

    public static class MyScanner {
        BufferedReader br;
        StringTokenizer st;
   
        public MyScanner() {
           br = new BufferedReader(new InputStreamReader(System.in));
        }
   
        String next() {
            while (st == null || !st.hasMoreElements()) {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return st.nextToken();
        }
   
        int nextInt() {
            return Integer.parseInt(next());
        }
   
        long nextLong() {
            return Long.parseLong(next());
        }
   
        double nextDouble() {
            return Double.parseDouble(next());
        }
   
        String nextLine(){
            String str = "";
        try {
           str = br.readLine();
        } catch (IOException e) {
           e.printStackTrace();
        }
        return str;
        }
  
     }
    
} import java.io.*; io.* java import java.util.*; util.* java public class Main {
        static Stack<Integer> subset = new Stack<>();
        static String input = "";
        static int stop = 0;
        static int mod  = 1000000007;
        static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));
        static HashMap<Integer,Integer> map = new HashMap<>();
        static ArrayList<String> list = new ArrayList<>();
        
       
    public static void main(String[] args) {
       MyScanner ms  = new MyScanner();
       int N = ms.nextInt();
    
       N%=10;
       pw.println(N==3?"bon":(N==0||N==1||N==6||N==8)?"pon":"hon");
        pw.flush();
    }


   

    static class IP {
        int r,c;
        IP(int r, int c){
            this.r =r ;
            this.c =c ;
        }
    }

    /**
     * 1.What is the unknown: the maxium number of nodes he can buy 2.What are the
     * data: the size of the array and element int he array 3.What is the condition:
     * the longest increasing usbsequece 4.What is the restriction: the 100,000 *100
     * = 100,000,000 = thus made N^2 for 3 second
     */

    public static class MyScanner {
        BufferedReader br;
        StringTokenizer st;
   
        public MyScanner() {
           br = new BufferedReader(new InputStreamReader(System.in));
        }
   
        String next() {
            while (st == null || !st.hasMoreElements()) {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return st.nextToken();
        }
   
        int nextInt() {
            return Integer.parseInt(next());
        }
   
        long nextLong() {
            return Long.parseLong(next());
        }
   
        double nextDouble() {
            return Double.parseDouble(next());
        }
   
        String nextLine(){
            String str = "";
        try {
           str = br.readLine();
        } catch (IOException e) {
           e.printStackTrace();
        }
        return str;
        }
  
     }
    
} Main static Stack<Integer> subset = new Stack<>(); subset new Stack<>() static String input = ""; input "" static int stop = 0; stop 0 static int mod  = 1000000007; mod 1000000007 static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out)); pw new PrintWriter(new OutputStreamWriter(System.out)) static HashMap<Integer,Integer> map = new HashMap<>(); map new HashMap<>() static ArrayList<String> list = new ArrayList<>(); list new ArrayList<>() public static void main(String[] args) {
       MyScanner ms  = new MyScanner();
       int N = ms.nextInt();
    
       N%=10;
       pw.println(N==3?"bon":(N==0||N==1||N==6||N==8)?"pon":"hon");
        pw.flush();
    } main {
       MyScanner ms  = new MyScanner();
       int N = ms.nextInt();
    
       N%=10;
       pw.println(N==3?"bon":(N==0||N==1||N==6||N==8)?"pon":"hon");
        pw.flush();
    } MyScanner ms  = new MyScanner(); ms new MyScanner() int N = ms.nextInt(); N ms.nextInt() ms.nextInt ms N%=10 N 10 pw.println(N==3?"bon":(N==0||N==1||N==6||N==8)?"pon":"hon") pw.println pw N==3?"bon":(N==0||N==1||N==6||N==8)?"pon":"hon" N==3 N 3 "bon" (N==0||N==1||N==6||N==8)?"pon":"hon" (N==0||N==1||N==6||N==8) N==6 N==0||N==1||N==6||N==8 N==0 N 0 N==1 N 1 N==6 N 6 N==8 N 8 "pon" "hon" pw.flush() pw.flush pw String[] args args static class IP {
        int r,c;
        IP(int r, int c){
            this.r =r ;
            this.c =c ;
        }
    } IP int r r c; c IP(int r, int c){
            this.r =r ;
            this.c =c ;
        } IP {
            this.r =r ;
            this.c =c ;
        } this.r =r this.r this this.r r this.c =c this.c this this.c c int r r int c c public static class MyScanner {
        BufferedReader br;
        StringTokenizer st;
   
        public MyScanner() {
           br = new BufferedReader(new InputStreamReader(System.in));
        }
   
        String next() {
            while (st == null || !st.hasMoreElements()) {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return st.nextToken();
        }
   
        int nextInt() {
            return Integer.parseInt(next());
        }
   
        long nextLong() {
            return Long.parseLong(next());
        }
   
        double nextDouble() {
            return Double.parseDouble(next());
        }
   
        String nextLine(){
            String str = "";
        try {
           str = br.readLine();
        } catch (IOException e) {
           e.printStackTrace();
        }
        return str;
        }
  
     } MyScanner BufferedReader br; br StringTokenizer st; st public MyScanner() {
           br = new BufferedReader(new InputStreamReader(System.in));
        } MyScanner {
           br = new BufferedReader(new InputStreamReader(System.in));
        } br = new BufferedReader(new InputStreamReader(System.in)) br new BufferedReader(new InputStreamReader(System.in)) String next() {
            while (st == null || !st.hasMoreElements()) {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return st.nextToken();
        } next {
            while (st == null || !st.hasMoreElements()) {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return st.nextToken();
        } while (st == null || !st.hasMoreElements()) {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } st == null || !st.hasMoreElements() st == null st null !st.hasMoreElements() st.hasMoreElements() st.hasMoreElements st {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            } try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                } IOException e {
                    e.printStackTrace();
                } e.printStackTrace() e.printStackTrace e {
                    st = new StringTokenizer(br.readLine());
                } st = new StringTokenizer(br.readLine()) st new StringTokenizer(br.readLine()) return st.nextToken(); st.nextToken() st.nextToken st int nextInt() {
            return Integer.parseInt(next());
        } nextInt {
            return Integer.parseInt(next());
        } return Integer.parseInt(next()); Integer.parseInt(next()) Integer.parseInt Integer next() next long nextLong() {
            return Long.parseLong(next());
        } nextLong {
            return Long.parseLong(next());
        } return Long.parseLong(next()); Long.parseLong(next()) Long.parseLong Long next() next double nextDouble() {
            return Double.parseDouble(next());
        } nextDouble {
            return Double.parseDouble(next());
        } return Double.parseDouble(next()); Double.parseDouble(next()) Double.parseDouble Double next() next String nextLine(){
            String str = "";
        try {
           str = br.readLine();
        } catch (IOException e) {
           e.printStackTrace();
        }
        return str;
        } nextLine {
            String str = "";
        try {
           str = br.readLine();
        } catch (IOException e) {
           e.printStackTrace();
        }
        return str;
        } String str = ""; str "" try {
           str = br.readLine();
        } catch (IOException e) {
           e.printStackTrace();
        } catch (IOException e) {
           e.printStackTrace();
        } IOException e {
           e.printStackTrace();
        } e.printStackTrace() e.printStackTrace e {
           str = br.readLine();
        } str = br.readLine() str br.readLine() br.readLine br return str; str public class Main {
        static Stack<Integer> subset = new Stack<>();
        static String input = "";
        static int stop = 0;
        static int mod  = 1000000007;
        static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));
        static HashMap<Integer,Integer> map = new HashMap<>();
        static ArrayList<String> list = new ArrayList<>();
        
       
    public static void main(String[] args) {
       MyScanner ms  = new MyScanner();
       int N = ms.nextInt();
    
       N%=10;
       pw.println(N==3?"bon":(N==0||N==1||N==6||N==8)?"pon":"hon");
        pw.flush();
    }


   

    static class IP {
        int r,c;
        IP(int r, int c){
            this.r =r ;
            this.c =c ;
        }
    }

    /**
     * 1.What is the unknown: the maxium number of nodes he can buy 2.What are the
     * data: the size of the array and element int he array 3.What is the condition:
     * the longest increasing usbsequece 4.What is the restriction: the 100,000 *100
     * = 100,000,000 = thus made N^2 for 3 second
     */

    public static class MyScanner {
        BufferedReader br;
        StringTokenizer st;
   
        public MyScanner() {
           br = new BufferedReader(new InputStreamReader(System.in));
        }
   
        String next() {
            while (st == null || !st.hasMoreElements()) {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return st.nextToken();
        }
   
        int nextInt() {
            return Integer.parseInt(next());
        }
   
        long nextLong() {
            return Long.parseLong(next());
        }
   
        double nextDouble() {
            return Double.parseDouble(next());
        }
   
        String nextLine(){
            String str = "";
        try {
           str = br.readLine();
        } catch (IOException e) {
           e.printStackTrace();
        }
        return str;
        }
  
     }
    
} public class Main {
        static Stack<Integer> subset = new Stack<>();
        static String input = "";
        static int stop = 0;
        static int mod  = 1000000007;
        static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));
        static HashMap<Integer,Integer> map = new HashMap<>();
        static ArrayList<String> list = new ArrayList<>();
        
       
    public static void main(String[] args) {
       MyScanner ms  = new MyScanner();
       int N = ms.nextInt();
    
       N%=10;
       pw.println(N==3?"bon":(N==0||N==1||N==6||N==8)?"pon":"hon");
        pw.flush();
    }


   

    static class IP {
        int r,c;
        IP(int r, int c){
            this.r =r ;
            this.c =c ;
        }
    }

    /**
     * 1.What is the unknown: the maxium number of nodes he can buy 2.What are the
     * data: the size of the array and element int he array 3.What is the condition:
     * the longest increasing usbsequece 4.What is the restriction: the 100,000 *100
     * = 100,000,000 = thus made N^2 for 3 second
     */

    public static class MyScanner {
        BufferedReader br;
        StringTokenizer st;
   
        public MyScanner() {
           br = new BufferedReader(new InputStreamReader(System.in));
        }
   
        String next() {
            while (st == null || !st.hasMoreElements()) {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return st.nextToken();
        }
   
        int nextInt() {
            return Integer.parseInt(next());
        }
   
        long nextLong() {
            return Long.parseLong(next());
        }
   
        double nextDouble() {
            return Double.parseDouble(next());
        }
   
        String nextLine(){
            String str = "";
        try {
           str = br.readLine();
        } catch (IOException e) {
           e.printStackTrace();
        }
        return str;
        }
  
     }
    
} Main
import java.io.*;
import java.util.*;
/**
 * Main
 */
public class Main {
        static Stack<Integer> subset = new Stack<>();
        static String input = "";
        static int stop = 0;
        static int mod  = 1000000007;
        static PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));
        static HashMap<Integer,Integer> map = new HashMap<>();
        static ArrayList<String> list = new ArrayList<>();
        
       
    public static void main(String[] args) {
       MyScanner ms  = new MyScanner();
       int N = ms.nextInt();
    
       N%=10;
       pw.println(N==3?"bon":(N==0||N==1||N==6||N==8)?"pon":"hon");
        pw.flush();
    }


   

    static class IP {
        int r,c;
        IP(int r, int c){
            this.r =r ;
            this.c =c ;
        }
    }

    /**
     * 1.What is the unknown: the maxium number of nodes he can buy 2.What are the
     * data: the size of the array and element int he array 3.What is the condition:
     * the longest increasing usbsequece 4.What is the restriction: the 100,000 *100
     * = 100,000,000 = thus made N^2 for 3 second
     */

    public static class MyScanner {
        BufferedReader br;
        StringTokenizer st;
   
        public MyScanner() {
           br = new BufferedReader(new InputStreamReader(System.in));
        }
   
        String next() {
            while (st == null || !st.hasMoreElements()) {
                try {
                    st = new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return st.nextToken();
        }
   
        int nextInt() {
            return Integer.parseInt(next());
        }
   
        long nextLong() {
            return Long.parseLong(next());
        }
   
        double nextDouble() {
            return Double.parseDouble(next());
        }
   
        String nextLine(){
            String str = "";
        try {
           str = br.readLine();
        } catch (IOException e) {
           e.printStackTrace();
        }
        return str;
        }
  
     }
    
}