------------------------------------------------------------------------
-- A-Prolog Version 1.0, Written by Alexei A. Morozov                 --
--                                                                    --
-- File C:\WINDOWS\TEMP\A-PROLOG.LOG                                  --
-- created 26-08-2002 00:34:23                                        --
-- Source no_source_file                                              --
-- Library C:\WINDOWS\TEMP\A-PROLOG.BIN                               --
------------------------------------------------------------------------

package "D:\\MOROZOV\\Z\\DEMO\\EXE\\EXAMPLES\\SADT\\JAM\\JAM":

project:

        (('MODEL',
                project_name = "Model 2",
                creation_date = "19/3/1999",
                title = "ПРИГОТОВЛЕНИЕ ВАРЕНЬЯ",
                language_version = "1.2.8"))

------------------------------------------------------------------------
class 'Выбрать_ягоды_и_фрукты' specializing 'DIALOG':
value_o1;
identifier = "ChooseFruits";
[
]
------------------------------------------------------------------------
class 'Вымыть_банки_и_крышки' specializing 'SIMPLE_BLOCK': []
------------------------------------------------------------------------
class 'Вскипятить_воду_в_чайнике' specializing 'SIMPLE_BLOCK':
[
instrument
        = "Чайник".
]
------------------------------------------------------------------------
class 'Обработать_крышки_кипятком'
specializing 'SIMPLE_BLOCK':
[
instrument
        = "Кастрюля для кипячения воды".
]
------------------------------------------------------------------------
class 'Обработать_банки_кипятком' specializing 'SIMPLE_BLOCK':
[
instrument
        = "Чайник".
]
------------------------------------------------------------------------
class 'Просушить_банки_и_крышки' specializing 'SIMPLE_BLOCK': []
------------------------------------------------------------------------
class 'Вымыть_ягоды_и_фрукты' specializing 'SIMPLE_BLOCK':
value_i1;
protecting: value_o1;
[
goal:-!,
        value_o1 == value_i1.
--
instrument
        = "Дуршлаг".
]
------------------------------------------------------------------------
class 'Подготовить_смесь_из_твёрдых_ягод_и_сахара'
specializing 'COMPOUND_BLOCK':
value_i1;
[
goal:-!,
        check_fruits(value_i1).
--
check_fruits("Чёрная рябина").
]
------------------------------------------------------------------------
class 'Подготовить_смесь_из_крупных_фруктов_и_сахара'
specializing 'COMPOUND_BLOCK':
value_i1;
[
goal:-!,
        check_fruits(value_i1).
--
check_fruits("Яблоки \"Антоновка\"").
]
------------------------------------------------------------------------
class 'Подготовить_смесь_из_мягких_ягод_и_сахара'
specializing 'COMPOUND_BLOCK':
value_i1;
[
goal:-!,
        check_fruits(value_i1).
--
check_fruits("Земляника").
]
------------------------------------------------------------------------
class 'Вскипятить_воду_в_кастрюле'
specializing 'SIMPLE_BLOCK':
[
instrument
        = "Кастрюля для кипячения воды".
]
------------------------------------------------------------------------
class 'Приготовить_сироп' specializing 'SIMPLE_BLOCK':
value_i1;
value_o1;
[
goal:-!,
        value_o1 == value_i1.
--
instrument
        = "Кастрюля или медная миска".
instrument
        = "Деревянная ложка".
]
------------------------------------------------------------------------
class 'Бланшировать_ягоды' specializing 'SIMPLE_BLOCK':
value_i2;
value_o1;
[
goal:-!,
        value_o1 == value_i2.
--
instrument
        = "Дуршлаг".
instrument
        = "Кастрюля для кипячения воды".
]
------------------------------------------------------------------------
class 'Положить_ягоды_в_сироп' specializing 'SIMPLE_BLOCK':
value_i1;
value_o1;
[
goal:-!,
        value_o1 == value_i1.
--
instrument
        = "Кастрюля или медная миска".
]
------------------------------------------------------------------------
class 'Порезать_на_дольки' specializing 'SIMPLE_BLOCK':
value_i1;
value_o1;
[
goal:-!,
        value_o1 == value_i1.
--
instrument
        = "Нож из нержавеющей стали".
]
------------------------------------------------------------------------
class 'Пересыпать_сахаром' specializing 'SIMPLE_BLOCK':
value_i1;
value_o1;
[
goal:-!,
        value_o1 == value_i1.
--
instrument
        = "Кастрюля или медная миска".
]
------------------------------------------------------------------------
class 'Выстаивать_6-8_часов' specializing 'SIMPLE_BLOCK':
value_i1;
value_o1;
[
goal:-!,
        value_o1 == value_i1.
--
instrument
        = "Кастрюля или медная миска".
]
------------------------------------------------------------------------
class 'Добавить_в_смесь_воду' specializing 'SIMPLE_BLOCK':
value_i1;
value_o1;
[
goal:-!,
        value_o1 == value_i1.
--
instrument
        = "Кастрюля или медная миска".
]
------------------------------------------------------------------------
class 'Цикл_варки_твёрдых_ягод_и_фруктов'
specializing 'COMPOUND_BLOCK':
value_i1;
[
goal:-!,
        check_fruits(value_i1).
--
check_fruits("Чёрная рябина").
check_fruits("Яблоки \"Антоновка\"").
]
------------------------------------------------------------------------
class 'Цикл_варки_мягких_ягод_и_фруктов'
specializing 'COMPOUND_BLOCK':
value_i1;
[
goal:-!,
        check_fruits(value_i1).
--
check_fruits("Земляника").
]
------------------------------------------------------------------------
class 'Нагреть_смесь' specializing 'DIALOG':
value_i2;
time;
identifier = "HeatUpMixture";
fruits = value_i2;
[
goal:-!,
        set_time(value_i2,time).
--
set_time(#,"3-5"):-!.
set_time("Чёрная рябина","3"):-!.
set_time("Яблоки \"Антоновка\"",5):-!.
set_time("Земляника","---"):-!.
set_time(_,"3-5"):-!.
--
instrument
        = "Кастрюля или медная миска".
instrument
        = "Деревянная ложка".
]
------------------------------------------------------------------------
class 'Выстаивание' specializing 'SIMPLE_BLOCK':
[
instrument
        = "Кастрюля или медная миска".
]
------------------------------------------------------------------------
class 'Проверить_готовность_варенья'
specializing 'SIMPLE_BLOCK':
[
instrument
        = "Деревянная ложка".
instrument
        = "Блюдце".
]
------------------------------------------------------------------------
class 'Основной_этап_варки' specializing 'DIALOG':
value_i1;
time;
identifier = "HeatUpMixture";
fruits = value_i1;
[
goal:-!,
        set_time(value_i1,time).
--
set_time(#,"---"):-!.
set_time("Земляника","10"):-!.
set_time(_,"---"):-!.
--
instrument
        = "Кастрюля или медная миска".
instrument
        = "Деревянная ложка".
]
------------------------------------------------------------------------
class 'Дополнительный_этап_варки' specializing 'SIMPLE_BLOCK':
[
instrument
        = "Кастрюля или медная миска".
instrument
        = "Деревянная ложка".
]
------------------------------------------------------------------------
class 'Охладить_варенье' specializing 'SIMPLE_BLOCK':
[
instrument
        = "Кастрюля или медная миска".
]
------------------------------------------------------------------------
class 'Разлить_варенье_в_банки' specializing 'SIMPLE_BLOCK':
[
instrument
        = "Деревянная ложка".
instrument
        = "Машинка для закатки".
]
------------------------------------------------------------------------
class 'Проверить_готовность_варенья_(твёрдые_ягоды_и_фрукты)'
specializing 'SIMPLE_BLOCK':
[
instrument
        = "Блюдце".
]
------------------------------------------------------------------------
class 'Проверить_готовность_варенья_(мягкие_ягоды)'
specializing 'SIMPLE_BLOCK':
[
instrument
        = "Блюдце".
]
------------------------------------------------------------------------
class 'SIMPLE_BLOCK':
[
goal.
--
show(_).
]
------------------------------------------------------------------------
class 'Анализ_модели:_Какие_необходимы_посуда_и_инструменты?'
specializing 'DIALOG':
identifier = "ListOfInstruments";
title;
name;
number;
model;
x;
y;
text_color;
container;
con;
result;
instruments;
agent = (('FINDINSTRUMENTS',
        container = container,
        protecting: result = result));
[
goal:-
        refine_list(result,[],instruments),!.
goal:-!,
        [result].
--
refine_list([],LIST,LIST):-!.
refine_list([#|REST],LIST1,LIST2):-!,
        refine_list(REST,LIST1,LIST2).
refine_list([ITEM|REST],LIST1,LIST3):-
        is_list(ITEM),!,
        refine_list(ITEM,LIST1,LIST2),
        refine_list(REST,LIST2,LIST3).
refine_list([ITEM|REST],LIST1,LIST2):-
        is_not_element(ITEM,LIST1),!,
        refine_list(REST,[ITEM|LIST1],LIST2).
refine_list([_|REST],LIST1,LIST2):-!,
        refine_list(REST,LIST1,LIST2).
refine_list(_,LIST,LIST).
--
is_list([]):-!.
is_list([_|_]).
--
is_not_element(_,[]):-!.
is_not_element(ITEM,[ITEM|_]):-!,
        fail.
is_not_element(ITEM,[_|LIST]):-
        is_not_element(ITEM,LIST).
--
show(_):-
        show.
]
------------------------------------------------------------------------
class 'FINDINSTRUMENTS' specializing 'ALPHA':
container;
result;
agent = (('INSTRUMENTS',
        suspending: source_list = [],
        target_list = container,
        protecting: result = result));
[
goal:-!.
]
------------------------------------------------------------------------
class 'INSTRUMENTS' specializing 'ALPHA':
source_list;
target_list;
result;
tail_list;
tail_result;
tail = (('INSTRUMENTS',
        suspending: source_list = tail_list,
        target_list = target_list ?? instrument(),
        protecting: result = tail_result));
con = ('CONSOLE');
[
goal:-
        source_list == target_list,!,
        result == target_list.
goal:-
        tail_list == target_list,
        result == tail_result.
]
------------------------------------------------------------------------
class 'COMPOUND_BLOCK' specializing 'ALPHA':
c = ('CONSOLE');
[
instrument
        = BLOCK
        :-
        !,
        component(BLOCK).
]
------------------------------------------------------------------------
class 'MODEL' specializing 'ALPHA':
box = (('DIAGRAM-ROOT'));
project_name = "Model 2";
[
]
------------------------------------------------------------------------
class 'DIAGRAM-ROOT' specializing 'A-0':
link_1;
box_0 = (('DIAGRAM-A0',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "0i1",
                value = link_1),
        value_i1 = link_1,
        entry_i2 = ('ARROW',
                host = self,
                entry = "0i2",
                value = link_1),
        value_i2 = link_1,
        entry_i3 = ('ARROW',
                host = self,
                entry = "0i3",
                value = link_1),
        value_i3 = link_1,
        entry_i4 = ('ARROW',
                host = self,
                entry = "0i4",
                value = link_1),
        value_i4 = link_1,
        entry_m1 = ('ARROW',
                host = self,
                entry = "0m1",
                value = link_1),
        value_m1 = link_1,
        entry_m2 = ('ARROW',
                host = self,
                entry = "0m2",
                value = link_1),
        value_m2 = link_1,
        entry_c1 = ('ARROW',
                host = self,
                entry = "0c1",
                value = link_1),
        value_c1 = link_1,
        entry_m3 = ('ARROW',
                host = self,
                entry = "0m3",
                value = link_1),
        value_m3 = link_1,
        entry_m4 = ('ARROW',
                host = self,
                entry = "0m4",
                value = link_1),
        value_m4 = link_1,
        entry_c2 = ('ARROW',
                host = self,
                entry = "0c2",
                value = link_1),
        value_c2 = link_1,
        entry_m5 = ('ARROW',
                host = self,
                entry = "0m5",
                value = link_1),
        value_m5 = link_1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "0o1",
                value = link_1),
        value_o1 = link_1));
status = "WORKING";
revision_date = "10/6/1999";
creation_date = "19/3/1999";
title = "A-0";
name = "A-0";
number = 'root';
model;
x = 40.0;
y = 19.0;
container;
con = ('REPORT',
        title = "A-0",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'A-0' specializing 'COMPOUND_BLOCK':
box_0;
title;
name;
number;
model;
x;
y;
container;
con;
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A0' specializing 'ПРИГОТОВЛЕНИЕ_ВАРЕНЬЯ':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_i3;
value_i3;
entry_i4;
value_i4;
entry_m4;
value_m4;
entry_m3;
value_m3;
entry_m1;
value_m1;
entry_m5;
value_m5;
entry_o1;
value_o1;
link_1;
link_2;
link_3;
box_1 = (('DIAGRAM-A1',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "1i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "1o1",
                value = link_3),
        value_o1 = link_3));
box_2 = (('DIAGRAM-A2',
        container = self,
        entry_i2 = ('ARROW',
                host = self,
                entry = "2i2",
                value = value_i4),
        value_i2 = value_i4,
        entry_m1 = ('ARROW',
                host = self,
                entry = "2m1",
                value = value_m4),
        value_m1 = value_m4,
        entry_m3 = ('ARROW',
                host = self,
                entry = "2m3",
                value = value_m3),
        value_m3 = value_m3,
        entry_m2 = ('ARROW',
                host = self,
                entry = "2m2",
                value = value_m1),
        value_m2 = value_m1,
        entry_i1 = ('ARROW',
                host = self,
                entry = "2i1",
                value = value_i3),
        value_i1 = value_i3,
        entry_o1 = ('ARROW',
                host = self,
                entry = "2o1",
                value = link_1),
        value_o1 = link_1));
box_3 = (('DIAGRAM-A3',
        container = self,
        entry_i2 = ('ARROW',
                host = self,
                entry = "3i2",
                value = value_i2),
        value_i2 = value_i2,
        entry_i1 = ('ARROW',
                host = self,
                entry = "3i1",
                value = link_3),
        value_i1 = link_3,
        entry_i3 = ('ARROW',
                host = self,
                entry = "3i3",
                value = value_i3),
        value_i3 = value_i3,
        entry_m1 = ('ARROW',
                host = self,
                entry = "3m1",
                value = value_m3),
        value_m1 = value_m3,
        entry_m2 = ('ARROW',
                host = self,
                entry = "3m2",
                value = value_m1),
        value_m2 = value_m1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "3o1",
                value = link_2),
        value_o1 = link_2));
box_4 = (('DIAGRAM-A4',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "4i1",
                value = link_2),
        value_i1 = link_2,
        entry_m1 = ('ARROW',
                host = self,
                entry = "4m1",
                value = value_m3),
        value_m1 = value_m3,
        entry_o1 = ('ARROW',
                host = self,
                entry = "4o1",
                value = value_m1),
        value_o1 = value_m1));
