{%MainUnit definetemplates.pas}

ControllerTypes: array[0..608+1306] of TControllerType =
 ((controllertypestr:'';                  controllerunitstr:''),
  (controllertypestr:'LPC810M021FN8';     controllerunitstr:'LPC8xx'),
  (controllertypestr:'LPC811M001FDH16';   controllerunitstr:'LPC8xx'),
  (controllertypestr:'LPC812M101FDH16';   controllerunitstr:'LPC8xx'),
  (controllertypestr:'LPC812M101FD20';    controllerunitstr:'LPC8xx'),
  (controllertypestr:'LPC812M101FDH20';   controllerunitstr:'LPC8xx'),
  (controllertypestr:'LPC1110FD20';       controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1111FDH20_002';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1111FHN33_101';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1111FHN33_102';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1111FHN33_103';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1111FHN33_201';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1111FHN33_202';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1111FHN33_203';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FD20_102';   controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FDH20_102';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FDH28_102';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FHN33_101';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FHN33_102';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FHN33_103';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FHN33_201';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FHN24_202';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FHN33_202';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FHN33_203';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FHI33_202';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1112FHI33_203';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1113FHN33_201';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1113FHN33_202';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1113FHN33_203';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1113FHN33_301';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1113FHN33_302';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1113FHN33_303';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1113FBD48_301';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1113FBD48_302';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1113FBD48_303';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FDH28_102';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FN28_102';   controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FHN33_201';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FHN33_202';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FHN33_203';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FHN33_301';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FHN33_302';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FHN33_303';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FHN33_333';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FHI33_302';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FHI33_303';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FBD48_301';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FBD48_302';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FBD48_303';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FBD48_323';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1114FBD48_333';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1115FBD48_303';  controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC11C12FBD48_301'; controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC11C14FBD48_301'; controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC11C22FBD48_301'; controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC11C24FBD48_301'; controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC11D14FBD100_302';controllerunitstr:'LPC11XX'),
  (controllertypestr:'LPC1224FBD48_101';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1224FBD48_121';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1224FBD64_101';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1224FBD64_121';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1225FBD48_301';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1225FBD48_321';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1225FBD64_301';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1225FBD64_321';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1226FBD48_301';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1226FBD64_301';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1227FBD48_301';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1227FBD64_301';  controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC12D27FBD100_301';controllerunitstr:'LPC122X'),
  (controllertypestr:'LPC1311FHN33';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1311FHN33_01';   controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1313FHN33';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1313FHN33_01';   controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1313FBD48';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1313FBD48_01';   controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1315FHN33';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1315FBD48';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1316FHN33';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1316FBD48';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1317FHN33';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1317FBD48';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1317FBD64';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1342FHN33';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1342FBD48';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1343FHN33';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1343FBD48';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1345FHN33';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1345FBD48';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1346FHN33';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1346FBD48';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1347FHN33';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1347FBD48';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC1347FBD64';      controllerunitstr:'LPC13XX'),
  (controllertypestr:'LPC2114';           controllerunitstr:'LPC21x4'),
  (controllertypestr:'LPC2124';           controllerunitstr:'LPC21x4'),
  (controllertypestr:'LPC2194';           controllerunitstr:'LPC21x4'),
  (controllertypestr:'LPC1754';           controllerunitstr:'LPC1754'),
  (controllertypestr:'LPC1756';           controllerunitstr:'LPC1756'),
  (controllertypestr:'LPC1758';           controllerunitstr:'LPC1758'),
  (controllertypestr:'LPC1764';           controllerunitstr:'LPC1764'),
  (controllertypestr:'LPC1766';           controllerunitstr:'LPC1766'),
  (controllertypestr:'LPC1768';           controllerunitstr:'LPC1768'),
  (controllertypestr:'AT91SAM7S256';      controllerunitstr:'AT91SAM7x256'),
  (controllertypestr:'AT91SAM7SE256';     controllerunitstr:'AT91SAM7x256'),
  (controllertypestr:'AT91SAM7X256';      controllerunitstr:'AT91SAM7x256'),
  (controllertypestr:'AT91SAM7XC256';     controllerunitstr:'AT91SAM7x256'),
  (controllertypestr:'STM32F100X4';       controllerunitstr:'STM32F10X_LD'),
  (controllertypestr:'STM32F100X6';       controllerunitstr:'STM32F10X_LD'),
  (controllertypestr:'STM32F100X8';       controllerunitstr:'STM32F10X_MD'),
  (controllertypestr:'STM32F100XB';       controllerunitstr:'STM32F10X_MD'),
  (controllertypestr:'STM32F100XC';       controllerunitstr:'STM32F10X_HD'),
  (controllertypestr:'STM32F100XD';       controllerunitstr:'STM32F10X_HD'),
  (controllertypestr:'STM32F100XE';       controllerunitstr:'STM32F10X_HD'),
  (controllertypestr:'STM32F101X4';       controllerunitstr:'STM32F10X_LD'),
  (controllertypestr:'STM32F101X6';       controllerunitstr:'STM32F10X_LD'),
  (controllertypestr:'STM32F101X8';       controllerunitstr:'STM32F10X_MD'),
  (controllertypestr:'STM32F101XB';       controllerunitstr:'STM32F10X_MD'),
  (controllertypestr:'STM32F101XC';       controllerunitstr:'STM32F10X_HD'),
  (controllertypestr:'STM32F101XD';       controllerunitstr:'STM32F10X_HD'),
  (controllertypestr:'STM32F101XE';       controllerunitstr:'STM32F10X_HD'),
  (controllertypestr:'STM32F101XF';       controllerunitstr:'STM32F10X_XL'),
  (controllertypestr:'STM32F101XG';       controllerunitstr:'STM32F10X_XL'),
  (controllertypestr:'STM32F102X4';       controllerunitstr:'STM32F10X_LD'),
  (controllertypestr:'STM32F102X6';       controllerunitstr:'STM32F10X_LD'),
  (controllertypestr:'STM32F102X8';       controllerunitstr:'STM32F10X_MD'),
  (controllertypestr:'STM32F102XB';       controllerunitstr:'STM32F10X_MD'),
  (controllertypestr:'STM32F103X4';       controllerunitstr:'STM32F10X_LD'),
  (controllertypestr:'STM32F103X6';       controllerunitstr:'STM32F10X_LD'),
  (controllertypestr:'STM32F103X8';       controllerunitstr:'STM32F10X_MD'),
  (controllertypestr:'STM32F103XB';       controllerunitstr:'STM32F10X_MD'),
  (controllertypestr:'STM32F103XC';       controllerunitstr:'STM32F10X_HD'),
  (controllertypestr:'STM32F103XD';       controllerunitstr:'STM32F10X_HD'),
  (controllertypestr:'STM32F103XE';       controllerunitstr:'STM32F10X_HD'),
  (controllertypestr:'STM32F103XF';       controllerunitstr:'STM32F10X_XL'),
  (controllertypestr:'STM32F103XG';       controllerunitstr:'STM32F10X_XL'),
  (controllertypestr:'STM32F105X8';       controllerunitstr:'STM32F10X_CL'),
  (controllertypestr:'STM32F105XB';       controllerunitstr:'STM32F10X_CL'),
  (controllertypestr:'STM32F105XC';       controllerunitstr:'STM32F10X_CL'),
  (controllertypestr:'STM32F107X8';       controllerunitstr:'STM32F10X_CONN'),
  (controllertypestr:'STM32F107XB';       controllerunitstr:'STM32F10X_CONN'),
  (controllertypestr:'STM32F107XC';       controllerunitstr:'STM32F10X_CONN'),
  (controllertypestr:'STM32F030C6';       controllerunitstr:'STM32F030X6'),
  (controllertypestr:'STM32F030C8';       controllerunitstr:'STM32F030X8'),
  (controllertypestr:'STM32F030CC';       controllerunitstr:'STM32F030XC'),
  (controllertypestr:'STM32F030F4';       controllerunitstr:'STM32F030X6'),
  (controllertypestr:'STM32F030K6';       controllerunitstr:'STM32F030X6'),
  (controllertypestr:'STM32F030R8';       controllerunitstr:'STM32F030X8'),
  (controllertypestr:'STM32F030RC';       controllerunitstr:'STM32F030XC'),
  (controllertypestr:'STM32F031C4';       controllerunitstr:'STM32F031X6'),
  (controllertypestr:'STM32F031C6';       controllerunitstr:'STM32F031X6'),
  (controllertypestr:'STM32F031E6';       controllerunitstr:'STM32F031X6'),
  (controllertypestr:'STM32F031F4';       controllerunitstr:'STM32F031X6'),
  (controllertypestr:'STM32F031F6';       controllerunitstr:'STM32F031X6'),
  (controllertypestr:'STM32F031G4';       controllerunitstr:'STM32F031X6'),
  (controllertypestr:'STM32F031G6';       controllerunitstr:'STM32F031X6'),
  (controllertypestr:'STM32F031K4';       controllerunitstr:'STM32F031X6'),
  (controllertypestr:'STM32F031K6';       controllerunitstr:'STM32F031X6'),
  (controllertypestr:'STM32F038C6';       controllerunitstr:'STM32F038XX'),
  (controllertypestr:'STM32F038E6';       controllerunitstr:'STM32F038XX'),
  (controllertypestr:'STM32F038F6';       controllerunitstr:'STM32F038XX'),
  (controllertypestr:'STM32F038G6';       controllerunitstr:'STM32F038XX'),
  (controllertypestr:'STM32F038K6';       controllerunitstr:'STM32F038XX'),
  (controllertypestr:'STM32F042C4';       controllerunitstr:'STM32F042X6'),
  (controllertypestr:'STM32F042C6';       controllerunitstr:'STM32F042X6'),
  (controllertypestr:'STM32F042F4';       controllerunitstr:'STM32F042X6'),
  (controllertypestr:'STM32F042F6';       controllerunitstr:'STM32F042X6'),
  (controllertypestr:'STM32F042G4';       controllerunitstr:'STM32F042X6'),
  (controllertypestr:'STM32F042G6';       controllerunitstr:'STM32F042X6'),
  (controllertypestr:'STM32F042K4';       controllerunitstr:'STM32F042X6'),
  (controllertypestr:'STM32F042K6';       controllerunitstr:'STM32F042X6'),
  (controllertypestr:'STM32F042T6';       controllerunitstr:'STM32F042X6'),
  (controllertypestr:'STM32F048C6';       controllerunitstr:'STM32F048XX'),
  (controllertypestr:'STM32F048G6';       controllerunitstr:'STM32F048XX'),
  (controllertypestr:'STM32F048T6';       controllerunitstr:'STM32F048XX'),
  (controllertypestr:'STM32F051C4';       controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F051C6';       controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F051C8';       controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F051K4';       controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F051K6';       controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F051K8';       controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F051R4';       controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F051R6';       controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F051R8';       controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F051T8';       controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F058C8';       controllerunitstr:'STM32F058XX'),
  (controllertypestr:'STM32F058R8';       controllerunitstr:'STM32F058XX'),
  (controllertypestr:'STM32F058T8';       controllerunitstr:'STM32F058XX'),
  (controllertypestr:'STM32F070C6';       controllerunitstr:'STM32F070X6'),
  (controllertypestr:'STM32F070CB';       controllerunitstr:'STM32F070XB'),
  (controllertypestr:'STM32F070F6';       controllerunitstr:'STM32F070X6'),
  (controllertypestr:'STM32F070RB';       controllerunitstr:'STM32F070XB'),
  (controllertypestr:'STM32F071C8';       controllerunitstr:'STM32F071XB'),
  (controllertypestr:'STM32F071CB';       controllerunitstr:'STM32F071XB'),
  (controllertypestr:'STM32F071RB';       controllerunitstr:'STM32F071XB'),
  (controllertypestr:'STM32F071V8';       controllerunitstr:'STM32F071XB'),
  (controllertypestr:'STM32F071VB';       controllerunitstr:'STM32F071XB'),
  (controllertypestr:'STM32F072C8';       controllerunitstr:'STM32F072XB'),
  (controllertypestr:'STM32F072CB';       controllerunitstr:'STM32F072XB'),
  (controllertypestr:'STM32F072R8';       controllerunitstr:'STM32F072XB'),
  (controllertypestr:'STM32F072RB';       controllerunitstr:'STM32F072XB'),
  (controllertypestr:'STM32F072V8';       controllerunitstr:'STM32F072XB'),
  (controllertypestr:'STM32F072VB';       controllerunitstr:'STM32F072XB'),
  (controllertypestr:'STM32F078CB';       controllerunitstr:'STM32F078XX'),
  (controllertypestr:'STM32F078RB';       controllerunitstr:'STM32F078XX'),
  (controllertypestr:'STM32F078VB';       controllerunitstr:'STM32F078XX'),
  (controllertypestr:'STM32F091CB';       controllerunitstr:'STM32F091XC'),
  (controllertypestr:'STM32F091CC';       controllerunitstr:'STM32F091XC'),
  (controllertypestr:'STM32F091RB';       controllerunitstr:'STM32F091XC'),
  (controllertypestr:'STM32F091RC';       controllerunitstr:'STM32F091XC'),
  (controllertypestr:'STM32F091VB';       controllerunitstr:'STM32F091XC'),
  (controllertypestr:'STM32F091VC';       controllerunitstr:'STM32F091XC'),
  (controllertypestr:'STM32F098CC';       controllerunitstr:'STM32F098XX'),
  (controllertypestr:'STM32F098RC';       controllerunitstr:'STM32F098XX'),
  (controllertypestr:'STM32F098VC';       controllerunitstr:'STM32F098XX'),
  (controllertypestr:'NUCLEOF030R8';      controllerunitstr:'STM32F030X8'),
  (controllertypestr:'NUCLEOF031K6';      controllerunitstr:'STM32F031X6'),
  (controllertypestr:'NUCLEOF042K6';      controllerunitstr:'STM32F042X6'),
  (controllertypestr:'NUCLEOF070RB';      controllerunitstr:'STM32F070XB'),
  (controllertypestr:'NUCLEOF072RB';      controllerunitstr:'STM32F072XB'),
  (controllertypestr:'NUCLEOF091RC';      controllerunitstr:'STM32F091XC'),
  (controllertypestr:'STM32F0308DISCOVERY';controllerunitstr:'STM32F030X8'),
  (controllertypestr:'STM32F072BDISCOVERY';controllerunitstr:'STM32F072XB'),
  (controllertypestr:'STM32F0DISCOVERY';  controllerunitstr:'STM32F051X8'),
  (controllertypestr:'STM32F100C4';       controllerunitstr:'STM32F100XB'),
  (controllertypestr:'STM32F100C6';       controllerunitstr:'STM32F100XB'),
  (controllertypestr:'STM32F100C8';       controllerunitstr:'STM32F100XB'),
  (controllertypestr:'STM32F100CB';       controllerunitstr:'STM32F100XB'),
  (controllertypestr:'STM32F100R4';       controllerunitstr:'STM32F100XB'),
  (controllertypestr:'STM32F100R6';       controllerunitstr:'STM32F100XB'),
  (controllertypestr:'STM32F100R8';       controllerunitstr:'STM32F100XB'),
  (controllertypestr:'STM32F100RB';       controllerunitstr:'STM32F100XB'),
  (controllertypestr:'STM32F100RC';       controllerunitstr:'STM32F100XE'),
  (controllertypestr:'STM32F100RD';       controllerunitstr:'STM32F100XE'),
  (controllertypestr:'STM32F100RE';       controllerunitstr:'STM32F100XE'),
  (controllertypestr:'STM32F100V8';       controllerunitstr:'STM32F100XB'),
  (controllertypestr:'STM32F100VB';       controllerunitstr:'STM32F100XB'),
  (controllertypestr:'STM32F100VC';       controllerunitstr:'STM32F100XE'),
  (controllertypestr:'STM32F100VD';       controllerunitstr:'STM32F100XE'),
  (controllertypestr:'STM32F100VE';       controllerunitstr:'STM32F100XE'),
  (controllertypestr:'STM32F100ZC';       controllerunitstr:'STM32F100XE'),
  (controllertypestr:'STM32F100ZD';       controllerunitstr:'STM32F100XE'),
  (controllertypestr:'STM32F100ZE';       controllerunitstr:'STM32F100XE'),
  (controllertypestr:'STM32F101C4';       controllerunitstr:'STM32F101X6'),
  (controllertypestr:'STM32F101C6';       controllerunitstr:'STM32F101X6'),
  (controllertypestr:'STM32F101C8';       controllerunitstr:'STM32F101XB'),
  (controllertypestr:'STM32F101CB';       controllerunitstr:'STM32F101XB'),
  (controllertypestr:'STM32F101R4';       controllerunitstr:'STM32F101X6'),
  (controllertypestr:'STM32F101R6';       controllerunitstr:'STM32F101X6'),
  (controllertypestr:'STM32F101R8';       controllerunitstr:'STM32F101XB'),
  (controllertypestr:'STM32F101RB';       controllerunitstr:'STM32F101XB'),
  (controllertypestr:'STM32F101RC';       controllerunitstr:'STM32F101XE'),
  (controllertypestr:'STM32F101RD';       controllerunitstr:'STM32F101XE'),
  (controllertypestr:'STM32F101RE';       controllerunitstr:'STM32F101XE'),
  (controllertypestr:'STM32F101RF';       controllerunitstr:'STM32F101XG'),
  (controllertypestr:'STM32F101RG';       controllerunitstr:'STM32F101XG'),
  (controllertypestr:'STM32F101T4';       controllerunitstr:'STM32F101X6'),
  (controllertypestr:'STM32F101T6';       controllerunitstr:'STM32F101X6'),
  (controllertypestr:'STM32F101T8';       controllerunitstr:'STM32F101XB'),
  (controllertypestr:'STM32F101TB';       controllerunitstr:'STM32F101XB'),
  (controllertypestr:'STM32F101V8';       controllerunitstr:'STM32F101XB'),
  (controllertypestr:'STM32F101VB';       controllerunitstr:'STM32F101XB'),
  (controllertypestr:'STM32F101VC';       controllerunitstr:'STM32F101XE'),
  (controllertypestr:'STM32F101VD';       controllerunitstr:'STM32F101XE'),
  (controllertypestr:'STM32F101VE';       controllerunitstr:'STM32F101XE'),
  (controllertypestr:'STM32F101VF';       controllerunitstr:'STM32F101XG'),
  (controllertypestr:'STM32F101VG';       controllerunitstr:'STM32F101XG'),
  (controllertypestr:'STM32F101ZC';       controllerunitstr:'STM32F101XE'),
  (controllertypestr:'STM32F101ZD';       controllerunitstr:'STM32F101XE'),
  (controllertypestr:'STM32F101ZE';       controllerunitstr:'STM32F101XE'),
  (controllertypestr:'STM32F101ZF';       controllerunitstr:'STM32F101XG'),
  (controllertypestr:'STM32F101ZG';       controllerunitstr:'STM32F101XG'),
  (controllertypestr:'STM32F102C4';       controllerunitstr:'STM32F102X6'),
  (controllertypestr:'STM32F102C6';       controllerunitstr:'STM32F102X6'),
  (controllertypestr:'STM32F102C8';       controllerunitstr:'STM32F102XB'),
  (controllertypestr:'STM32F102CB';       controllerunitstr:'STM32F102XB'),
  (controllertypestr:'STM32F102R4';       controllerunitstr:'STM32F102X6'),
  (controllertypestr:'STM32F102R6';       controllerunitstr:'STM32F102X6'),
  (controllertypestr:'STM32F102R8';       controllerunitstr:'STM32F102XB'),
  (controllertypestr:'STM32F102RB';       controllerunitstr:'STM32F102XB'),
  (controllertypestr:'STM32F103C4';       controllerunitstr:'STM32F103X6'),
  (controllertypestr:'STM32F103C6';       controllerunitstr:'STM32F103X6'),
  (controllertypestr:'STM32F103C8';       controllerunitstr:'STM32F103XB'),
  (controllertypestr:'STM32F103CB';       controllerunitstr:'STM32F103XB'),
  (controllertypestr:'STM32F103R4';       controllerunitstr:'STM32F103X6'),
  (controllertypestr:'STM32F103R6';       controllerunitstr:'STM32F103X6'),
  (controllertypestr:'STM32F103R8';       controllerunitstr:'STM32F103XB'),
  (controllertypestr:'STM32F103RB';       controllerunitstr:'STM32F103XB'),
  (controllertypestr:'STM32F103RC';       controllerunitstr:'STM32F103XE'),
  (controllertypestr:'STM32F103RD';       controllerunitstr:'STM32F103XE'),
  (controllertypestr:'STM32F103RE';       controllerunitstr:'STM32F103XE'),
  (controllertypestr:'STM32F103RF';       controllerunitstr:'STM32F103XG'),
  (controllertypestr:'STM32F103RG';       controllerunitstr:'STM32F103XG'),
  (controllertypestr:'STM32F103T4';       controllerunitstr:'STM32F103X6'),
  (controllertypestr:'STM32F103T6';       controllerunitstr:'STM32F103X6'),
  (controllertypestr:'STM32F103T8';       controllerunitstr:'STM32F103XB'),
  (controllertypestr:'STM32F103TB';       controllerunitstr:'STM32F103XB'),
  (controllertypestr:'STM32F103V8';       controllerunitstr:'STM32F103XB'),
  (controllertypestr:'STM32F103VB';       controllerunitstr:'STM32F103XB'),
  (controllertypestr:'STM32F103VC';       controllerunitstr:'STM32F103XE'),
  (controllertypestr:'STM32F103VD';       controllerunitstr:'STM32F103XE'),
  (controllertypestr:'STM32F103VE';       controllerunitstr:'STM32F103XE'),
  (controllertypestr:'STM32F103VF';       controllerunitstr:'STM32F103XG'),
  (controllertypestr:'STM32F103VG';       controllerunitstr:'STM32F103XG'),
  (controllertypestr:'STM32F103ZC';       controllerunitstr:'STM32F103XE'),
  (controllertypestr:'STM32F103ZD';       controllerunitstr:'STM32F103XE'),
  (controllertypestr:'STM32F103ZE';       controllerunitstr:'STM32F103XE'),
  (controllertypestr:'STM32F103ZF';       controllerunitstr:'STM32F103XG'),
  (controllertypestr:'STM32F103ZG';       controllerunitstr:'STM32F103XG'),
  (controllertypestr:'STM32F105R8';       controllerunitstr:'STM32F105XC'),
  (controllertypestr:'STM32F105RB';       controllerunitstr:'STM32F105XC'),
  (controllertypestr:'STM32F105RC';       controllerunitstr:'STM32F105XC'),
  (controllertypestr:'STM32F105V8';       controllerunitstr:'STM32F105XC'),
  (controllertypestr:'STM32F105VB';       controllerunitstr:'STM32F105XC'),
  (controllertypestr:'STM32F105VC';       controllerunitstr:'STM32F105XC'),
  (controllertypestr:'STM32F107RB';       controllerunitstr:'STM32F107XC'),
  (controllertypestr:'STM32F107RC';       controllerunitstr:'STM32F107XC'),
  (controllertypestr:'STM32F107VB';       controllerunitstr:'STM32F107XC'),
  (controllertypestr:'STM32F107VC';       controllerunitstr:'STM32F107XC'),
  (controllertypestr:'NUCLEOF103RB';      controllerunitstr:'STM32F103XB'),
  (controllertypestr:'STM32VLDISCOVERY';  controllerunitstr:'STM32F100XB'),
  (controllertypestr:'BLUEPILL'   ;       controllerunitstr:'STM32F103XB'),
  (controllertypestr:'STM32F205RB';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205RC';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205RE';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205RF';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205RG';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205VB';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205VC';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205VE';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205VF';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205VG';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205ZC';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205ZE';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205ZF';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F205ZG';       controllerunitstr:'STM32F205XX'),
  (controllertypestr:'STM32F207IC';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207IE';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207IF';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207IG';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207VC';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207VE';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207VF';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207VG';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207ZC';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207ZE';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207ZF';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F207ZG';       controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F215RE';       controllerunitstr:'STM32F215XX'),
  (controllertypestr:'STM32F215RG';       controllerunitstr:'STM32F215XX'),
  (controllertypestr:'STM32F215VE';       controllerunitstr:'STM32F215XX'),
  (controllertypestr:'STM32F215VG';       controllerunitstr:'STM32F215XX'),
  (controllertypestr:'STM32F215ZE';       controllerunitstr:'STM32F215XX'),
  (controllertypestr:'STM32F215ZG';       controllerunitstr:'STM32F215XX'),
  (controllertypestr:'STM32F217IE';       controllerunitstr:'STM32F217XX'),
  (controllertypestr:'STM32F217IG';       controllerunitstr:'STM32F217XX'),
  (controllertypestr:'STM32F217VE';       controllerunitstr:'STM32F217XX'),
  (controllertypestr:'STM32F217VG';       controllerunitstr:'STM32F217XX'),
  (controllertypestr:'STM32F217ZE';       controllerunitstr:'STM32F217XX'),
  (controllertypestr:'STM32F217ZG';       controllerunitstr:'STM32F217XX'),
  (controllertypestr:'NUCLEOF207ZG';      controllerunitstr:'STM32F207XX'),
  (controllertypestr:'STM32F301C6';       controllerunitstr:'STM32F301X8'),
  (controllertypestr:'STM32F301C8';       controllerunitstr:'STM32F301X8'),
  (controllertypestr:'STM32F301K6';       controllerunitstr:'STM32F301X8'),
  (controllertypestr:'STM32F301K8';       controllerunitstr:'STM32F301X8'),
  (controllertypestr:'STM32F301R6';       controllerunitstr:'STM32F301X8'),
  (controllertypestr:'STM32F301R8';       controllerunitstr:'STM32F301X8'),
  (controllertypestr:'STM32F302C6';       controllerunitstr:'STM32F302X8'),
  (controllertypestr:'STM32F302C8';       controllerunitstr:'STM32F302X8'),
  (controllertypestr:'STM32F302CB';       controllerunitstr:'STM32F302XC'),
  (controllertypestr:'STM32F302CC';       controllerunitstr:'STM32F302XC'),
  (controllertypestr:'STM32F302K6';       controllerunitstr:'STM32F302X8'),
  (controllertypestr:'STM32F302K8';       controllerunitstr:'STM32F302X8'),
  (controllertypestr:'STM32F302R6';       controllerunitstr:'STM32F302X8'),
  (controllertypestr:'STM32F302R8';       controllerunitstr:'STM32F302X8'),
  (controllertypestr:'STM32F302RB';       controllerunitstr:'STM32F302XC'),
  (controllertypestr:'STM32F302RC';       controllerunitstr:'STM32F302XC'),
  (controllertypestr:'STM32F302RD';       controllerunitstr:'STM32F302XE'),
  (controllertypestr:'STM32F302RE';       controllerunitstr:'STM32F302XE'),
  (controllertypestr:'STM32F302VB';       controllerunitstr:'STM32F302XC'),
  (controllertypestr:'STM32F302VC';       controllerunitstr:'STM32F302XC'),
  (controllertypestr:'STM32F302VD';       controllerunitstr:'STM32F302XE'),
  (controllertypestr:'STM32F302VE';       controllerunitstr:'STM32F302XE'),
  (controllertypestr:'STM32F302ZD';       controllerunitstr:'STM32F302XE'),
  (controllertypestr:'STM32F302ZE';       controllerunitstr:'STM32F302XE'),
  (controllertypestr:'STM32F303C6';       controllerunitstr:'STM32F303X8'),
  (controllertypestr:'STM32F303C8';       controllerunitstr:'STM32F303X8'),
  (controllertypestr:'STM32F303CB';       controllerunitstr:'STM32F303XC'),
  (controllertypestr:'STM32F303CC';       controllerunitstr:'STM32F303XC'),
  (controllertypestr:'STM32F303K6';       controllerunitstr:'STM32F303X8'),
  (controllertypestr:'STM32F303K8';       controllerunitstr:'STM32F303X8'),
  (controllertypestr:'STM32F303R6';       controllerunitstr:'STM32F303X8'),
  (controllertypestr:'STM32F303R8';       controllerunitstr:'STM32F303X8'),
  (controllertypestr:'STM32F303RB';       controllerunitstr:'STM32F303XC'),
  (controllertypestr:'STM32F303RC';       controllerunitstr:'STM32F303XC'),
  (controllertypestr:'STM32F303RD';       controllerunitstr:'STM32F303XE'),
  (controllertypestr:'STM32F303RE';       controllerunitstr:'STM32F303XE'),
  (controllertypestr:'STM32F303VB';       controllerunitstr:'STM32F303XC'),
  (controllertypestr:'STM32F303VC';       controllerunitstr:'STM32F303XC'),
  (controllertypestr:'STM32F303VD';       controllerunitstr:'STM32F303XE'),
  (controllertypestr:'STM32F303VE';       controllerunitstr:'STM32F303XE'),
  (controllertypestr:'STM32F303ZD';       controllerunitstr:'STM32F303XE'),
  (controllertypestr:'STM32F303ZE';       controllerunitstr:'STM32F303XE'),
  (controllertypestr:'STM32F318C8';       controllerunitstr:'STM32F318XX'),
  (controllertypestr:'STM32F318K8';       controllerunitstr:'STM32F318XX'),
  (controllertypestr:'STM32F328C8';       controllerunitstr:'STM32F328XX'),
  (controllertypestr:'STM32F334C4';       controllerunitstr:'STM32F334X8'),
  (controllertypestr:'STM32F334C6';       controllerunitstr:'STM32F334X8'),
  (controllertypestr:'STM32F334C8';       controllerunitstr:'STM32F334X8'),
  (controllertypestr:'STM32F334K4';       controllerunitstr:'STM32F334X8'),
  (controllertypestr:'STM32F334K6';       controllerunitstr:'STM32F334X8'),
  (controllertypestr:'STM32F334K8';       controllerunitstr:'STM32F334X8'),
  (controllertypestr:'STM32F334R6';       controllerunitstr:'STM32F334X8'),
  (controllertypestr:'STM32F334R8';       controllerunitstr:'STM32F334X8'),
  (controllertypestr:'STM32F358CC';       controllerunitstr:'STM32F358XX'),
  (controllertypestr:'STM32F358RC';       controllerunitstr:'STM32F358XX'),
  (controllertypestr:'STM32F358VC';       controllerunitstr:'STM32F358XX'),
  (controllertypestr:'STM32F373C8';       controllerunitstr:'STM32F373XC'),
  (controllertypestr:'STM32F373CB';       controllerunitstr:'STM32F373XC'),
  (controllertypestr:'STM32F373CC';       controllerunitstr:'STM32F373XC'),
  (controllertypestr:'STM32F373R8';       controllerunitstr:'STM32F373XC'),
  (controllertypestr:'STM32F373RB';       controllerunitstr:'STM32F373XC'),
  (controllertypestr:'STM32F373RC';       controllerunitstr:'STM32F373XC'),
  (controllertypestr:'STM32F373V8';       controllerunitstr:'STM32F373XC'),
  (controllertypestr:'STM32F373VB';       controllerunitstr:'STM32F373XC'),
  (controllertypestr:'STM32F373VC';       controllerunitstr:'STM32F373XC'),
  (controllertypestr:'STM32F378CC';       controllerunitstr:'STM32F378XX'),
  (controllertypestr:'STM32F378RC';       controllerunitstr:'STM32F378XX'),
  (controllertypestr:'STM32F378VC';       controllerunitstr:'STM32F378XX'),
  (controllertypestr:'STM32F398VE';       controllerunitstr:'STM32F398XX'),
  (controllertypestr:'NUCLEOF302R8';      controllerunitstr:'STM32F302X8'),
  (controllertypestr:'NUCLEOF303K8';      controllerunitstr:'STM32F303X8'),
  (controllertypestr:'NUCLEOF303RE';      controllerunitstr:'STM32F303XE'),
  (controllertypestr:'NUCLEOF303ZE';      controllerunitstr:'STM32F303XE'),
  (controllertypestr:'NUCLEOF334R8';      controllerunitstr:'STM32F334X8'),
  (controllertypestr:'STM32F3348DISCOVERY';controllerunitstr:'STM32F334X8'),
  (controllertypestr:'STM32F3DISCOVERY';  controllerunitstr:'STM32F303XC'),
  (controllertypestr:'STM32F401CB';       controllerunitstr:'STM32F401XC'),
  (controllertypestr:'STM32F401CC';       controllerunitstr:'STM32F401XC'),
  (controllertypestr:'STM32F401CD';       controllerunitstr:'STM32F401XE'),
  (controllertypestr:'STM32F401CE';       controllerunitstr:'STM32F401XE'),
  (controllertypestr:'STM32F401RB';       controllerunitstr:'STM32F401XC'),
  (controllertypestr:'STM32F401RC';       controllerunitstr:'STM32F401XC'),
  (controllertypestr:'STM32F401RD';       controllerunitstr:'STM32F401XE'),
  (controllertypestr:'STM32F401RE';       controllerunitstr:'STM32F401XE'),
  (controllertypestr:'STM32F401VB';       controllerunitstr:'STM32F401XC'),
  (controllertypestr:'STM32F401VC';       controllerunitstr:'STM32F401XC'),
  (controllertypestr:'STM32F401VD';       controllerunitstr:'STM32F401XE'),
  (controllertypestr:'STM32F401VE';       controllerunitstr:'STM32F401XE'),
  (controllertypestr:'STM32F405OE';       controllerunitstr:'STM32F405XX'),
  (controllertypestr:'STM32F405OG';       controllerunitstr:'STM32F405XX'),
  (controllertypestr:'STM32F405RG';       controllerunitstr:'STM32F405XX'),
  (controllertypestr:'STM32F405VG';       controllerunitstr:'STM32F405XX'),
  (controllertypestr:'STM32F405ZG';       controllerunitstr:'STM32F405XX'),
  (controllertypestr:'STM32F407IE';       controllerunitstr:'STM32F407XX'),
  (controllertypestr:'STM32F407IG';       controllerunitstr:'STM32F407XX'),
  (controllertypestr:'STM32F407VE';       controllerunitstr:'STM32F407XX'),
  (controllertypestr:'STM32F407VG';       controllerunitstr:'STM32F407XX'),
  (controllertypestr:'STM32F407ZE';       controllerunitstr:'STM32F407XX'),
  (controllertypestr:'STM32F407ZG';       controllerunitstr:'STM32F407XX'),
  (controllertypestr:'STM32F410C8';       controllerunitstr:'STM32F410CX'),
  (controllertypestr:'STM32F410CB';       controllerunitstr:'STM32F410CX'),
  (controllertypestr:'STM32F410R8';       controllerunitstr:'STM32F410RX'),
  (controllertypestr:'STM32F410RB';       controllerunitstr:'STM32F410RX'),
  (controllertypestr:'STM32F410T8';       controllerunitstr:'STM32F410TX'),
  (controllertypestr:'STM32F410TB';       controllerunitstr:'STM32F410TX'),
  (controllertypestr:'STM32F411CC';       controllerunitstr:'STM32F411XE'),
  (controllertypestr:'STM32F411CE';       controllerunitstr:'STM32F411XE'),
  (controllertypestr:'STM32F411RC';       controllerunitstr:'STM32F411XE'),
  (controllertypestr:'STM32F411RE';       controllerunitstr:'STM32F411XE'),
  (controllertypestr:'STM32F411VC';       controllerunitstr:'STM32F411XE'),
  (controllertypestr:'STM32F411VE';       controllerunitstr:'STM32F411XE'),
  (controllertypestr:'STM32F412CE';       controllerunitstr:'STM32F412CX'),
  (controllertypestr:'STM32F412CG';       controllerunitstr:'STM32F412CX'),
  (controllertypestr:'STM32F412RE';       controllerunitstr:'STM32F412RX'),
  (controllertypestr:'STM32F412REP';      controllerunitstr:'STM32F412RX'),
  (controllertypestr:'STM32F412RG';       controllerunitstr:'STM32F412RX'),
  (controllertypestr:'STM32F412RGP';      controllerunitstr:'STM32F412RX'),
  (controllertypestr:'STM32F412VE';       controllerunitstr:'STM32F412VX'),
  (controllertypestr:'STM32F412VG';       controllerunitstr:'STM32F412VX'),
  (controllertypestr:'STM32F412ZE';       controllerunitstr:'STM32F412ZX'),
  (controllertypestr:'STM32F412ZG';       controllerunitstr:'STM32F412ZX'),
  (controllertypestr:'STM32F413CG';       controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F413CH';       controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F413MG';       controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F413MH';       controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F413RG';       controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F413RH';       controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F413VG';       controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F413VH';       controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F413ZG';       controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F413ZH';       controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F415OG';       controllerunitstr:'STM32F415XX'),
  (controllertypestr:'STM32F415RG';       controllerunitstr:'STM32F415XX'),
  (controllertypestr:'STM32F415VG';       controllerunitstr:'STM32F415XX'),
  (controllertypestr:'STM32F415ZG';       controllerunitstr:'STM32F415XX'),
  (controllertypestr:'STM32F417IE';       controllerunitstr:'STM32F417XX'),
  (controllertypestr:'STM32F417IG';       controllerunitstr:'STM32F417XX'),
  (controllertypestr:'STM32F417VE';       controllerunitstr:'STM32F417XX'),
  (controllertypestr:'STM32F417VG';       controllerunitstr:'STM32F417XX'),
  (controllertypestr:'STM32F417ZE';       controllerunitstr:'STM32F417XX'),
  (controllertypestr:'STM32F417ZG';       controllerunitstr:'STM32F417XX'),
  (controllertypestr:'STM32F423CH';       controllerunitstr:'STM32F423XX'),
  (controllertypestr:'STM32F423MH';       controllerunitstr:'STM32F423XX'),
  (controllertypestr:'STM32F423RH';       controllerunitstr:'STM32F423XX'),
  (controllertypestr:'STM32F423VH';       controllerunitstr:'STM32F423XX'),
  (controllertypestr:'STM32F423ZH';       controllerunitstr:'STM32F423XX'),
  (controllertypestr:'STM32F427AG';       controllerunitstr:'STM32F427XX'),
  (controllertypestr:'STM32F427AI';       controllerunitstr:'STM32F427XX'),
  (controllertypestr:'STM32F427IG';       controllerunitstr:'STM32F427XX'),
  (controllertypestr:'STM32F427II';       controllerunitstr:'STM32F427XX'),
  (controllertypestr:'STM32F427VG';       controllerunitstr:'STM32F427XX'),
  (controllertypestr:'STM32F427VI';       controllerunitstr:'STM32F427XX'),
  (controllertypestr:'STM32F427ZG';       controllerunitstr:'STM32F427XX'),
  (controllertypestr:'STM32F427ZI';       controllerunitstr:'STM32F427XX'),
  (controllertypestr:'STM32F429AG';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429AI';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429BE';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429BG';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429BI';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429IE';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429IG';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429II';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429NE';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429NG';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429NI';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429VE';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429VG';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429VI';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429ZE';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429ZG';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F429ZI';       controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F437AI';       controllerunitstr:'STM32F437XX'),
  (controllertypestr:'STM32F437IG';       controllerunitstr:'STM32F437XX'),
  (controllertypestr:'STM32F437II';       controllerunitstr:'STM32F437XX'),
  (controllertypestr:'STM32F437VG';       controllerunitstr:'STM32F437XX'),
  (controllertypestr:'STM32F437VI';       controllerunitstr:'STM32F437XX'),
  (controllertypestr:'STM32F437ZG';       controllerunitstr:'STM32F437XX'),
  (controllertypestr:'STM32F437ZI';       controllerunitstr:'STM32F437XX'),
  (controllertypestr:'STM32F439AI';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F439BG';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F439BI';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F439IG';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F439II';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F439NG';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F439NI';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F439VG';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F439VI';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F439ZG';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F439ZI';       controllerunitstr:'STM32F439XX'),
  (controllertypestr:'STM32F446MC';       controllerunitstr:'STM32F446XX'),
  (controllertypestr:'STM32F446ME';       controllerunitstr:'STM32F446XX'),
  (controllertypestr:'STM32F446RC';       controllerunitstr:'STM32F446XX'),
  (controllertypestr:'STM32F446RE';       controllerunitstr:'STM32F446XX'),
  (controllertypestr:'STM32F446VC';       controllerunitstr:'STM32F446XX'),
  (controllertypestr:'STM32F446VE';       controllerunitstr:'STM32F446XX'),
  (controllertypestr:'STM32F446ZC';       controllerunitstr:'STM32F446XX'),
  (controllertypestr:'STM32F446ZE';       controllerunitstr:'STM32F446XX'),
  (controllertypestr:'STM32F469AE';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469AG';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469AI';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469BE';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469BG';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469BI';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469IE';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469IG';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469II';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469NE';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469NG';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469NI';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469VE';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469VG';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469VI';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469ZE';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469ZG';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F469ZI';       controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F479AG';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479AI';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479BG';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479BI';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479IG';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479II';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479NG';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479NI';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479VG';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479VI';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479ZG';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'STM32F479ZI';       controllerunitstr:'STM32F479XX'),
  (controllertypestr:'NUCLEOF401RE';      controllerunitstr:'STM32F401XE'),
  (controllertypestr:'NUCLEOF410RB';      controllerunitstr:'STM32F410RX'),
  (controllertypestr:'NUCLEOF411RE';      controllerunitstr:'STM32F411XE'),
  (controllertypestr:'NUCLEOF412ZG';      controllerunitstr:'STM32F412ZX'),
  (controllertypestr:'NUCLEOF413ZH';      controllerunitstr:'STM32F413XX'),
  (controllertypestr:'NUCLEOF429ZI';      controllerunitstr:'STM32F429XX'),
  (controllertypestr:'NUCLEOF439ZI';      controllerunitstr:'STM32F439XX'),
  (controllertypestr:'NUCLEOF446RE';      controllerunitstr:'STM32F446XX'),
  (controllertypestr:'NUCLEOF446ZE';      controllerunitstr:'STM32F446XX'),
  (controllertypestr:'STM32F401CDISCOVERY';controllerunitstr:'STM32F401XC'),
  (controllertypestr:'STM32F407GDISCOVERY';controllerunitstr:'STM32F407XX'),
  (controllertypestr:'STM32F411EDISCOVERY';controllerunitstr:'STM32F411XE'),
  (controllertypestr:'STM32F412GDISCOVERY';controllerunitstr:'STM32F412ZX'),
  (controllertypestr:'STM32F413HDISCOVERY';controllerunitstr:'STM32F413XX'),
  (controllertypestr:'STM32F429IDISCOVERY';controllerunitstr:'STM32F429XX'),
  (controllertypestr:'STM32F469IDISCOVERY';controllerunitstr:'STM32F469XX'),
  (controllertypestr:'STM32F722IC';       controllerunitstr:'STM32F722XX'),
  (controllertypestr:'STM32F722IE';       controllerunitstr:'STM32F722XX'),
  (controllertypestr:'STM32F722RC';       controllerunitstr:'STM32F722XX'),
  (controllertypestr:'STM32F722RE';       controllerunitstr:'STM32F722XX'),
  (controllertypestr:'STM32F722VC';       controllerunitstr:'STM32F722XX'),
  (controllertypestr:'STM32F722VE';       controllerunitstr:'STM32F722XX'),
  (controllertypestr:'STM32F722ZC';       controllerunitstr:'STM32F722XX'),
  (controllertypestr:'STM32F722ZE';       controllerunitstr:'STM32F722XX'),
  (controllertypestr:'STM32F723IC';       controllerunitstr:'STM32F723XX'),
  (controllertypestr:'STM32F723IE';       controllerunitstr:'STM32F723XX'),
  (controllertypestr:'STM32F723VC';       controllerunitstr:'STM32F723XX'),
  (controllertypestr:'STM32F723VE';       controllerunitstr:'STM32F723XX'),
  (controllertypestr:'STM32F723ZC';       controllerunitstr:'STM32F723XX'),
  (controllertypestr:'STM32F723ZE';       controllerunitstr:'STM32F723XX'),
  (controllertypestr:'STM32F730I8';       controllerunitstr:'STM32F730XX'),
  (controllertypestr:'STM32F730R8';       controllerunitstr:'STM32F730XX'),
  (controllertypestr:'STM32F730V8';       controllerunitstr:'STM32F730XX'),
  (controllertypestr:'STM32F730Z8';       controllerunitstr:'STM32F730XX'),
  (controllertypestr:'STM32F732IE';       controllerunitstr:'STM32F732XX'),
  (controllertypestr:'STM32F732RE';       controllerunitstr:'STM32F732XX'),
  (controllertypestr:'STM32F732VE';       controllerunitstr:'STM32F732XX'),
  (controllertypestr:'STM32F732ZE';       controllerunitstr:'STM32F732XX'),
  (controllertypestr:'STM32F733IE';       controllerunitstr:'STM32F733XX'),
  (controllertypestr:'STM32F733VE';       controllerunitstr:'STM32F733XX'),
  (controllertypestr:'STM32F733ZE';       controllerunitstr:'STM32F733XX'),
  (controllertypestr:'STM32F745IE';       controllerunitstr:'STM32F745XX'),
  (controllertypestr:'STM32F745IG';       controllerunitstr:'STM32F745XX'),
  (controllertypestr:'STM32F745VE';       controllerunitstr:'STM32F745XX'),
  (controllertypestr:'STM32F745VG';       controllerunitstr:'STM32F745XX'),
  (controllertypestr:'STM32F745ZE';       controllerunitstr:'STM32F745XX'),
  (controllertypestr:'STM32F745ZG';       controllerunitstr:'STM32F745XX'),
  (controllertypestr:'STM32F746BE';       controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F746BG';       controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F746IE';       controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F746IG';       controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F746NE';       controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F746NG';       controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F746VE';       controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F746VG';       controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F746ZE';       controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F746ZG';       controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F750N8';       controllerunitstr:'STM32F750XX'),
  (controllertypestr:'STM32F750V8';       controllerunitstr:'STM32F750XX'),
  (controllertypestr:'STM32F750Z8';       controllerunitstr:'STM32F750XX'),
  (controllertypestr:'STM32F756BG';       controllerunitstr:'STM32F756XX'),
  (controllertypestr:'STM32F756IG';       controllerunitstr:'STM32F756XX'),
  (controllertypestr:'STM32F756NG';       controllerunitstr:'STM32F756XX'),
  (controllertypestr:'STM32F756VG';       controllerunitstr:'STM32F756XX'),
  (controllertypestr:'STM32F756ZG';       controllerunitstr:'STM32F756XX'),
  (controllertypestr:'STM32F765BG';       controllerunitstr:'STM32F765XX'),
  (controllertypestr:'STM32F765BI';       controllerunitstr:'STM32F765XX'),
  (controllertypestr:'STM32F765IG';       controllerunitstr:'STM32F765XX'),
  (controllertypestr:'STM32F765II';       controllerunitstr:'STM32F765XX'),
  (controllertypestr:'STM32F765NG';       controllerunitstr:'STM32F765XX'),
  (controllertypestr:'STM32F765NI';       controllerunitstr:'STM32F765XX'),
  (controllertypestr:'STM32F765VG';       controllerunitstr:'STM32F765XX'),
  (controllertypestr:'STM32F765VI';       controllerunitstr:'STM32F765XX'),
  (controllertypestr:'STM32F765ZG';       controllerunitstr:'STM32F765XX'),
  (controllertypestr:'STM32F765ZI';       controllerunitstr:'STM32F765XX'),
  (controllertypestr:'STM32F767BG';       controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F767BI';       controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F767IG';       controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F767II';       controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F767NG';       controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F767NI';       controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F767VG';       controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F767VI';       controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F767ZG';       controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F767ZI';       controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F768AI';       controllerunitstr:'STM32F769XX'),
  (controllertypestr:'STM32F769AG';       controllerunitstr:'STM32F769XX'),
  (controllertypestr:'STM32F769AI';       controllerunitstr:'STM32F769XX'),
  (controllertypestr:'STM32F769BG';       controllerunitstr:'STM32F769XX'),
  (controllertypestr:'STM32F769BI';       controllerunitstr:'STM32F769XX'),
  (controllertypestr:'STM32F769IG';       controllerunitstr:'STM32F769XX'),
  (controllertypestr:'STM32F769II';       controllerunitstr:'STM32F769XX'),
  (controllertypestr:'STM32F769NG';       controllerunitstr:'STM32F769XX'),
  (controllertypestr:'STM32F769NI';       controllerunitstr:'STM32F769XX'),
  (controllertypestr:'STM32F777BI';       controllerunitstr:'STM32F777XX'),
  (controllertypestr:'STM32F777II';       controllerunitstr:'STM32F777XX'),
  (controllertypestr:'STM32F777NI';       controllerunitstr:'STM32F777XX'),
  (controllertypestr:'STM32F777VI';       controllerunitstr:'STM32F777XX'),
  (controllertypestr:'STM32F777ZI';       controllerunitstr:'STM32F777XX'),
  (controllertypestr:'STM32F778AI';       controllerunitstr:'STM32F779XX'),
  (controllertypestr:'STM32F779AI';       controllerunitstr:'STM32F779XX'),
  (controllertypestr:'STM32F779BI';       controllerunitstr:'STM32F779XX'),
  (controllertypestr:'STM32F779II';       controllerunitstr:'STM32F779XX'),
  (controllertypestr:'STM32F779NI';       controllerunitstr:'STM32F779XX'),
  (controllertypestr:'NUCLEOF722ZE';      controllerunitstr:'STM32F722XX'),
  (controllertypestr:'NUCLEOF746ZG';      controllerunitstr:'STM32F746XX'),
  (controllertypestr:'NUCLEOF767ZI';      controllerunitstr:'STM32F767XX'),
  (controllertypestr:'STM32F723EDISCOVERY';controllerunitstr:'STM32F723XX'),
  (controllertypestr:'STM32F7308DK';      controllerunitstr:'STM32F730XX'),
  (controllertypestr:'STM32F746GDISCOVERY';controllerunitstr:'STM32F746XX'),
  (controllertypestr:'STM32F7508DK';      controllerunitstr:'STM32F750XX'),
  (controllertypestr:'STM32F769IDISCOVERY';controllerunitstr:'STM32F769XX'),
  (controllertypestr:'STM32G030C6';       controllerunitstr:'STM32G030XX'),
  (controllertypestr:'STM32G030C8';       controllerunitstr:'STM32G030XX'),
  (controllertypestr:'STM32G030F6';       controllerunitstr:'STM32G030XX'),
  (controllertypestr:'STM32G030J6';       controllerunitstr:'STM32G030XX'),
  (controllertypestr:'STM32G030K6';       controllerunitstr:'STM32G030XX'),
  (controllertypestr:'STM32G030K8';       controllerunitstr:'STM32G030XX'),
  (controllertypestr:'STM32G031C4';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031C6';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031C8';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031F4';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031F6';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031F8';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031G4';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031G6';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031G8';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031J4';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031J6';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031K4';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031K6';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031K8';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G031Y8';       controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G041C6';       controllerunitstr:'STM32G041XX'),
  (controllertypestr:'STM32G041C8';       controllerunitstr:'STM32G041XX'),
  (controllertypestr:'STM32G041F6';       controllerunitstr:'STM32G041XX'),
  (controllertypestr:'STM32G041F8';       controllerunitstr:'STM32G041XX'),
  (controllertypestr:'STM32G041G6';       controllerunitstr:'STM32G041XX'),
  (controllertypestr:'STM32G041G8';       controllerunitstr:'STM32G041XX'),
  (controllertypestr:'STM32G041J6';       controllerunitstr:'STM32G041XX'),
  (controllertypestr:'STM32G041K6';       controllerunitstr:'STM32G041XX'),
  (controllertypestr:'STM32G041K8';       controllerunitstr:'STM32G041XX'),
  (controllertypestr:'STM32G041Y8';       controllerunitstr:'STM32G041XX'),
  (controllertypestr:'STM32G070CB';       controllerunitstr:'STM32G070XX'),
  (controllertypestr:'STM32G070KB';       controllerunitstr:'STM32G070XX'),
  (controllertypestr:'STM32G070RB';       controllerunitstr:'STM32G070XX'),
  (controllertypestr:'STM32G071C6';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071C8';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071CB';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071EB';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071G6';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071G8';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071G8N';      controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071GB';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071GBN';      controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071K6';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071K8';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071K8N';      controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071KB';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071KBN';      controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071R6';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071R8';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G071RB';       controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G081CB';       controllerunitstr:'STM32G081XX'),
  (controllertypestr:'STM32G081EB';       controllerunitstr:'STM32G081XX'),
  (controllertypestr:'STM32G081GB';       controllerunitstr:'STM32G081XX'),
  (controllertypestr:'STM32G081GBN';      controllerunitstr:'STM32G081XX'),
  (controllertypestr:'STM32G081KB';       controllerunitstr:'STM32G081XX'),
  (controllertypestr:'STM32G081KBN';      controllerunitstr:'STM32G081XX'),
  (controllertypestr:'STM32G081RB';       controllerunitstr:'STM32G081XX'),
  (controllertypestr:'STM32G0B0CE';       controllerunitstr:'STM32G0B0XX'),
  (controllertypestr:'STM32G0B0KE';       controllerunitstr:'STM32G0B0XX'),
  (controllertypestr:'STM32G0B0RE';       controllerunitstr:'STM32G0B0XX'),
  (controllertypestr:'STM32G0B0VE';       controllerunitstr:'STM32G0B0XX'),
  (controllertypestr:'STM32G0B1CC';       controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1CE';       controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1KC';       controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1KCN';      controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1KE';       controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1KEN';      controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1MC';       controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1ME';       controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1RC';       controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1RE';       controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1VC';       controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0B1VE';       controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0C1CC';       controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1CE';       controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1KC';       controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1KCN';      controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1KE';       controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1KEN';      controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1MC';       controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1ME';       controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1RC';       controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1RE';       controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1VC';       controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'STM32G0C1VE';       controllerunitstr:'STM32G0C1XX'),
  (controllertypestr:'NUCLEOG031K8';      controllerunitstr:'STM32G031XX'),
  (controllertypestr:'NUCLEOG070RB';      controllerunitstr:'STM32G070XX'),
  (controllertypestr:'NUCLEOG071RB';      controllerunitstr:'STM32G071XX'),
  (controllertypestr:'NUCLEOG0B1RE';      controllerunitstr:'STM32G0B1XX'),
  (controllertypestr:'STM32G0316DISCOVERY';controllerunitstr:'STM32G031XX'),
  (controllertypestr:'STM32G071BDISCOVERY';controllerunitstr:'STM32G071XX'),
  (controllertypestr:'STM32G431C6';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431C8';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431CB';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431K6';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431K8';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431KB';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431M6';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431M8';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431MB';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431R6';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431R8';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431RB';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431V6';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431V8';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G431VB';       controllerunitstr:'STM32G431XX'),
  (controllertypestr:'STM32G441CB';       controllerunitstr:'STM32G441XX'),
  (controllertypestr:'STM32G441KB';       controllerunitstr:'STM32G441XX'),
  (controllertypestr:'STM32G441MB';       controllerunitstr:'STM32G441XX'),
  (controllertypestr:'STM32G441RB';       controllerunitstr:'STM32G441XX'),
  (controllertypestr:'STM32G441VB';       controllerunitstr:'STM32G441XX'),
  (controllertypestr:'STM32G471CC';       controllerunitstr:'STM32G471XX'),
  (controllertypestr:'STM32G471CE';       controllerunitstr:'STM32G471XX'),
  (controllertypestr:'STM32G471MC';       controllerunitstr:'STM32G471XX'),
  (controllertypestr:'STM32G471ME';       controllerunitstr:'STM32G471XX'),
  (controllertypestr:'STM32G471QC';       controllerunitstr:'STM32G471XX'),
  (controllertypestr:'STM32G471QE';       controllerunitstr:'STM32G471XX'),
  (controllertypestr:'STM32G471RC';       controllerunitstr:'STM32G471XX'),
  (controllertypestr:'STM32G471RE';       controllerunitstr:'STM32G471XX'),
  (controllertypestr:'STM32G471VC';       controllerunitstr:'STM32G471XX'),
  (controllertypestr:'STM32G471VE';       controllerunitstr:'STM32G471XX'),
  (controllertypestr:'STM32G473CB';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473CC';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473CE';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473MB';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473MC';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473ME';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473PB';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473PC';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473PE';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473QB';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473QC';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473QE';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473RB';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473RC';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473RE';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473VB';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473VC';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G473VE';       controllerunitstr:'STM32G473XX'),
  (controllertypestr:'STM32G474CB';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474CC';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474CE';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474MB';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474MC';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474ME';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474PB';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474PC';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474PE';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474QB';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474QC';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474QE';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474RB';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474RC';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474RE';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474VB';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474VC';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G474VE';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'STM32G483CE';       controllerunitstr:'STM32G483XX'),
  (controllertypestr:'STM32G483ME';       controllerunitstr:'STM32G483XX'),
  (controllertypestr:'STM32G483PE';       controllerunitstr:'STM32G483XX'),
  (controllertypestr:'STM32G483QE';       controllerunitstr:'STM32G483XX'),
  (controllertypestr:'STM32G483RE';       controllerunitstr:'STM32G483XX'),
  (controllertypestr:'STM32G483VE';       controllerunitstr:'STM32G483XX'),
  (controllertypestr:'STM32G484CE';       controllerunitstr:'STM32G484XX'),
  (controllertypestr:'STM32G484ME';       controllerunitstr:'STM32G484XX'),
  (controllertypestr:'STM32G484PE';       controllerunitstr:'STM32G484XX'),
  (controllertypestr:'STM32G484QE';       controllerunitstr:'STM32G484XX'),
  (controllertypestr:'STM32G484RE';       controllerunitstr:'STM32G484XX'),
  (controllertypestr:'STM32G484VE';       controllerunitstr:'STM32G484XX'),
  (controllertypestr:'STM32G491CC';       controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491CE';       controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491KC';       controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491KE';       controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491MC';       controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491MCSX';     controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491ME';       controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491MESX';     controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491RC';       controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491RE';       controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491VC';       controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G491VE';       controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32G4A1CE';       controllerunitstr:'STM32G4A1XX'),
  (controllertypestr:'STM32G4A1KE';       controllerunitstr:'STM32G4A1XX'),
  (controllertypestr:'STM32G4A1ME';       controllerunitstr:'STM32G4A1XX'),
  (controllertypestr:'STM32G4A1MESX';     controllerunitstr:'STM32G4A1XX'),
  (controllertypestr:'STM32G4A1RE';       controllerunitstr:'STM32G4A1XX'),
  (controllertypestr:'STM32G4A1VE';       controllerunitstr:'STM32G4A1XX'),
  (controllertypestr:'BG474EDPOW1';       controllerunitstr:'STM32G474XX'),
  (controllertypestr:'NUCLEOG431KB';      controllerunitstr:'STM32G431XX'),
  (controllertypestr:'NUCLEOG431RB';      controllerunitstr:'STM32G431XX'),
  (controllertypestr:'NUCLEOG474RE';      controllerunitstr:'STM32G474XX'),
  (controllertypestr:'NUCLEOG491RE';      controllerunitstr:'STM32G491XX'),
  (controllertypestr:'STM32H723VE';       controllerunitstr:'STM32H723XX'),
  (controllertypestr:'STM32H723VG';       controllerunitstr:'STM32H723XX'),
  (controllertypestr:'STM32H723ZE';       controllerunitstr:'STM32H723XX'),
  (controllertypestr:'STM32H723ZG';       controllerunitstr:'STM32H723XX'),
  (controllertypestr:'STM32H725AE';       controllerunitstr:'STM32H725XX'),
  (controllertypestr:'STM32H725AG';       controllerunitstr:'STM32H725XX'),
  (controllertypestr:'STM32H725IE';       controllerunitstr:'STM32H725XX'),
  (controllertypestr:'STM32H725IG';       controllerunitstr:'STM32H725XX'),
  (controllertypestr:'STM32H725RE';       controllerunitstr:'STM32H725XX'),
  (controllertypestr:'STM32H725RG';       controllerunitstr:'STM32H725XX'),
  (controllertypestr:'STM32H725VE';       controllerunitstr:'STM32H725XX'),
  (controllertypestr:'STM32H725VG';       controllerunitstr:'STM32H725XX'),
  (controllertypestr:'STM32H725ZE';       controllerunitstr:'STM32H725XX'),
  (controllertypestr:'STM32H725ZG';       controllerunitstr:'STM32H725XX'),
  (controllertypestr:'STM32H730ABQ';      controllerunitstr:'STM32H730XX'),
  (controllertypestr:'STM32H730IBQ';      controllerunitstr:'STM32H730XX'),
  (controllertypestr:'STM32H730VB';       controllerunitstr:'STM32H730XX'),
  (controllertypestr:'STM32H730ZB';       controllerunitstr:'STM32H730XX'),
  (controllertypestr:'STM32H733VG';       controllerunitstr:'STM32H733XX'),
  (controllertypestr:'STM32H733ZG';       controllerunitstr:'STM32H733XX'),
  (controllertypestr:'STM32H735AG';       controllerunitstr:'STM32H735XX'),
  (controllertypestr:'STM32H735IG';       controllerunitstr:'STM32H735XX'),
  (controllertypestr:'STM32H735RG';       controllerunitstr:'STM32H735XX'),
  (controllertypestr:'STM32H735VG';       controllerunitstr:'STM32H735XX'),
  (controllertypestr:'STM32H735ZG';       controllerunitstr:'STM32H735XX'),
  (controllertypestr:'STM32H742AG';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742AI';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742BG';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742BI';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742IG';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742II';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742VG';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742VI';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742XG';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742XI';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742ZG';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H742ZI';       controllerunitstr:'STM32H742XX'),
  (controllertypestr:'STM32H743AG';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743AI';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743BG';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743BI';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743IG';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743II';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743VG';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743VI';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743XG';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743XI';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743ZG';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H743ZI';       controllerunitstr:'STM32H743XX'),
  (controllertypestr:'STM32H745BG';       controllerunitstr:'STM32H745XX'),
  (controllertypestr:'STM32H745BI';       controllerunitstr:'STM32H745XX'),
  (controllertypestr:'STM32H745IG';       controllerunitstr:'STM32H745XX'),
  (controllertypestr:'STM32H745II';       controllerunitstr:'STM32H745XX'),
  (controllertypestr:'STM32H745XG';       controllerunitstr:'STM32H745XX'),
  (controllertypestr:'STM32H745XI';       controllerunitstr:'STM32H745XX'),
  (controllertypestr:'STM32H745ZG';       controllerunitstr:'STM32H745XX'),
  (controllertypestr:'STM32H745ZI';       controllerunitstr:'STM32H745XX'),
  (controllertypestr:'STM32H747AG';       controllerunitstr:'STM32H747XX'),
  (controllertypestr:'STM32H747AI';       controllerunitstr:'STM32H747XX'),
  (controllertypestr:'STM32H747BG';       controllerunitstr:'STM32H747XX'),
  (controllertypestr:'STM32H747BI';       controllerunitstr:'STM32H747XX'),
  (controllertypestr:'STM32H747IG';       controllerunitstr:'STM32H747XX'),
  (controllertypestr:'STM32H747II';       controllerunitstr:'STM32H747XX'),
  (controllertypestr:'STM32H747XG';       controllerunitstr:'STM32H747XX'),
  (controllertypestr:'STM32H747XI';       controllerunitstr:'STM32H747XX'),
  (controllertypestr:'STM32H747ZI';       controllerunitstr:'STM32H747XX'),
  (controllertypestr:'STM32H750IB';       controllerunitstr:'STM32H750XX'),
  (controllertypestr:'STM32H750VB';       controllerunitstr:'STM32H750XX'),
  (controllertypestr:'STM32H750XB';       controllerunitstr:'STM32H750XX'),
  (controllertypestr:'STM32H750ZB';       controllerunitstr:'STM32H750XX'),
  (controllertypestr:'STM32H753AI';       controllerunitstr:'STM32H753XX'),
  (controllertypestr:'STM32H753BI';       controllerunitstr:'STM32H753XX'),
  (controllertypestr:'STM32H753II';       controllerunitstr:'STM32H753XX'),
  (controllertypestr:'STM32H753VI';       controllerunitstr:'STM32H753XX'),
  (controllertypestr:'STM32H753XI';       controllerunitstr:'STM32H753XX'),
  (controllertypestr:'STM32H753ZI';       controllerunitstr:'STM32H753XX'),
  (controllertypestr:'STM32H755BI';       controllerunitstr:'STM32H755XX'),
  (controllertypestr:'STM32H755II';       controllerunitstr:'STM32H755XX'),
  (controllertypestr:'STM32H755XI';       controllerunitstr:'STM32H755XX'),
  (controllertypestr:'STM32H755ZI';       controllerunitstr:'STM32H755XX'),
  (controllertypestr:'STM32H757AI';       controllerunitstr:'STM32H757XX'),
  (controllertypestr:'STM32H757BI';       controllerunitstr:'STM32H757XX'),
  (controllertypestr:'STM32H757II';       controllerunitstr:'STM32H757XX'),
  (controllertypestr:'STM32H757XI';       controllerunitstr:'STM32H757XX'),
  (controllertypestr:'STM32H757ZI';       controllerunitstr:'STM32H757XX'),
  (controllertypestr:'STM32H7A3AGQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3AIQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3IG';       controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3IGQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3II';       controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3IIQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3LGQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3LIQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3NG';       controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3NI';       controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3QIQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3RG';       controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3RI';       controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3VG';       controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3VGQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3VI';       controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3VIQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3ZG';       controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3ZGQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3ZI';       controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7A3ZIQ';      controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H7B0ABQ';      controllerunitstr:'STM32H7B0XXQ'),
  (controllertypestr:'STM32H7B0IB';       controllerunitstr:'STM32H7B0XX'),
  (controllertypestr:'STM32H7B0IBQ';      controllerunitstr:'STM32H7B0XXQ'),
  (controllertypestr:'STM32H7B0RB';       controllerunitstr:'STM32H7B0XX'),
  (controllertypestr:'STM32H7B0VB';       controllerunitstr:'STM32H7B0XX'),
  (controllertypestr:'STM32H7B0ZB';       controllerunitstr:'STM32H7B0XX'),
  (controllertypestr:'STM32H7B3AIQ';      controllerunitstr:'STM32H7B3XXQ'),
  (controllertypestr:'STM32H7B3II';       controllerunitstr:'STM32H7B3XX'),
  (controllertypestr:'STM32H7B3IIQ';      controllerunitstr:'STM32H7B3XXQ'),
  (controllertypestr:'STM32H7B3LIQ';      controllerunitstr:'STM32H7B3XXQ'),
  (controllertypestr:'STM32H7B3NI';       controllerunitstr:'STM32H7B3XX'),
  (controllertypestr:'STM32H7B3QIQ';      controllerunitstr:'STM32H7B3XXQ'),
  (controllertypestr:'STM32H7B3RI';       controllerunitstr:'STM32H7B3XX'),
  (controllertypestr:'STM32H7B3VI';       controllerunitstr:'STM32H7B3XX'),
  (controllertypestr:'STM32H7B3VIQ';      controllerunitstr:'STM32H7B3XXQ'),
  (controllertypestr:'STM32H7B3ZI';       controllerunitstr:'STM32H7B3XX'),
  (controllertypestr:'STM32H7B3ZIQ';      controllerunitstr:'STM32H7B3XXQ'),
  (controllertypestr:'NUCLEOH723ZG';      controllerunitstr:'STM32H723XX'),
  (controllertypestr:'NUCLEOH743ZI';      controllerunitstr:'STM32H743XX'),
  (controllertypestr:'NUCLEOH743ZI2';     controllerunitstr:'STM32H743XX'),
  (controllertypestr:'NUCLEOH745ZIQ';     controllerunitstr:'STM32H745XX'),
  (controllertypestr:'NUCLEOH753ZI';      controllerunitstr:'STM32H753XX'),
  (controllertypestr:'NUCLEOH755ZIQ';     controllerunitstr:'STM32H755XX'),
  (controllertypestr:'NUCLEOH7A3ZIQ';     controllerunitstr:'STM32H7A3XX'),
  (controllertypestr:'STM32H735GDK';      controllerunitstr:'STM32H735XX'),
  (controllertypestr:'STM32H745IDISCOVERY';controllerunitstr:'STM32H745XX'),
  (controllertypestr:'STM32H747IDISCOVERY';controllerunitstr:'STM32H747XX'),
  (controllertypestr:'STM32H750BDK';      controllerunitstr:'STM32H750XX'),
  (controllertypestr:'STM32H7B3IDK';      controllerunitstr:'STM32H7B3XXQ'),
  (controllertypestr:'STM32L010C6';       controllerunitstr:'STM32L010X6'),
  (controllertypestr:'STM32L010F4';       controllerunitstr:'STM32L010X4'),
  (controllertypestr:'STM32L010K4';       controllerunitstr:'STM32L010X4'),
  (controllertypestr:'STM32L010K8';       controllerunitstr:'STM32L010X8'),
  (controllertypestr:'STM32L010R8';       controllerunitstr:'STM32L010X8'),
  (controllertypestr:'STM32L010RB';       controllerunitstr:'STM32L010XB'),
  (controllertypestr:'STM32L011D3';       controllerunitstr:'STM32L011XX'),
  (controllertypestr:'STM32L011D4';       controllerunitstr:'STM32L011XX'),
  (controllertypestr:'STM32L011E3';       controllerunitstr:'STM32L011XX'),
  (controllertypestr:'STM32L011E4';       controllerunitstr:'STM32L011XX'),
  (controllertypestr:'STM32L011F3';       controllerunitstr:'STM32L011XX'),
  (controllertypestr:'STM32L011F4';       controllerunitstr:'STM32L011XX'),
  (controllertypestr:'STM32L011G3';       controllerunitstr:'STM32L011XX'),
  (controllertypestr:'STM32L011G4';       controllerunitstr:'STM32L011XX'),
  (controllertypestr:'STM32L011K3';       controllerunitstr:'STM32L011XX'),
  (controllertypestr:'STM32L011K4';       controllerunitstr:'STM32L011XX'),
  (controllertypestr:'STM32L021D4';       controllerunitstr:'STM32L021XX'),
  (controllertypestr:'STM32L021F4';       controllerunitstr:'STM32L021XX'),
  (controllertypestr:'STM32L021G4';       controllerunitstr:'STM32L021XX'),
  (controllertypestr:'STM32L021K4';       controllerunitstr:'STM32L021XX'),
  (controllertypestr:'STM32L031C4';       controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L031C6';       controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L031E4';       controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L031E6';       controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L031F4';       controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L031F6';       controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L031G4';       controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L031G6';       controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L031G6S';      controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L031K4';       controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L031K6';       controllerunitstr:'STM32L031XX'),
  (controllertypestr:'STM32L041C4';       controllerunitstr:'STM32L041XX'),
  (controllertypestr:'STM32L041C6';       controllerunitstr:'STM32L041XX'),
  (controllertypestr:'STM32L041E6';       controllerunitstr:'STM32L041XX'),
  (controllertypestr:'STM32L041F6';       controllerunitstr:'STM32L041XX'),
  (controllertypestr:'STM32L041G6';       controllerunitstr:'STM32L041XX'),
  (controllertypestr:'STM32L041G6S';      controllerunitstr:'STM32L041XX'),
  (controllertypestr:'STM32L041K6';       controllerunitstr:'STM32L041XX'),
  (controllertypestr:'STM32L051C6';       controllerunitstr:'STM32L051XX'),
  (controllertypestr:'STM32L051C8';       controllerunitstr:'STM32L051XX'),
  (controllertypestr:'STM32L051K6';       controllerunitstr:'STM32L051XX'),
  (controllertypestr:'STM32L051K8';       controllerunitstr:'STM32L051XX'),
  (controllertypestr:'STM32L051R6';       controllerunitstr:'STM32L051XX'),
  (controllertypestr:'STM32L051R8';       controllerunitstr:'STM32L051XX'),
  (controllertypestr:'STM32L051T6';       controllerunitstr:'STM32L051XX'),
  (controllertypestr:'STM32L051T8';       controllerunitstr:'STM32L051XX'),
  (controllertypestr:'STM32L052C6';       controllerunitstr:'STM32L052XX'),
  (controllertypestr:'STM32L052C8';       controllerunitstr:'STM32L052XX'),
  (controllertypestr:'STM32L052K6';       controllerunitstr:'STM32L052XX'),
  (controllertypestr:'STM32L052K8';       controllerunitstr:'STM32L052XX'),
  (controllertypestr:'STM32L052R6';       controllerunitstr:'STM32L052XX'),
  (controllertypestr:'STM32L052R8';       controllerunitstr:'STM32L052XX'),
  (controllertypestr:'STM32L052T6';       controllerunitstr:'STM32L052XX'),
  (controllertypestr:'STM32L052T8';       controllerunitstr:'STM32L052XX'),
  (controllertypestr:'STM32L053C6';       controllerunitstr:'STM32L053XX'),
  (controllertypestr:'STM32L053C8';       controllerunitstr:'STM32L053XX'),
  (controllertypestr:'STM32L053R6';       controllerunitstr:'STM32L053XX'),
  (controllertypestr:'STM32L053R8';       controllerunitstr:'STM32L053XX'),
  (controllertypestr:'STM32L062C8';       controllerunitstr:'STM32L062XX'),
  (controllertypestr:'STM32L062K8';       controllerunitstr:'STM32L062XX'),
  (controllertypestr:'STM32L063C8';       controllerunitstr:'STM32L063XX'),
  (controllertypestr:'STM32L063R8';       controllerunitstr:'STM32L063XX'),
  (controllertypestr:'STM32L071C8';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L071CB';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L071CZ';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L071K8';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L071KB';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L071KZ';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L071RB';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L071RZ';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L071V8';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L071VB';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L071VZ';       controllerunitstr:'STM32L071XX'),
  (controllertypestr:'STM32L072CB';       controllerunitstr:'STM32L072XX'),
  (controllertypestr:'STM32L072CZ';       controllerunitstr:'STM32L072XX'),
  (controllertypestr:'STM32L072KB';       controllerunitstr:'STM32L072XX'),
  (controllertypestr:'STM32L072KZ';       controllerunitstr:'STM32L072XX'),
  (controllertypestr:'STM32L072RB';       controllerunitstr:'STM32L072XX'),
  (controllertypestr:'STM32L072RZ';       controllerunitstr:'STM32L072XX'),
  (controllertypestr:'STM32L072V8';       controllerunitstr:'STM32L072XX'),
  (controllertypestr:'STM32L072VB';       controllerunitstr:'STM32L072XX'),
  (controllertypestr:'STM32L072VZ';       controllerunitstr:'STM32L072XX'),
  (controllertypestr:'STM32L073CB';       controllerunitstr:'STM32L073XX'),
  (controllertypestr:'STM32L073CZ';       controllerunitstr:'STM32L073XX'),
  (controllertypestr:'STM32L073RB';       controllerunitstr:'STM32L073XX'),
  (controllertypestr:'STM32L073RZ';       controllerunitstr:'STM32L073XX'),
  (controllertypestr:'STM32L073V8';       controllerunitstr:'STM32L073XX'),
  (controllertypestr:'STM32L073VB';       controllerunitstr:'STM32L073XX'),
  (controllertypestr:'STM32L073VZ';       controllerunitstr:'STM32L073XX'),
  (controllertypestr:'STM32L081CB';       controllerunitstr:'STM32L081XX'),
  (controllertypestr:'STM32L081CZ';       controllerunitstr:'STM32L081XX'),
  (controllertypestr:'STM32L081KZ';       controllerunitstr:'STM32L081XX'),
  (controllertypestr:'STM32L082CZ';       controllerunitstr:'STM32L082XX'),
  (controllertypestr:'STM32L082KB';       controllerunitstr:'STM32L082XX'),
  (controllertypestr:'STM32L082KZ';       controllerunitstr:'STM32L082XX'),
  (controllertypestr:'STM32L083CB';       controllerunitstr:'STM32L083XX'),
  (controllertypestr:'STM32L083CZ';       controllerunitstr:'STM32L083XX'),
  (controllertypestr:'STM32L083RB';       controllerunitstr:'STM32L083XX'),
  (controllertypestr:'STM32L083RZ';       controllerunitstr:'STM32L083XX'),
  (controllertypestr:'STM32L083V8';       controllerunitstr:'STM32L083XX'),
  (controllertypestr:'STM32L083VB';       controllerunitstr:'STM32L083XX'),
  (controllertypestr:'STM32L083VZ';       controllerunitstr:'STM32L083XX'),
  (controllertypestr:'BL072ZLRWAN1';      controllerunitstr:'STM32L072XX'),
  (controllertypestr:'NUCLEOL010RB';      controllerunitstr:'STM32L010XB'),
  (controllertypestr:'NUCLEOL011K4';      controllerunitstr:'STM32L011XX'),
  (controllertypestr:'NUCLEOL031K6';      controllerunitstr:'STM32L031XX'),
  (controllertypestr:'NUCLEOL053R8';      controllerunitstr:'STM32L053XX'),
  (controllertypestr:'NUCLEOL073RZ';      controllerunitstr:'STM32L073XX'),
  (controllertypestr:'STM32L0538DISCOVERY';controllerunitstr:'STM32L053XX'),
  (controllertypestr:'STM32L100C6';       controllerunitstr:'STM32L100XB'),
  (controllertypestr:'STM32L100C6A';      controllerunitstr:'STM32L100XB'),
  (controllertypestr:'STM32L100R8';       controllerunitstr:'STM32L100XB'),
  (controllertypestr:'STM32L100R8A';      controllerunitstr:'STM32L100XB'),
  (controllertypestr:'STM32L100RB';       controllerunitstr:'STM32L100XB'),
  (controllertypestr:'STM32L100RBA';      controllerunitstr:'STM32L100XBA'),
  (controllertypestr:'STM32L100RC';       controllerunitstr:'STM32L100XC'),
  (controllertypestr:'STM32L151C6';       controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151C6A';      controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151C8';       controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151C8A';      controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151CB';       controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151CBA';      controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151CC';       controllerunitstr:'STM32L151XC'),
  (controllertypestr:'STM32L151QC';       controllerunitstr:'STM32L151XC'),
  (controllertypestr:'STM32L151QD';       controllerunitstr:'STM32L151XD'),
  (controllertypestr:'STM32L151QE';       controllerunitstr:'STM32L151XE'),
  (controllertypestr:'STM32L151R6';       controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151R6A';      controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151R8';       controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151R8A';      controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151RB';       controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151RBA';      controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151RC';       controllerunitstr:'STM32L151XC'),
  (controllertypestr:'STM32L151RCA';      controllerunitstr:'STM32L151XCA'),
  (controllertypestr:'STM32L151RD';       controllerunitstr:'STM32L151XD'),
  (controllertypestr:'STM32L151RE';       controllerunitstr:'STM32L151XE'),
  (controllertypestr:'STM32L151UC';       controllerunitstr:'STM32L151XC'),
  (controllertypestr:'STM32L151V8';       controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151V8A';      controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151VB';       controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151VBA';      controllerunitstr:'STM32L151XB'),
  (controllertypestr:'STM32L151VC';       controllerunitstr:'STM32L151XC'),
  (controllertypestr:'STM32L151VCA';      controllerunitstr:'STM32L151XCA'),
  (controllertypestr:'STM32L151VD';       controllerunitstr:'STM32L151XD'),
  (controllertypestr:'STM32L151VDX';      controllerunitstr:'STM32L151XDX'),
  (controllertypestr:'STM32L151VE';       controllerunitstr:'STM32L151XE'),
  (controllertypestr:'STM32L151ZC';       controllerunitstr:'STM32L151XC'),
  (controllertypestr:'STM32L151ZD';       controllerunitstr:'STM32L151XD'),
  (controllertypestr:'STM32L151ZE';       controllerunitstr:'STM32L151XE'),
  (controllertypestr:'STM32L152C6';       controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152C6A';      controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152C8';       controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152C8A';      controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152CB';       controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152CBA';      controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152CC';       controllerunitstr:'STM32L152XC'),
  (controllertypestr:'STM32L152QC';       controllerunitstr:'STM32L152XC'),
  (controllertypestr:'STM32L152QD';       controllerunitstr:'STM32L152XD'),
  (controllertypestr:'STM32L152QE';       controllerunitstr:'STM32L152XE'),
  (controllertypestr:'STM32L152R6';       controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152R6A';      controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152R8';       controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152R8A';      controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152RB';       controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152RBA';      controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152RC';       controllerunitstr:'STM32L152XC'),
  (controllertypestr:'STM32L152RCA';      controllerunitstr:'STM32L152XCA'),
  (controllertypestr:'STM32L152RD';       controllerunitstr:'STM32L152XD'),
  (controllertypestr:'STM32L152RE';       controllerunitstr:'STM32L152XE'),
  (controllertypestr:'STM32L152UC';       controllerunitstr:'STM32L152XC'),
  (controllertypestr:'STM32L152V8';       controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152V8A';      controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152VB';       controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152VBA';      controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L152VC';       controllerunitstr:'STM32L152XC'),
  (controllertypestr:'STM32L152VCA';      controllerunitstr:'STM32L152XCA'),
  (controllertypestr:'STM32L152VD';       controllerunitstr:'STM32L152XD'),
  (controllertypestr:'STM32L152VDX';      controllerunitstr:'STM32L152XD'),
  (controllertypestr:'STM32L152VE';       controllerunitstr:'STM32L152XE'),
  (controllertypestr:'STM32L152ZC';       controllerunitstr:'STM32L152XC'),
  (controllertypestr:'STM32L152ZD';       controllerunitstr:'STM32L152XD'),
  (controllertypestr:'STM32L152ZE';       controllerunitstr:'STM32L152XE'),
  (controllertypestr:'STM32L162QC';       controllerunitstr:'STM32L162XC'),
  (controllertypestr:'STM32L162QD';       controllerunitstr:'STM32L162XD'),
  (controllertypestr:'STM32L162RC';       controllerunitstr:'STM32L162XC'),
  (controllertypestr:'STM32L162RCA';      controllerunitstr:'STM32L162XC'),
  (controllertypestr:'STM32L162RD';       controllerunitstr:'STM32L162XD'),
  (controllertypestr:'STM32L162RE';       controllerunitstr:'STM32L162XE'),
  (controllertypestr:'STM32L162VC';       controllerunitstr:'STM32L162XC'),
  (controllertypestr:'STM32L162VCA';      controllerunitstr:'STM32L162XC'),
  (controllertypestr:'STM32L162VD';       controllerunitstr:'STM32L162XD'),
  (controllertypestr:'STM32L162VDX';      controllerunitstr:'STM32L162XD'),
  (controllertypestr:'STM32L162VE';       controllerunitstr:'STM32L162XE'),
  (controllertypestr:'STM32L162ZC';       controllerunitstr:'STM32L162XC'),
  (controllertypestr:'STM32L162ZD';       controllerunitstr:'STM32L162XD'),
  (controllertypestr:'STM32L162ZE';       controllerunitstr:'STM32L162XE'),
  (controllertypestr:'NUCLEOL152RE';      controllerunitstr:'STM32L152XE'),
  (controllertypestr:'STM32L100CDISCOVERY';controllerunitstr:'STM32L100XC'),
  (controllertypestr:'STM32L152CDISCOVERY';controllerunitstr:'STM32L152XC'),
  (controllertypestr:'STM32LDISCOVERY';   controllerunitstr:'STM32L152XB'),
  (controllertypestr:'STM32L412C8';       controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L412CB';       controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L412CBP';      controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L412K8';       controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L412KB';       controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L412R8';       controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L412RB';       controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L412RBP';      controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L412T8';       controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L412TB';       controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L412TBP';      controllerunitstr:'STM32L412XX'),
  (controllertypestr:'STM32L422CB';       controllerunitstr:'STM32L422XX'),
  (controllertypestr:'STM32L422KB';       controllerunitstr:'STM32L422XX'),
  (controllertypestr:'STM32L422RB';       controllerunitstr:'STM32L422XX'),
  (controllertypestr:'STM32L422TB';       controllerunitstr:'STM32L422XX'),
  (controllertypestr:'STM32L431CB';       controllerunitstr:'STM32L431XX'),
  (controllertypestr:'STM32L431CC';       controllerunitstr:'STM32L431XX'),
  (controllertypestr:'STM32L431KB';       controllerunitstr:'STM32L431XX'),
  (controllertypestr:'STM32L431KC';       controllerunitstr:'STM32L431XX'),
  (controllertypestr:'STM32L431RB';       controllerunitstr:'STM32L431XX'),
  (controllertypestr:'STM32L431RC';       controllerunitstr:'STM32L431XX'),
  (controllertypestr:'STM32L431VC';       controllerunitstr:'STM32L431XX'),
  (controllertypestr:'STM32L432KB';       controllerunitstr:'STM32L432XX'),
  (controllertypestr:'STM32L432KC';       controllerunitstr:'STM32L432XX'),
  (controllertypestr:'STM32L433CB';       controllerunitstr:'STM32L433XX'),
  (controllertypestr:'STM32L433CC';       controllerunitstr:'STM32L433XX'),
  (controllertypestr:'STM32L433RB';       controllerunitstr:'STM32L433XX'),
  (controllertypestr:'STM32L433RC';       controllerunitstr:'STM32L433XX'),
  (controllertypestr:'STM32L433RCP';      controllerunitstr:'STM32L433XX'),
  (controllertypestr:'STM32L433VC';       controllerunitstr:'STM32L433XX'),
  (controllertypestr:'STM32L442KC';       controllerunitstr:'STM32L442XX'),
  (controllertypestr:'STM32L443CC';       controllerunitstr:'STM32L443XX'),
  (controllertypestr:'STM32L443RC';       controllerunitstr:'STM32L443XX'),
  (controllertypestr:'STM32L443VC';       controllerunitstr:'STM32L443XX'),
  (controllertypestr:'STM32L451CC';       controllerunitstr:'STM32L451XX'),
  (controllertypestr:'STM32L451CE';       controllerunitstr:'STM32L451XX'),
  (controllertypestr:'STM32L451RC';       controllerunitstr:'STM32L451XX'),
  (controllertypestr:'STM32L451RE';       controllerunitstr:'STM32L451XX'),
  (controllertypestr:'STM32L451VC';       controllerunitstr:'STM32L451XX'),
  (controllertypestr:'STM32L451VE';       controllerunitstr:'STM32L451XX'),
  (controllertypestr:'STM32L452CC';       controllerunitstr:'STM32L452XX'),
  (controllertypestr:'STM32L452CE';       controllerunitstr:'STM32L452XX'),
  (controllertypestr:'STM32L452RC';       controllerunitstr:'STM32L452XX'),
  (controllertypestr:'STM32L452RE';       controllerunitstr:'STM32L452XX'),
  (controllertypestr:'STM32L452REP';      controllerunitstr:'STM32L452XX'),
  (controllertypestr:'STM32L452VC';       controllerunitstr:'STM32L452XX'),
  (controllertypestr:'STM32L452VE';       controllerunitstr:'STM32L452XX'),
  (controllertypestr:'STM32L462CE';       controllerunitstr:'STM32L462XX'),
  (controllertypestr:'STM32L462RE';       controllerunitstr:'STM32L462XX'),
  (controllertypestr:'STM32L462VE';       controllerunitstr:'STM32L462XX'),
  (controllertypestr:'STM32L471QE';       controllerunitstr:'STM32L471XX'),
  (controllertypestr:'STM32L471QG';       controllerunitstr:'STM32L471XX'),
  (controllertypestr:'STM32L471RE';       controllerunitstr:'STM32L471XX'),
  (controllertypestr:'STM32L471RG';       controllerunitstr:'STM32L471XX'),
  (controllertypestr:'STM32L471VE';       controllerunitstr:'STM32L471XX'),
  (controllertypestr:'STM32L471VG';       controllerunitstr:'STM32L471XX'),
  (controllertypestr:'STM32L471ZE';       controllerunitstr:'STM32L471XX'),
  (controllertypestr:'STM32L471ZG';       controllerunitstr:'STM32L471XX'),
  (controllertypestr:'STM32L475RC';       controllerunitstr:'STM32L475XX'),
  (controllertypestr:'STM32L475RE';       controllerunitstr:'STM32L475XX'),
  (controllertypestr:'STM32L475RG';       controllerunitstr:'STM32L475XX'),
  (controllertypestr:'STM32L475VC';       controllerunitstr:'STM32L475XX'),
  (controllertypestr:'STM32L475VE';       controllerunitstr:'STM32L475XX'),
  (controllertypestr:'STM32L475VG';       controllerunitstr:'STM32L475XX'),
  (controllertypestr:'STM32L476JE';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476JG';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476JGP';      controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476ME';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476MG';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476QE';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476QG';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476RC';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476RE';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476RG';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476VC';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476VE';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476VG';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476ZE';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476ZG';       controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L476ZGP';      controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L485JC';       controllerunitstr:'STM32L485XX'),
  (controllertypestr:'STM32L485JE';       controllerunitstr:'STM32L485XX'),
  (controllertypestr:'STM32L486JG';       controllerunitstr:'STM32L486XX'),
  (controllertypestr:'STM32L486QG';       controllerunitstr:'STM32L486XX'),
  (controllertypestr:'STM32L486RG';       controllerunitstr:'STM32L486XX'),
  (controllertypestr:'STM32L486VG';       controllerunitstr:'STM32L486XX'),
  (controllertypestr:'STM32L486ZG';       controllerunitstr:'STM32L486XX'),
  (controllertypestr:'STM32L496AE';       controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496AG';       controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496AGP';      controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496QE';       controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496QG';       controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496QGP';      controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496RE';       controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496RG';       controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496RGP';      controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496VE';       controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496VG';       controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496VGP';      controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496WGP';      controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496ZE';       controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496ZG';       controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L496ZGP';      controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L4A6AG';       controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'STM32L4A6AGP';      controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'STM32L4A6QG';       controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'STM32L4A6QGP';      controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'STM32L4A6RG';       controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'STM32L4A6RGP';      controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'STM32L4A6VG';       controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'STM32L4A6VGP';      controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'STM32L4A6ZG';       controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'STM32L4A6ZGP';      controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'STM32L4P5AE';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5AG';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5AGP';      controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5CE';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5CG';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5CGP';      controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5QE';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5QG';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5QGP';      controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5RE';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5RG';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5RGP';      controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5VE';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5VG';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5VGP';      controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5ZE';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5ZG';       controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4P5ZGP';      controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4Q5AG';       controllerunitstr:'STM32L4Q5XX'),
  (controllertypestr:'STM32L4Q5CG';       controllerunitstr:'STM32L4Q5XX'),
  (controllertypestr:'STM32L4Q5QG';       controllerunitstr:'STM32L4Q5XX'),
  (controllertypestr:'STM32L4Q5RG';       controllerunitstr:'STM32L4Q5XX'),
  (controllertypestr:'STM32L4Q5VG';       controllerunitstr:'STM32L4Q5XX'),
  (controllertypestr:'STM32L4Q5ZG';       controllerunitstr:'STM32L4Q5XX'),
  (controllertypestr:'STM32L4R5AG';       controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'STM32L4R5AI';       controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'STM32L4R5QG';       controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'STM32L4R5QI';       controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'STM32L4R5VG';       controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'STM32L4R5VI';       controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'STM32L4R5ZG';       controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'STM32L4R5ZI';       controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'STM32L4R5ZIP';      controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'STM32L4R7AI';       controllerunitstr:'STM32L4R7XX'),
  (controllertypestr:'STM32L4R7VI';       controllerunitstr:'STM32L4R7XX'),
  (controllertypestr:'STM32L4R7ZI';       controllerunitstr:'STM32L4R7XX'),
  (controllertypestr:'STM32L4R9AG';       controllerunitstr:'STM32L4R9XX'),
  (controllertypestr:'STM32L4R9AI';       controllerunitstr:'STM32L4R9XX'),
  (controllertypestr:'STM32L4R9VG';       controllerunitstr:'STM32L4R9XX'),
  (controllertypestr:'STM32L4R9VI';       controllerunitstr:'STM32L4R9XX'),
  (controllertypestr:'STM32L4R9ZG';       controllerunitstr:'STM32L4R9XX'),
  (controllertypestr:'STM32L4R9ZI';       controllerunitstr:'STM32L4R9XX'),
  (controllertypestr:'STM32L4R9ZIP';      controllerunitstr:'STM32L4R9XX'),
  (controllertypestr:'STM32L4S5AI';       controllerunitstr:'STM32L4S5XX'),
  (controllertypestr:'STM32L4S5QI';       controllerunitstr:'STM32L4S5XX'),
  (controllertypestr:'STM32L4S5VI';       controllerunitstr:'STM32L4S5XX'),
  (controllertypestr:'STM32L4S5ZI';       controllerunitstr:'STM32L4S5XX'),
  (controllertypestr:'STM32L4S7AI';       controllerunitstr:'STM32L4S7XX'),
  (controllertypestr:'STM32L4S7VI';       controllerunitstr:'STM32L4S7XX'),
  (controllertypestr:'STM32L4S7ZI';       controllerunitstr:'STM32L4S7XX'),
  (controllertypestr:'STM32L4S9AI';       controllerunitstr:'STM32L4S9XX'),
  (controllertypestr:'STM32L4S9VI';       controllerunitstr:'STM32L4S9XX'),
  (controllertypestr:'STM32L4S9ZI';       controllerunitstr:'STM32L4S9XX'),
  (controllertypestr:'BL462ECELL1';       controllerunitstr:'STM32L462XX'),
  (controllertypestr:'BL475EIOT01A1';     controllerunitstr:'STM32L475XX'),
  (controllertypestr:'BL475EIOT01A2';     controllerunitstr:'STM32L475XX'),
  (controllertypestr:'BL4S5IIOT01A';      controllerunitstr:'STM32L4S5XX'),
  (controllertypestr:'NUCLEOL412KB';      controllerunitstr:'STM32L412XX'),
  (controllertypestr:'NUCLEOL412RBP';     controllerunitstr:'STM32L412XX'),
  (controllertypestr:'NUCLEOL432KC';      controllerunitstr:'STM32L432XX'),
  (controllertypestr:'NUCLEOL433RCP';     controllerunitstr:'STM32L433XX'),
  (controllertypestr:'NUCLEOL452RE';      controllerunitstr:'STM32L452XX'),
  (controllertypestr:'NUCLEOL452REP';     controllerunitstr:'STM32L452XX'),
  (controllertypestr:'NUCLEOL476RG';      controllerunitstr:'STM32L476XX'),
  (controllertypestr:'NUCLEOL496ZG';      controllerunitstr:'STM32L496XX'),
  (controllertypestr:'NUCLEOL496ZGP';     controllerunitstr:'STM32L496XX'),
  (controllertypestr:'NUCLEOL4A6ZG';      controllerunitstr:'STM32L4A6XX'),
  (controllertypestr:'NUCLEOL4P5ZG';      controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'NUCLEOL4R5ZI';      controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'NUCLEOL4R5ZIP';     controllerunitstr:'STM32L4R5XX'),
  (controllertypestr:'STM32L476GDISCOVERY';controllerunitstr:'STM32L476XX'),
  (controllertypestr:'STM32L496GDISCOVERY';controllerunitstr:'STM32L496XX'),
  (controllertypestr:'STM32L4P5GDK';      controllerunitstr:'STM32L4P5XX'),
  (controllertypestr:'STM32L4R9IDISCOVERY';controllerunitstr:'STM32L4R9XX'),
  (controllertypestr:'STM32WB30CEA';      controllerunitstr:'STM32WB30XX'),
  (controllertypestr:'STM32WB35CCA';      controllerunitstr:'STM32WB35XX'),
  (controllertypestr:'STM32WB35CEA';      controllerunitstr:'STM32WB35XX'),
  (controllertypestr:'STM32WB50CG';       controllerunitstr:'STM32WB50XX'),
  (controllertypestr:'STM32WB55CC';       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'STM32WB55CE';       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'STM32WB55CG';       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'STM32WB55RC';       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'STM32WB55RE';       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'STM32WB55RG';       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'STM32WB55VC';       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'STM32WB55VE';       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'STM32WB55VG';       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'STM32WB55VY';       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'STM32WB5MMG';       controllerunitstr:'STM32WB5MXX'),
  (controllertypestr:'NUCLEOWB55' ;       controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'NUCLEOWB55RG';      controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'NUCLEOWB55USBDONGLE';controllerunitstr:'STM32WB55XX'),
  (controllertypestr:'LM3S1110';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1133';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1138';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1150';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1162';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1165';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1166';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2110';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2139';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6100';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6110';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1601';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1608';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1620';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1635';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1636';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1637';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1651';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2601';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2608';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2620';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2637';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2651';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6610';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6611';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6618';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6633';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6637';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S8630';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1911';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1918';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1937';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1958';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1960';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1968';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S1969';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2911';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2918';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2919';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2939';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2948';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2950';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S2965';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6911';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6918';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6938';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6950';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6952';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S6965';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S8930';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S8933';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S8938';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S8962';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S8970';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S8971';          controllerunitstr:'LM3FURY'),
  (controllertypestr:'LM3S5951';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM3S5956';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM3S1B21';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM3S2B93';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM3S5B91';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM3S9B81';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM3S9B90';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM3S9B92';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM3S9B95';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM3S9B96';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM3S5D51';          controllerunitstr:'LM3TEMPEST'),
  (controllertypestr:'LM4F120H5';         controllerunitstr:'LM4F120'),
  (controllertypestr:'SC32442B';          controllerunitstr:'SC32442b'),
  (controllertypestr:'XMC4500X1024';      controllerunitstr:'XMC4500'),
  (controllertypestr:'XMC4500X768';       controllerunitstr:'XMC4500'),
  (controllertypestr:'XMC4502X768';       controllerunitstr:'XMC4502'),
  (controllertypestr:'XMC4504X512';       controllerunitstr:'XMC4504'),
  (controllertypestr:'ALLWINNER_A20';     controllerunitstr:'ALLWINNER_A20'),
  (controllertypestr:'MK20DX128VFM5';     controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX128VFT5';     controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX128VLF5';     controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX128VLH5';     controllerunitstr:'MK20D5'),
  (controllertypestr:'TEENSY30'     ;     controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX128VMP5';     controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX32VFM5';      controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX32VFT5';      controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX32VLF5';      controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX32VLH5';      controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX32VMP5';      controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX64VFM5';      controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX64VFT5';      controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX64VLF5';      controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX64VLH5';      controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX64VMP5';      controllerunitstr:'MK20D5'),
  (controllertypestr:'MK20DX128VLH7';     controllerunitstr:'MK20D7'),
  (controllertypestr:'MK20DX128VLK7';     controllerunitstr:'MK20D7'),
  (controllertypestr:'MK20DX128VLL7';     controllerunitstr:'MK20D7'),
  (controllertypestr:'MK20DX128VMC7';     controllerunitstr:'MK20D7'),
  (controllertypestr:'MK20DX256VLH7';     controllerunitstr:'MK20D7'),
  (controllertypestr:'MK20DX256VLK7';     controllerunitstr:'MK20D7'),
  (controllertypestr:'MK20DX256VLL7';     controllerunitstr:'MK20D7'),
  (controllertypestr:'MK20DX256VMC7';     controllerunitstr:'MK20D7'),
  (controllertypestr:'TEENSY31';          controllerunitstr:'MK20D7'),
  (controllertypestr:'TEENSY32';          controllerunitstr:'MK20D7'),
  (controllertypestr:'MK20DX64VLH7';      controllerunitstr:'MK20D7'),
  (controllertypestr:'MK20DX64VLK7';      controllerunitstr:'MK20D7'),
  (controllertypestr:'MK20DX64VMC7';      controllerunitstr:'MK20D7'),
  (controllertypestr:'MK22FN512CAP12';    controllerunitstr:'MK22F51212'),
  (controllertypestr:'MK22FN512CBP12';    controllerunitstr:'MK22F51212'),
  (controllertypestr:'MK22FN512VDC12';    controllerunitstr:'MK22F51212'),
  (controllertypestr:'MK22FN512VLH12';    controllerunitstr:'MK22F51212'),
  (controllertypestr:'MK22FN512VLL12';    controllerunitstr:'MK22F51212'),
  (controllertypestr:'MK22FN512VMP12';    controllerunitstr:'MK22F51212'),
  (controllertypestr:'FREEDOM_K22F';      controllerunitstr:'MK22F51212'),
  (controllertypestr:'MK64FN1M0VDC12';    controllerunitstr:'MK64F12'),
  (controllertypestr:'MK64FN1M0VLL12';    controllerunitstr:'MK64F12'),
  (controllertypestr:'FREEDOM_K64F';      controllerunitstr:'MK64F12'),
  (controllertypestr:'MK64FN1M0VLQ12';    controllerunitstr:'MK64F12'),
  (controllertypestr:'MK64FN1M0VMD12';    controllerunitstr:'MK64F12'),
  (controllertypestr:'MK64FX512VDC12';    controllerunitstr:'MK64F12'),
  (controllertypestr:'MK64FX512VLL12';    controllerunitstr:'MK64F12'),
  (controllertypestr:'MK64FX512VLQ12';    controllerunitstr:'MK64F12'),
  (controllertypestr:'MK64FX512VMD12';    controllerunitstr:'MK64F12'),

  (controllertypestr:'SAMD10C13A'        ;controllerunitstr:'SAMD10C13A'),
  (controllertypestr:'SAMD10C14A'        ;controllerunitstr:'SAMD10C14A'),
  (controllertypestr:'SAMD10D13A'        ;controllerunitstr:'SAMD10D13A'),
  (controllertypestr:'SAMD10D14A'        ;controllerunitstr:'SAMD10D14A'),
  (controllertypestr:'SAMD11C13A'        ;controllerunitstr:'SAMD11C13A'),
  (controllertypestr:'SAMD11C14A'        ;controllerunitstr:'SAMD11C14A'),
  (controllertypestr:'SAMD11D14AM'       ;controllerunitstr:'SAMD11D14AM'),
  (controllertypestr:'SAMD11D14AS'       ;controllerunitstr:'SAMD11D14AS'),
  (controllertypestr:'SAMD20E14'         ;controllerunitstr:'SAMD20E14'),
  (controllertypestr:'SAMD20E15'         ;controllerunitstr:'SAMD20E15'),
  (controllertypestr:'SAMD20E16'         ;controllerunitstr:'SAMD20E16'),
  (controllertypestr:'SAMD20E17'         ;controllerunitstr:'SAMD20E17'),
  (controllertypestr:'SAMD20E18'         ;controllerunitstr:'SAMD20E18'),
  (controllertypestr:'SAMD20G14'         ;controllerunitstr:'SAMD20G14'),
  (controllertypestr:'SAMD20G15'         ;controllerunitstr:'SAMD20G15'),
  (controllertypestr:'SAMD20G16'         ;controllerunitstr:'SAMD20G16'),
  (controllertypestr:'SAMD20G17'         ;controllerunitstr:'SAMD20G17'),
  (controllertypestr:'SAMD20G18'         ;controllerunitstr:'SAMD20G18'),
  (controllertypestr:'SAMD20J14'         ;controllerunitstr:'SAMD20J14'),
  (controllertypestr:'SAMD20J15'         ;controllerunitstr:'SAMD20J15'),
  (controllertypestr:'SAMD20J16'         ;controllerunitstr:'SAMD20J16'),
  (controllertypestr:'SAMD20J17'         ;controllerunitstr:'SAMD20J17'),
  (controllertypestr:'SAMD20J18'         ;controllerunitstr:'SAMD20J18'),
  (controllertypestr:'SAMC20E15A'        ;controllerunitstr:'SAMC20E15A'),
  (controllertypestr:'SAMC20E16A'        ;controllerunitstr:'SAMC20E16A'),
  (controllertypestr:'SAMC20E17A'        ;controllerunitstr:'SAMC20E17A'),
  (controllertypestr:'SAMC20E18A'        ;controllerunitstr:'SAMC20E18A'),
  (controllertypestr:'SAMC20G15A'        ;controllerunitstr:'SAMC20G15A'),
  (controllertypestr:'SAMC20G16A'        ;controllerunitstr:'SAMC20G16A'),
  (controllertypestr:'SAMC20G17A'        ;controllerunitstr:'SAMC20G17A'),
  (controllertypestr:'SAMC20G18A'        ;controllerunitstr:'SAMC20G18A'),
  (controllertypestr:'SAMC20J15A'        ;controllerunitstr:'SAMC20J15A'),
  (controllertypestr:'SAMC20J16A'        ;controllerunitstr:'SAMC20J16A'),
  (controllertypestr:'SAMC20J17A'        ;controllerunitstr:'SAMC20J17A'),
  (controllertypestr:'SAMC20J17AU'       ;controllerunitstr:'SAMC20J17AU'),
  (controllertypestr:'SAMC20J18A'        ;controllerunitstr:'SAMC20J18A'),
  (controllertypestr:'SAMC20J18AU'       ;controllerunitstr:'SAMC20J18AU'),
  (controllertypestr:'SAMC20N17A'        ;controllerunitstr:'SAMC20N17A'),
  (controllertypestr:'SAMC20N18A'        ;controllerunitstr:'SAMC20N18A'),
  (controllertypestr:'SAMC21E15A'        ;controllerunitstr:'SAMC21E15A'),
  (controllertypestr:'SAMC21E16A'        ;controllerunitstr:'SAMC21E16A'),
  (controllertypestr:'SAMC21E17A'        ;controllerunitstr:'SAMC21E17A'),
  (controllertypestr:'SAMC21E18A'        ;controllerunitstr:'SAMC21E18A'),
  (controllertypestr:'SAMC21G15A'        ;controllerunitstr:'SAMC21G15A'),
  (controllertypestr:'SAMC21G16A'        ;controllerunitstr:'SAMC21G16A'),
  (controllertypestr:'SAMC21G17A'        ;controllerunitstr:'SAMC21G17A'),
  (controllertypestr:'SAMC21G18A'        ;controllerunitstr:'SAMC21G18A'),
  (controllertypestr:'SAMC21J15A'        ;controllerunitstr:'SAMC21J15A'),
  (controllertypestr:'SAMC21J16A'        ;controllerunitstr:'SAMC21J16A'),
  (controllertypestr:'SAMC21J17A'        ;controllerunitstr:'SAMC21J17A'),
  (controllertypestr:'SAMC21J17AU'       ;controllerunitstr:'SAMC21J17AU'),
  (controllertypestr:'SAMC21J18A'        ;controllerunitstr:'SAMC21J18A'),
  (controllertypestr:'SAMC21J18AU'       ;controllerunitstr:'SAMC21J18AU'),
  (controllertypestr:'SAMC21N17A'        ;controllerunitstr:'SAMC21N17A'),
  (controllertypestr:'SAMC21N18A'        ;controllerunitstr:'SAMC21N18A'),
  (controllertypestr:'SAMD21E15A'        ;controllerunitstr:'SAMD21E15A'),
  (controllertypestr:'SAMD21E15B'        ;controllerunitstr:'SAMD21E15B'),
  (controllertypestr:'SAMD21E15BU'       ;controllerunitstr:'SAMD21E15BU'),
  (controllertypestr:'SAMD21E15L'        ;controllerunitstr:'SAMD21E15L'),
  (controllertypestr:'SAMD21E16A'        ;controllerunitstr:'SAMD21E16A'),
  (controllertypestr:'SAMD21E16B'        ;controllerunitstr:'SAMD21E16B'),
  (controllertypestr:'SAMD21E16BU'       ;controllerunitstr:'SAMD21E16BU'),
  (controllertypestr:'SAMD21E16L'        ;controllerunitstr:'SAMD21E16L'),
  (controllertypestr:'SAMD21E17A'        ;controllerunitstr:'SAMD21E17A'),
  (controllertypestr:'SAMD21E18A'        ;controllerunitstr:'SAMD21E18A'),
  (controllertypestr:'SAMD21G15A'        ;controllerunitstr:'SAMD21G15A'),
  (controllertypestr:'SAMD21G15B'        ;controllerunitstr:'SAMD21G15B'),
  (controllertypestr:'SAMD21G15L'        ;controllerunitstr:'SAMD21G15L'),
  (controllertypestr:'SAMD21G16A'        ;controllerunitstr:'SAMD21G16A'),
  (controllertypestr:'SAMD21G16B'        ;controllerunitstr:'SAMD21G16B'),
  (controllertypestr:'SAMD21G16L'        ;controllerunitstr:'SAMD21G16L'),
  (controllertypestr:'SAMD21G17A'        ;controllerunitstr:'SAMD21G17A'),
  (controllertypestr:'SAMD21G17AU'       ;controllerunitstr:'SAMD21G17AU'),
  (controllertypestr:'SAMD21G18A'        ;controllerunitstr:'SAMD21G18A'),
  (controllertypestr:'SAMD21G18AU'       ;controllerunitstr:'SAMD21G18AU'),
  (controllertypestr:'SAMD21J15A'        ;controllerunitstr:'SAMD21J15A'),
  (controllertypestr:'SAMD21J15B'        ;controllerunitstr:'SAMD21J15B'),
  (controllertypestr:'SAMD21J16A'        ;controllerunitstr:'SAMD21J16A'),
  (controllertypestr:'SAMD21J16B'        ;controllerunitstr:'SAMD21J16B'),
  (controllertypestr:'SAMD21J17A'        ;controllerunitstr:'SAMD21J17A'),
  (controllertypestr:'SAMD21J18A'        ;controllerunitstr:'SAMD21J18A'),
  (controllertypestr:'SAMC21XPRO';controllerunitstr:'SAMC21J18A'),
  (controllertypestr:'SAMD10XMINI';controllerunitstr:'SAMD10D14A'),
  (controllertypestr:'SAMD20XPRO';controllerunitstr:'SAMD20J18'),
  (controllertypestr:'ARDUINOZERO';controllerunitstr:'SAMD21G18AU'),
  (controllertypestr:'SAMD21XPRO';controllerunitstr:'SAMD21J18A'),

  (controllertypestr:'ATSAM3X8E';         controllerunitstr:'SAM3X8E'),
  (controllertypestr:'ARDUINO_DUE';       controllerunitstr:'SAM3X8E'),
  (controllertypestr:'FLIP_N_CLICK';      controllerunitstr:'SAM3X8E'),

  (controllertypestr:'XIAO' ;             controllerunitstr:'SAMD21G18A'),
  (controllertypestr:'FEATHER_M0';        controllerunitstr:'SAMD21G18A'),
  (controllertypestr:'ITSYBITSY_M0';      controllerunitstr:'SAMD21G18A'),
  (controllertypestr:'METRO_M0';          controllerunitstr:'SAMD21G18A'),
  (controllertypestr:'TRINKET_M0';        controllerunitstr:'SAMD21E18A'),
  (controllertypestr:'WIO_TERMINAL';      controllerunitstr:'SAMD51P19A'),
  (controllertypestr:'FEATHER_M4';        controllerunitstr:'SAMD51J19A'),
  (controllertypestr:'ITSYBITSY_M4';      controllerunitstr:'SAMD51G19A'),
  (controllertypestr:'METRO_M4';          controllerunitstr:'SAMD51J19A'),
  (controllertypestr:'NRF51422_XXAA';     controllerunitstr:'NRF51'),
  (controllertypestr:'NRF51422_XXAB';     controllerunitstr:'NRF51'),
  (controllertypestr:'NRF51422_XXAC';     controllerunitstr:'NRF51'),
  (controllertypestr:'NRF51822_XXAA';     controllerunitstr:'NRF51'),
  (controllertypestr:'NRF51822_XXAB';     controllerunitstr:'NRF51'),
  (controllertypestr:'NRF51822_XXAC';     controllerunitstr:'NRF51'),
  (controllertypestr:'NRF52832_XXAA';     controllerunitstr:'NRF52'),
  (controllertypestr:'NRF52840_XXAA';     controllerunitstr:'NRF52'),
  (controllertypestr:'RASPI2';            controllerunitstr:'RASPI2'),
  (controllertypestr:'RP2040';            controllerunitstr:'RP2040'),
  (controllertypestr:'RASPI_PICO';        controllerunitstr:'RP2040'),
  (controllertypestr:'FEATHER_RP2040';    controllerunitstr:'RP2040'),
  (controllertypestr:'ITZYBITZY_RP2040';  controllerunitstr:'RP2040'),
  (controllertypestr:'TINY_2040';         controllerunitstr:'RP2040'),
  (controllertypestr:'QTPY_RP2040';       controllerunitstr:'RP2040'),
  (controllertypestr:'THUMB2_BARE';       controllerunitstr:'THUMB2_BARE'),
  (controllertypestr:'PIC32MX110F016B';   controllerunitstr:'PIC32MX1xxFxxxB'),
  (controllertypestr:'PIC32MX110F016C';   controllerunitstr:'PIC32MX1xxFxxxC'),
  (controllertypestr:'PIC32MX110F016D';   controllerunitstr:'PIC32MX1xxFxxxD'),
  (controllertypestr:'PIC32MX120F032B';   controllerunitstr:'PIC32MX1xxFxxxB'),
  (controllertypestr:'PIC32MX120F032C';   controllerunitstr:'PIC32MX1xxFxxxC'),
  (controllertypestr:'PIC32MX120F032D';   controllerunitstr:'PIC32MX1xxFxxxD'),
  (controllertypestr:'PIC32MX130F064B';   controllerunitstr:'PIC32MX1xxFxxxB'),
  (controllertypestr:'PIC32MX130F064C';   controllerunitstr:'PIC32MX1xxFxxxC'),
  (controllertypestr:'PIC32MX130F064D';   controllerunitstr:'PIC32MX1xxFxxxD'),
  (controllertypestr:'PIC32MX150F128B';   controllerunitstr:'PIC32MX1xxFxxxB'),
  (controllertypestr:'PIC32MX150F128C';   controllerunitstr:'PIC32MX1xxFxxxC'),
  (controllertypestr:'PIC32MX150F128D';   controllerunitstr:'PIC32MX1xxFxxxD'),
  (controllertypestr:'PIC32MX210F016B';   controllerunitstr:'PIC32MX2xxFxxxB'),
  (controllertypestr:'PIC32MX210F016C';   controllerunitstr:'PIC32MX2xxFxxxC'),
  (controllertypestr:'PIC32MX210F016D';   controllerunitstr:'PIC32MX2xxFxxxD'),
  (controllertypestr:'PIC32MX220F032B';   controllerunitstr:'PIC32MX2xxFxxxB'),
  (controllertypestr:'PIC32MX220F032C';   controllerunitstr:'PIC32MX2xxFxxxC'),
  (controllertypestr:'PIC32MX220F032D';   controllerunitstr:'PIC32MX2xxFxxxD'),
  (controllertypestr:'PIC32MX230F064B';   controllerunitstr:'PIC32MX2xxFxxxB'),
  (controllertypestr:'PIC32MX230F064C';   controllerunitstr:'PIC32MX2xxFxxxC'),
  (controllertypestr:'PIC32MX230F064D';   controllerunitstr:'PIC32MX2xxFxxxD'),
  (controllertypestr:'PIC32MX250F128B';   controllerunitstr:'PIC32MX2xxFxxxB'),
  (controllertypestr:'PIC32MX250F128C';   controllerunitstr:'PIC32MX2xxFxxxC'),
  (controllertypestr:'PIC32MX250F128D';   controllerunitstr:'PIC32MX2xxFxxxD'),
  (controllertypestr:'PIC32MX775F256H';   controllerunitstr:'PIC32MX7x5FxxxH'),
  (controllertypestr:'PIC32MX775F256L';   controllerunitstr:'PIC32MX7x5FxxxL'),
  (controllertypestr:'PIC32MX775F512H';   controllerunitstr:'PIC32MX7x5FxxxH'),
  (controllertypestr:'PIC32MX775F512L';   controllerunitstr:'PIC32MX7x5FxxxL'),
  (controllertypestr:'PIC32MX795F512H';   controllerunitstr:'PIC32MX7x5FxxxH'),
  (controllertypestr:'PIC32MX795F512L';   controllerunitstr:'PIC32MX7x5FxxxL'),
  // AVR controllers
  (controllertypestr:'AT90CAN32';         controllerunitstr:'AT90CAN32'),
  (controllertypestr:'AT90CAN64';         controllerunitstr:'AT90CAN64'),
  (controllertypestr:'AT90CAN128';        controllerunitstr:'AT90CAN128'),
  (controllertypestr:'AT90PWM1';          controllerunitstr:'AT90PWM1'),
  (controllertypestr:'AT90PWM2B';         controllerunitstr:'AT90PWM2B'),
  (controllertypestr:'AT90PWM3B';         controllerunitstr:'AT90PWM3B'),
  (controllertypestr:'AT90PWM81';         controllerunitstr:'AT90PWM81'),
  (controllertypestr:'AT90PWM161';        controllerunitstr:'AT90PWM161'),
  (controllertypestr:'AT90PWM216';        controllerunitstr:'AT90PWM216'),
  (controllertypestr:'AT90PWM316';        controllerunitstr:'AT90PWM316'),
  (controllertypestr:'AT90USB82';         controllerunitstr:'AT90USB82'),
  (controllertypestr:'AT90USB162';        controllerunitstr:'AT90USB162'),
  (controllertypestr:'AT90USB646';        controllerunitstr:'AT90USB646'),
  (controllertypestr:'AT90USB647';        controllerunitstr:'AT90USB647'),
  (controllertypestr:'AT90USB1286';       controllerunitstr:'AT90USB1286'),
  (controllertypestr:'AT90USB1287';       controllerunitstr:'AT90USB1287'),
  (controllertypestr:'ATA6285';           controllerunitstr:'ATA6285'),
  (controllertypestr:'ATA6286';           controllerunitstr:'ATA6286'),
  (controllertypestr:'ATMEGA8';           controllerunitstr:'ATMEGA8'),
  (controllertypestr:'ATMEGA8A';          controllerunitstr:'ATMEGA8A'),
  (controllertypestr:'ATMEGA8HVA';        controllerunitstr:'ATMEGA8HVA'),
  (controllertypestr:'ATMEGA8U2';         controllerunitstr:'ATMEGA8U2'),
  (controllertypestr:'ATMEGA16';          controllerunitstr:'ATMEGA16'),
  (controllertypestr:'ATMEGA16A';         controllerunitstr:'ATMEGA16A'),
  (controllertypestr:'ATMEGA16HVA';       controllerunitstr:'ATMEGA16HVA'),
  (controllertypestr:'ATMEGA16HVB';       controllerunitstr:'ATMEGA16HVB'),
  (controllertypestr:'ATMEGA16HVBREVB';   controllerunitstr:'ATMEGA16HVBREVB'),
  (controllertypestr:'ATMEGA16M1';        controllerunitstr:'ATMEGA16M1'),
  (controllertypestr:'ATMEGA16U2';        controllerunitstr:'ATMEGA16U2'),
  (controllertypestr:'ATMEGA16U4';        controllerunitstr:'ATMEGA16U4'),
  (controllertypestr:'ATMEGA32';          controllerunitstr:'ATMEGA32'),
  (controllertypestr:'ATMEGA32A';         controllerunitstr:'ATMEGA32A'),
  (controllertypestr:'ATMEGA32C1';        controllerunitstr:'ATMEGA32C1'),
  (controllertypestr:'ATMEGA32HVB';       controllerunitstr:'ATMEGA32HVB'),
  (controllertypestr:'ATMEGA32HVBREVB';   controllerunitstr:'ATMEGA32HVBREVB'),
  (controllertypestr:'ATMEGA32M1';        controllerunitstr:'ATMEGA32M1'),
  (controllertypestr:'ATMEGA32U2';        controllerunitstr:'ATMEGA32U2'),
  (controllertypestr:'ATMEGA32U4';        controllerunitstr:'ATMEGA32U4'),
  (controllertypestr:'ATMEGA48';          controllerunitstr:'ATMEGA48'),
  (controllertypestr:'ATMEGA48A';         controllerunitstr:'ATMEGA48A'),
  (controllertypestr:'ATMEGA48P';         controllerunitstr:'ATMEGA48P'),
  (controllertypestr:'ATMEGA48PA';        controllerunitstr:'ATMEGA48PA'),
  (controllertypestr:'ATMEGA48PB';        controllerunitstr:'ATMEGA48PB'),
  (controllertypestr:'ATMEGA64';          controllerunitstr:'ATMEGA64'),
  (controllertypestr:'ATMEGA64A';         controllerunitstr:'ATMEGA64A'),
  (controllertypestr:'ATMEGA64C1';        controllerunitstr:'ATMEGA64C1'),
  (controllertypestr:'ATMEGA64HVE2';      controllerunitstr:'ATMEGA64HVE2'),
  (controllertypestr:'ATMEGA64M1';        controllerunitstr:'ATMEGA64M1'),
  (controllertypestr:'ATMEGA64RFR2';      controllerunitstr:'ATMEGA64RFR2'),
  (controllertypestr:'ATMEGA88';          controllerunitstr:'ATMEGA88'),
  (controllertypestr:'ATMEGA88A';         controllerunitstr:'ATMEGA88A'),
  (controllertypestr:'ATMEGA88P';         controllerunitstr:'ATMEGA88P'),
  (controllertypestr:'ATMEGA88PA';        controllerunitstr:'ATMEGA88PA'),
  (controllertypestr:'ATMEGA88PB';        controllerunitstr:'ATMEGA88PB'),
  (controllertypestr:'ATMEGA128';         controllerunitstr:'ATMEGA128'),
  (controllertypestr:'ATMEGA128A';        controllerunitstr:'ATMEGA128A'),
  (controllertypestr:'ATMEGA128RFA1';     controllerunitstr:'ATMEGA128RFA1'),
  (controllertypestr:'ATMEGA128RFR2';     controllerunitstr:'ATMEGA128RFR2'),
  (controllertypestr:'ATMEGA162';         controllerunitstr:'ATMEGA162'),
  (controllertypestr:'ATMEGA164A';        controllerunitstr:'ATMEGA164A'),
  (controllertypestr:'ATMEGA164P';        controllerunitstr:'ATMEGA164P'),
  (controllertypestr:'ATMEGA164PA';       controllerunitstr:'ATMEGA164PA'),
  (controllertypestr:'ATMEGA165A';        controllerunitstr:'ATMEGA165A'),
  (controllertypestr:'ATMEGA165P';        controllerunitstr:'ATMEGA165P'),
  (controllertypestr:'ATMEGA165PA';       controllerunitstr:'ATMEGA165PA'),
  (controllertypestr:'ATMEGA168';         controllerunitstr:'ATMEGA168'),
  (controllertypestr:'ATMEGA168A';        controllerunitstr:'ATMEGA168A'),
  (controllertypestr:'ATMEGA168P';        controllerunitstr:'ATMEGA168P'),
  (controllertypestr:'ATMEGA168PA';       controllerunitstr:'ATMEGA168PA'),
  (controllertypestr:'ATMEGA168PB';       controllerunitstr:'ATMEGA168PB'),
  (controllertypestr:'ATMEGA169A';        controllerunitstr:'ATMEGA169A'),
  (controllertypestr:'ATMEGA169P';        controllerunitstr:'ATMEGA169P'),
  (controllertypestr:'ATMEGA169PA';       controllerunitstr:'ATMEGA169PA'),
  (controllertypestr:'ATMEGA256RFR2';     controllerunitstr:'ATMEGA256RFR2'),
  (controllertypestr:'ATMEGA324A';        controllerunitstr:'ATMEGA324A'),
  (controllertypestr:'ATMEGA324P';        controllerunitstr:'ATMEGA324P'),
  (controllertypestr:'ATMEGA324PA';       controllerunitstr:'ATMEGA324PA'),
  (controllertypestr:'ATMEGA324PB';       controllerunitstr:'ATMEGA324PB'),
  (controllertypestr:'ATMEGA325';         controllerunitstr:'ATMEGA325'),
  (controllertypestr:'ATMEGA325A';        controllerunitstr:'ATMEGA325A'),
  (controllertypestr:'ATMEGA325P';        controllerunitstr:'ATMEGA325P'),
  (controllertypestr:'ATMEGA325PA';       controllerunitstr:'ATMEGA325PA'),
  (controllertypestr:'ATMEGA328';         controllerunitstr:'ATMEGA328'),
  (controllertypestr:'ATMEGA328P';        controllerunitstr:'ATMEGA328P'),
  (controllertypestr:'ATMEGA328PB';       controllerunitstr:'ATMEGA328PB'),
  (controllertypestr:'ATMEGA329';         controllerunitstr:'ATMEGA329'),
  (controllertypestr:'ATMEGA329A';        controllerunitstr:'ATMEGA329A'),
  (controllertypestr:'ATMEGA329P';        controllerunitstr:'ATMEGA329P'),
  (controllertypestr:'ATMEGA329PA';       controllerunitstr:'ATMEGA329PA'),
  (controllertypestr:'ATMEGA406';         controllerunitstr:'ATMEGA406'),
  (controllertypestr:'ATMEGA640';         controllerunitstr:'ATMEGA640'),
  (controllertypestr:'ATMEGA644';         controllerunitstr:'ATMEGA644'),
  (controllertypestr:'ATMEGA644A';        controllerunitstr:'ATMEGA644A'),
  (controllertypestr:'ATMEGA644P';        controllerunitstr:'ATMEGA644P'),
  (controllertypestr:'ATMEGA644PA';       controllerunitstr:'ATMEGA644PA'),
  (controllertypestr:'ATMEGA644RFR2';     controllerunitstr:'ATMEGA644RFR2'),
  (controllertypestr:'ATMEGA645';         controllerunitstr:'ATMEGA645'),
  (controllertypestr:'ATMEGA645A';        controllerunitstr:'ATMEGA645A'),
  (controllertypestr:'ATMEGA645P';        controllerunitstr:'ATMEGA645P'),
  (controllertypestr:'ATMEGA649';         controllerunitstr:'ATMEGA649'),
  (controllertypestr:'ATMEGA649A';        controllerunitstr:'ATMEGA649A'),
  (controllertypestr:'ATMEGA649P';        controllerunitstr:'ATMEGA649P'),
  (controllertypestr:'ATMEGA808';         controllerunitstr:'ATMEGA808'),
  (controllertypestr:'ATMEGA809';         controllerunitstr:'ATMEGA809'),
  (controllertypestr:'ATMEGA1280';        controllerunitstr:'ATMEGA1280'),
  (controllertypestr:'ATMEGA1281';        controllerunitstr:'ATMEGA1281'),
  (controllertypestr:'ATMEGA1284';        controllerunitstr:'ATMEGA1284'),
  (controllertypestr:'ATMEGA1284P';       controllerunitstr:'ATMEGA1284P'),
  (controllertypestr:'ATMEGA1284RFR2';    controllerunitstr:'ATMEGA1284RFR2'),
  (controllertypestr:'ATMEGA1608';        controllerunitstr:'ATMEGA1608'),
  (controllertypestr:'ATMEGA1609';        controllerunitstr:'ATMEGA1609'),
  (controllertypestr:'ATMEGA2560';        controllerunitstr:'ATMEGA2560'),
  (controllertypestr:'ATMEGA2561';        controllerunitstr:'ATMEGA2561'),
  (controllertypestr:'ATMEGA2564RFR2';    controllerunitstr:'ATMEGA2564RFR2'),
  (controllertypestr:'ATMEGA3208';        controllerunitstr:'ATMEGA3208'),
  (controllertypestr:'ATMEGA3209';        controllerunitstr:'ATMEGA3209'),
  (controllertypestr:'ATMEGA3250';        controllerunitstr:'ATMEGA3250'),
  (controllertypestr:'ATMEGA3250A';       controllerunitstr:'ATMEGA3250A'),
  (controllertypestr:'ATMEGA3250P';       controllerunitstr:'ATMEGA3250P'),
  (controllertypestr:'ATMEGA3250PA';      controllerunitstr:'ATMEGA3250PA'),
  (controllertypestr:'ATMEGA3290';        controllerunitstr:'ATMEGA3290'),
  (controllertypestr:'ATMEGA3290A';       controllerunitstr:'ATMEGA3290A'),
  (controllertypestr:'ATMEGA3290P';       controllerunitstr:'ATMEGA3290P'),
  (controllertypestr:'ATMEGA3290PA';      controllerunitstr:'ATMEGA3290PA'),
  (controllertypestr:'ATMEGA4808';        controllerunitstr:'ATMEGA4808'),
  (controllertypestr:'ATMEGA4809';        controllerunitstr:'ATMEGA4809'),
  (controllertypestr:'ATMEGA6450';        controllerunitstr:'ATMEGA6450'),
  (controllertypestr:'ATMEGA6450A';       controllerunitstr:'ATMEGA6450A'),
  (controllertypestr:'ATMEGA6450P';       controllerunitstr:'ATMEGA6450P'),
  (controllertypestr:'ATMEGA6490';        controllerunitstr:'ATMEGA6490'),
  (controllertypestr:'ATMEGA6490A';       controllerunitstr:'ATMEGA6490A'),
  (controllertypestr:'ATMEGA6490P';       controllerunitstr:'ATMEGA6490P'),
  (controllertypestr:'ATMEGA8515';        controllerunitstr:'ATMEGA8515'),
  (controllertypestr:'ATMEGA8535';        controllerunitstr:'ATMEGA8535'),
  (controllertypestr:'ATTINY4';           controllerunitstr:'ATTINY4'),
  (controllertypestr:'ATTINY5';           controllerunitstr:'ATTINY5'),
  (controllertypestr:'ATTINY9';           controllerunitstr:'ATTINY9'),
  (controllertypestr:'ATTINY10';          controllerunitstr:'ATTINY10'),
  (controllertypestr:'ATTINY11';          controllerunitstr:'ATTINY11'),
  (controllertypestr:'ATTINY12';          controllerunitstr:'ATTINY12'),
  (controllertypestr:'ATTINY13';          controllerunitstr:'ATTINY13'),
  (controllertypestr:'ATTINY13A';         controllerunitstr:'ATTINY13A'),
  (controllertypestr:'ATTINY15';          controllerunitstr:'ATTINY15'),
  (controllertypestr:'ATTINY20';          controllerunitstr:'ATTINY20'),
  (controllertypestr:'ATTINY24';          controllerunitstr:'ATTINY24'),
  (controllertypestr:'ATTINY24A';         controllerunitstr:'ATTINY24A'),
  (controllertypestr:'ATTINY25';          controllerunitstr:'ATTINY25'),
  (controllertypestr:'ATTINY26';          controllerunitstr:'ATTINY26'),
  (controllertypestr:'ATTINY28';          controllerunitstr:'ATTINY28'),
  (controllertypestr:'ATTINY40';          controllerunitstr:'ATTINY40'),
  (controllertypestr:'ATTINY43U';         controllerunitstr:'ATTINY43U'),
  (controllertypestr:'ATTINY44';          controllerunitstr:'ATTINY44'),
  (controllertypestr:'ATTINY44A';         controllerunitstr:'ATTINY44A'),
  (controllertypestr:'ATTINY45';          controllerunitstr:'ATTINY45'),
  (controllertypestr:'ATTINY48';          controllerunitstr:'ATTINY48'),
  (controllertypestr:'ATTINY84';          controllerunitstr:'ATTINY84'),
  (controllertypestr:'ATTINY84A';         controllerunitstr:'ATTINY84A'),
  (controllertypestr:'ATTINY85';          controllerunitstr:'ATTINY85'),
  (controllertypestr:'ATTINY87';          controllerunitstr:'ATTINY87'),
  (controllertypestr:'ATTINY88';          controllerunitstr:'ATTINY88'),
  (controllertypestr:'ATTINY102';         controllerunitstr:'ATTINY102'),
  (controllertypestr:'ATTINY104';         controllerunitstr:'ATTINY104'),
  (controllertypestr:'ATTINY167';         controllerunitstr:'ATTINY167'),
  (controllertypestr:'ATTINY202';         controllerunitstr:'ATTINY202'),
  (controllertypestr:'ATTINY204';         controllerunitstr:'ATTINY204'),
  (controllertypestr:'ATTINY212';         controllerunitstr:'ATTINY212'),
  (controllertypestr:'ATTINY214';         controllerunitstr:'ATTINY214'),
  (controllertypestr:'ATTINY261';         controllerunitstr:'ATTINY261'),
  (controllertypestr:'ATTINY261A';        controllerunitstr:'ATTINY261A'),
  (controllertypestr:'ATTINY402';         controllerunitstr:'ATTINY402'),
  (controllertypestr:'ATTINY404';         controllerunitstr:'ATTINY404'),
  (controllertypestr:'ATTINY406';         controllerunitstr:'ATTINY406'),
  (controllertypestr:'ATTINY412';         controllerunitstr:'ATTINY412'),
  (controllertypestr:'ATTINY414';         controllerunitstr:'ATTINY414'),
  (controllertypestr:'ATTINY416';         controllerunitstr:'ATTINY416'),
  (controllertypestr:'ATTINY416AUTO';     controllerunitstr:'ATTINY416AUTO'),
  (controllertypestr:'ATTINY417';         controllerunitstr:'ATTINY417'),
  (controllertypestr:'ATTINY441';         controllerunitstr:'ATTINY441'),
  (controllertypestr:'ATTINY461';         controllerunitstr:'ATTINY461'),
  (controllertypestr:'ATTINY461A';        controllerunitstr:'ATTINY461A'),
  (controllertypestr:'ATTINY804';         controllerunitstr:'ATTINY804'),
  (controllertypestr:'ATTINY806';         controllerunitstr:'ATTINY806'),
  (controllertypestr:'ATTINY807';         controllerunitstr:'ATTINY807'),
  (controllertypestr:'ATTINY814';         controllerunitstr:'ATTINY814'),
  (controllertypestr:'ATTINY816';         controllerunitstr:'ATTINY816'),
  (controllertypestr:'ATTINY817';         controllerunitstr:'ATTINY817'),
  (controllertypestr:'ATTINY828';         controllerunitstr:'ATTINY828'),
  (controllertypestr:'ATTINY841';         controllerunitstr:'ATTINY841'),
  (controllertypestr:'ATTINY861';         controllerunitstr:'ATTINY861'),
  (controllertypestr:'ATTINY861A';        controllerunitstr:'ATTINY861A'),
  (controllertypestr:'ATTINY1604';        controllerunitstr:'ATTINY1604'),
  (controllertypestr:'ATTINY1606';        controllerunitstr:'ATTINY1606'),
  (controllertypestr:'ATTINY1607';        controllerunitstr:'ATTINY1607'),
  (controllertypestr:'ATTINY1614';        controllerunitstr:'ATTINY1614'),
  (controllertypestr:'ATTINY1616';        controllerunitstr:'ATTINY1616'),
  (controllertypestr:'ATTINY1617';        controllerunitstr:'ATTINY1617'),
  (controllertypestr:'ATTINY1624';        controllerunitstr:'ATTINY1624'),
  (controllertypestr:'ATTINY1626';        controllerunitstr:'ATTINY1626'),
  (controllertypestr:'ATTINY1627';        controllerunitstr:'ATTINY1627'),
  (controllertypestr:'ATTINY1634';        controllerunitstr:'ATTINY1634'),
  (controllertypestr:'ATTINY2313';        controllerunitstr:'ATTINY2313'),
  (controllertypestr:'ATTINY2313A';       controllerunitstr:'ATTINY2313A'),
  (controllertypestr:'ATTINY3214';        controllerunitstr:'ATTINY3214'),
  (controllertypestr:'ATTINY3216';        controllerunitstr:'ATTINY3216'),
  (controllertypestr:'ATTINY3217';        controllerunitstr:'ATTINY3217'),
  (controllertypestr:'ATTINY4313';        controllerunitstr:'ATTINY4313'),
  // AVR controller board aliases
  (controllertypestr:'ARDUINOLEONARDO';   controllerunitstr:'ATMEGA32U4'),
  (controllertypestr:'ARDUINOMEGA';       controllerunitstr:'ATMEGA2560'),
  (controllertypestr:'ARDUINOMICRO';      controllerunitstr:'ATMEGA32U4'),
  (controllertypestr:'ARDUINONANO';       controllerunitstr:'ATMEGA328P'),
  (controllertypestr:'ARDUINONANOEVERY';  controllerunitstr:'ATMEGA4809'),
  (controllertypestr:'ARDUINOUNO';        controllerunitstr:'ATMEGA328P'),
  (controllertypestr:'ATMEGA256RFR2XPRO'; controllerunitstr:'ATMEGA256RFR2'),
  (controllertypestr:'ATMEGA324PBXPRO';   controllerunitstr:'ATMEGA324PB'),
  (controllertypestr:'ATMEGA1284PXPLAINED'; controllerunitstr:'ATMEGA1284P'),
  (controllertypestr:'ATMEGA4809XPRO';    controllerunitstr:'ATMEGA4809'),
  (controllertypestr:'ATTINY817XPRO';     controllerunitstr:'ATTINY817'),
  (controllertypestr:'ATTINY3217XPRO';    controllerunitstr:'ATTINY3217'),
  // xtensa controllers
  (controllertypestr:'ESP8266';           controllerunitstr:'ESP8266'),
  (controllertypestr:'ESP32';             controllerunitstr:'ESP32'));

// included by definetemplates.pas

