The solution of $ x ^ 3 = q $ is to calculate the recurrence formula $ x_ {n + 1} = x_n-\ frac {x_ {n} ^ 3 --q} {3x_ {n} ^ 2} $ It can be calculated approximately with.

Put a positive number $ \ frac {q} {2} $ in $ x_1 $

$ x_2 = x_1-\ frac {x_ {1} ^ 3 --q} {3x_ {1} ^ 2} $, $ x_3 = x_2-\ frac {x_ {2} ^ 3 --q} {3x_ {2} ^ Calculate as 2} $,….

While doing this calculation

When the value of $ | x ^ 3 --q | $ becomes small enough, stop the calculation and use the last calculated $ x_n $ as an approximate solution of $ x ^ 3 = q $.

Follow this method to create a program that outputs an approximation of the cube root of $ q $ for the input positive integer $ q $. However, use $ | x ^ 3-q | <0.00001 q $ to determine that it is "small enough".



input

Multiple datasets are given. For each dataset, $ q $ ($ 1 \ leq q <2 ^ {31} $) (integer) is given on one line. The end of the input is -1.

The number of datasets does not exceed 50.

output

Print $ x $ (real number) on one line for each dataset. The output result may contain an error of 0.00001 or less.

Example

Input

15
15
-1


Output

2.466212
2.466212
#include <iostream>
using namespace std;
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
long double lfabs(long double a)
{
   if(a < 0) a *= -1;
   return a;
}

int main()
{
   int i,j,k,l;
   long double x;
   int q;
   while(1) {
      cin >> q;
      if(q == -1) break;

      x = (long double)q/2;
      while(1) {
         x = x - (x*x*x - q) / (3*x*x) ;
         /* 3*x*x だと駄目だった */
         if( lfabs(x*x*x-q) < 0.00001*q ) break;
      }
      printf("%llf\n",x);
   }
   
   return 0;
}