box_5 = (('DIAGRAM-A5',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "5i1",
                value = value_m1),
        value_i1 = value_m1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "5o1",
                value = value_m1),
        value_o1 = value_m1));
box_6 = (('DIAGRAM-A6',
        container = self));
box_7 = (('DIAGRAM-A7',
        container = self,
        entry_m1 = ('ARROW',
                host = self,
                entry = "7m1",
                value = value_m5),
        value_m1 = value_m5,
        entry_i2 = ('ARROW',
                host = self,
                entry = "7i2",
                value = link_1),
        value_i2 = link_1,
        entry_i1 = ('ARROW',
                host = self,
                entry = "7i1",
                value = value_m1),
        value_i1 = value_m1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "7o1",
                value = value_o1),
        value_o1 = value_o1));
status = "WORKING";
revision_date = "10/6/1999";
creation_date = "19/3/1999";
title = "A0: ПРИГОТОВЛЕНИЕ ВАРЕНЬЯ";
name = "ПРИГОТОВЛЕНИЕ ВАРЕНЬЯ";
number = 0;
model;
x = 26.20667;
y = 15.79944;
container;
con = ('REPORT',
        title = "A0: ПРИГОТОВЛЕНИЕ_ВАРЕНЬЯ",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
component(box_1).
component(box_2).
component(box_3).
component(box_4).
component(box_5).
component(box_6).
component(box_7):-!.
"1i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"3i2"{|REST}:-!,
        entry_i2 ? 'message'{|REST}.
"2i2"{|REST}:-!,
        entry_i4 ? 'message'{|REST}.
"2m1"{|REST}:-!,
        entry_m4 ? 'message'{|REST}.
"7m1"{|REST}:-!,
        entry_m5 ? 'message'{|REST}.
"1o1"{|REST}:-!,
        box_3 << "i1"{|REST}.
"3i1"{|REST}:-!,
        box_1 << "o1"{|REST}.
"3o1"{|REST}:-!,
        box_4 << "i1"{|REST}.
"4i1"{|REST}:-!,
        box_3 << "o1"{|REST}.
"4o1"{|REST}:-!,
        box_5 << "i1"{|REST},
        box_7 << "i1"{|REST}.
"2o1"{|REST}:-!,
        box_7 << "i2"{|REST}.
"7i2"{|REST}:-!,
        box_2 << "o1"{|REST}.
"5o1"{|REST}:-!,
        box_7 << "i1"{|REST}.
"7o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"5i1"{|REST}:-!,
        box_4 << "o1"{|REST}.
"4m1"{|REST}:-!,
        entry_m3 ? 'message'{|REST}.
"2m3"{|REST}:-!,
        entry_m3 ? 'message'{|REST}.
"7i1"{|REST}:-!,
        entry_m1 ? 'message'{|REST},
        box_5 << "o1"{|REST},
        box_4 << "o1"{|REST}.
"2m2"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"2i1"{|REST}:-!,
        entry_i3 ? 'message'{|REST}.
"3i3"{|REST}:-!,
        entry_i3 ? 'message'{|REST}.
"3m1"{|REST}:-!,
        entry_m3 ? 'message'{|REST}.
"3m2"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"i1"{|REST}:-!,
        box_1 << "i1"{|REST}.
"i2"{|REST}:-!,
        box_3 << "i2"{|REST}.
"i3"{|REST}:-!,
        box_2 << "i1"{|REST},
        box_3 << "i3"{|REST}.
"i4"{|REST}:-!,
        box_2 << "i2"{|REST}.
"m4"{|REST}:-!,
        box_2 << "m1"{|REST}.
"m3"{|REST}:-!,
        box_4 << "m1"{|REST},
        box_2 << "m3"{|REST},
        box_3 << "m1"{|REST}.
"m1"{|REST}:-!,
        box_7 << "i1"{|REST},
        box_2 << "m2"{|REST},
        box_3 << "m2"{|REST}.
"m5"{|REST}:-!,
        box_7 << "m1"{|REST}.
"o1"{|REST}:-!,
        box_7 << "o1"{|REST}.
P("1i1",REST*):-!,
        entry_i1 ? P(REST*).
P("3i2",REST*):-!,
        entry_i2 ? P(REST*).
P("2i2",REST*):-!,
        entry_i4 ? P(REST*).
P("2m1",REST*):-!,
        entry_m4 ? P(REST*).
P("7m1",REST*):-!,
        entry_m5 ? P(REST*).
P("1o1",REST*):-!,
        box_3 << P("i1",REST*).
P("3i1",REST*):-!,
        box_1 << P("o1",REST*).
P("3o1",REST*):-!,
        box_4 << P("i1",REST*).
P("4i1",REST*):-!,
        box_3 << P("o1",REST*).
P("4o1",REST*):-!,
        box_5 << P("i1",REST*),
        box_7 << P("i1",REST*).
P("2o1",REST*):-!,
        box_7 << P("i2",REST*).
P("7i2",REST*):-!,
        box_2 << P("o1",REST*).
P("5o1",REST*):-!,
        box_7 << P("i1",REST*).
P("7o1",REST*):-!,
        entry_o1 ? P(REST*).
P("5i1",REST*):-!,
        box_4 << P("o1",REST*).
P("4m1",REST*):-!,
        entry_m3 ? P(REST*).
P("2m3",REST*):-!,
        entry_m3 ? P(REST*).
P("7i1",REST*):-!,
        entry_m1 ? P(REST*),
        box_5 << P("o1",REST*),
        box_4 << P("o1",REST*).
P("2m2",REST*):-!,
        entry_m1 ? P(REST*).
P("2i1",REST*):-!,
        entry_i3 ? P(REST*).
P("3i3",REST*):-!,
        entry_i3 ? P(REST*).
P("3m1",REST*):-!,
        entry_m3 ? P(REST*).
P("3m2",REST*):-!,
        entry_m1 ? P(REST*).
P("i1",REST*):-!,
        box_1 << P("i1",REST*).
P("i2",REST*):-!,
        box_3 << P("i2",REST*).
P("i3",REST*):-!,
        box_2 << P("i1",REST*),
        box_3 << P("i3",REST*).
P("i4",REST*):-!,
        box_2 << P("i2",REST*).
P("m4",REST*):-!,
        box_2 << P("m1",REST*).
P("m3",REST*):-!,
        box_4 << P("m1",REST*),
        box_2 << P("m3",REST*),
        box_3 << P("m1",REST*).
P("m1",REST*):-!,
        box_7 << P("i1",REST*),
        box_2 << P("m2",REST*),
        box_3 << P("m2",REST*).
P("m5",REST*):-!,
        box_7 << P("m1",REST*).
P("o1",REST*):-!,
        box_7 << P("o1",REST*).
]
------------------------------------------------------------------------
class 'ПРИГОТОВЛЕНИЕ_ВАРЕНЬЯ' specializing 'COMPOUND_BLOCK':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_i3;
value_i3;
entry_i4;
value_i4;
entry_m4;
value_m4;
entry_m3;
value_m3;
entry_m1;
value_m1;
entry_m5;
value_m5;
entry_o1;
value_o1;
box_1;
box_2;
box_3;
box_4;
box_5;
box_6;
box_7;
title;
name;
number;
model;
x;
y;
container;
con;
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A2'
specializing 'Стерилизовать_банки_и_крышки':
entry_i2;
value_i2;
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_m2;
value_m2;
entry_m3;
value_m3;
entry_o1;
value_o1;
link_1;
link_2;
link_3;
link_4;
box_1 = (('DIAGRAM-A21',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "1i1",
                value = value_i2),
        value_i1 = value_i2,
        entry_m1 = ('ARROW',
                host = self,
                entry = "1m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_m2 = ('ARROW',
                host = self,
                entry = "1m2",
                value = value_m2),
        value_m2 = value_m2,
        entry_o1 = ('ARROW',
                host = self,
                entry = "1o1",
                value = link_4),
        value_o1 = link_4));
