-

+; "...\\\";
.(" !") .


:





:      |   |   | 


: 09.12.08.

(******************************************************************************)
(* .                       *)
(******************************************************************************)
;

  ,
  "...\\\",
  "...\\\",
  "...\\\",
  "...\\\",
  "...\\\",
  "...\\\",
  ;

(*
([ ] - ; ( ) - , ({x} ) - x; { } - ; - - - ):
[ ]({4}[ ])
-
  [ ]([])[ ]([])-
:
-
  ({ = [ ]([ ]) }[])-
, , .
*)


  - =
    : .;
    : ;
    :
  ;

(* *)

-(-: ): ;

  : ;

  (, ()+4);
  (, ^);
  .(^, ".");
  .(^)
;

-(-: ): ;

  : ;
  : .;
  : ;

  (, ()+4);
  (, ^);
  .(^, ".");
  .(^)
    := .(^);
    := 0; .(, , 1);
    .();
   
 
    -1
 
;

-(-: ): ;

  : ;
  : .;
  : ;

  (, ()+4);
  (, ^);
  .(^, ".");
  .(^)
    := .(^);
    .(, 1);
    .(, , 4);
    .();
   
 
    -1
 
;

-(-: ; -: .): ;

  : ;
  : .;
  , : ;
  : ;
  : ;
  : .;
  : ;
  : ;

  (, ()+4);
  (, ^);
  .(^, ".");
  .(^)
    := .(^);
    .(, 1);
    .(, , 4);
    := 0;
    .()
      .(, , 1);
      (, );
      .(, ^, );
      .(^, )
        := .()--1;
        .();
       
      ;
      := ;
      := 0; .(, , 1);
      = .
        := 1
          := 0; .(, , 1);
          := 0; .(, , );
          .(, .()+)
       
     
        .(, .()+.()*)
     
    ;
    .();
    -1
 
    -1
 
;

-(-: ; -: .; +: );

  : ;
  : .;
  : ;
  : ;

  := (, );
  # -1
    (, ()+4);
    (, ^);
    .(^, ".");
    := .(^);
    .(, );
    := 0; .(, , 1);
    (., );
    .(, .^, );
    . := 0; .(, ., 1);
    . := (.()-);
    .()
 
;

-(-: ; -: .; -: .): ;

  : ;
  : .;
  : ;
  : ;
  : ;
  : ;
  , : ;
  : ;
  : .;

  := (, );
  # -1
    (, ()+4);
    (, ^);
    .(^, ".");
    := .(^);
    .(, 1);
    .(, , 4);
    .(, );
    := 0; .(, , 1);
    .(, ++1);
    .(, , 1);
    := 0;
    = .
      := 1
        .(, , 1);
        := 0; .(, , );
        (, );
        .(, , );
        .(, ^) () ;
        :=
     
   
      := .();
      # () .(); -1 ;
      (, );
      := 1
        .(, , );
        .(, ^) ()
     
    ;
    .();
   
 
    -1
 
;

-(-: ; -: .; -: .; : ): ;

  : ;
  : .;
  : ;
  : ;
  : ;
  : ;
  , : ;
  : ;
  : .;

  := (, );
  # -1
    (, ()+4);
    (, ^);
    .(^, ".");
    := .(^);
    .(, 1);
    .(, , 4);
    >= .(); -1 ;
    .(, );
    := 0; .(, , 1);
    .(, ++1);
    .(, , 1);
    := 0;
    = .
      := 0 -1
        .(, , 1);
        := 0; .(, , );
        (, );
        .(, ^, );
        .(, )
          =
            .();
         
            := ; ()
         
       
     
   
      := .();
      # () .(); -1 ;
      (, );
      := 0 -1
        .(, ^, );
        = .(); ()
     
    ;
    .();
    -1
 
    -1
 
;

(* *)

-(-: ; : );

  : ;
  : .;
  : ;

  () > (()) ;
  (, ()+4);
  (, ^);
  .(^, ".");
  := .(^);
  := 0; .(, , 1);
  .(, , 4);
  .()
;

-(-, -: );

  , : ;
  : ;

  (, ()+4);
  (, ^);
  .(^, ".");
  (, ()+4);
  (, ^);
  .(^, ".");
  := .(^, ^)
;

-(-: );

  : ;
  : ;

  (, ()+4);
  (, ^);
  .(^, ".");
  := .(^)
