Problem: There are n boys and m girls studying in the class. They should stand in a line so that boys and girls alternated there as much as possible. Let's assume that positions in the line are indexed from left to right by numbers from 1 to n + m. Then the number of integers i (1 ≤ i < n + m) such that positions with indexes i and i + 1 contain children of different genders (position i has a girl and position i + 1 has a boy or vice versa) must be as large as possible. 

Help the children and tell them how to form the line.

Input

The single line of the input contains two integers n and m (1 ≤ n, m ≤ 100), separated by a space.

Output

Print a line of n + m characters. Print on the i-th position of the line character "B", if the i-th position of your arrangement should have a boy and "G", if it should have a girl. 

Of course, the number of characters "B" should equal n and the number of characters "G" should equal m. If there are multiple optimal solutions, print any of them.

Examples

Input

3 3


Output

GBGBGB


Input

4 2


Output

BGBGBB

Note

In the first sample another possible answer is BGBGBG. 

In the second sample answer BBGBGB is also optimal.

Solution (in JAVA):

Solution:
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.Arrays;
import java.util.StringTokenizer;
    
    /**
     * @Author  Roman Dzhadan
     * @Team    VNTU [Noobs v3.0]
     * @E-Mail  dflash36@gmail.com
     * @Skype   ronex36
     */
    public class Main {
        
        public static final String     TYPE              =   IOSystem.FILE;
        public static final long       TIME_LIMIT        =   2;
        public static final long       MEMORY_LIMIT      =   512 * (1L << 20);
        public static final String     INPUT_FILE_NAME   =   "input.txt";
        public static final String     OUTPUT_FILE_NAME  =   "output.txt";
        public static final boolean    ONLINE_JUDGE      =   System.getProperty("ONLINE_JUDGE") != null;
        
        public static void main(String[] args) throws FileNotFoundException {
            IOSystem IO = (TYPE.equals(IOSystem.STANDART) ? new IOSystem() : new IOSystem(INPUT_FILE_NAME, OUTPUT_FILE_NAME));
            new Thread(null, new Task(IO), "", MEMORY_LIMIT).start();
        }
    }
    
    class Task implements Runnable {
    //------------------------------------------------------  SOLUTION  -----------------------------------------------------------//   
    
        public void solve() throws IOException {

            int n = in.readInt();
            int m = in.readInt();
            
            int min = Math.min(n, m);
                    
            if (n > m) {
                n--;
                out.print("B");
                for (int i = 0; i < min; i++) {
                    out.print("GB");
                }
                n -= min;
                m -= min;
                for (int i = 0; i < m; i++) {
                    out.print("G");
                }
                for (int i = 0; i < n; i++) {
                    out.print("B");
                }
                out.println();
            }
            else if (n == m) {
                for (int i = 0; i < n; i++) {
                    out.print("BG");
                }
                out.println();
            }
            else {
                m--;
                out.print("G");
                for (int i = 0; i < min; i++) {
                    out.print("BG");
                }
                n -= min;
                m -= min;
                for (int i = 0; i < n; i++) {
                    out.print("B");
                }
                for (int i = 0; i < m; i++) {
                    out.print("G");
                }
                out.println();
            }
            
            
        }
    //-----------------------------------------------------------------------------------------------------------------------------//
        public void run() {
            try {
                long startTime = System.currentTimeMillis();
                solve();
                close();
                long endTime = System.currentTimeMillis();
                long totalMemory = Runtime.getRuntime().totalMemory();
                long freeMemory = Runtime.getRuntime().freeMemory();
                System.err.printf("Time = %.3f ms\n", (endTime - startTime) / 1000.0);
                System.err.printf("Memory = %.3f MB\n", (totalMemory - freeMemory) / (double)(1L << 20));
            }
            catch (Throwable e) {e.printStackTrace(System.err);System.exit(-1);}
        }
        public PrintWriter out;
        public IOSystem in;
        public Task(IOSystem io) {out = io.out; this.in = io;}
        public void close() throws IOException {in.in.close(); out.close();}
    }
    
    class IOSystem {
        public static final String FILE = "file";
        public static final String STANDART = "stdin";
        
        BufferedReader in;
        StringTokenizer tok;
        PrintWriter out;
        
        public IOSystem() {
            in = new BufferedReader(new InputStreamReader(System.in));
            out = new PrintWriter(System.out);
            tok = new StringTokenizer("");
        }
        
        public IOSystem(String inputFileName, String outputFileName) throws FileNotFoundException {
            in = new BufferedReader(new FileReader(inputFileName));
            out = new PrintWriter(outputFileName);
            tok = new StringTokenizer("");
        }
        
        String readString() throws IOException {while (!tok.hasMoreTokens()) {String line = in.readLine();if (line == null) return null;tok = new StringTokenizer(line);}return tok.nextToken();}
        int readInt() throws IOException {return Integer.parseInt(readString());}
        long readLong() throws IOException {return Long.parseLong(readString());}
        double readDouble() throws IOException {return Double.parseDouble(readString());}
        void debug(Object... o) {if (!Main.ONLINE_JUDGE) {System.err.println(Arrays.deepToString(o));}}
    }