box_2 = (('DIAGRAM-A22',
        container = self,
        entry_m1 = ('ARROW',
                host = self,
                entry = "2m1",
                value = value_m2),
        value_m1 = value_m2,
        entry_i1 = ('ARROW',
                host = self,
                entry = "2i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "2o1",
                value = link_3),
        value_o1 = link_3));
box_3 = (('DIAGRAM-A23',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "3i1",
                value = link_4),
        value_i1 = link_4,
        entry_i2 = ('ARROW',
                host = self,
                entry = "3i2",
                value = value_i1),
        value_i2 = value_i1,
        entry_m1 = ('ARROW',
                host = self,
                entry = "3m1",
                value = value_m2),
        value_m1 = value_m2,
        entry_o1 = ('ARROW',
                host = self,
                entry = "3o1",
                value = link_1),
        value_o1 = link_1));
box_4 = (('DIAGRAM-A24',
        container = self,
        entry_m1 = ('ARROW',
                host = self,
                entry = "4m1",
                value = link_3),
        value_m1 = link_3,
        entry_i1 = ('ARROW',
                host = self,
                entry = "4i1",
                value = link_4),
        value_i1 = link_4,
        entry_o1 = ('ARROW',
                host = self,
                entry = "4o1",
                value = link_2),
        value_o1 = link_2));
box_5 = (('DIAGRAM-A25',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "5i1",
                value = link_1),
        value_i1 = link_1,
        entry_i2 = ('ARROW',
                host = self,
                entry = "5i2",
                value = link_2),
        value_i2 = link_2,
        entry_o1 = ('ARROW',
                host = self,
                entry = "5o1",
                value = value_o1),
        value_o1 = value_o1));
