NVIC_SetPriority (uint8 IRQn, uint8 priority)
{
  uint8 shift;

  <bb 2> :
  # DEBUG BEGIN_STMT
  shift = 4;
  # DEBUG BEGIN_STMT
  _1 = (long unsigned int) priority;
  _2 = (int) shift;
  _3 = _1 << _2;
  _4 = 3758153728B;
  _5 = (long unsigned int) IRQn;
  _6 = (unsigned char) _3;
  _4->IP[_5] = _6;
  return;

}


NVIC_DisableIRQ (uint8 IRQn)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  _1 = (long unsigned int) IRQn;
  _2 = _1 & 31;
  _3 = 3758153728B;
  _4 = IRQn >> 5;
  _5 = (long unsigned int) _4;
  _6 = 1 << _2;
  _3->ICER[_5] = _6;
  return;

}


NVIC_EnableIRQ (uint8 IRQn)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  _1 = (long unsigned int) IRQn;
  _2 = _1 & 31;
  _3 = 3758153728B;
  _4 = IRQn >> 5;
  _5 = (long unsigned int) _4;
  _6 = 1 << _2;
  _3->ISER[_5] = _6;
  return;

}


NVIC_SetPriorityGrouping (uint32 PriorityGroup)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  _1 = 3758153728B;
  _2 = _1->AIRCR;
  _3 = _2 & 4294965503;
  _4 = 3758153728B;
  _5 = PriorityGroup | _3;
  _4->AIRCR = _5;
  return;

}


