#include <bits/stdc++.h>
using namespace std;
long long int modadd(long long int n, long long int m);
long long int modsub(long long int n, long long int m);
long long int modprod(long long int n, long long int m);
long long int power(int x, int y);
long long int powmod(long long int x, long long int y);
void dfs(long long int s);
void bfs(long long int s);
string DecToBin(long long int n);
long long int SolveBin(string s);
void makeset();
long long int find(long long int i);
void Union(long long int i, long long int j);
long long int nc2(long long int x);
long long int countSubarrays(long long int arr[], long long int n,
                             long long int k);
bool sortbysec(const pair<long long int, long long int> &a,
               const pair<long long int, long long int> &b);
long long int n, m, s;
unordered_map<long long int, long long int> parent;
unordered_map<long long int, long long int> Rank;
unordered_map<long long int, long long int> Siz;
vector<vector<long long int>> adj;
queue<long long int> gqueue;
vector<bool> visited;
vector<long long int> depth, prnt;
int main() {
  ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  long long int test = 1;
  long long int wow = test;
  while (test--) {
    long long int n;
    cin >> n;
    cout << 6.28318530717958623200 * n << " ";
  }
  return 0;
}
string DecToBin(long long int n) {
  string s = "";
  while (n != 0) {
    s = to_string(n % 2) + s;
    n /= 2;
  }
  return "0" + s;
}
long long int SolveBin(string s) {
  long long int ans = 0;
  long long int prod = 1;
  for (int i = s.size() - 1; i >= 0; i--) {
    ans += prod * (s[i] - 48);
    prod *= 2;
  }
  return ans;
}
void bfs(long long int s) {
  gqueue.push(s - 1);
  visited[s - 1] = true;
  prnt[s - 1] = -1;
  while (!gqueue.empty()) {
    long long int v = gqueue.front();
    gqueue.pop();
    for (long long int u : adj[v]) {
      if (!visited[u]) {
        visited[u] = true;
        gqueue.push(u);
        depth[u] = depth[v] + 1;
        prnt[u] = v;
      }
    }
  }
}
void dfs(long long int s) {
  if (visited[s]) {
    return;
  }
  visited[s] = true;
  for (long long int u : adj[s - 1]) {
    dfs(u);
  };
}
void makeset() {
  for (long long int i = 1; i < n + 1; i++) {
    parent[i] = i;
    Siz[i] = 1;
  }
}
long long int find(long long int i) {
  if (parent[i] != i) {
    parent[i] = find(parent[i]);
  }
  return parent[i];
}
void Union(long long int i, long long int j) {
  long long int irep = find(i), irank, jrank, isz, jsz;
  long long int jrep = find(j);
  if (irep == jrep) {
    return;
  } else {
    irank = Rank[irep];
    jrank = Rank[jrep];
    isz = Siz[irep];
    jsz = Siz[jrep];
    if (irank > jrank) {
      parent[jrep] = irep;
      Siz[irep] += Siz[jrep];
    } else if (jrank > irank) {
      parent[irep] = jrep;
      Siz[jrep] += Siz[irep];
    } else {
      parent[jrep] = irep;
      Siz[irep] += Siz[jrep];
      Rank[irep]++;
    }
  }
}
long long int nc2(long long int x) { return ((x) * (x - 1)) / 2; }
long long int countSubarrays(long long int arr[], long long int n,
                             long long int k) {
  long long int start = 0, end = 0, count = 0, sum = arr[0];
  while (start < n && end < n) {
    if (sum < k) {
      end++;
      if (end >= start) count += end - start;
      if (end < n) sum += arr[end];
    } else {
      sum -= arr[start];
      start++;
    }
  }
  return count;
}
long long int modadd(long long int n, long long int m) {
  long long int sum = ((n + m) % 1000000007 + 1000000007) % 1000000007;
  return sum;
}
long long int modsub(long long int n, long long int m) {
  long long int diff =
      ((n - m + 1000000007) % 1000000007 + 1000000007) % 1000000007;
  return diff;
}
long long int modprod(long long int n, long long int m) {
  long long int pro = ((n * m) % 1000000007 + 1000000007) % 1000000007;
  return pro;
}
long long int power(int x, int y) {
  long long int res = 1;
  while (y > 0) {
    if (y & 1) res = res * x;
    y = y >> 1;
    x = x * x;
  }
  return res;
}
long long int powmod(long long int x, long long int y) {
  long long int res = 1;
  while (y > 0) {
    if (y & 1) res = modprod(res, x);
    y = y >> 1;
    x = modprod(x, x);
  }
  return res;
}
bool sortbysec(const pair<long long int, long long int> &a,
               const pair<long long int, long long int> &b) {
  return (a.second < b.second);
}
