*** [01] <{t001} --> [opened]>!
*** [02] <{t001} --> door>.
*** [03] <(&/, <(*, Self, {t002}) --> hold>, <(*, Self, {t001}) --> at>, (^open, {t001})) =/> <{t001} --> [opened]>>. 
*** [04] <(*, {t002}, {t001}) --> key-of>.
*** [05] <(&/, <(*, Self, {t002}) --> reachable>, (^pick, {t002})) =/> <(*, Self, {t002}) --> hold>>.
*** [06] <(&|, <(*, #x, #y(#x)) --> on>, <(*, Self, #y(#x)) --> at>) =|> <(*, Self, #x) --> reachable>>.
*** [07] <(*, {t002}, {t003}) --> on>. :|: 
*** [08] <{t003} --> desk>.
*** [09] <(^go-to, #x) =/> <(*, Self, #x) --> at>>.

********** [03 + 09 -> 10]:
  IN: <(^go-to,#1) =/> <(*,Self,#1) --> at>>.
  IN: <(&/,<(*,Self,{t002}) --> hold>,<(*,Self,{t001}) --> at>,(^open,{t001})) =/> <{t001} --> [opened]>>. 
2
 OUT: <(&/,<(*,Self,{t002}) --> hold>,(^go-to,{t001}),(^open,{t001})) =/> <{t001} --> [opened]>>. %1.00;0.81%

********** [10 + 05 -> 11]
  IN: <(&/,<(*,Self,{t002}) --> hold>,(^go-to,{t001}),(^open,{t001})) =/> <{t001} --> [opened]>>.  
  IN: <(&/,<(*,Self,{t002}) --> reachable>,(^pick,{t002})) =/> <(*,Self,{t002}) --> hold>>.  
14
 OUT: <(&/,<(*,Self,{t002}) --> reachable>,(^pick,{t002}),(^go-to,{t001}),(^open,{t001})) =/> <{t001} --> [opened]>>. %1.00;0.81% 

********** [06 + 07 -> 12]
  IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>.
  IN: <(*,{t002},{t003}) --> on>. :|:
7
 OUT: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :\: %1.00;0.81%

  IN: <(&|,<(*,#1,#2(#1)) --> on>,<(*,Self,#2(#1)) --> at>) =|> <(*,Self,#1) --> reachable>>. 
  IN: <(*,{t002},{t003}) --> on>. :|:  
7
 OUT: <<(*,Self,{t003}) --> at> =|> <(*,Self,{t002}) --> reachable>>. :\: %1.00;0.81%

********** [13 + 09 -> 14]
  IN: <(&/,<(*,Self,{t003}) --> at>,(^pick,{t002}),(^go-to,{t001}),(^open,{t001})) =/> <{t001} --> [opened]>>. :|: 
  IN: <(^go-to,#1) =/> <(*,Self,#1) --> at>>.  
16
 OUT: <(&/,(^go-to,{t003}),(^pick,{t002}),(^go-to,{t001}),(^open,{t001})) =/> <{t001} --> [opened]>>. :\: %1.00;0.81% 

********** [01 + 14 -> 15]
  IN: <{t001} --> [opened]>!  
  IN: <(&/,(^go-to,{t003}),(^pick,{t002}),(^go-to,{t001}),(^open,{t001})) =/> <{t001} --> [opened]>>. :|:
15
 OUT: (&/,(^go-to,{t003}),(^pick,{t002}),(^go-to,{t001}),(^open,{t001}))! %1.00;0.81%