;

-(-: ; -, -: .);

  , : ;
  : .;
  : .;
  : ;
  : ;
  : ;
  : ;

  () > () ;
  := (, );
  ( # -1) ((, ) = -1)
    (, ()+4);
    (, ^);
    .(^, ".");
    (, ()+5);
    (, ^);
    .(^, ".");
    := .(^);
    := .(^);
    .()
      .(, , 1);
      .(, , 1)
    ;
    .();
    .();
    := .(^);
    := .(^);
    := 0;
    <
      .(, , 1);
      .(, , 1);
      ()
    ;
    := (());
    .(, , 1);
    .(, , );
    .(, , 1);
    .(, ++1);
    .()
      .(, , 1);
      .(, , 1)
    ;
    .();
    .();
    := .(^)
 
;

-(-: ; -: .; : );

  : ;
  : .;
  : .;
  : ;
  : ;
  : ;
  : ;

  () > () ;
  (, ()+4);
  (, ^);
  .(^, ".");
  .(^) ((, ) = -1)
    := .(^);
    := 0; .(, , 1);
    > () .(); ;
    .(, , 4);
    .();
    := .(^);
    .(, 0);
    := +1;
    .(, , 1);
    .(, .(^));
    := (());
    .(, , 1);
    .(, , );
    .(, , 1);
    = .
      := 1
        := 1; .(, , 1);
        := 0; .(, , 1)
     
   
      := 1 *.()
        := 0; .(, , 1)
     
    ;
    .()
 
;

-(-: );

  , : ;
  : .;
  : .;
  , : ;
  : ;
  , : ;
  : ;
  , : ;
  : ;
  : ;
  : ;

  (, ()+4);
  (, ^);
  .(^, ".");
  (, ()+5);
  (, ^);
  .(^, ".");
  .(^)
    := .(^);
    := .(^);
    .()
      .(, , 1);
      .(, , 1)
    ;
    .();
    .();
    := .(^);
    := 0; .(, , 1);
    .(, , 4);
    ( = ()) ( = 0)
      .(); := .(^);
    ;
    := .(^);
    .(, , 1);
    := +1;
    .(, , 4);
    := 0;
    := 1
      .(, , 1);
      .(, , 1);
      := 1
        .(, , 1);
        .(, , 1)
      ;
      .(, , 1);
      .(, , 1);
      = .
        := 1
          .(, , 1);
          .(, , 1);
          := 0; .(, , );
          .(, , );
          := 1
            .(, , 1);
            .(, , 1)
         
        ;
        := 1; .(, , 1);
        := 0; .(, , 1)
     
        := 1 .()*
          .(, , 1);
          .(, , 1)
        ;
        := 1 .()
          := 0; .(, , 1)
       
     
    ;
    .();
    .();
    := .(^)
 
;

-(-: ; -: .);

  , : ;
  : .;
  : .;
  : ;
  : ;
  : ;
  , : ;
  : ;
  : .;
  : ;
  , : ;
  : ;
  , : ;

  (, ()+4);
  (, ^);
  .(^, ".");
  (, ()+5);
  (, ^);
  .(^, ".");
  .(^)
    := .(^);
    := .(^);
    .()
      .(, , 1);
      .(, , 1)
    ;
    .();
    .();
    := .(^);
    := 0; .(, , 1);
    .(, , 4);
    := .(^);
    := -1;
    .(, , 1);
    .(, , 4);
    := ;
    := 0;
    ( ) ( .())
      .(, , 1);
      (, );
      .(, ^, );
      .(, , 1);
      .(^, )
        = .
          := 1
            .(, , 1);
            := 0; .(, , );
            .(, )
         
       
          .(, .()*)
        ;
        :=
     
        .(, , 1);
        .(, ^, );
        .(, , 1);
        = .
          := 1
            .(, , 1);
            .(, , 1);
            := 0; .(, , );
            := 1
              .(, , 1);
              .(, , 1)
           
         
       
          := 1 .()*
            .(, , 1);
            .(, , 1)
         
       
      ;
      :=
    ;
    .()
      .(, , 1);
      .(, , 1)
    ;
    .();
    .();
    := .(^);
   
      := .(^);
      .(, 0);
      .(, , 1);
      .()
   
 
;

-(-: ; : );
(* <>: [0; ) *)

  , : ;
  : .;
  : .;
  : ;
  : 4 ; : ;
  : ;
  , : ;
  : ;
  : .;
  : ;
  : ;
  , : ;

  (, ()+4);
  (, ^);
  .(^, ".");
  (, ()+5);
  (, ^);
  .(^, ".");
  .(^)
    := .(^);
    := .(^);
    .()
      .(, , 1);
      .(, , 1)
    ;
    .();
    .();
    := .(^);
    := 0; .(, , 1);
    .(, , 4);
    ( = 0) ( >= )
      .(); := .(^);
    ;
    := .(^);
    .(, , 1);
    := -1;
    .(, , 4);
    := 0;
    .()
      .(, , 1);
      (, );
      .(, ^, );
      .(, , 1);
      .(, , 1);
      .(, ^, );
      .(, , 1);
      := ;
      = .
        := 0;
        <
          .(, , 1);
          := 0; .(, , );
          .(, , 1);
          .(, , );
          := 1
            .(, , 1);
            .(, , 1)
          ;
          ()
        ;
        .(, , 1);
        := 0; .(, , );
        .(, .()+);
        := 0;
        < --1
          .(, , 1);
          := 0; .(, , );
          .(, , 1);
          .(, , );
          := 1
            .(, , 1);
            .(, , 1)
          ;
          ()
       
     
        := .();
        := 0;
        < *
          .(, , 1);
          .(, , 1);
          ()
        ;
        .(, .()+);
        := 0;
        < *(--1)
          .(, , 1);
          .(, , 1);
          ()
       
     
    ;
    .();
    .();
    := .(^)
 
;

(* *)

-(-: ; -: .; : ): ;

  : ;
  : ;
  : .;
  : ;
  : ;
  : ;
  , : ;

  := (, );
  # -1
    (, ()+4);
    (, ^);
    .(^, ".");
    := .(^);
    .(, );
    := 0; .(, , 1);
    .(, ++1);
    .(, , 1);
    = .
      := 0;
      <
        .(, , 1);
        := 0; .(, , );
        .(, .()+);
        ()
      ;
      .(, , 1);
      := 0; .(, , );
      .();
   
      .(); -1
   
 
    -1
 
;

-(-: ; -: .; : ; +: .; : );

  : ;
  : ;
  : .;
  : ;
  : ;
  : ;
  , : ;

  := (, );
  # -1
    (, ()+4);
    (, ^);
    .(^, ".");
    := .(^);
    .(, );
    := 0; .(, , 1);
    .(, ++1);
    .(, , 1);
    = .
      := 0;
      <
        .(, , 1);
        := 0; .(, , );
        .(, .()+);
        ()
      ;
      .(, , 1);
      := 0; .(, , );
      >
        .(, , )
     
        .(, , );
        := -1
          [] := 0
       
     
   
      .(, .()+.()*);
      .(, , )
    ;
    .()
 
;

-(-: ; -: .; : ; -: .; : );

  , : ;
  : ;
  : .;
  : .;
  : ;
  : ;
  , : ;
  : ;
  : ;

  := (, );
  # -1
    (, ()+4);
    (, ^);
    .(^, ".");
    := .(^);
    .(, );
    := 0; .(, , 1);
    .(, ++1);
    .(, , 1);
    = .
      := 0;
      <
        .(, , 1);
        := 0; .(, , );
        .(, .()+);
        ()
      ;
      (, ()+5);
      (, ^);
      .(^, ".");
      := .();
      .(, 0);
      := .(^);
      .()
        .(, , 1);
        .(, , 1)
      ;
      .();
      .();
      := .(^);
      := .(^);
      := 1
        .(, , 1);
        .(, , 1)
      ;
      := .(); 
      .(, , 1);
      .(, , );
      .(, , );
      .(, , 1);
      := 0; .(, , );
      .(, .()+);
      .()
        .(, , 1);
        .(, , 1)
      ;
      .();
      .();
      := .(^)
   
      := .();
      .();
      := .(^);
      .(, +*);
      .(, , );
      .()
   
 
;

(* *)

-(-: );

  : ;
  : .;
  : ;
  : ;
  : ;
  : ;
  : ;
  : ;
  : .;
  : .;
  : ;
  : ;
  (-: );
 
    .(" : ");
    .(); .(". : %d.", .(), 0, 0, 0)
  ;
  (-: .);
  : ;
 
    (, ());
    .(.(), .(^), (^)); .(^)
  ;

  .(' "'); .(); .('".^');
  (, ()+4);
  (, ^);
  .(^, ".");
  .(^) .(" ."); ;
  .(^) < 5 (" "); ;
  := .(^);
  .(, , 1);
  .(, , 4);
  < 0 (" "); .(); ;
  .(" :^  : %d;^  : %d.^:^", , , 0, 0);
  .()
    .(" .^");
    (( = 0) ( = 0)) (" ") ;
    .();
  ;
  := -1;
 
    .(, , 1);
    = 0
      .(); (" 0 ");
    ;
    .() (" "); .(); ;
    (, );
    := 0 -1
      .(, , 1);
      = 0
        (" "); .();
      ;
      [] := ;
      .() (" "); .();
    ;
    .("  "); (^); .("^"); := ;
    .(, , 1);
    .() (( # 0) ( = .))
      (" "); .();
    ;
   
      ., ., ., ., ., ., ., ., ., .:
   
      (" "); .();
    ;
    = .
      := 1
        .(, , 1);
        = 0
          (" 0 "); .();
        ;
        > 4
          (" "); .();
        ;
        (, );
        := 0 -1
          .() (" "); .(); ;
          .(, [], 1)
        ;
        .() ( # 0)
          (" "); .();
        ;
        := 0;
        .(.(^), .(), );
        := ;
        < 0
          (" "); .();
        ;
        <
          .(, .()+);
          .() (" "); .();
       
          .(, .()+-1);
          .() (" "); .(); ;
          .(, .()+1);
          .()
       
     
   
      .(, .()+.()*-1);
      .() (" "); .(); ;
      .(, .()+1);
      .()
    ;
    ()
  ;
  .();
  > 0
    (" , ")
  < 0
    (" , ")
 
    .(" .")
 
;

.


=================================
, .
=================================

;
;


  -   = 1;
  -  = 2;
  - = 3;
  -    = 4;
  - = 5;
  -    = 6;
  - = 7;
  -   = 8;
  -   = 9;
  -   = 0;

-(: ): ;

 
    :    2
  | :  1
  | : 2
  | :    4
  | : 8
  | :    4
  | : 8
  | :    1
  | :    4
  0
;

-(: ): ;

  : ;

  := 0;
  # 0
    := 100H;
    ()
  ;
 
;

-(1-, 2-: .): ;

  : ;

  (1) # (2)
    := 0 (1)-1
      1[] # 2[]
    ;
   
 
;

.


=================================
, .
=================================

;
, , ;

-(-: ; -: .; : ; : );

  .(, , , , .(.))
;

-(-: ; -: .; : ; : );

  .(, , , , .(.))
;

-(-: ; -: .; : ; : );

  .(, , , , .(.))
;

-(-: ; -: .; : ; : );

  .(, , , , .(.))
;

-(-: ; -: .; : ; : );

  .(, , , , .(.))
;

-(-: ; -: .; : ; : );

  .(, , , , .(.))
;

-(-: ; -: .; : ; : );

  .(, , , , .(.))
;

-(-: ; -: .; : ; : );

  .(, , , , .(.))
;

-(-: ; -: .; : ; : );

  .(, , , , .(.))
;

-(-: ; -: .; : ; -: ; : );

 
    .(, , , , ())
 
    .(, , , , ())
 
;

-(-: ; -: .; : ): ;

  : ;

  .(, , , , .(.));
 
;

-(-: ; -: .; : ): ;

  : ;

  .(, , , , .(.));
 
;

-(-: ; -: .; : ): ;

  : ;

  .(, , , , .(.));
 
;

-(-: ; -: .; : ): ;

  : ;

  .(, , , , .(.));
 
;

-(-: ; -: .; : ): ;

  : ;

  .(, , , , .(.));
 
;

-(-: ; -: .; : ): ;

  : ;

  .(, , , , .(.));
 
;

-(-: ; -: .; : ): ;

  : ;

  .(, , , , .(.));
 
;

-(-: ; -: .; : ): ;

  : ;

  .(, , , , .(.));
 
;

-(-: ; -: .; : ): ;

  : ;

  .(, , , , .(.));
 
;

-(-: ; -: .; : ; +: );

  : ;

  := .(, , );
  >= ()
    .(, , , , ())
 
    .(, , , , );
    [] := 0X
 
;

.
    .