code: public function create(NetworkRawMessage $rawMessage): IncomingMessage
      {
          $data = $rawMessage->getData();
          $this->validateArray($data, 'motors');
  
          $motors = [];
          foreach ($data['motors'] as $motor) {
              $this->validateNumeric($motor, 'id');
              $this->validateNumeric($motor, 'pin');
              $this->validateNumeric($motor, 'power');
  
              $motors[] = new Motor($motor['id'], $motor['power'], $motor['pin']);
          }
  
          return new IncomingMotorStatusMessage($rawMessage->getSender(), new MotorStatus($motors));
      }
docs: @param NetworkRawMessage $rawMessage
  
  @return IncomingMotorStatusMessage|IncomingMessage