status = "WORKING";
revision_date = "10/6/1999";
creation_date = "19/3/1999";
title = "A2: Стерилизовать банки и крышки";
name = "Стерилизовать банки и крышки";
number = 2;
model;
x = 14.43251;
y = 13.54224;
container;
con = ('REPORT',
        title = "A2: Стерилизовать_банки_и_крышки",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
component(box_1).
component(box_2).
component(box_3).
component(box_4).
component(box_5):-!.
"1i1"{|REST}:-!,
        entry_i2 ? 'message'{|REST}.
"1m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"1m2"{|REST}:-!,
        entry_m2 ? 'message'{|REST},
        entry_m3 ? 'message'{|REST}.
"1o1"{|REST}:-!,
        box_3 << "i1"{|REST},
        box_4 << "i1"{|REST}.
"3o1"{|REST}:-!,
        box_5 << "i1"{|REST}.
"5i1"{|REST}:-!,
        box_3 << "o1"{|REST}.
"4o1"{|REST}:-!,
        box_5 << "i2"{|REST}.
"5i2"{|REST}:-!,
        box_4 << "o1"{|REST}.
"2o1"{|REST}:-!,
        box_4 << "m1"{|REST}.
"4m1"{|REST}:-!,
        box_2 << "o1"{|REST}.
"5o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"3i1"{|REST}:-!,
        box_1 << "o1"{|REST}.
"3i2"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"2m1"{|REST}:-!,
        entry_m3 ? 'message'{|REST}.
"2i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"4i1"{|REST}:-!,
        box_1 << "o1"{|REST}.
"3m1"{|REST}:-!,
        entry_m3 ? 'message'{|REST}.
"i2"{|REST}:-!,
        box_1 << "i1"{|REST}.
"i1"{|REST}:-!,
        box_3 << "i2"{|REST},
        box_2 << "i1"{|REST}.
"m1"{|REST}:-!,
        box_1 << "m1"{|REST}.
"m2"{|REST}:-!,
        box_1 << "m2"{|REST}.
"m3"{|REST}:-!,
        box_1 << "m2"{|REST},
        box_2 << "m1"{|REST},
        box_3 << "m1"{|REST}.
"o1"{|REST}:-!,
        box_5 << "o1"{|REST}.
P("1i1",REST*):-!,
        entry_i2 ? P(REST*).
P("1m1",REST*):-!,
        entry_m1 ? P(REST*).
P("1m2",REST*):-!,
        entry_m2 ? P(REST*),
        entry_m3 ? P(REST*).
P("1o1",REST*):-!,
        box_3 << P("i1",REST*),
        box_4 << P("i1",REST*).
P("3o1",REST*):-!,
        box_5 << P("i1",REST*).
P("5i1",REST*):-!,
        box_3 << P("o1",REST*).
P("4o1",REST*):-!,
        box_5 << P("i2",REST*).
P("5i2",REST*):-!,
        box_4 << P("o1",REST*).
P("2o1",REST*):-!,
        box_4 << P("m1",REST*).
P("4m1",REST*):-!,
        box_2 << P("o1",REST*).
P("5o1",REST*):-!,
        entry_o1 ? P(REST*).
P("3i1",REST*):-!,
        box_1 << P("o1",REST*).
P("3i2",REST*):-!,
        entry_i1 ? P(REST*).
P("2m1",REST*):-!,
        entry_m3 ? P(REST*).
P("2i1",REST*):-!,
        entry_i1 ? P(REST*).
P("4i1",REST*):-!,
        box_1 << P("o1",REST*).
P("3m1",REST*):-!,
        entry_m3 ? P(REST*).
P("i2",REST*):-!,
        box_1 << P("i1",REST*).
P("i1",REST*):-!,
        box_3 << P("i2",REST*),
        box_2 << P("i1",REST*).
P("m1",REST*):-!,
        box_1 << P("m1",REST*).
P("m2",REST*):-!,
        box_1 << P("m2",REST*).
P("m3",REST*):-!,
        box_1 << P("m2",REST*),
        box_2 << P("m1",REST*),
        box_3 << P("m1",REST*).
P("o1",REST*):-!,
        box_5 << P("o1",REST*).
]
------------------------------------------------------------------------
class 'Стерилизовать_банки_и_крышки'
specializing 'COMPOUND_BLOCK':
entry_i2;
value_i2;
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_m2;
value_m2;
entry_m3;
value_m3;
entry_o1;
value_o1;
box_1;
box_2;
box_3;
box_4;
box_5;
title;
name;
number;
model;
x;
y;
container;
con;
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A4' specializing 'Варка':
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_o1;
value_o1;
box_1 = (('DIAGRAM-A41',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "1i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_m1 = ('ARROW',
                host = self,
                entry = "1m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "1o1",
                value = value_o1),
        value_o1 = value_o1));
box_2 = (('DIAGRAM-A42',
        container = self,
        entry_m1 = ('ARROW',
                host = self,
                entry = "2m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_i1 = ('ARROW',
                host = self,
                entry = "2i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "2o1",
                value = value_o1),
        value_o1 = value_o1));
status = "WORKING";
revision_date = "25/12/2000";
creation_date = "19/3/1999";
title = "A4: Варка";
name = "Варка";
number = 4;
model;
x = 35.32248;
y = 12.03768;
container;
con = ('REPORT',
        title = "A4: Варка",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
component(box_1).
component(box_2):-!.
"1o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"2o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"1i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"2m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"1m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"2i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"i1"{|REST}:-!,
        box_1 << "i1"{|REST},
        box_2 << "i1"{|REST}.
"m1"{|REST}:-!,
        box_2 << "m1"{|REST},
        box_1 << "m1"{|REST}.
"o1"{|REST}:-!,
        box_1 << "o1"{|REST},
        box_2 << "o1"{|REST}.
P("1o1",REST*):-!,
        entry_o1 ? P(REST*).
P("2o1",REST*):-!,
        entry_o1 ? P(REST*).
P("1i1",REST*):-!,
        entry_i1 ? P(REST*).
P("2m1",REST*):-!,
        entry_m1 ? P(REST*).
P("1m1",REST*):-!,
        entry_m1 ? P(REST*).
P("2i1",REST*):-!,
        entry_i1 ? P(REST*).
P("i1",REST*):-!,
        box_1 << P("i1",REST*),
        box_2 << P("i1",REST*).
P("m1",REST*):-!,
        box_2 << P("m1",REST*),
        box_1 << P("m1",REST*).
P("o1",REST*):-!,
        box_1 << P("o1",REST*),
        box_2 << P("o1",REST*).
]
------------------------------------------------------------------------
class 'Варка' specializing 'COMPOUND_BLOCK':
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_o1;
value_o1;
box_1;
box_2;
title;
name;
number;
model;
x;
y;
container;
con;
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A41'
specializing 'Цикл_варки_твёрдых_ягод_и_фруктов':
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_o1;
value_o1;
link_1;
link_2;
link_3;
box_1 = (('DIAGRAM-A411',
        container = self,
        entry_i2 = ('ARROW',
                host = self,
                entry = "1i2",
                value = value_i1),
        value_i2 = value_i1,
        entry_m1 = ('ARROW',
                host = self,
                entry = "1m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_i1 = ('ARROW',
                host = self,
                entry = "1i1",
                value = link_1),
        value_i1 = link_1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "1o1",
                value = link_3),
        value_o1 = link_3,
        entry_o2 = ('ARROW',
                host = self,
                entry = "1o2",
                value = link_2),
        value_o2 = link_2));
box_2 = (('DIAGRAM-A412',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "2i1",
                value = link_3),
        value_i1 = link_3,
        entry_o1 = ('ARROW',
                host = self,
                entry = "2o1",
                value = link_1),
        value_o1 = link_1));
box_3 = (('DIAGRAM-A413',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "3i1",
                value = link_2),
        value_i1 = link_2,
        entry_o1 = ('ARROW',
                host = self,
                entry = "3o1",
                value = link_1),
        value_o1 = link_1,
        entry_o2 = ('ARROW',
                host = self,
                entry = "3o2",
                value = value_o1),
        value_o2 = value_o1));
status = "WORKING";
revision_date = "25/12/2000";
creation_date = "2/4/1999";
title = "A41: Цикл варки твёрдых ягод и фруктов";
name = "Цикл варки твёрдых ягод и фруктов";
number = 1;
model;
x = 22.02915;
y = 10.34472;
container;
con = ('REPORT',
        title = "A41: Цикл_варки_твёрдых_ягод_и_фруктов",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
component(box_1).
component(box_2).
component(box_3):-!.
"1i2"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"1m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"1o1"{|REST}:-!,
        box_2 << "i1"{|REST}.
"2i1"{|REST}:-!,
        box_1 << "o1"{|REST}.
"1o2"{|REST}:-!,
        box_3 << "i1"{|REST}.
"3i1"{|REST}:-!,
        box_1 << "o2"{|REST}.
"2o1"{|REST}:-!,
        box_1 << "i1"{|REST}.
"3o1"{|REST}:-!,
        box_1 << "i1"{|REST}.
"3o2"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"1i1"{|REST}:-!,
        box_2 << "o1"{|REST},
        box_3 << "o1"{|REST}.
"i1"{|REST}:-!,
        box_1 << "i2"{|REST}.
"m1"{|REST}:-!,
        box_1 << "m1"{|REST}.
"o1"{|REST}:-!,
        box_3 << "o2"{|REST}.
P("1i2",REST*):-!,
        entry_i1 ? P(REST*).
P("1m1",REST*):-!,
        entry_m1 ? P(REST*).
P("1o1",REST*):-!,
        box_2 << P("i1",REST*).
P("2i1",REST*):-!,
        box_1 << P("o1",REST*).
P("1o2",REST*):-!,
        box_3 << P("i1",REST*).
P("3i1",REST*):-!,
        box_1 << P("o2",REST*).
P("2o1",REST*):-!,
        box_1 << P("i1",REST*).
P("3o1",REST*):-!,
        box_1 << P("i1",REST*).
P("3o2",REST*):-!,
        entry_o1 ? P(REST*).
P("1i1",REST*):-!,
        box_2 << P("o1",REST*),
        box_3 << P("o1",REST*).
P("i1",REST*):-!,
        box_1 << P("i2",REST*).
P("m1",REST*):-!,
        box_1 << P("m1",REST*).
P("o1",REST*):-!,
        box_3 << P("o2",REST*).
]
------------------------------------------------------------------------
class 'DIAGRAM-A3' specializing 'Подготовить_ягоды_и_фрукты':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_i3;
value_i3;
entry_m2;
value_m2;
entry_m1;
value_m1;
entry_o1;
value_o1;
link_1;
box_1 = (('DIAGRAM-A31',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "1i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_m1 = ('ARROW',
                host = self,
                entry = "1m1",
                value = value_m2),
        value_m1 = value_m2,
        entry_o1 = ('ARROW',
                host = self,
                entry = "1o1",
                value = link_1),
        value_o1 = link_1));
