#include <stdio.h> 
#include <stdlib.h> 
 
struct  DynArray { 
    double  * data; 
    size_t  m;  // total 
    size_t  n;  // used 
} ; 
 
int  main( void )  { 
    int  cnt =  0 ; 
    struct  DynArray numbers =  {  0  } ; 
    double  newnum; 
    while  ( scanf ( "%lf" ,  & newnum
)  ==  1  &&  newnum 
!=  - 1 )  {          if  ( numbers.n  ==  numbers.m )  { 
            size_t  newsize =  numbers.n  *  13  /  8  +  1 ;  // use phi aproximation 13/8 
            double  * newarr 
=  realloc ( numbers.
data ,  newsize 
*  sizeof  * numbers.
data ) ;              fprintf ( stderr
,  "INFO: realloc'ed with %d elements.\n " ,  ( int ) newsize
) ;              if  ( ! newarr
)  exit ( EXIT_FAILURE
) ;              numbers.data  =  newarr; 
            numbers.m  =  newsize; 
        } 
        numbers.data [ numbers.n ]  =  newnum; 
        numbers.n ++; 
    } 
 
    for  ( int  i =  numbers.n  -  1 ;  i >=  0 ;  -- i)  { 
        printf ( "%f\n " ,  numbers.
data [ i
] ) ;      } 
 
 
    return  0 ; 
} 
 
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCnN0cnVjdCBEeW5BcnJheSB7CiAgICBkb3VibGUgKmRhdGE7CiAgICBzaXplX3QgbTsgLy8gdG90YWwKICAgIHNpemVfdCBuOyAvLyB1c2VkCn07CgppbnQgbWFpbih2b2lkKSB7CiAgICBpbnQgY250ID0gMDsKICAgIHN0cnVjdCBEeW5BcnJheSBudW1iZXJzID0geyAwIH07CiAgICBkb3VibGUgbmV3bnVtOwogICAgd2hpbGUgKHNjYW5mKCIlbGYiLCAmbmV3bnVtKSA9PSAxICYmIG5ld251bSAhPSAtMSkgewogICAgICAgIGlmIChudW1iZXJzLm4gPT0gbnVtYmVycy5tKSB7CiAgICAgICAgICAgIHNpemVfdCBuZXdzaXplID0gbnVtYmVycy5uICogMTMgLyA4ICsgMTsgLy8gdXNlIHBoaSBhcHJveGltYXRpb24gMTMvOAogICAgICAgICAgICBkb3VibGUgKm5ld2FyciA9IHJlYWxsb2MobnVtYmVycy5kYXRhLCBuZXdzaXplICogc2l6ZW9mICpudW1iZXJzLmRhdGEpOwogICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIklORk86IHJlYWxsb2MnZWQgd2l0aCAlZCBlbGVtZW50cy5cbiIsIChpbnQpbmV3c2l6ZSk7CiAgICAgICAgICAgIGlmICghbmV3YXJyKSBleGl0KEVYSVRfRkFJTFVSRSk7CiAgICAgICAgICAgIG51bWJlcnMuZGF0YSA9IG5ld2FycjsKICAgICAgICAgICAgbnVtYmVycy5tID0gbmV3c2l6ZTsKICAgICAgICB9CiAgICAgICAgbnVtYmVycy5kYXRhW251bWJlcnMubl0gPSBuZXdudW07CiAgICAgICAgbnVtYmVycy5uKys7CiAgICB9CgogICAgZm9yIChpbnQgaSA9IG51bWJlcnMubiAtIDE7IGkgPj0gMDsgLS1pKSB7CiAgICAgICAgcHJpbnRmKCIlZlxuIiwgbnVtYmVycy5kYXRhW2ldKTsKICAgIH0KCiAgICBmcmVlKG51bWJlcnMuZGF0YSk7CgogICAgcmV0dXJuIDA7Cn0K