public static object WiimoteLib_Proxy_IRState_TO_WiimoteLib_IRState(object transformFrom)
 {
     global::WiimoteLib.IRState target = new global::WiimoteLib.IRState();
     global::WiimoteLib.Proxy.IRState from = ((global::WiimoteLib.Proxy.IRState)(transformFrom));
     target.Mode = ((global::WiimoteLib.IRMode)(((byte)(from.Mode))));
     if ((from.IRSensors != null)) {
         int count = from.IRSensors.Length;
         global::WiimoteLib.IRSensor[] tmp = new global::WiimoteLib.IRSensor[count];
         for (int index = 0; (index < count); index = (index + 1)) {
             global::WiimoteLib.IRSensor tmp0 = default(global::WiimoteLib.IRSensor);
             tmp0 = ((global::WiimoteLib.IRSensor)(WiimoteLib_Proxy_IRSensor_TO_WiimoteLib_IRSensor(from.IRSensors[index])));
             tmp[index] = tmp0;
         }
         target.IRSensors = tmp;
     }
     else {
         target.IRSensors = null;
     }
     target.RawMidpoint = ((global::WiimoteLib.Point)(WiimoteLib_Proxy_Point_TO_WiimoteLib_Point(from.RawMidpoint)));
     target.Midpoint = ((global::WiimoteLib.PointF)(WiimoteLib_Proxy_PointF_TO_WiimoteLib_PointF(from.Midpoint)));
     return target;
 }
 public static object WiimoteLib_Proxy_IRSensor_TO_WiimoteLib_IRSensor(object transformFrom)
 {
     global::WiimoteLib.IRSensor target = new global::WiimoteLib.IRSensor();
     global::WiimoteLib.Proxy.IRSensor from = ((global::WiimoteLib.Proxy.IRSensor)(transformFrom));
     target.RawPosition = ((global::WiimoteLib.Point)(WiimoteLib_Proxy_Point_TO_WiimoteLib_Point(from.RawPosition)));
     target.Position = ((global::WiimoteLib.PointF)(WiimoteLib_Proxy_PointF_TO_WiimoteLib_PointF(from.Position)));
     target.Size = from.Size;
     target.Found = from.Found;
     return target;
 }