box_2 = (('DIAGRAM-A32',
        container = self,
        entry_i2 = ('ARROW',
                host = self,
                entry = "2i2",
                value = value_i2),
        value_i2 = value_i2,
        entry_i3 = ('ARROW',
                host = self,
                entry = "2i3",
                value = value_i3),
        value_i3 = value_i3,
        entry_m1 = ('ARROW',
                host = self,
                entry = "2m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_i1 = ('ARROW',
                host = self,
                entry = "2i1",
                value = link_1),
        value_i1 = link_1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "2o1",
                value = value_o1),
        value_o1 = value_o1));
status = "WORKING";
revision_date = "10/6/1999";
creation_date = "2/4/1999";
title = "A3: Подготовить ягоды и фрукты";
name = "Подготовить ягоды и фрукты";
number = 3;
model;
x = 23.92752;
y = 7.71168;
container;
con = ('REPORT',
        title = "A3: Подготовить_ягоды_и_фрукты",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
component(box_1).
component(box_2):-!.
"1i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"2i2"{|REST}:-!,
        entry_i2 ? 'message'{|REST}.
"2i3"{|REST}:-!,
        entry_i3 ? 'message'{|REST}.
"1m1"{|REST}:-!,
        entry_m2 ? 'message'{|REST}.
"2m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"1o1"{|REST}:-!,
        box_2 << "i1"{|REST}.
"2i1"{|REST}:-!,
        box_1 << "o1"{|REST}.
"2o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"i1"{|REST}:-!,
        box_1 << "i1"{|REST}.
"i2"{|REST}:-!,
        box_2 << "i2"{|REST}.
"i3"{|REST}:-!,
        box_2 << "i3"{|REST}.
"m2"{|REST}:-!,
        box_1 << "m1"{|REST}.
"m1"{|REST}:-!,
        box_2 << "m1"{|REST}.
"o1"{|REST}:-!,
        box_2 << "o1"{|REST}.
P("1i1",REST*):-!,
        entry_i1 ? P(REST*).
P("2i2",REST*):-!,
        entry_i2 ? P(REST*).
P("2i3",REST*):-!,
        entry_i3 ? P(REST*).
P("1m1",REST*):-!,
        entry_m2 ? P(REST*).
P("2m1",REST*):-!,
        entry_m1 ? P(REST*).
P("1o1",REST*):-!,
        box_2 << P("i1",REST*).
P("2i1",REST*):-!,
        box_1 << P("o1",REST*).
P("2o1",REST*):-!,
        entry_o1 ? P(REST*).
P("i1",REST*):-!,
        box_1 << P("i1",REST*).
P("i2",REST*):-!,
        box_2 << P("i2",REST*).
P("i3",REST*):-!,
        box_2 << P("i3",REST*).
P("m2",REST*):-!,
        box_1 << P("m1",REST*).
P("m1",REST*):-!,
        box_2 << P("m1",REST*).
P("o1",REST*):-!,
        box_2 << P("o1",REST*).
]
------------------------------------------------------------------------
class 'Подготовить_ягоды_и_фрукты'
specializing 'COMPOUND_BLOCK':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_i3;
value_i3;
entry_m2;
value_m2;
entry_m1;
value_m1;
entry_o1;
value_o1;
box_1;
box_2;
title;
name;
number;
model;
x;
y;
container;
con;
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A32' specializing 'Подготовить_сахарную_смесь':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_i3;
value_i3;
entry_m1;
value_m1;
entry_o1;
value_o1;
box_1 = (('DIAGRAM-A321',
        container = self,
        entry_m1 = ('ARROW',
                host = self,
                entry = "1m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_i1 = ('ARROW',
                host = self,
                entry = "1i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_i2 = ('ARROW',
                host = self,
                entry = "1i2",
                value = value_i2),
        value_i2 = value_i2,
        entry_i3 = ('ARROW',
                host = self,
                entry = "1i3",
                value = value_o1),
        value_i3 = value_o1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "1o1",
                value = value_o1),
        value_o1 = value_o1));
box_2 = (('DIAGRAM-A322',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "2i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_i2 = ('ARROW',
                host = self,
                entry = "2i2",
                value = value_i2),
        value_i2 = value_i2,
        entry_i3 = ('ARROW',
                host = self,
                entry = "2i3",
                value = value_o1),
        value_i3 = value_o1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "2o1",
                value = value_o1),
        value_o1 = value_o1));
box_3 = (('DIAGRAM-A323',
        container = self,
        entry_i2 = ('ARROW',
                host = self,
                entry = "3i2",
                value = value_i2),
        value_i2 = value_i2,
        entry_i1 = ('ARROW',
                host = self,
                entry = "3i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "3o1",
                value = value_o1),
        value_o1 = value_o1));
status = "WORKING";
revision_date = "10/6/1999";
creation_date = "2/4/1999";
title = "A32: Подготовить сахарную смесь";
name = "Подготовить сахарную смесь";
number = 2;
model;
x = 42.53834;
y = 17.49216;
container;
con = ('REPORT',
        title = "A32: Подготовить_сахарную_смесь",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
component(box_1).
component(box_2).
component(box_3):-!.
"1m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"1o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"2o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"3o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"1i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"1i2"{|REST}:-!,
        entry_i2 ? 'message'{|REST}.
"1i3"{|REST}:-!,
        entry_i3 ? 'message'{|REST}.
"2i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"2i2"{|REST}:-!,
        entry_i2 ? 'message'{|REST}.
"2i3"{|REST}:-!,
        entry_i3 ? 'message'{|REST}.
"3i2"{|REST}:-!,
        entry_i2 ? 'message'{|REST}.
"3i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"i1"{|REST}:-!,
        box_1 << "i1"{|REST},
        box_2 << "i1"{|REST},
        box_3 << "i1"{|REST}.
"i2"{|REST}:-!,
        box_1 << "i2"{|REST},
        box_2 << "i2"{|REST},
        box_3 << "i2"{|REST}.
"i3"{|REST}:-!,
        box_1 << "i3"{|REST},
        entry_o1 ? 'message'{|REST},
        box_2 << "i3"{|REST}.
"m1"{|REST}:-!,
        box_1 << "m1"{|REST}.
"o1"{|REST}:-!,
        box_3 << "o1"{|REST},
        entry_i3 ? 'message'{|REST},
        box_1 << "o1"{|REST},
        box_2 << "o1"{|REST}.
P("1m1",REST*):-!,
        entry_m1 ? P(REST*).
P("1o1",REST*):-!,
        entry_o1 ? P(REST*).
P("2o1",REST*):-!,
        entry_o1 ? P(REST*).
P("3o1",REST*):-!,
        entry_o1 ? P(REST*).
P("1i1",REST*):-!,
        entry_i1 ? P(REST*).
P("1i2",REST*):-!,
        entry_i2 ? P(REST*).
P("1i3",REST*):-!,
        entry_i3 ? P(REST*).
P("2i1",REST*):-!,
        entry_i1 ? P(REST*).
P("2i2",REST*):-!,
        entry_i2 ? P(REST*).
P("2i3",REST*):-!,
        entry_i3 ? P(REST*).
P("3i2",REST*):-!,
        entry_i2 ? P(REST*).
P("3i1",REST*):-!,
        entry_i1 ? P(REST*).
P("i1",REST*):-!,
        box_1 << P("i1",REST*),
        box_2 << P("i1",REST*),
        box_3 << P("i1",REST*).
P("i2",REST*):-!,
        box_1 << P("i2",REST*),
        box_2 << P("i2",REST*),
        box_3 << P("i2",REST*).
P("i3",REST*):-!,
        box_1 << P("i3",REST*),
        entry_o1 ? P(REST*),
        box_2 << P("i3",REST*).
P("m1",REST*):-!,
        box_1 << P("m1",REST*).
P("o1",REST*):-!,
        box_3 << P("o1",REST*),
        entry_i3 ? P(REST*),
        box_1 << P("o1",REST*),
        box_2 << P("o1",REST*).
]
------------------------------------------------------------------------
class 'Подготовить_сахарную_смесь'
specializing 'COMPOUND_BLOCK':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_i3;
value_i3;
entry_m1;
value_m1;
entry_o1;
value_o1;
box_1;
box_2;
box_3;
title;
name;
number;
model;
x;
y;
container;
con;
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A321'
specializing 'Подготовить_смесь_из_твёрдых_ягод_и_сахара':
entry_i3;
value_i3;
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_m1;
value_m1;
entry_o1;
value_o1;
link_1;
link_2;
link_3;
box_1 = (('DIAGRAM-A3211',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "1i1",
                value = value_i3),
        value_i1 = value_i3,
        entry_m1 = ('ARROW',
                host = self,
                entry = "1m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "1o1",
                value = link_3),
        value_o1 = link_3));
