var
   p:array[1..100]of record
      x,y:integer;
   end;
   pc:integer;

   procedure init;
   begin
      pc:=0;
   end;

   procedure AddRandom;
   var   
      x,y,i:integer;
   begin
      x:=-1000+random(2001);
      y:=-1000+random(2001);
      for i:=1 to pc do
         if (x=p[i].x) and (y=p[i].y) then begin
            AddRandom;
            exit;
         end;
      inc(pc);
      p[pc].x:=x;
      p[pc].y:=y;
   end;

   procedure print(k:integer);
   var
      i:integer;
   begin
      writeln(pc,' ',k);
      for i:=1 to pc do
         writeln(p[i].x,' ',p[i].y);
   end;

begin
   randomize;
   repeat
      init;
      AddRandom;
      AddRandom;
      AddRandom;
   until
      (p[1].y=p[2].y) and (p[1].y=p[3].y) and
      (p[1].x<>p[2].x) and (p[1].x<>p[3].x) and (p[2].x<>p[3].x);
   print(3);
end.