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

typedef struct{
  double x;
  double y;
} xy;

void kock(xy,xy,int);


int main(){
  int n;
  xy s,f;

  s.x=0;
  s.y=0;
  f.x=100;
  f.y=0;
  
  scanf("%d",&n);
  if(n==0) scanf("%d",&n);

  printf("%.8f %.8f\n",s.x,s.y);
  kock(s,f,n);
  printf("%.8f %.8f\n",f.x,f.y);

  return 0;
}

void kock(xy s,xy f,int n){
  xy p1,p2,p3;

  if(n==0) return;

  p1.x=(f.x+2*s.x)/3;
  p1.y=(f.y+2*s.y)/3;
  p3.x=(2*f.x+s.x)/3;
  p3.y=(2*f.y+s.y)/3;

  p2.x=(p3.x-p1.x)*cos(PI/3)-(p3.y-p1.y)*sin(PI/3)+p1.x;
  p2.y=(p3.y-p1.y)*cos(PI/3)+(p3.x-p1.x)*sin(PI/3)+p1.y;

  kock(s,p1,n-1);
  printf("%.8f %.8f\n",p1.x,p1.y);
  kock(p1,p2,n-1);
  printf("%.8f %.8f\n",p2.x,p2.y);
  kock(p2,p3,n-1);
  printf("%.8f %.8f\n",p3.x,p3.y);
  kock(p3,f,n-1);

  return;
}

