
/*  
 * @author : poindexter_21
 */
import java.io.*;
import java.util.*;
import java.math.*;

public class Main {
    
    //static MyScanner sc = new MyScanner();
    static Scanner sc = new Scanner(System.in);
    public static void main(String[] args) {
        
       
         BigDecimal a = sc.nextBigDecimal();
         BigDecimal b = sc.nextBigDecimal();
       
       BigDecimal c = a.multiply(b);
       
       String str = c.toString();
       String res = "";
       for(int i = 0; i < str.length(); ++i) {
           char ch = str.charAt(i);
           if(ch == '.')
               break;
           res += ch;
        }
       
       out.println(res);
        
        out.close();
    }

    /**
     * *********************************************************************************************
     */
    static final int MOD = (int) 1e9 + 7;
    static final double PI = 3.14159265358979323846;

    // array of int type taking input
    public static int[] init(int n) {
        
        int[] arr = new int[n];
        
        for (int i = 0; i < n; ++i) {
            arr[i] = sc.nextInt();
        }
        
        return arr;
    }

    //return gcd of two numbers
    public static int gcd(int a, int b) {
        
        if (a == 0) {
            return b;
        }
        
        return gcd(b % a, a);
    }

    //checks whether a number is prime or not
    public static boolean prime(int n) {
        
        if (n < 2) {
            return false;
        }
        
        for (int i = 2; i * i <= n; ++i) {
            if (n % i == 0) {
                return false;
            }
        }
        
        return true;
    }

    // Pair Class
    static class Pair<S extends Comparable<S>, T extends Comparable<T>> implements Comparable<Pair<S, T>> {
        
        S first;
        T second;
        
        public Pair() {
        }
        
        Pair(S f, T s) {
            first = f;
            second = s;
        }
        
        public S getX() {
            return this.first;
        }
        
        public T getY() {
            return this.second;
        }
        
        @Override
        public int compareTo(Pair<S, T> o) {
            int t = first.compareTo(o.first);
            if (t == 0) {
                return second.compareTo(o.second);
            }
            return t;
        }
        
        public void show() {
            System.out.println("[" + this.getX() + " , " + this.getY() + "]");
        }
        
        @Override
        public int hashCode() {
            return (31 + first.hashCode()) * 31 + second.hashCode();
        }
        
        @Override
        public boolean equals(Object o) {
            if (!(o instanceof Pair)) {
                return false;
            }
            if (o == this) {
                return true;
            }
            Pair p = (Pair) o;
            return first.equals(p.first) && second.equals(p.second);
        }
        
        @Override
        public String toString() {
            return "Pair{" + first + ", " + second + "}";
        }
    }

    /**
     *********************************************************************************************
     */
    /**
     * Fast Input/ Output *
     */
    //-----------PrintWriter for faster output---------------------------------
    public static PrintWriter out = new PrintWriter(new BufferedOutputStream(System.out));

