// **************************************************************************
//
//                   Описание группы числительного
//                   (правильное, но неупорядоченное)
// **************************************************************************
@Перевод
{
   @Выбор      цифра = гр_числ2 числительное ;
   @Выбор      цифра( число Число, падеж &Падеж ) = 
               гр_числ2( &Число, Падеж ) числительное( &Число, Падеж ) ;
}

@Перевод
{
   @Структура  цифра_итерационная = цифра _цифра_итерационная ;
   @Структура  цифра_итерационная( падеж &Падеж ) = 
               цифра( &Число, Падеж ) _цифра_итерационная( Падеж ) ;
}

@Перевод
{
   @Выбор      _цифра_итерационная = цифра_итерационная @00;
   @Выбор      _цифра_итерационная( падеж &Падеж ) = 
               цифра_итерационная( Падеж ) @00;
}

@Перевод
{
   @Выбор      _префикс_цифры = цифра_итерационная @00;
   @Выбор      _префикс_цифры( падеж &Падеж ) = цифра_итерационная( Падеж ) @00;
}

@Перевод
{
   @Структура  гр_числительного2 = _префикс_цифры цифра ;
   @Структура  гр_числительного2( число Число, падеж &Падеж ) = 
               _префикс_цифры( Падеж ) цифра( &Число, Падеж ) ;
}

@Перевод
{
   @Выбор      _гр_числительного1 = гр_числительного2 мест_числ @00;
   @Выбор      _гр_числительного1( число Число, падеж &Падеж ) = 
               гр_числительного2( &Число, Падеж ) мест_числ @00;
}

@Перевод
{
   @Структура  гр_числ_или = _and_or _гр_числительного1 ;
   @Структура  гр_числ_или( падеж &Падеж ) = 
               _and_or _гр_числительного1( &Число, Падеж ) ;
}

@Перевод
{
// -------- сделано плохо, потому что нет итераций 
   @Выбор      _гр_числ_или = гр_числ_или @00;
   @Выбор      _гр_числ_или( падеж &Падеж ) = гр_числ_или( Падеж ) @00;
}

@Перевод
{
// -------- оборот с количественным числительным ------------
   @Структура  гр_числительного = 
               _опр_прилагательный 
               _Наречие_степени 
               гр_числительного2 
               _гр_числ_или 
               _опр_правый 
               _опр_прилагательный 
               _опр_правый 
               сущ( &Число ) 
               _хвост_сущ 
               ;
   @Структура  гр_числительного( род Род, падеж &Падеж, число Число ) = 
               _опр_прилагательный( Род, Душа, Падеж, Число ) 
               _Наречие_степени 
               гр_числительного2( &Число, Падеж ) 
               _гр_числ_или( Падеж ) 
               _опр_прилагательный( Род, Душа, Падеж, Число ) 
               сущ( &Род, &Душа, %Р, Число ) 
               _опр_правый 
               _опр_правый 
               _хвост_сущ( Род, Падеж, Число ) 
               ;
   @Таблица_приемника( ч_падеж Падеж1, падеж Падеж = падеж Падеж2 )
   {
      Уступаю И = И ;
      Уступаю Р = Р ;
      Уступаю Д = Д ;
      Уступаю В = В ;
      Уступаю Т = Т ;
      Уступаю П = П ;
      Уступаю @0 = И ;

      РВсе @0 = Р ;

      Р И = Р ;
      Р Р = Р ;
      Р Д = Д ;
      Р В = Р ;
      Р Т = Т ;
      Р П = П ;
      Р @0 = Р ;
   };
   @Таблица_приемника( ч_число Число1, падеж Падеж = число Число2 )
   { Ед @0 = Ед ;
      Мн @0 = Мн ;
      ЕдИ И = Ед ;
      ЕдИ Р = Мн ;
      ЕдИ Д = Мн ;
      ЕдИ В = Ед ;
      ЕдИ Т = Мн ;
      ЕдИ П = Мн ;
   }

}

@Перевод
{
// -------- оборот с порядковым числительным ------------
   @Структура  гр_числительного_а = 
               _артикль числ_порядковое гр_inf_причастие( &S1 ) _хвост_сущ ;
   @Структура  гр_числительного_а( падеж &Падеж, число Число ) = 
               числ_порядковое( Падеж ) 
               гр_inf_причастие( %М, Падеж, Число ) 
               _хвост_сущ( %М, Падеж, Число ) 
               ;
}