// @Структура2 гр_глагола_с
@Перевод
{
//
   @Структура  гр_глагола_а( см_глагола S1, форма Ф ) = 
               глагол( &S1, &Ф ) хвост_а ;
   @Структура  гр_глагола_а( совершенность &S, форма &Ф, число &Ч, время &В, род &Р, залог &З, падеж &П ) = 
               глагол( S, Ф, @0, Ч, В, Р, Актив, П ) хвост_а ;
}

@Перевод
{
   @Структура  гр_be_а( форма Ф ) = @0хвост_be ;
   @Структура  гр_be_а( совершенность &S, форма &Ф, число &Ч, время &В, род &Р, залог &З, падеж &П ) = 
               глагол[быть]( S, Ф, @0, Ч, В, Р, Актив, П ) хвост_be( Ч, Р, В ) ;
}

@Перевод
{
   @Структура  гр_have_been_а( форма Ф ) = @0@0хвост_be ;
   @Структура  гр_have_been_а( совершенность &S, форма &Ф, число &Ч, время &В, род &Р, залог &З, падеж &П ) = 
               глагол[быть]( S, Ф, @0, Ч, В, Р, Актив, П ) хвост_be( Ч, Р, В ) ;
}

@Перевод
{
   @Структура  гр_have_а( форма Ф ) = @0хвост_have ;
   @Структура  гр_have_а( совершенность &S, форма &Ф, число &Ч, время &В, род &Р, залог &З, падеж &П ) = 
               глагол[быть]( S, Ф, @0, Ч1, В, Р1, Актив, П ) 
               хвост_have( &Ч1, И, &Р1 ) 
               ;
}

@Перевод
{
   @Выбор      гр_глагола( см_глагола S1, форма Ф ) = 
               гр_глагола_а( &S1, &Ф ) 
               гр_be_а( &Ф ) 
               гр_have_been_а( &Ф ) 
               гр_have_а( &Ф ) 
               гр_глагола_п( &Ф ) 
               гр_be_пп( &Ф ) 
               гр_be1_пп( &Ф ) 
               гр_have_п( &Ф ) 
               ;
   @Выбор      гр_глагола( совершенность &S, форма &Ф, число &Ч, время &В, род &Р, залог &З, падеж &П ) = 
               гр_глагола_а( S, Ф, Ч, В, Р, З, П ) 
               гр_be_а( S, Ф, Ч, В, Р, З, П ) 
               гр_have_been_а( S, Ф, Ч, В, Р, З, П ) 
               гр_have_а( S, Ф, Ч, В, Р, З, П ) 
               гр_глагола_п( S, Ф, Ч, В, Р, З, П ) 
               гр_be_пп( S, Ф, Ч, В, Р, З, П ) 
               гр_be1_пп( S, Ф, Ч, В, Р, З, П ) 
               гр_have_п( S, Ф, Ч, В, Р, З, П ) 
               ;
}

@Перевод
{
   @Структура  чтобы_to_inf_akt( см_глагола S1 ) = 
               _Not @0гр_глагола( &S1, Inf ) ;
   @Структура  чтобы_to_inf_akt = 
               @0_Not гр_глагола( Несов, Inf, @0, @0, @0, Актив, @0 ) ;
}

@Перевод
{
   @Структура  to_inf_akt( см_глагола S1 ) = _Not @0гр_глагола( &S1, Inf ) ;
   @Структура  to_inf_akt = _Not гр_глагола( Несов, Inf, @0, @0, @0, Актив, @0 ) ;
}

@Перевод
{
   @Структура  to_inf_pass( см_глагола S1 ) = 
               _Not @0@0гр_глагола( &S1, Form3 ) ;
   @Структура  to_inf_pass( число &Ч, род &Р ) = 
               _Not @0гр_глагола( Сов, причастие, Ч, @0, Род, Пассив, @0 ) ;
}

@Перевод
{
   @Выбор      to_inf( см_глагола S1 ) = to_inf_akt( &S1 ) to_inf_pass( &S1 ) ;
   @Выбор      to_inf( число &Ч, род &Р ) = to_inf_akt to_inf_pass( Ч, Р ) ;
}

@Перевод
{
   @Структура  to_inf1( см_глагола S1 ) = _Not @0гр_глагола( &S1, Inf ) ;
   @Структура  to_inf1 = _Not гр_глагола( Сов, деепричастие, @0, @0, @0, @0, @0 ) ;
}

@Перевод
{
   @Структура  to_inf2( см_глагола S1 ) = _Not @0гр_глагола( &S1, Inf ) ;
   @Структура  to_inf2( число &Число, род &Род ) = 
               _Not гр_глагола( Сов, глагол, Число, прошлое, Род, Актив, @0 ) ;
}

@Перевод
{
   @Структура  гр_inf_причастие( см_глагола S1 ) = 
               _Not @0гр_глагола( &S1, Inf ) ;
   @Структура  гр_inf_причастие( род &Род, падеж &Падеж, число &Число ) = 
               _Not 
               гр_глагола( Сов, причастие, Число, прошлое, Род, Актив, Падеж ) 
               ;
}

@Перевод
{
   @Структура  гр_ing( см_глагола S1 ) = гр_глагола( &S1, Ing ) ;
   @Структура  гр_ing = гр_глагола( Несов, Inf, @0, @0, @0, Актив, @0 ) ;
}

@Перевод
{
   @Структура  гр_ing1( см_глагола S1 ) = гр_глагола( &S1, Ing ) ;
   @Структура  гр_ing1( род &Род, падеж &Падеж, число &Число ) = 
               гр_глагола( Несов, причастие, Число, настоящее, Род, Актив, Падеж ) 
               ;
}

@Перевод
{
   @Структура  союз_глагол( см_глагола S1 ) = 
               Предлог союз гр_глагола( &S1, Inf ) ;
   @Структура  союз_глагол = 
               Предлог( &Падеж ) 
               союз 
               гр_глагола( Несов, Inf, @0, @0, @0, Актив, @0 ) 
               ;
}

@Перевод
{
// ------- для "предлог в хвосте" --------
   @Структура  to_inf_предлог = @0гр_глагола( &S1, Inf ) Предлог ;
   @Структура  to_inf_предлог( род &Род, число &Число ) = 
               гр_глагола( Несов, Inf, @0, @0, @0, Актив, @0 ) 
               Предлог( &Падеж ) 
               прил[он]( Род, Падеж, Число ) 
               ;
}

@Перевод
{
   @Выбор2     доп_глагол( см_глагола S1 ) = 
               to_inf_akt( &S1 ) to_inf1( &S1 ) гр_ing( &S1 ) ;
   @Выбор2     доп_глагол = to_inf_akt to_inf1 гр_ing ;
}

@Перевод
{
   @Структура  but_do = _and_or _do _Not ;
   @Структура  but_do = _and_or _Not ;
}

@Перевод
{
   @Выбор      but_do1 = but_do and_or ;
   @Выбор      but_do1 = but_do and_or ;
}

@Перевод
{
// ------- для but do print --------
   @Структура  but_do_глагол = but_do1 глагол( &S1, Inf ) хвост_а ;
   @Структура  but_do_глагол = 
               but_do1 
               глагол( Несов, глагол, 3е, Ед, настоящее, @0, Актив, @0 ) 
               хвост_а 
               ;
}