def copy_from(options = {})
      options = options.merge(
        bucket: @bucket_name,
        key: @object_key,
        upload_id: @multipart_upload_id,
        part_number: @part_number
      )
      resp = @client.upload_part_copy(options)
      resp.data
    end
def copy_from(options = {})
      options = options.merge(
        bucket: @bucket_name,
        key: @object_key,
        upload_id: @multipart_upload_id,
        part_number: @part_number
      )
      resp = @client.upload_part_copy(options)
      resp.data
    end
@!group Actions
 @example Request syntax with placeholder values

   multipart_upload_part.copy_from({
     copy_source: "CopySource", # required
     copy_source_if_match: "CopySourceIfMatch",
     copy_source_if_modified_since: Time.now,
     copy_source_if_none_match: "CopySourceIfNoneMatch",
     copy_source_if_unmodified_since: Time.now,
     copy_source_range: "CopySourceRange",
     sse_customer_algorithm: "SSECustomerAlgorithm",
     sse_customer_key: "SSECustomerKey",
     sse_customer_key_md5: "SSECustomerKeyMD5",
     copy_source_sse_customer_algorithm: "CopySourceSSECustomerAlgorithm",
     copy_source_sse_customer_key: "CopySourceSSECustomerKey",
     copy_source_sse_customer_key_md5: "CopySourceSSECustomerKeyMD5",
     request_payer: "requester", # accepts requester
   })
 @param [Hash] options ({})
 @option options [required, String] :copy_source
   The name of the source bucket and key name of the source object,
   separated by a slash (/). Must be URL-encoded.
 @option options [String] :copy_source_if_match
   Copies the object if its entity tag (ETag) matches the specified tag.
 @option options [Time,DateTime,Date,Integer,String] :copy_source_if_modified_since
   Copies the object if it has been modified since the specified time.
 @option options [String] :copy_source_if_none_match
   Copies the object if its entity tag (ETag) is different than the
   specified ETag.
 @option options [Time,DateTime,Date,Integer,String] :copy_source_if_unmodified_since
   Copies the object if it hasn't been modified since the specified
   time.
 @option options [String] :copy_source_range
   The range of bytes to copy from the source object. The range value
   must use the form bytes=first-last, where the first and last are the
   zero-based byte offsets to copy. For example, bytes=0-9 indicates that
   you want to copy the first ten bytes of the source. You can copy a
   range only if the source object is greater than 5 MB.
 @option options [String] :sse_customer_algorithm
   Specifies the algorithm to use to when encrypting the object (e.g.,
   AES256).
 @option options [String] :sse_customer_key
   Specifies the customer-provided encryption key for Amazon S3 to use in
   encrypting data. This value is used to store the object and then it is
   discarded; Amazon does not store the encryption key. The key must be
   appropriate for use with the algorithm specified in the
   x-amz-server-side​-encryption​-customer-algorithm header. This must be
   the same encryption key specified in the initiate multipart upload
   request.
 @option options [String] :sse_customer_key_md5
   Specifies the 128-bit MD5 digest of the encryption key according to
   RFC 1321. Amazon S3 uses this header for a message integrity check to
   ensure the encryption key was transmitted without error.
 @option options [String] :copy_source_sse_customer_algorithm
   Specifies the algorithm to use when decrypting the source object
   (e.g., AES256).
 @option options [String] :copy_source_sse_customer_key
   Specifies the customer-provided encryption key for Amazon S3 to use to
   decrypt the source object. The encryption key provided in this header
   must be one that was used when the source object was created.
 @option options [String] :copy_source_sse_customer_key_md5
   Specifies the 128-bit MD5 digest of the encryption key according to
   RFC 1321. Amazon S3 uses this header for a message integrity check to
   ensure the encryption key was transmitted without error.
 @option options [String] :request_payer
   Confirms that the requester knows that she or he will be charged for
   the request. Bucket owners need not specify this parameter in their
   requests. Documentation on downloading objects from requester pays
   buckets can be found at
   http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
 @return [Types::UploadPartCopyOutput]