 nvinfer1::DataType DeformableConvPlugin::getOutputDataType(
     int index, const nvinfer1::DataType* input_type,
     int nb_inputs) const TRT_NOEXCEPT {
-  return data_type_;
+  return input_type[0];
 }
 
 bool DeformableConvPlugin::isOutputBroadcastAcrossBatch(

  int num_bytes = (data_type_ == nvinfer1::DataType::kFLOAT ? 4 : 2);
  nvinfer1::Weights w =
      copyToDevice(static_cast<const char*>(*hostBuffer), count);
  hostBuffer += count * num_bytes;
  return w;
}


  PADDLE_ENFORCE_GPU_SUCCESS(
      cudaMemcpy(static_cast<char*>(*hostBuffer), deviceWeights.values,
                 deviceWeights.count * num_bytes, cudaMemcpyDeviceToHost));
  *hostBuffer =
      reinterpret_cast<char*>(*hostBuffer) + deviceWeights.count * num_bytes;
}

nvinfer1::Weights DeformableConvPlugin::deserializeToDevice(
