Your security guard friend recently got a new job at a new security company. The company requires him to patrol an area of the city encompassing exactly N city blocks, but they let him choose which blocks. That is, your friend must walk the perimeter of a region whose area is exactly N blocks. Your friend is quite lazy and would like your help to find the shortest possible route that meets the requirements. The city is laid out in a square grid pattern, and is large enough that for the sake of the problem it can be considered infinite.

Input

Input will consist of a single integer N (1 ≤ N ≤ 106), the number of city blocks that must be enclosed by the route.

Output

Print the minimum perimeter that can be achieved.

Examples

Input

4


Output

8


Input

11


Output

14


Input

22


Output

20

Note

Here are some possible shapes for the examples:

<image>
import java.util.*;
import java.lang.*;
import java.io.*;

public class Main {

    static class FastReader {
        BufferedReader br;
        StringTokenizer st;

        FastReader() {
            br = new BufferedReader(new
                                    InputStreamReader(System.in));
        }

        FastReader(final InputStream is) {
            if (is != null)
                br = new BufferedReader(new
                                        InputStreamReader(is));
            else new FastReader();
        }

        String next() throws IOException {
            while (st == null || !st.hasMoreElements()) {
                st = new StringTokenizer(br.readLine());
            }
            return st.nextToken();
        }

        int nextInt() throws IOException {
            return Integer.parseInt(next());
        }

        long nextLong() throws IOException {
            return Long.parseLong(next());
        }

        double nextDouble() throws IOException {
            return Double.parseDouble(next());
        }

        String nextLine() throws IOException {
            return br.readLine();
        }
    }
    static PrintWriter writer;
    static int[][] aaa;
    public static void main(String args[]) throws Exception {
        //InputStream is = Main.class.getResourceAsStream("input.txt");
        // final FileOutputStream os = new FileOutputStream("src/output1.txt");
        final FastReader reader = new FastReader();
        writer = new PrintWriter(new BufferedOutputStream(System.out));

        int n = reader.nextInt();
        int csqrt = (int) Math.sqrt(n);

        int x1 = Math.abs(csqrt * csqrt - n);
        int x2 = Math.abs((csqrt + 1) * (csqrt + 1) - n);

        if (x1 <= x2) {
            csqrt *= csqrt;
        } else csqrt = (csqrt + 1) * (csqrt + 1);
        if (csqrt >= n) {
            writer.println(4 * (int)Math.sqrt(csqrt));
        } else if (csqrt < n) {
            int ans = (int) Math.sqrt(csqrt);
            ans *= 4;
            ans += 2;
            writer.println(ans);
        }

        writer.close();
    }
}
