{$A+,B-,C+,D+,E-,F-,G+,H+,I+,J-,K-,L+,M-,N+,O+,P+,Q-,R-,S-,T-,U-,V+,W-,X+,Y+,Z1}

const
  cinfile = 'box.in';
  coutfile = 'box.out';

type
  int = longint;
  real = extended;
  float = extended;

  point = record
            x, y : int;
          end;

var
  n, k, m : int;
  ans : int;

  a : array [1..6] of point;
  u : array [1..6] of boolean;
  p : array [1..6] of int;

procedure outdata;
var
  i, j : int;
begin
  if ans = 1 then writeln('POSSIBLE') else writeln('IMPOSSIBLE');
end;

function ok : boolean;
var
  x, y, z : int;
  x1, y1, z1 : int;
  res : boolean;
  i : int;
begin
  res:= true;
  for i:= 1 to 3 do
    if (a[p[i]].x <> a[p[i+3]].x) or (a[p[i]].y <> a[p[i+3]].y) then
    begin
      ok:= false;
      exit;
    end;
  x:= a[p[1]].x;
  y:= a[p[1]].y;
  if a[p[2]].x = x then z:= a[p[2]].y else
    if a[p[2]].y = x then z:= a[p[2]].x else
    begin
      ok:= false;
      exit;
    end;
  if a[p[3]].x = y then z1:= a[p[3]].y else
    if a[p[3]].y = y then z1:= a[p[3]].x else
    begin
      ok:= false;
      exit;
    end;
  if z1 <> z then ok:= false else ok:= true;
end;

procedure go(no : int);
var
  i : int;
begin
  if ans = 1 then exit;
  if no = 7 then
  begin
    if ok then ans:= 1;
    exit;
  end;
  for i:= 1 to 6 do
    if not u[i] then
    begin
      p[no]:= i;
      u[i]:= true;
      go(no + 1);
      u[i]:= false;
    end;
end;

procedure solve;
var
  i, j : int;
begin
  fillchar(u, sizeof(u), 0);
  ans:= 0;
  go(1);
end;

procedure readdata;
var
  i, j : int;
  x : int;
begin
  for i:= 1 to 6 do read(a[i].x, a[i].y);
  for i:= 1 to 6 do
    if a[i].x > a[i].y then
    begin
      x:= a[i].x;
      a[i].x:= a[i].y;
      a[i].y:= x;
    end;
end;

begin
  reset(input, cinfile);
  rewrite(output, coutfile);
  readdata;
  solve;
  outdata;
  close(output);
  close(input);
end.
