#include <stdio.h>
#include <math.h>
#define PI 3.14159265358979323846

typedef struct{
  double x;
  double y;
}zahyou;
void kock(int,zahyou,zahyou);

int main(){
  int n;
  zahyou a,b;
  a.x=0;
  a.y=0;
  b.x=100;
  b.y=0;

  scanf("%d",&n);
  printf("%f %f\n",a.x,a.y);
kock(n,a,b);
printf("%f %f\n",b.x,b.y);
  return 0;
}
 
void kock(int n,zahyou p1,zahyou p2){
  zahyou s,t,u;
  if (n == 0)
    return;
  s.x=(2*p1.x+p2.x)/3;    
        s.y=(2*p1.y+p2.y)/3;    
    t.x=(p1.x+2*p2.x)/3;   
    t.y=(p1.y+2*p2.y)/3;    
    u.x=(t.x-s.x)*cos(60* PI / 180.0)-(t.y-s.y)*sin(60* PI / 180.0)+s.x;    
      u.y=(t.x-s.x)*sin(60* PI / 180.0)+(t.y-s.y)*cos(60* PI / 180.0)+s.y;
   
  kock(n-1, p1, s);
  printf("%f %f\n",s.x,s.y);
      kock(n-1, s, u);
      printf("%f %f\n ",u.x,u.y);
      kock(n-1, u, t);
      printf("%f %f\n",t.x,t.y);
      kock(n-1, t, p2);


}