Problem: Vasya is an active Internet user. One day he came across an Internet resource he liked, so he wrote its address in the notebook. We know that the address of the written resource has format:

<protocol>://<domain>.ru[/<context>]

where:

  * <protocol> can equal either "http" (without the quotes) or "ftp" (without the quotes), 
  * <domain> is a non-empty string, consisting of lowercase English letters, 
  * the /<context> part may not be present. If it is present, then <context> is a non-empty string, consisting of lowercase English letters. 



If string <context> isn't present in the address, then the additional character "/" isn't written. Thus, the address has either two characters "/" (the ones that go before the domain), or three (an extra one in front of the context).

When the boy came home, he found out that the address he wrote in his notebook had no punctuation marks. Vasya must have been in a lot of hurry and didn't write characters ":", "/", ".".

Help Vasya to restore the possible address of the recorded Internet resource.

Input

The first line contains a non-empty string that Vasya wrote out in his notebook. This line consists of lowercase English letters only. 

It is guaranteed that the given string contains at most 50 letters. It is guaranteed that the given string can be obtained from some correct Internet resource address, described above.

Output

Print a single line — the address of the Internet resource that Vasya liked. If there are several addresses that meet the problem limitations, you are allowed to print any of them.

Examples

Input

httpsunrux


Output

http://sun.ru/x


Input

ftphttprururu


Output

ftp://http.ru/ruru

Note

In the second sample there are two more possible answers: "ftp://httpruru.ru" and "ftp://httpru.ru/ru".

Solution (in JAVA):

Solution:
import java.util.*;

public class program {

    public static Scanner in = new Scanner(System.in);

    public static void main(String[] args) {
        String toParse = in.next();
        String result;
        int currentPosition = 0;

        if (toParse.toCharArray()[0] == 'h') {
            result = "http://";
            //currentPosition = 3;
            toParse = toParse.substring(4);
        } else {
            result = "ftp://";
            //currentPosition = 2;
            toParse = toParse.substring(3);
        }

        int numRu = toParse.indexOf("ru");
        if (numRu != 0) {
            result += toParse.substring(0, toParse.indexOf("ru"));
            //System.out.println(1 + result);
        }else{
            result += "ru";
            toParse = toParse.substring(2);
            result += toParse.substring(0, toParse.indexOf("ru"));
            //System.out.println(2 +result);
        }

        numRu = toParse.indexOf("ru");

        if (toParse.length() == numRu + 2) {
            result += ".ru";
            System.out.println(result);
        } else {
            result += ".ru/" + toParse.substring(numRu + 2);
            System.out.println(result);
        }

    }

    /*public static class Fraction {
        public int numerator;

        public int denominator;

        public double value;

        public Fraction(int numerator, int denominator) {
            this.numerator = numerator;
            this.denominator = denominator;
        }
    }

    public static void main(String[] args) {
        int N = in.nextInt();

        SortedMap<Double, Fraction> result = generateCombinations(N);
        Set s = result.entrySet();
        Iterator i = s.iterator();
        while(i.hasNext()){
            Map.Entry m =(Map.Entry)i.next();
            Fraction fr = (Fraction)m.getValue();
            System.out.println(fr.numerator + "/" + fr.denominator);
        }
    }

    public static boolean isCutable(int numerator, int denominator) {
        if (numerator % 2 == 0 && denominator % 2 == 0) {
            return true;
        }
        while (denominator != 0) {
            int tmp = numerator % denominator;
            numerator = denominator;
            denominator = tmp;
        }

        if (numerator == 1) {
            return false;
        } else {
            return true;
        }
    }

    public static SortedMap<Double, Fraction> generateCombinations(int N) {
        SortedMap<Double, Fraction> result = new TreeMap<Double, Fraction>();
        for (int i = 1; i < N + 1; ++i) {
            for (int j = i + 1; j < N + 1; ++j) {
                if (!isCutable(i, j)) {
                    double value = (double) i / (double) j;
                    result.put(new Double(value), new Fraction(i, j));
                }
            }
        }
        return result;
    }*/
}