#include <bits/stdc++.h>
using namespace std;
struct Comparator {
  int operator()(int l, int r) const { return r < l; }
};
struct Vec;
int main() {
  cout.precision(10);
  cout << fixed;
  long double R;
  cin >> R;
  long double PI = M_PI;
  cout << 2.0 * R * PI << endl;
}
struct Vec {
  double v[2];
  string to_s() { return "(" + to_string(v[0]) + "," + to_string(v[1]) + ")"; }
  double& operator[](int t) { return v[t]; }
  Vec operator+(Vec t) { return {v[0] + t[0], v[1] + t[1]}; }
  Vec& operator+=(Vec t) {
    v[0] += t[0];
    v[1] += t[1];
    return *this;
  }
  Vec operator-(Vec t) { return {v[0] - t[0], v[1] - t[1]}; }
  Vec& operator-=(Vec t) {
    v[0] -= t[0];
    v[1] -= t[1];
    return *this;
  }
  Vec operator*(double t) { return {v[0] * t, v[1] * t}; }
  Vec& operator*=(double t) {
    v[0] *= t;
    v[1] *= t;
    return *this;
  }
  double operator*(Vec t) { return v[0] * t[0] + v[1] * t[1]; }
  Vec operator-() { return {-v[0], -v[1]}; }
  static Vec Z;
};
Vec Vec::Z = {0, 0};