box_2 = (('DIAGRAM-A3212',
        container = self,
        entry_i2 = ('ARROW',
                host = self,
                entry = "2i2",
                value = value_i2),
        value_i2 = value_i2,
        entry_i1 = ('ARROW',
                host = self,
                entry = "2i1",
                value = value_i3),
        value_i1 = value_i3,
        entry_m1 = ('ARROW',
                host = self,
                entry = "2m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "2o1",
                value = link_2),
        value_o1 = link_2));
box_3 = (('DIAGRAM-A3213',
        container = self,
        entry_i2 = ('ARROW',
                host = self,
                entry = "3i2",
                value = value_i1),
        value_i2 = value_i1,
        entry_i1 = ('ARROW',
                host = self,
                entry = "3i1",
                value = link_3),
        value_i1 = link_3,
        entry_m1 = ('ARROW',
                host = self,
                entry = "3m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "3o1",
                value = link_1),
        value_o1 = link_1));
box_4 = (('DIAGRAM-A3214',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "4i1",
                value = link_1),
        value_i1 = link_1,
        entry_i2 = ('ARROW',
                host = self,
                entry = "4i2",
                value = link_2),
        value_i2 = link_2,
        entry_o1 = ('ARROW',
                host = self,
                entry = "4o1",
                value = value_o1),
        value_o1 = value_o1));
status = "WORKING";
revision_date = "24/8/2002";
creation_date = "2/4/1999";
title = "A321: Подготовить смесь из твёрдых ягод и сахара";
name = "Подготовить смесь из твёрдых ягод и сахара";
number = 1;
model;
x = 20.12999;
y = 7.8996;
container;
con = ('REPORT',
        title = "A321: Подготовить_смесь_из_твёрдых_ягод_и_сахара",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
component(box_1).
component(box_2).
component(box_3).
component(box_4):-!.
"3i2"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"2i2"{|REST}:-!,
        entry_i2 ? 'message'{|REST}.
"1o1"{|REST}:-!,
        box_3 << "i1"{|REST}.
"3i1"{|REST}:-!,
        box_1 << "o1"{|REST}.
"3o1"{|REST}:-!,
        box_4 << "i1"{|REST}.
"4i1"{|REST}:-!,
        box_3 << "o1"{|REST}.
"2o1"{|REST}:-!,
        box_4 << "i2"{|REST}.
"4i2"{|REST}:-!,
        box_2 << "o1"{|REST}.
"4o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"1i1"{|REST}:-!,
        entry_i3 ? 'message'{|REST}.
"1m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"3m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"2i1"{|REST}:-!,
        entry_i3 ? 'message'{|REST}.
"2m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"i3"{|REST}:-!,
        box_1 << "i1"{|REST},
        box_2 << "i1"{|REST}.
"i1"{|REST}:-!,
        box_3 << "i2"{|REST}.
"i2"{|REST}:-!,
        box_2 << "i2"{|REST}.
"m1"{|REST}:-!,
        box_3 << "m1"{|REST},
        box_1 << "m1"{|REST},
        box_2 << "m1"{|REST}.
"o1"{|REST}:-!,
        box_4 << "o1"{|REST}.
P("3i2",REST*):-!,
        entry_i1 ? P(REST*).
P("2i2",REST*):-!,
        entry_i2 ? P(REST*).
P("1o1",REST*):-!,
        box_3 << P("i1",REST*).
P("3i1",REST*):-!,
        box_1 << P("o1",REST*).
P("3o1",REST*):-!,
        box_4 << P("i1",REST*).
P("4i1",REST*):-!,
        box_3 << P("o1",REST*).
P("2o1",REST*):-!,
        box_4 << P("i2",REST*).
P("4i2",REST*):-!,
        box_2 << P("o1",REST*).
P("4o1",REST*):-!,
        entry_o1 ? P(REST*).
P("1i1",REST*):-!,
        entry_i3 ? P(REST*).
P("1m1",REST*):-!,
        entry_m1 ? P(REST*).
P("3m1",REST*):-!,
        entry_m1 ? P(REST*).
P("2i1",REST*):-!,
        entry_i3 ? P(REST*).
P("2m1",REST*):-!,
        entry_m1 ? P(REST*).
P("i3",REST*):-!,
        box_1 << P("i1",REST*),
        box_2 << P("i1",REST*).
P("i1",REST*):-!,
        box_3 << P("i2",REST*).
P("i2",REST*):-!,
        box_2 << P("i2",REST*).
P("m1",REST*):-!,
        box_3 << P("m1",REST*),
        box_1 << P("m1",REST*),
        box_2 << P("m1",REST*).
P("o1",REST*):-!,
        box_4 << P("o1",REST*).
]
------------------------------------------------------------------------
class 'DIAGRAM-A322'
specializing 'Подготовить_смесь_из_крупных_фруктов_и_сахара':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_i3;
value_i3;
entry_o1;
value_o1;
link_1;
link_2;
link_3;
box_1 = (('DIAGRAM-A3221',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "1i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "1o1",
                value = link_3),
        value_o1 = link_3));
box_2 = (('DIAGRAM-A3222',
        container = self,
        entry_i2 = ('ARROW',
                host = self,
                entry = "2i2",
                value = value_i2),
        value_i2 = value_i2,
        entry_i1 = ('ARROW',
                host = self,
                entry = "2i1",
                value = link_3),
        value_i1 = link_3,
        entry_o1 = ('ARROW',
                host = self,
                entry = "2o1",
                value = link_2),
        value_o1 = link_2));
box_3 = (('DIAGRAM-A3223',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "3i1",
                value = link_2),
        value_i1 = link_2,
        entry_o1 = ('ARROW',
                host = self,
                entry = "3o1",
                value = link_1),
        value_o1 = link_1));
box_4 = (('DIAGRAM-A3224',
        container = self,
        entry_i2 = ('ARROW',
                host = self,
                entry = "4i2",
                value = value_i3),
        value_i2 = value_i3,
        entry_i1 = ('ARROW',
                host = self,
                entry = "4i1",
                value = link_1),
        value_i1 = link_1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "4o1",
                value = value_o1),
        value_o1 = value_o1));