    //-----------MyScanner class for faster input----------
    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 import java.math.*; math.* java public class Main {
    
    //static MyScanner sc = new MyScanner();
    static Scanner sc = new Scanner(System.in);
    public static void main(String[] args) {
        
       
         BigDecimal a = sc.nextBigDecimal();
         BigDecimal b = sc.nextBigDecimal();
       
       BigDecimal c = a.multiply(b);
       
       String str = c.toString();
       String res = "";
       for(int i = 0; i < str.length(); ++i) {
           char ch = str.charAt(i);
           if(ch == '.')
               break;
           res += ch;
        }
       
       out.println(res);
        
        out.close();
    }

    /**
     * *********************************************************************************************
     */
    static final int MOD = (int) 1e9 + 7;
    static final double PI = 3.14159265358979323846;

    // array of int type taking input
    public static int[] init(int n) {
        
        int[] arr = new int[n];
        
        for (int i = 0; i < n; ++i) {
            arr[i] = sc.nextInt();
        }
        
        return arr;
    }

    //return gcd of two numbers
    public static int gcd(int a, int b) {
        
        if (a == 0) {
            return b;
        }
        
        return gcd(b % a, a);
    }

    //checks whether a number is prime or not
    public static boolean prime(int n) {
        
        if (n < 2) {
            return false;
        }
        
        for (int i = 2; i * i <= n; ++i) {
            if (n % i == 0) {
                return false;
            }
        }
        
        return true;
    }

    // Pair Class
    static class Pair<S extends Comparable<S>, T extends Comparable<T>> implements Comparable<Pair<S, T>> {
        
        S first;
        T second;
        
        public Pair() {
        }
        
        Pair(S f, T s) {
            first = f;
            second = s;
        }
        
        public S getX() {
            return this.first;
        }
        
        public T getY() {
            return this.second;
        }
        
        @Override
        public int compareTo(Pair<S, T> o) {
            int t = first.compareTo(o.first);
            if (t == 0) {
                return second.compareTo(o.second);
            }
            return t;
        }
        
        public void show() {
            System.out.println("[" + this.getX() + " , " + this.getY() + "]");
        }
        
        @Override
        public int hashCode() {
            return (31 + first.hashCode()) * 31 + second.hashCode();
        }
        
        @Override
        public boolean equals(Object o) {
            if (!(o instanceof Pair)) {
                return false;
            }
            if (o == this) {
                return true;
            }
            Pair p = (Pair) o;
            return first.equals(p.first) && second.equals(p.second);
        }
        
        @Override
        public String toString() {
            return "Pair{" + first + ", " + second + "}";
        }
    }

    /**
     *********************************************************************************************
     */
    /**
     * Fast Input/ Output *
     */
    //-----------PrintWriter for faster output---------------------------------
    public static PrintWriter out = new PrintWriter(new BufferedOutputStream(System.out));

    //-----------MyScanner class for faster input----------
    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 MyScanner sc = new MyScanner();
    static Scanner sc = new Scanner(System.in); sc new Scanner(System.in) /**
     * *********************************************************************************************
     */
    static final int MOD = (int) 1e9 + 7; MOD (int) 1e9 + 7 (int) 1e9 7 static final double PI = 3.14159265358979323846; PI 3.14159265358979323846 /**
     * Fast Input/ Output *
     */
    //-----------PrintWriter for faster output---------------------------------
    public static PrintWriter out = new PrintWriter(new BufferedOutputStream(System.out)); out new PrintWriter(new BufferedOutputStream(System.out)) public static void main(String[] args) {
        
       
         BigDecimal a = sc.nextBigDecimal();
         BigDecimal b = sc.nextBigDecimal();
       
       BigDecimal c = a.multiply(b);
       
       String str = c.toString();
       String res = "";
       for(int i = 0; i < str.length(); ++i) {
           char ch = str.charAt(i);
           if(ch == '.')
               break;
           res += ch;
        }
       
       out.println(res);
        
        out.close();
    } main {
        
       
         BigDecimal a = sc.nextBigDecimal();
         BigDecimal b = sc.nextBigDecimal();
       
       BigDecimal c = a.multiply(b);
       
       String str = c.toString();
       String res = "";
       for(int i = 0; i < str.length(); ++i) {
           char ch = str.charAt(i);
           if(ch == '.')
               break;
           res += ch;
        }
       
       out.println(res);
        
        out.close();
    } BigDecimal a = sc.nextBigDecimal(); a sc.nextBigDecimal() sc.nextBigDecimal sc BigDecimal b = sc.nextBigDecimal(); b sc.nextBigDecimal() sc.nextBigDecimal sc BigDecimal c = a.multiply(b); c a.multiply(b) a.multiply a b String str = c.toString(); str c.toString() c.toString c String res = ""; res "" for(int i = 0; i < str.length(); ++i) {
           char ch = str.charAt(i);
           if(ch == '.')
               break;
           res += ch;
        } int i = 0; int i = 0; i 0 i < str.length() i str.length() str.length str ++i ++i i {
           char ch = str.charAt(i);
           if(ch == '.')
               break;
           res += ch;
        } {
           char ch = str.charAt(i);
           if(ch == '.')
               break;
           res += ch;
        } char ch = str.charAt(i); ch str.charAt(i) str.charAt str i if(ch == '.')
               break; ch == '.' ch '.' break; res += ch res ch out.println(res) out.println out res out.close() out.close out String[] args args // array of int type taking input
    public static int[] init(int n) {
        
        int[] arr = new int[n];
        
        for (int i = 0; i < n; ++i) {
            arr[i] = sc.nextInt();
        }
        
        return arr;
    } init {
        
        int[] arr = new int[n];
        
        for (int i = 0; i < n; ++i) {
            arr[i] = sc.nextInt();
        }
        
        return arr;
    } int[] arr = new int[n]; arr new int[n] n for (int i = 0; i < n; ++i) {
            arr[i] = sc.nextInt();
        } int i = 0; int i = 0; i 0 i < n i n ++i ++i i {
            arr[i] = sc.nextInt();
        } {
            arr[i] = sc.nextInt();
        } arr[i] = sc.nextInt() arr[i] arr i sc.nextInt() sc.nextInt sc return arr; arr int n n //return gcd of two numbers
    public static int gcd(int a, int b) {
        
        if (a == 0) {
            return b;
        }
        
        return gcd(b % a, a);
    } gcd {
        
        if (a == 0) {
            return b;
        }
        
        return gcd(b % a, a);
    } if (a == 0) {
            return b;
        } a == 0 a 0 {
            return b;
        } return b; b return gcd(b % a, a); gcd(b % a, a) gcd b % a b a a int a a int b b //checks whether a number is prime or not
    public static boolean prime(int n) {
        
        if (n < 2) {
            return false;
        }
        
        for (int i = 2; i * i <= n; ++i) {
            if (n % i == 0) {
                return false;
            }
        }
        
        return true;
    } prime {
        
        if (n < 2) {
            return false;
        }
        
        for (int i = 2; i * i <= n; ++i) {
            if (n % i == 0) {
                return false;
            }
        }
        
        return true;
    } if (n < 2) {
            return false;
        } n < 2 n 2 {
            return false;
        } return false; false for (int i = 2; i * i <= n; ++i) {
            if (n % i == 0) {
                return false;
            }
        } int i = 2; int i = 2; i 2 i * i <= n i * i i i n ++i ++i i {
            if (n % i == 0) {
                return false;
            }
        } {
            if (n % i == 0) {
                return false;
            }
        } if (n % i == 0) {
                return false;
            } n % i == 0 n % i n i 0 {
                return false;
            } return false; false return true; true int n n static class Pair<S extends Comparable<S>, T extends Comparable<T>> implements Comparable<Pair<S, T>> {
        
        S first;
        T second;
        
        public Pair() {
        }
        
        Pair(S f, T s) {
            first = f;
            second = s;
        }
        
        public S getX() {
            return this.first;
        }
        
        public T getY() {
            return this.second;
        }
        
        @Override
        public int compareTo(Pair<S, T> o) {
            int t = first.compareTo(o.first);
            if (t == 0) {
                return second.compareTo(o.second);
            }
            return t;
        }
        
        public void show() {
            System.out.println("[" + this.getX() + " , " + this.getY() + "]");
        }
        
        @Override
        public int hashCode() {
            return (31 + first.hashCode()) * 31 + second.hashCode();
        }
        
        @Override
        public boolean equals(Object o) {
            if (!(o instanceof Pair)) {
                return false;
            }
            if (o == this) {
                return true;
            }
            Pair p = (Pair) o;
            return first.equals(p.first) && second.equals(p.second);
        }
        
        @Override
        public String toString() {
            return "Pair{" + first + ", " + second + "}";
        }
    } Pair S first; first T second; second public Pair() {
        } Pair {
        } Pair(S f, T s) {
            first = f;
            second = s;
        } Pair {
            first = f;
            second = s;
        } first = f first f second = s second s S f f T s s public S getX() {
            return this.first;
        } getX {
            return this.first;
        } return this.first; this.first this this.first public T getY() {
            return this.second;
        } getY {
            return this.second;
        } return this.second; this.second this this.second @Override
        public int compareTo(Pair<S, T> o) {
            int t = first.compareTo(o.first);
            if (t == 0) {
                return second.compareTo(o.second);
            }
            return t;
        } compareTo {
            int t = first.compareTo(o.first);
            if (t == 0) {
                return second.compareTo(o.second);
            }
            return t;
        } int t = first.compareTo(o.first); t first.compareTo(o.first) first.compareTo first o.first o o.first if (t == 0) {
                return second.compareTo(o.second);
            } t == 0 t 0 {
                return second.compareTo(o.second);
            } return second.compareTo(o.second); second.compareTo(o.second) second.compareTo second o.second o o.second return t; t Pair<S, T> o o public void show() {
            System.out.println("[" + this.getX() + " , " + this.getY() + "]");
        } show {
            System.out.println("[" + this.getX() + " , " + this.getY() + "]");
        } System.out.println("[" + this.getX() + " , " + this.getY() + "]") System.out.println System.out System System.out "[" + this.getX() + " , " + this.getY() + "]" this.getY() " , " "[" + this.getX() + " , " + this.getY() + "]" "[" this.getX() this.getX this " , " this.getY() this.getY this "]" @Override
        public int hashCode() {
            return (31 + first.hashCode()) * 31 + second.hashCode();
        } hashCode {
            return (31 + first.hashCode()) * 31 + second.hashCode();
        } return (31 + first.hashCode()) * 31 + second.hashCode(); (31 + first.hashCode()) * 31 + second.hashCode() (31 + first.hashCode()) * 31 (31 + first.hashCode()) 31 first.hashCode() first.hashCode first 31 second.hashCode() second.hashCode second @Override
        public boolean equals(Object o) {
            if (!(o instanceof Pair)) {
                return false;
            }
            if (o == this) {
                return true;
            }
            Pair p = (Pair) o;
            return first.equals(p.first) && second.equals(p.second);
        } equals {
            if (!(o instanceof Pair)) {
                return false;
            }
            if (o == this) {
                return true;
            }
            Pair p = (Pair) o;
            return first.equals(p.first) && second.equals(p.second);
        } if (!(o instanceof Pair)) {
                return false;
            } !(o instanceof Pair) (o instanceof Pair) o Pair {
                return false;
            } return false; false if (o == this) {
                return true;
            } o == this o this {
                return true;
            } return true; true Pair p = (Pair) o; p (Pair) o return first.equals(p.first) && second.equals(p.second); first.equals(p.first) && second.equals(p.second) first.equals(p.first) first.equals first p.first p p.first second.equals(p.second) second.equals second p.second p p.second Object o o @Override
        public String toString() {
            return "Pair{" + first + ", " + second + "}";
        } toString {
            return "Pair{" + first + ", " + second + "}";
        } return "Pair{" + first + ", " + second + "}"; "Pair{" + first + ", " + second + "}" second ", " "Pair{" + first + ", " + second + "}" "Pair{" first ", " second "}" Comparable 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 MyScanner sc = new MyScanner();
    static Scanner sc = new Scanner(System.in);
    public static void main(String[] args) {
        
       
         BigDecimal a = sc.nextBigDecimal();
         BigDecimal b = sc.nextBigDecimal();
       
       BigDecimal c = a.multiply(b);
       
       String str = c.toString();
       String res = "";
       for(int i = 0; i < str.length(); ++i) {
           char ch = str.charAt(i);
           if(ch == '.')
               break;
           res += ch;
        }
       
       out.println(res);
        
        out.close();
    }

    /**
     * *********************************************************************************************
     */
    static final int MOD = (int) 1e9 + 7;
    static final double PI = 3.14159265358979323846;

    // array of int type taking input
    public static int[] init(int n) {
        
        int[] arr = new int[n];
        
        for (int i = 0; i < n; ++i) {
            arr[i] = sc.nextInt();
        }
        
        return arr;
    }

    //return gcd of two numbers
    public static int gcd(int a, int b) {
        
        if (a == 0) {
            return b;
        }
        
        return gcd(b % a, a);
    }

    //checks whether a number is prime or not
    public static boolean prime(int n) {
        
        if (n < 2) {
            return false;
        }
        
        for (int i = 2; i * i <= n; ++i) {
            if (n % i == 0) {
                return false;
            }
        }
        
        return true;
    }

    // Pair Class
    static class Pair<S extends Comparable<S>, T extends Comparable<T>> implements Comparable<Pair<S, T>> {
        
        S first;
        T second;
        
        public Pair() {
        }
        
        Pair(S f, T s) {
            first = f;
            second = s;
        }
        
        public S getX() {
            return this.first;
        }
        
        public T getY() {
            return this.second;
        }
        
        @Override
        public int compareTo(Pair<S, T> o) {
            int t = first.compareTo(o.first);
            if (t == 0) {
                return second.compareTo(o.second);
            }
            return t;
        }
        
        public void show() {
            System.out.println("[" + this.getX() + " , " + this.getY() + "]");
        }
        
        @Override
        public int hashCode() {
            return (31 + first.hashCode()) * 31 + second.hashCode();
        }
        
        @Override
        public boolean equals(Object o) {
            if (!(o instanceof Pair)) {
                return false;
            }
            if (o == this) {
                return true;
            }
            Pair p = (Pair) o;
            return first.equals(p.first) && second.equals(p.second);
        }
        
        @Override
        public String toString() {
            return "Pair{" + first + ", " + second + "}";
        }
    }

    /**
     *********************************************************************************************
     */
    /**
     * Fast Input/ Output *
     */
    //-----------PrintWriter for faster output---------------------------------
    public static PrintWriter out = new PrintWriter(new BufferedOutputStream(System.out));

    //-----------MyScanner class for faster input----------
    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 MyScanner sc = new MyScanner();
    static Scanner sc = new Scanner(System.in);
    public static void main(String[] args) {
        
       
         BigDecimal a = sc.nextBigDecimal();
         BigDecimal b = sc.nextBigDecimal();
       
       BigDecimal c = a.multiply(b);
       
       String str = c.toString();
       String res = "";
       for(int i = 0; i < str.length(); ++i) {
           char ch = str.charAt(i);
           if(ch == '.')
               break;
           res += ch;
        }
       
       out.println(res);
        
        out.close();
    }

    /**
     * *********************************************************************************************
     */
    static final int MOD = (int) 1e9 + 7;
    static final double PI = 3.14159265358979323846;

    // array of int type taking input
    public static int[] init(int n) {
        
        int[] arr = new int[n];
        
        for (int i = 0; i < n; ++i) {
            arr[i] = sc.nextInt();
        }
        
        return arr;
    }

    //return gcd of two numbers
    public static int gcd(int a, int b) {
        
        if (a == 0) {
            return b;
        }
        
        return gcd(b % a, a);
    }

    //checks whether a number is prime or not
    public static boolean prime(int n) {
        
        if (n < 2) {
            return false;
        }
        
        for (int i = 2; i * i <= n; ++i) {
            if (n % i == 0) {
                return false;
            }
        }
        
        return true;
    }

    // Pair Class
    static class Pair<S extends Comparable<S>, T extends Comparable<T>> implements Comparable<Pair<S, T>> {
        
        S first;
        T second;
        
        public Pair() {
        }
        
        Pair(S f, T s) {
            first = f;
            second = s;
        }
        
        public S getX() {
            return this.first;
        }
        
        public T getY() {
            return this.second;
        }
        
        @Override
        public int compareTo(Pair<S, T> o) {
            int t = first.compareTo(o.first);
            if (t == 0) {
                return second.compareTo(o.second);
            }
            return t;
        }
        
        public void show() {
            System.out.println("[" + this.getX() + " , " + this.getY() + "]");
        }
        
        @Override
        public int hashCode() {
            return (31 + first.hashCode()) * 31 + second.hashCode();
        }
        
        @Override
        public boolean equals(Object o) {
            if (!(o instanceof Pair)) {
                return false;
            }
            if (o == this) {
                return true;
            }
            Pair p = (Pair) o;
            return first.equals(p.first) && second.equals(p.second);
        }
        
        @Override
        public String toString() {
            return "Pair{" + first + ", " + second + "}";
        }
    }

    /**
     *********************************************************************************************
     */
    /**
     * Fast Input/ Output *
     */
    //-----------PrintWriter for faster output---------------------------------
    public static PrintWriter out = new PrintWriter(new BufferedOutputStream(System.out));

    //-----------MyScanner class for faster input----------
    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

/*  
 * @author : poindexter_21
 */
import java.io.*;
import java.util.*;
import java.math.*;

public class Main {
    
    //static MyScanner sc = new MyScanner();
    static Scanner sc = new Scanner(System.in);
    public static void main(String[] args) {
        
       
         BigDecimal a = sc.nextBigDecimal();
         BigDecimal b = sc.nextBigDecimal();
       
       BigDecimal c = a.multiply(b);
       
       String str = c.toString();
       String res = "";
       for(int i = 0; i < str.length(); ++i) {
           char ch = str.charAt(i);
           if(ch == '.')
               break;
           res += ch;
        }
       
       out.println(res);
        
        out.close();
    }

    /**
     * *********************************************************************************************
     */
    static final int MOD = (int) 1e9 + 7;
    static final double PI = 3.14159265358979323846;

    // array of int type taking input
    public static int[] init(int n) {
        
        int[] arr = new int[n];
        
        for (int i = 0; i < n; ++i) {
            arr[i] = sc.nextInt();
        }
        
        return arr;
    }

    //return gcd of two numbers
    public static int gcd(int a, int b) {
        
        if (a == 0) {
            return b;
        }
        
        return gcd(b % a, a);
    }

    //checks whether a number is prime or not
    public static boolean prime(int n) {
        
        if (n < 2) {
            return false;
        }
        
        for (int i = 2; i * i <= n; ++i) {
            if (n % i == 0) {
                return false;
            }
        }
        
        return true;
    }

    // Pair Class
    static class Pair<S extends Comparable<S>, T extends Comparable<T>> implements Comparable<Pair<S, T>> {
        
        S first;
        T second;
        
        public Pair() {
        }
        
        Pair(S f, T s) {
            first = f;
            second = s;
        }
        
        public S getX() {
            return this.first;
        }
        
        public T getY() {
            return this.second;
        }
        
        @Override
        public int compareTo(Pair<S, T> o) {
            int t = first.compareTo(o.first);
            if (t == 0) {
                return second.compareTo(o.second);
            }
            return t;
        }
        
        public void show() {
            System.out.println("[" + this.getX() + " , " + this.getY() + "]");
        }
        
        @Override
        public int hashCode() {
            return (31 + first.hashCode()) * 31 + second.hashCode();
        }
        
        @Override
        public boolean equals(Object o) {
            if (!(o instanceof Pair)) {
                return false;
            }
            if (o == this) {
                return true;
            }
            Pair p = (Pair) o;
            return first.equals(p.first) && second.equals(p.second);
        }
        
        @Override
        public String toString() {
            return "Pair{" + first + ", " + second + "}";
        }
    }

    /**
     *********************************************************************************************
     */
    /**
     * Fast Input/ Output *
     */
    //-----------PrintWriter for faster output---------------------------------
    public static PrintWriter out = new PrintWriter(new BufferedOutputStream(System.out));

    //-----------MyScanner class for faster input----------
    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;
        }
    }
}
