Ternary numeric notation is quite popular in Berland. To telegraph the ternary number the Borze alphabet is used. Digit 0 is transmitted as «.», 1 as «-.» and 2 as «--». You are to decode the Borze code, i.e. to find out the ternary number given its representation in Borze alphabet.

Input

The first line contains a number in Borze code. The length of the string is between 1 and 200 characters. It's guaranteed that the given string is a valid Borze code of some ternary number (this number can have leading zeroes).

Output

Output the decoded ternary number. It can have leading zeroes.

Examples

Input

.-.--


Output

012

Input

--.


Output

20

Input

-..-.--


Output

1012
                import java.util.*;
    import java.io.*;
    import java.text.*;
    import java.math.*;
    public class Main{
        static final long M = (long)1e9+7;
        static FastReader in;
       
        public static void main(String[] args){
            in = new FastReader();
            
            String s = nln();
            
            int i = 0 ;
            
            String ans = "";
            
            while(i<s.length()){
                if(s.charAt(i)=='.'){
                    ans+='0';
                    i+=1;
                }
                else if(s.charAt(i)=='-' &&s.charAt(i+1)=='-'){
                    ans+='2';
                    i+=2;
                }
                else {
                    i+=2;
                    ans+=1;
                }
            }
            pn(ans);
            
           
        }


    
        static void p(Object o){
            System.out.print(o);
        }

        static void pn(Object o){
            System.out.println(o);
        }

        static String ns(){
            return in.next();
        }

        static String nln(){
            return in.nextLine();
        }

        static int ni(){
            return Integer.parseInt(in.next());
        }

        static int[] nia(int N){
            int[] a = new int[N];
            for(int i = 0; i<N; i++)a[i] = ni();
            return a;
        }

        static long[] nla(int N){
            long[] a = new long[N];
            for(int i = 0; i<N; i++)a[i] = nl();
            return a;
        }

        static long nl(){
            return Long.parseLong(in.next());
        }

        static double nd(){
            return Double.parseDouble(in.next());
        }

        static class FastReader{
            BufferedReader br;
            StringTokenizer st;
            public FastReader(){
                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();
            }

            String nextLine(){
                String str = "";
                try{
                    str = br.readLine();
                }catch (IOException e){
                    e.printStackTrace();
                }
                return str;
            }
        }
    }