status = "WORKING";
revision_date = "10/6/1999";
creation_date = "2/4/1999";
title = "A322: Подготовить смесь из крупных фруктов и сахара";
name = "Подготовить смесь из крупных фруктов и сахара";
number = 2;
model;
x = 33.80252;
y = 13.7304;
container;
con = ('REPORT',
        title = "A322: Подготовить_смесь_из_крупных_фруктов_и_сахара",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
component(box_1).
component(box_2).
component(box_3).
component(box_4):-!.
"1i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"2i2"{|REST}:-!,
        entry_i2 ? 'message'{|REST}.
"4i2"{|REST}:-!,
        entry_i3 ? 'message'{|REST}.
"1o1"{|REST}:-!,
        box_2 << "i1"{|REST}.
"2i1"{|REST}:-!,
        box_1 << "o1"{|REST}.
"2o1"{|REST}:-!,
        box_3 << "i1"{|REST}.
"3i1"{|REST}:-!,
        box_2 << "o1"{|REST}.
"3o1"{|REST}:-!,
        box_4 << "i1"{|REST}.
"4i1"{|REST}:-!,
        box_3 << "o1"{|REST}.
"4o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"i1"{|REST}:-!,
        box_1 << "i1"{|REST}.
"i2"{|REST}:-!,
        box_2 << "i2"{|REST}.
"i3"{|REST}:-!,
        box_4 << "i2"{|REST}.
"o1"{|REST}:-!,
        box_4 << "o1"{|REST}.
P("1i1",REST*):-!,
        entry_i1 ? P(REST*).
P("2i2",REST*):-!,
        entry_i2 ? P(REST*).
P("4i2",REST*):-!,
        entry_i3 ? P(REST*).
P("1o1",REST*):-!,
        box_2 << P("i1",REST*).
P("2i1",REST*):-!,
        box_1 << P("o1",REST*).
P("2o1",REST*):-!,
        box_3 << P("i1",REST*).
P("3i1",REST*):-!,
        box_2 << P("o1",REST*).
P("3o1",REST*):-!,
        box_4 << P("i1",REST*).
P("4i1",REST*):-!,
        box_3 << P("o1",REST*).
P("4o1",REST*):-!,
        entry_o1 ? P(REST*).
P("i1",REST*):-!,
        box_1 << P("i1",REST*).
P("i2",REST*):-!,
        box_2 << P("i2",REST*).
P("i3",REST*):-!,
        box_4 << P("i2",REST*).
P("o1",REST*):-!,
        box_4 << P("o1",REST*).
]
------------------------------------------------------------------------
class 'DIAGRAM-A323'
specializing 'Подготовить_смесь_из_мягких_ягод_и_сахара':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_o1;
value_o1;
link_1;
box_1 = (('DIAGRAM-A3231',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "1i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_i2 = ('ARROW',
                host = self,
                entry = "1i2",
                value = value_i2),
        value_i2 = value_i2,
        entry_o1 = ('ARROW',
                host = self,
                entry = "1o1",
                value = link_1),
        value_o1 = link_1));
box_2 = (('DIAGRAM-A3232',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "2i1",
                value = link_1),
        value_i1 = link_1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "2o1",
                value = value_o1),
        value_o1 = value_o1));
status = "WORKING";
revision_date = "10/6/1999";
creation_date = "2/4/1999";
title = "A323: Подготовить смесь из мягких ягод и сахара";
name = "Подготовить смесь из мягких ягод и сахара";
number = 3;
model;
x = 42.91833;
y = 19.18488;
container;
con = ('REPORT',
        title = "A323: Подготовить_смесь_из_мягких_ягод_и_сахара",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
component(box_1).
component(box_2):-!.
"1i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"1i2"{|REST}:-!,
        entry_i2 ? 'message'{|REST}.
"1o1"{|REST}:-!,
        box_2 << "i1"{|REST}.
"2i1"{|REST}:-!,
        box_1 << "o1"{|REST}.
"2o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"i1"{|REST}:-!,
        box_1 << "i1"{|REST}.
"i2"{|REST}:-!,
        box_1 << "i2"{|REST}.
"o1"{|REST}:-!,
        box_2 << "o1"{|REST}.
P("1i1",REST*):-!,
        entry_i1 ? P(REST*).
P("1i2",REST*):-!,
        entry_i2 ? P(REST*).
P("1o1",REST*):-!,
        box_2 << P("i1",REST*).
P("2i1",REST*):-!,
        box_1 << P("o1",REST*).
P("2o1",REST*):-!,
        entry_o1 ? P(REST*).
P("i1",REST*):-!,
        box_1 << P("i1",REST*).
P("i2",REST*):-!,
        box_1 << P("i2",REST*).
P("o1",REST*):-!,
        box_2 << P("o1",REST*).
]
------------------------------------------------------------------------
class 'DIAGRAM-A42'
specializing 'Цикл_варки_мягких_ягод_и_фруктов':
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_o1;
value_o1;
link_1;
link_2;
box_1 = (('DIAGRAM-A421',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "1i1",
                value = value_i1),
        value_i1 = value_i1,
        entry_m1 = ('ARROW',
                host = self,
                entry = "1m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "1o1",
                value = link_2),
        value_o1 = link_2));
box_2 = (('DIAGRAM-A422',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "2i1",
                value = link_2),
        value_i1 = link_2,
        entry_o1 = ('ARROW',
                host = self,
                entry = "2o1",
                value = value_o1),
        value_o1 = value_o1,
        entry_o2 = ('ARROW',
                host = self,
                entry = "2o2",
                value = link_1),
        value_o2 = link_1));
box_3 = (('DIAGRAM-A423',
        container = self,
        entry_i1 = ('ARROW',
                host = self,
                entry = "3i1",
                value = link_1),
        value_i1 = link_1,
        entry_m1 = ('ARROW',
                host = self,
                entry = "3m1",
                value = value_m1),
        value_m1 = value_m1,
        entry_o1 = ('ARROW',
                host = self,
                entry = "3o1",
                value = value_o1),
        value_o1 = value_o1));
