         let length = await Int(maximumTransmissionUnit.rawValue) - 3
         let data = Data(data.prefix(length))
         let request = ATTWriteRequest(handle: attribute, value: data)
-        let response = try await send(request, response: ATTWriteResponse.self)
+        let response = await send(request, response: ATTWriteResponse.self)
         /**
          Write Response
          

                    attributeType: operation.type.rawValue,
                    attributeValue: serviceUUID.littleEndian.data
                )
                let response = try await send(request, response: ATTFindByTypeResponse.self)
                try await findByTypeResponse(response, &operation)
            }
        }

        // read value and try to read blob if too big
        var operation = ReadOperation(handle: handle)
        let request = ATTReadRequest(handle: handle)
        let response = await send(request, response: ATTReadResponse.self)
        try await readResponse(response, &operation)
        return operation.data
    }