status = "WORKING";
revision_date = "5/10/2000";
creation_date = "2/4/1999";
title = "A42: Цикл варки мягких ягод и фруктов";
name = "Цикл варки мягких ягод и фруктов";
number = 2;
model;
x = 46.33666;
y = 16.73976;
container;
con = ('REPORT',
        title = "A42: Цикл_варки_мягких_ягод_и_фруктов",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
component(box_1).
component(box_2).
component(box_3):-!.
"1i1"{|REST}:-!,
        entry_i1 ? 'message'{|REST}.
"1o1"{|REST}:-!,
        box_2 << "i1"{|REST}.
"2i1"{|REST}:-!,
        box_1 << "o1"{|REST}.
"2o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"2o2"{|REST}:-!,
        box_3 << "i1"{|REST}.
"3i1"{|REST}:-!,
        box_2 << "o2"{|REST}.
"3o1"{|REST}:-!,
        entry_o1 ? 'message'{|REST}.
"1m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"3m1"{|REST}:-!,
        entry_m1 ? 'message'{|REST}.
"i1"{|REST}:-!,
        box_1 << "i1"{|REST}.
"m1"{|REST}:-!,
        box_1 << "m1"{|REST},
        box_3 << "m1"{|REST}.
"o1"{|REST}:-!,
        box_2 << "o1"{|REST},
        box_3 << "o1"{|REST}.
P("1i1",REST*):-!,
        entry_i1 ? P(REST*).
P("1o1",REST*):-!,
        box_2 << P("i1",REST*).
P("2i1",REST*):-!,
        box_1 << P("o1",REST*).
P("2o1",REST*):-!,
        entry_o1 ? P(REST*).
P("2o2",REST*):-!,
        box_3 << P("i1",REST*).
P("3i1",REST*):-!,
        box_2 << P("o2",REST*).
P("3o1",REST*):-!,
        entry_o1 ? P(REST*).
P("1m1",REST*):-!,
        entry_m1 ? P(REST*).
P("3m1",REST*):-!,
        entry_m1 ? P(REST*).
P("i1",REST*):-!,
        box_1 << P("i1",REST*).
P("m1",REST*):-!,
        box_1 << P("m1",REST*),
        box_3 << P("m1",REST*).
P("o1",REST*):-!,
        box_2 << P("o1",REST*),
        box_3 << P("o1",REST*).
]
------------------------------------------------------------------------
class 'DIAGRAM-A1' specializing 'Выбрать_ягоды_и_фрукты':
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A1: Выбрать ягоды и фрукты";
name = "Выбрать ягоды и фрукты";
number = 1;
model;
x = 9.11502;
y = 3.94992;
container;
con = ('REPORT',
        title = "A1: Выбрать_ягоды_и_фрукты",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A5' specializing 'Охладить_варенье':
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A5: Охладить варенье";
name = "Охладить варенье";
number = 5;
model;
x = 48.99501;
y = 15.98736;
container;
con = ('REPORT',
        title = "A5: Охладить_варенье",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A6'
specializing 'Анализ_модели:_Какие_необходимы_посуда_и_инструменты?':
title = "A6: Анализ модели: Какие необходимы посуда и инструменты?";
name = "Анализ модели: Какие необходимы посуда и инструменты?";
number = 6;
model;
x = 56.97085;
y = 5.45448;
container;
con = ('REPORT',
        title = "A6: Анализ_модели:"
                "_Какие_необходимы_посуда_и_инструменты?",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A7' specializing 'Разлить_варенье_в_банки':
entry_m1;
value_m1;
entry_i2;
value_i2;
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A7: Разлить варенье в банки";
name = "Разлить варенье в банки";
number = 7;
model;
x = 64.1875;
y = 20.31336;
container;
con = ('REPORT',
        title = "A7: Разлить_варенье_в_банки",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A21' specializing 'Вымыть_банки_и_крышки':
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_m2;
value_m2;
entry_o1;
protecting: value_o1;
title = "A21: Вымыть банки и крышки";
name = "Вымыть банки и крышки";
number = 1;
model;
x = 9.49501;
y = 6.58296;
container;
con = ('REPORT',
        title = "A21: Вымыть_банки_и_крышки",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A22' specializing 'Вскипятить_воду_в_чайнике':
entry_m1;
value_m1;
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A22: Вскипятить воду в чайнике";
name = "Вскипятить воду в чайнике";
number = 2;
model;
x = 22.78834;
y = 18.0564;
container;
con = ('REPORT',
        title = "A22: Вскипятить_воду_в_чайнике",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A23' specializing 'Обработать_крышки_кипятком':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_m1;
value_m1;
entry_o1;
protecting: value_o1;
title = "A23: Обработать крышки кипятком";
name = "Обработать крышки кипятком";
number = 3;
model;
x = 34.18251;
y = 10.53288;
container;
con = ('REPORT',
        title = "A23: Обработать_крышки_кипятком",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A24' specializing 'Обработать_банки_кипятком':
entry_m1;
value_m1;
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A24: Обработать банки кипятком";
name = "Обработать банки кипятком";
number = 4;
model;
x = 42.91833;
y = 15.42312;
container;
con = ('REPORT',
        title = "A24: Обработать_банки_кипятком",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A25' specializing 'Просушить_банки_и_крышки':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_o1;
protecting: value_o1;
title = "A25: Просушить банки и крышки";
name = "Просушить банки и крышки";
number = 5;
model;
x = 60.76917;
y = 19.93728;
container;
con = ('REPORT',
        title = "A25: Просушить_банки_и_крышки",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A411' specializing 'Нагреть_смесь':
entry_i2;
value_i2;
entry_m1;
value_m1;
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
entry_o2;
protecting: value_o2;
title = "A411: Нагреть смесь";
name = "Нагреть смесь";
number = 1;
model;
x = 12.91334;
y = 7.33536;
container;
con = ('REPORT',
        title = "A411: Нагреть_смесь",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A412' specializing 'Выстаивание':
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A412: Выстаивание";
name = "Выстаивание";
number = 2;
model;
x = 39.5;
y = 13.54224;
container;
con = ('REPORT',
        title = "A412: Выстаивание",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A413'
specializing 'Проверить_готовность_варенья_(твёрдые_ягоды_и_фрукты)':
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
entry_o2;
protecting: value_o2;
title = "A413: Проверить готовность варенья (твёрдые ягоды и фрукты)";
name = "Проверить готовность варенья (твёрдые ягоды и фрукты)";
number = 3;
model;
x = 47.85583;
y = 19.18488;
container;
con = ('REPORT',
        title = "A413: Проверить_готовность_варенья_"
                "(твёрдые_ягоды_и_фрукты)",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A31' specializing 'Вымыть_ягоды_и_фрукты':
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_o1;
protecting: value_o1;
title = "A31: Вымыть ягоды и фрукты";
name = "Вымыть ягоды и фрукты";
number = 1;
model;
x = 18.23083;
y = 10.1568;
container;
con = ('REPORT',
        title = "A31: Вымыть_ягоды_и_фрукты",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A3211'
specializing 'Вскипятить_воду_в_кастрюле':
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_o1;
protecting: value_o1;
title = "A3211: Вскипятить воду в кастрюле";
name = "Вскипятить воду в кастрюле";
number = 1;
model;
x = 10.25499;
y = 6.77112;
container;
con = ('REPORT',
        title = "A3211: Вскипятить_воду_в_кастрюле",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A3212' specializing 'Приготовить_сироп':
entry_i2;
value_i2;
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_o1;
protecting: value_o1;
title = "A3212: Приготовить сироп";
name = "Приготовить сироп";
number = 2;
model;
x = 19.75;
y = 17.304;
container;
con = ('REPORT',
        title = "A3212: Приготовить_сироп",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A3213' specializing 'Бланшировать_ягоды':
entry_i2;
value_i2;
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_o1;
protecting: value_o1;
title = "A3213: Бланшировать ягоды";
name = "Бланшировать ягоды";
number = 3;
model;
x = 32.28335;
y = 11.28528;
container;
con = ('REPORT',
        title = "A3213: Бланшировать_ягоды",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A3214' specializing 'Положить_ягоды_в_сироп':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_o1;
protecting: value_o1;
title = "A3214: Положить ягоды в сироп";
name = "Положить ягоды в сироп";
number = 4;
model;
x = 55.83167;
y = 19.18488;
container;
con = ('REPORT',
        title = "A3214: Положить_ягоды_в_сироп",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A3221' specializing 'Порезать_на_дольки':
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A3221: Порезать на дольки";
name = "Порезать на дольки";
number = 1;
model;
x = 10.25499;
y = 6.77112;
container;
con = ('REPORT',
        title = "A3221: Порезать_на_дольки",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A3222' specializing 'Пересыпать_сахаром':
entry_i2;
value_i2;
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A3222: Пересыпать сахаром";
name = "Пересыпать сахаром";
number = 2;
model;
x = 23.92752;
y = 11.09712;
container;
con = ('REPORT',
        title = "A3222: Пересыпать_сахаром",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A3223' specializing 'Выстаивать_6-8_часов':
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A3223: Выстаивать 6-8 часов";
name = "Выстаивать 6-8 часов";
number = 3;
model;
x = 38.36082;
y = 16.17552;
container;
con = ('REPORT',
        title = "A3223: Выстаивать_6-8_часов",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A3224' specializing 'Добавить_в_смесь_воду':
entry_i2;
value_i2;
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A3224: Добавить в смесь воду";
name = "Добавить в смесь воду";
number = 4;
model;
x = 54.69249;
y = 20.31336;
container;
con = ('REPORT',
        title = "A3224: Добавить_в_смесь_воду",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A3231' specializing 'Пересыпать_сахаром':
entry_i1;
value_i1;
entry_i2;
value_i2;
entry_o1;
protecting: value_o1;
title = "A3231: Пересыпать сахаром";
name = "Пересыпать сахаром";
number = 1;
model;
x = 18.23083;
y = 10.1568;
container;
con = ('REPORT',
        title = "A3231: Пересыпать_сахаром",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A3232' specializing 'Выстаивать_6-8_часов':
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
title = "A3232: Выстаивать 6-8 часов";
name = "Выстаивать 6-8 часов";
number = 2;
model;
x = 42.53834;
y = 17.49216;
container;
con = ('REPORT',
        title = "A3232: Выстаивать_6-8_часов",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A421' specializing 'Основной_этап_варки':
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_o1;
protecting: value_o1;
title = "A421: Основной этап варки";
name = "Основной этап варки";
number = 1;
model;
x = 12.15415;
y = 7.8996;
container;
con = ('REPORT',
        title = "A421: Основной_этап_варки",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A422'
specializing 'Проверить_готовность_варенья_(мягкие_ягоды)':
entry_i1;
value_i1;
entry_o1;
protecting: value_o1;
entry_o2;
protecting: value_o2;
title = "A422: Проверить готовность варенья (мягкие ягоды)";
name = "Проверить готовность варенья (мягкие ягоды)";
number = 2;
model;
x = 31.14417;
y = 12.79008;
container;
con = ('REPORT',
        title = "A422: Проверить_готовность_варенья_(мягкие_ягоды)",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'DIAGRAM-A423' specializing 'Дополнительный_этап_варки':
entry_i1;
value_i1;
entry_m1;
value_m1;
entry_o1;
protecting: value_o1;
title = "A423: Дополнительный этап варки";
name = "Дополнительный этап варки";
number = 3;
model;
x = 50.89417;
y = 18.62064;
container;
con = ('REPORT',
        title = "A423: Дополнительный_этап_варки",
        x = x,
        y = y,
        width = 37,
        height = 9);
[
]
------------------------------------------------------------------------
class 'ARROW' specializing 'ALPHA':
host;
entry;
value;
[
goal:-!.
'link'{|REST}:-!,
        value == REST.
'message'{|REST}:-!,
        host << {0:entry|REST}.
P(REST*):-
        host << P(entry,REST*).
]
------------------------------------------------------------------------
class 'DUMMY':
con = ('CONSOLE');
[
goal.
--
_{sender:NAME|_}:-
        con ? writeln("Syntax error: dummy link with ",NAME),
        fail.
]
------------------------------------------------------------------------