diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/bun.js/bindings/JSReadableHelper.cpp | 263 | ||||
| -rw-r--r-- | src/bun.js/bindings/JSReadableHelper.h | 13 | ||||
| -rw-r--r-- | src/bun.js/bindings/JSReadableState.cpp | 426 | ||||
| -rw-r--r-- | src/bun.js/bindings/JSReadableState.h | 154 | ||||
| -rw-r--r-- | src/bun.js/bindings/ZigGlobalObject.cpp | 62 | ||||
| -rw-r--r-- | src/bun.js/bindings/ZigGlobalObject.h | 9 | ||||
| -rw-r--r-- | src/darwin_c.zig | 8 | ||||
| -rw-r--r-- | src/js/_codegen/replacements.ts | 4 | ||||
| -rw-r--r-- | src/js/builtins.d.ts | 1 | ||||
| -rw-r--r-- | src/js/node/stream.js | 427 | ||||
| -rw-r--r-- | src/js/out/InternalModuleRegistryConstants.h | 6 | ||||
| -rw-r--r-- | src/js/private.d.ts | 14 | ||||
| -rw-r--r-- | src/linux_c.zig | 2 | ||||
| -rw-r--r-- | src/windows_c.zig | 2 | 
14 files changed, 969 insertions, 422 deletions
| diff --git a/src/bun.js/bindings/JSReadableHelper.cpp b/src/bun.js/bindings/JSReadableHelper.cpp new file mode 100644 index 000000000..0c459f329 --- /dev/null +++ b/src/bun.js/bindings/JSReadableHelper.cpp @@ -0,0 +1,263 @@ +#include "JSReadableHelper.h" +#include "JSReadableState.h" +#include "JSBufferList.h" +#include "JSBuffer.h" +#include "JSEventEmitter.h" +#include "JSStringDecoder.h" +#include "JavaScriptCore/Lookup.h" +#include "JavaScriptCore/ObjectConstructor.h" +#include "ZigGlobalObject.h" +#include "JSDOMOperation.h" +#include "JSDOMAttribute.h" +#include "headers.h" +#include "JSDOMConvertEnumeration.h" +#include "JavaScriptCore/StrongInlines.h" +#include "BunClientData.h" + +namespace WebCore { +using namespace JSC; + +#define JSReadableHelper_EXTRACT_STREAM_STATE                                                   \ +    VM& vm = lexicalGlobalObject->vm();                                                         \ +    auto throwScope = DECLARE_THROW_SCOPE(vm);                                                  \ +                                                                                                \ +    if (callFrame->argumentCount() < 2) {                                                       \ +        throwTypeError(lexicalGlobalObject, throwScope, "Not enough arguments"_s);              \ +        return JSValue::encode(jsUndefined());                                                  \ +    }                                                                                           \ +                                                                                                \ +    JSObject* stream = callFrame->uncheckedArgument(0).toObject(lexicalGlobalObject);           \ +    RETURN_IF_EXCEPTION(throwScope, JSValue::encode(jsUndefined()));                            \ +    JSReadableState* state = jsCast<JSReadableState*>(callFrame->uncheckedArgument(1));         \ +    if (!state) {                                                                               \ +        throwTypeError(lexicalGlobalObject, throwScope, "Second argument not ReadableState"_s); \ +        return JSValue::encode(jsUndefined());                                                  \ +    } + +static bool callRead(JSValue stream, JSFunction* read, JSC::MarkedArgumentBuffer&& args, JSC::VM& vm, JSC::JSGlobalObject* lexicalGlobalObject, EventEmitter& emitter) +{ +    WTF::NakedPtr<JSC::Exception> exceptionPtr; +    JSC::CallData callData = JSC::getCallData(read); +    JSValue ret = call(lexicalGlobalObject, read, callData, JSValue(stream), WTFMove(args), exceptionPtr); +    if (auto* exception = exceptionPtr.get()) { +        JSC::Identifier errorEventName = JSC::Identifier::fromString(vm, "error"_s); +        if (emitter.hasEventListeners(errorEventName)) { +            args.clear(); +            JSValue val = exception->value(); +            if (!val) { +                val = jsUndefined(); +            } +            args.append(val); +            emitter.emitForBindings(errorEventName, args); +        } else { +            reportException(lexicalGlobalObject, exception); +        } +        return true; +    } + +    return !ret.isUndefinedOrNull(); +} + +JSC_DEFINE_HOST_FUNCTION(jsReadable_maybeReadMore, (JSGlobalObject * lexicalGlobalObject, CallFrame* callFrame)) +{ +    JSReadableHelper_EXTRACT_STREAM_STATE + +        auto clientData +        = WebCore::clientData(vm); +    auto readIdentifier = clientData->builtinNames().readPublicName(); +    auto read = stream->get(lexicalGlobalObject, readIdentifier); + +    auto callData = JSC::getCallData(read); +    if (callData.type == CallData::Type::None) { +        throwException(lexicalGlobalObject, throwScope, createNotAFunctionError(lexicalGlobalObject, read)); +        return JSValue::encode({}); +    } + +    auto* jsEmitter = jsEventEmitterCastFast(vm, lexicalGlobalObject, stream); +    RETURN_IF_EXCEPTION(throwScope, {}); +    if (UNLIKELY(!jsEmitter)) { +        throwTypeError(lexicalGlobalObject, throwScope, "Stream must be an EventEmitter"_s); +        return JSValue::encode(JSValue {}); +    } +    auto& emitter = jsEmitter->wrapped(); + +    while ( +        !state->getBool(JSReadableState::reading) && !state->getBool(JSReadableState::ended) && (state->m_length < state->m_highWaterMark || (state->m_flowing > 0 && state->m_length == 0))) { +        int64_t len = state->m_length; +        MarkedArgumentBuffer args; +        args.append(jsNumber(0)); + +        callRead(stream, jsCast<JSFunction*>(read), WTFMove(args), vm, lexicalGlobalObject, emitter); + +        if (len == state->m_length) +            break; +    } +    RELEASE_AND_RETURN(throwScope, JSValue::encode(jsUndefined())); +} + +void flow(JSGlobalObject* lexicalGlobalObject, JSObject* streamObj, JSReadableState* state) +{ +    VM& vm = lexicalGlobalObject->vm(); +    auto throwScope = DECLARE_THROW_SCOPE(vm); + +    auto clientData = WebCore::clientData(vm); +    auto readIdentifier = clientData->builtinNames().readPublicName(); +    auto read = streamObj->get(lexicalGlobalObject, readIdentifier); + +    auto callData = JSC::getCallData(read); +    if (callData.type == CallData::Type::None) { +        throwException(lexicalGlobalObject, throwScope, createNotAFunctionError(lexicalGlobalObject, read)); +        return; +    } + +    if (state->m_flowing > 0) { +        WebCore::EventEmitter& emitter = jsEventEmitterCastFast(vm, lexicalGlobalObject, streamObj)->wrapped(); + +        while (state->m_flowing > 0) { + +            if (!callRead(streamObj, jsCast<JSFunction*>(read), MarkedArgumentBuffer(), vm, lexicalGlobalObject, emitter)) { +                break; +            } +        } +    } +} + +JSC_DEFINE_HOST_FUNCTION(jsReadable_resume, (JSGlobalObject * lexicalGlobalObject, CallFrame* callFrame)) +{ +    JSReadableHelper_EXTRACT_STREAM_STATE + +        auto* jsEmitterWrap +        = jsEventEmitterCastFast(vm, lexicalGlobalObject, stream); + +    if (UNLIKELY(!jsEmitterWrap)) { +        throwTypeError(lexicalGlobalObject, throwScope, "Stream must be an EventEmitter"_s); +        return JSValue::encode(JSValue {}); +    } + +    auto& emitter = jsEmitterWrap->wrapped(); +    auto clientData = WebCore::clientData(vm); +    auto readIdentifier = clientData->builtinNames().readPublicName(); + +    if (!state->getBool(JSReadableState::reading)) { +        // stream.read(0) +        MarkedArgumentBuffer args; +        args.append(jsNumber(0)); + +        callRead(stream, jsCast<JSFunction*>(stream->get(lexicalGlobalObject, readIdentifier)), WTFMove(args), vm, lexicalGlobalObject, emitter); +    } + +    state->setBool(JSReadableState::resumeScheduled, true); +    // stream.emit('resume') +    auto eventType = clientData->builtinNames().resumePublicName(); +    MarkedArgumentBuffer args; + +    emitter.emitForBindings(eventType, args); + +    flow(lexicalGlobalObject, stream, state); + +    if (state->m_flowing > 0 && !state->getBool(JSReadableState::reading)) { +        // stream.read(0) +        auto read = stream->get(lexicalGlobalObject, readIdentifier); +        auto callData = JSC::getCallData(read); +        if (callData.type == CallData::Type::None) { +            throwException(lexicalGlobalObject, throwScope, createNotAFunctionError(lexicalGlobalObject, read)); +            return JSValue::encode(jsUndefined()); +        } +        MarkedArgumentBuffer args; +        args.append(jsNumber(0)); +        callRead(stream, jsCast<JSFunction*>(read), WTFMove(args), vm, lexicalGlobalObject, emitter); +    } +    RELEASE_AND_RETURN(throwScope, JSValue::encode(jsUndefined())); +} + +EncodedJSValue emitReadable_(JSGlobalObject* lexicalGlobalObject, JSObject* stream, JSReadableState* state) +{ +    VM& vm = lexicalGlobalObject->vm(); +    auto throwScope = DECLARE_THROW_SCOPE(vm); +    JSValue errored = state->m_errored.get(); +    if (!state->getBool(JSReadableState::destroyed) && !errored.toBoolean(lexicalGlobalObject) && (state->m_length || state->getBool(JSReadableState::ended))) { +        // stream.emit('readable') +        auto clientData = WebCore::clientData(vm); + +        auto eventType = clientData->builtinNames().readablePublicName(); +        MarkedArgumentBuffer args; +        auto* emitter +            = jsEventEmitterCastFast(vm, lexicalGlobalObject, stream); +        if (UNLIKELY(!emitter)) { +            throwTypeError(lexicalGlobalObject, throwScope, "Stream must be an EventEmitter"_s); +            return JSValue::encode(JSValue {}); +        } +        emitter->wrapped().emitForBindings(eventType, args); + +        state->setBool(JSReadableState::emittedReadable, false); +    } + +    state->setBool(JSReadableState::needReadable, state->m_flowing <= 0 && !state->getBool(JSReadableState::ended) && state->m_length <= state->m_highWaterMark); +    flow(lexicalGlobalObject, stream, state); +    return JSValue::encode(jsUndefined()); +} + +JSC_DEFINE_HOST_FUNCTION(jsReadable_emitReadable_, (JSGlobalObject * lexicalGlobalObject, CallFrame* callFrame)) +{ +    JSReadableHelper_EXTRACT_STREAM_STATE + +        emitReadable_(lexicalGlobalObject, stream, state); + +    RELEASE_AND_RETURN(throwScope, JSValue::encode(jsUndefined())); +} + +EncodedJSValue emitReadable(JSGlobalObject* lexicalGlobalObject, JSObject* stream, JSReadableState* state) +{ +    VM& vm = lexicalGlobalObject->vm(); + +    state->setBool(JSReadableState::needReadable, false); +    if (!state->getBool(JSReadableState::emittedReadable)) { +        state->setBool(JSReadableState::emittedReadable, true); +        Zig::GlobalObject* globalObject = reinterpret_cast<Zig::GlobalObject*>(lexicalGlobalObject); +        globalObject->queueMicrotask(JSValue(globalObject->emitReadableNextTickFunction()), JSValue(stream), JSValue(state), JSValue {}, JSValue {}); +    } +    return JSValue::encode(jsUndefined()); +} + +JSC_DEFINE_HOST_FUNCTION(jsReadable_emitReadable, (JSGlobalObject * lexicalGlobalObject, CallFrame* callFrame)) +{ +    JSReadableHelper_EXTRACT_STREAM_STATE + +        RELEASE_AND_RETURN(throwScope, emitReadable(lexicalGlobalObject, stream, state)); +} + +JSC_DEFINE_HOST_FUNCTION(jsReadable_onEofChunk, (JSGlobalObject * lexicalGlobalObject, CallFrame* callFrame)) +{ +    JSReadableHelper_EXTRACT_STREAM_STATE + +        if (state->getBool(JSReadableState::ended)) +            RELEASE_AND_RETURN(throwScope, JSValue::encode(jsUndefined())); + +    auto decoder = jsDynamicCast<JSStringDecoder*>(state->m_decoder.get()); +    if (decoder) { +        JSString* chunk = jsDynamicCast<JSString*>(decoder->end(vm, lexicalGlobalObject, nullptr, 0)); +        if (chunk && chunk->length()) { +            auto buffer = jsDynamicCast<JSBufferList*>(state->m_buffer.get()); +            if (!buffer) { +                throwTypeError(lexicalGlobalObject, throwScope, "Not buffer on stream"_s); +                return JSValue::encode(jsUndefined()); +            } +            buffer->push(vm, JSValue(chunk)); +            state->m_length += state->getBool(JSReadableState::objectMode) ? 1 : chunk->length(); +        } +    } + +    state->setBool(JSReadableState::ended, true); + +    if (state->getBool(JSReadableState::sync)) { +        RELEASE_AND_RETURN(throwScope, emitReadable(lexicalGlobalObject, stream, state)); +    } else { +        state->setBool(JSReadableState::needReadable, false); +        state->setBool(JSReadableState::emittedReadable, true); +        RELEASE_AND_RETURN(throwScope, emitReadable_(lexicalGlobalObject, stream, state)); +    } +} + +#undef JSReadableHelper_EXTRACT_STREAM_STATE + +} // namespace WebCore diff --git a/src/bun.js/bindings/JSReadableHelper.h b/src/bun.js/bindings/JSReadableHelper.h new file mode 100644 index 000000000..3e2554c2b --- /dev/null +++ b/src/bun.js/bindings/JSReadableHelper.h @@ -0,0 +1,13 @@ +#pragma once + +#include "root.h" + +namespace WebCore { + +JSC_DECLARE_HOST_FUNCTION(jsReadable_maybeReadMore); +JSC_DECLARE_HOST_FUNCTION(jsReadable_resume); +JSC_DECLARE_HOST_FUNCTION(jsReadable_emitReadable); +JSC_DECLARE_HOST_FUNCTION(jsReadable_onEofChunk); +JSC_DECLARE_HOST_FUNCTION(jsReadable_emitReadable_); + +} // namespace WebCore diff --git a/src/bun.js/bindings/JSReadableState.cpp b/src/bun.js/bindings/JSReadableState.cpp new file mode 100644 index 000000000..1f3a36def --- /dev/null +++ b/src/bun.js/bindings/JSReadableState.cpp @@ -0,0 +1,426 @@ +#include "JSReadableState.h" +#include "JSBufferList.h" +#include "JSBuffer.h" +#include "JavaScriptCore/Lookup.h" +#include "JavaScriptCore/ObjectConstructor.h" +#include "ZigGlobalObject.h" +#include "JSDOMOperation.h" +#include "JSDOMAttribute.h" +#include "headers.h" +#include "JSDOMConvertEnumeration.h" +#include "BunClientData.h" + +namespace WebCore { + +using namespace JSC; + +static JSC_DECLARE_CUSTOM_GETTER(jsReadableState_pipesCount); + +int64_t getHighWaterMark(JSC::VM& vm, JSC::JSGlobalObject* globalObject, bool isDuplex, JSObject* options) +{ +    auto throwScope = DECLARE_THROW_SCOPE(vm); + +    // We must use getIfPropertyExists because: +    // - it might be a getter +    // - it might be from a super class +    auto* clientData = WebCore::clientData(vm); +    if (JSValue highWaterMarkVal = options->getIfPropertyExists(globalObject, clientData->builtinNames().highWaterMarkPublicName())) { +        if (isDuplex && (highWaterMarkVal.isUndefined() || highWaterMarkVal.isNull())) { +            highWaterMarkVal = options->getIfPropertyExists(globalObject, JSC::Identifier::fromString(vm, "readableObjectMode"_s)); +        } + +        if (highWaterMarkVal && highWaterMarkVal.isNumber()) { +            return highWaterMarkVal.toInt32(globalObject); +        } +    } + +    return -1; +} + +void JSReadableState::finishCreation(JSC::VM& vm, JSC::JSGlobalObject* globalObject, bool isDuplex, JSObject* options) +{ +    Base::finishCreation(vm); + +    if (options != nullptr) { +        JSC::JSValue objectModeVal = options->getIfPropertyExists(globalObject, JSC::Identifier::fromString(vm, "objectMode"_s)); +        if (isDuplex && !objectModeVal) { +            objectModeVal = options->getIfPropertyExists(globalObject, JSC::Identifier::fromString(vm, "readableObjectMode"_s)); +        } +        if (objectModeVal && objectModeVal.toBoolean(globalObject)) +            setBool(JSReadableState::Mask::objectMode, true); +    } + +    m_highWaterMark = getBool( +                          JSReadableState::Mask::objectMode) +        ? 16 +        : 16 * 1024; // default value + +    if (options != nullptr) { +        int64_t customHightWaterMark = getHighWaterMark(vm, globalObject, isDuplex, options); +        if (customHightWaterMark >= 0) +            m_highWaterMark = customHightWaterMark; +    } + +    m_buffer.set(vm, this, JSBufferList::create(vm, globalObject, reinterpret_cast<Zig::GlobalObject*>(globalObject)->JSBufferListStructure())); +    m_pipes.set(vm, this, JSC::constructEmptyArray(globalObject, nullptr, 0)); + +    if (options != nullptr) { +        JSC::JSValue emitCloseVal = options->getIfPropertyExists(globalObject, JSC::Identifier::fromString(vm, "emitClose"_s)); +        if (!emitCloseVal || emitCloseVal.toBoolean(globalObject)) +            setBool(JSReadableState::Mask::emitClose, true); +        // Has it been destroyed. +        JSC::JSValue autoDestroyVal = options->getIfPropertyExists(globalObject, JSC::Identifier::fromString(vm, "autoDestroy"_s)); +        if (!autoDestroyVal || autoDestroyVal.toBoolean(globalObject)) +            setBool(JSReadableState::Mask::autoDestroy, true); +    } else { +        setBool(JSReadableState::Mask::emitClose, true); +        setBool(JSReadableState::Mask::autoDestroy, true); +    } + +    // Indicates whether the stream has finished destroying. +    m_errored.set(vm, this, JSC::jsNull()); + +    // Ref the piped dest which we need a drain event on it +    // type: null | Writable | Set<Writable>. +    if (options == nullptr) { +        m_defaultEncoding.set(vm, this, JSC::jsString(vm, WTF::String("utf8"_s))); +    } else { +        if (JSC::JSValue defaultEncodingVal = getIfPropertyExists(globalObject, PropertyName(JSC::Identifier::fromString(vm, "defaultEncoding"_s)))) { +            m_defaultEncoding.set(vm, this, defaultEncodingVal); +        } else { +            m_defaultEncoding.set(vm, this, JSC::jsString(vm, WTF::String("utf8"_s))); +        } +    } + +    m_awaitDrainWriters.set(vm, this, JSC::jsNull()); +    JSValue decodeValue = JSC::jsNull(); +    JSValue encodingValue = JSC::jsNull(); + +    if (options != nullptr) { +        JSC::JSValue encodingVal = options->getIfPropertyExists(globalObject, JSC::Identifier::fromString(vm, "encoding"_s)); +        if (encodingVal && encodingVal.isString()) { +            auto constructor = reinterpret_cast<Zig::GlobalObject*>(globalObject)->JSStringDecoder(); +            auto constructData = JSC::getConstructData(constructor); +            MarkedArgumentBuffer args; +            args.append(encodingVal); +            JSObject* decoder = JSC::construct(globalObject, constructor, constructData, args); +            decodeValue = decoder; +            encodingValue = encodingVal; +        } +    } + +    m_decoder.set(vm, this, decodeValue); +    m_encoding.set(vm, this, encodingValue); + +    // ReadableState.constructed is set to false during construction when a _construct method is implemented +    // this is here so that the ReadableState behavior tracks the behavior in node, and that calling Readable.read +    // will work when we return early from construct because there is no Readable._construct implemented +    // See: https://github.com/nodejs/node/blob/main/lib/internal/streams/readable.js +    setBool(JSReadableState::Mask::constructed, true); +} + +const JSC::ClassInfo JSReadableState::s_info = { "ReadableState"_s, &Base::s_info, nullptr, nullptr, CREATE_METHOD_TABLE(JSReadableState) }; + +JSC::GCClient::IsoSubspace* JSReadableState::subspaceForImpl(JSC::VM& vm) +{ +    return WebCore::subspaceForImpl<JSReadableState, UseCustomHeapCellType::No>( +        vm, +        [](auto& spaces) { return spaces.m_clientSubspaceForReadableState.get(); }, +        [](auto& spaces, auto&& space) { spaces.m_clientSubspaceForReadableState = std::forward<decltype(space)>(space); }, +        [](auto& spaces) { return spaces.m_subspaceForReadableState.get(); }, +        [](auto& spaces, auto&& space) { spaces.m_subspaceForReadableState = std::forward<decltype(space)>(space); }); +} + +template<typename Visitor> +void JSReadableState::visitChildrenImpl(JSCell* cell, Visitor& visitor) +{ +    JSReadableState* state = jsCast<JSReadableState*>(cell); +    ASSERT_GC_OBJECT_INHERITS(state, info()); +    Base::visitChildren(state, visitor); +    visitor.append(state->m_buffer); +    visitor.append(state->m_pipes); +    visitor.append(state->m_errored); +    visitor.append(state->m_defaultEncoding); +    visitor.append(state->m_awaitDrainWriters); +    visitor.append(state->m_decoder); +    visitor.append(state->m_encoding); +} +DEFINE_VISIT_CHILDREN(JSReadableState); + +STATIC_ASSERT_ISO_SUBSPACE_SHARABLE(JSReadableStatePrototype, JSReadableStatePrototype::Base); + +JSC_DEFINE_CUSTOM_GETTER(jsReadableState_pipesCount, (JSGlobalObject * lexicalGlobalObject, EncodedJSValue thisValue, PropertyName attributeName)) +{ +    auto& vm = JSC::getVM(lexicalGlobalObject); +    auto throwScope = DECLARE_THROW_SCOPE(vm); +    JSReadableState* state = JSC::jsDynamicCast<JSReadableState*>(JSValue::decode(thisValue)); +    if (!state) { +        RETURN_IF_EXCEPTION(throwScope, JSC::JSValue::encode(JSC::jsUndefined())); +    } +    JSArray* pipes = JSC::jsDynamicCast<JSArray*>(state->m_pipes.get()); +    if (!pipes) { +        RETURN_IF_EXCEPTION(throwScope, JSC::JSValue::encode(JSC::jsUndefined())); +    } +    RELEASE_AND_RETURN(throwScope, JSC::JSValue::encode(JSC::jsNumber(pipes->length()))); +} + +#define JSReadableState_NULLABLE_BOOLEAN_GETTER_SETTER(NAME)                                                                                                                       \ +    static JSC_DECLARE_CUSTOM_GETTER(jsReadableState_##NAME);                                                                                                                      \ +    JSC_DEFINE_CUSTOM_GETTER(jsReadableState_##NAME, (JSGlobalObject * lexicalGlobalObject, EncodedJSValue thisValue, PropertyName attributeName))                                 \ +    {                                                                                                                                                                              \ +        auto& vm = JSC::getVM(lexicalGlobalObject);                                                                                                                                \ +        auto throwScope = DECLARE_THROW_SCOPE(vm);                                                                                                                                 \ +        JSReadableState* state = JSC::jsDynamicCast<JSReadableState*>(JSValue::decode(thisValue));                                                                                 \ +        if (!state) {                                                                                                                                                              \ +            RETURN_IF_EXCEPTION(throwScope, JSC::JSValue::encode(JSC::jsUndefined()));                                                                                             \ +        }                                                                                                                                                                          \ +        if (state->m_##NAME == 0)                                                                                                                                                  \ +            RELEASE_AND_RETURN(throwScope, JSC::JSValue::encode(JSC::jsNull()));                                                                                                   \ +        RELEASE_AND_RETURN(throwScope, JSC::JSValue::encode(JSC::jsBoolean(state->m_##NAME > 0)));                                                                                 \ +    }                                                                                                                                                                              \ +    static JSC_DECLARE_CUSTOM_SETTER(setJSReadableState_##NAME);                                                                                                                   \ +    JSC_DEFINE_CUSTOM_SETTER(setJSReadableState_##NAME, (JSGlobalObject * lexicalGlobalObject, EncodedJSValue thisValue, EncodedJSValue encodedValue, PropertyName attributeName)) \ +    {                                                                                                                                                                              \ +        auto& vm = JSC::getVM(lexicalGlobalObject);                                                                                                                                \ +        auto throwScope = DECLARE_THROW_SCOPE(vm);                                                                                                                                 \ +        JSReadableState* state = JSC::jsDynamicCast<JSReadableState*>(JSValue::decode(thisValue));                                                                                 \ +        if (!state) {                                                                                                                                                              \ +            RETURN_IF_EXCEPTION(throwScope, false);                                                                                                                                \ +        }                                                                                                                                                                          \ +        auto value = JSC::JSValue::decode(encodedValue);                                                                                                                           \ +        state->m_##NAME = value.isNull() ? 0 : value.toBoolean(lexicalGlobalObject) ? 1                                                                                            \ +                                                                                    : -1;                                                                                          \ +        RELEASE_AND_RETURN(throwScope, true);                                                                                                                                      \ +    } + +JSReadableState_NULLABLE_BOOLEAN_GETTER_SETTER(paused) +    JSReadableState_NULLABLE_BOOLEAN_GETTER_SETTER(flowing) + +#undef JSReadableState_NULLABLE_BOOLEAN_GETTER_SETTER + +#define JSReadableState_NUMBER_GETTER_SETTER(NAME)                                                                                                                                 \ +    static JSC_DECLARE_CUSTOM_GETTER(jsReadableState_##NAME);                                                                                                                      \ +    JSC_DEFINE_CUSTOM_GETTER(jsReadableState_##NAME, (JSGlobalObject * lexicalGlobalObject, EncodedJSValue thisValue, PropertyName attributeName))                                 \ +    {                                                                                                                                                                              \ +        auto& vm = JSC::getVM(lexicalGlobalObject);                                                                                                                                \ +        auto throwScope = DECLARE_THROW_SCOPE(vm);                                                                                                                                 \ +        JSReadableState* state = JSC::jsDynamicCast<JSReadableState*>(JSValue::decode(thisValue));                                                                                 \ +        if (!state) {                                                                                                                                                              \ +            RETURN_IF_EXCEPTION(throwScope, JSC::JSValue::encode(JSC::jsUndefined()));                                                                                             \ +        }                                                                                                                                                                          \ +        RELEASE_AND_RETURN(throwScope, JSC::JSValue::encode(JSC::jsNumber(state->m_##NAME)));                                                                                      \ +    }                                                                                                                                                                              \ +                                                                                                                                                                                   \ +    static JSC_DECLARE_CUSTOM_SETTER(setJSReadableState_##NAME);                                                                                                                   \ +    JSC_DEFINE_CUSTOM_SETTER(setJSReadableState_##NAME, (JSGlobalObject * lexicalGlobalObject, EncodedJSValue thisValue, EncodedJSValue encodedValue, PropertyName attributeName)) \ +    {                                                                                                                                                                              \ +        auto& vm = JSC::getVM(lexicalGlobalObject);                                                                                                                                \ +        auto throwScope = DECLARE_THROW_SCOPE(vm);                                                                                                                                 \ +        JSReadableState* state = JSC::jsDynamicCast<JSReadableState*>(JSValue::decode(thisValue));                                                                                 \ +        if (!state) {                                                                                                                                                              \ +            RETURN_IF_EXCEPTION(throwScope, false);                                                                                                                                \ +        }                                                                                                                                                                          \ +        state->m_##NAME = JSC::JSValue::decode(encodedValue).toNumber(lexicalGlobalObject);                                                                                        \ +        RETURN_IF_EXCEPTION(throwScope, false);                                                                                                                                    \ +        RELEASE_AND_RETURN(throwScope, true);                                                                                                                                      \ +    } + +        JSReadableState_NUMBER_GETTER_SETTER(length) +            JSReadableState_NUMBER_GETTER_SETTER(highWaterMark) + +#undef JSReadableState_NUMBER_GETTER_SETTER + +#define JSReadableState_BOOLEAN_GETTER_SETTER(NAME)                                                                                                                                \ +    static JSC_DECLARE_CUSTOM_GETTER(jsReadableState_##NAME);                                                                                                                      \ +    JSC_DEFINE_CUSTOM_GETTER(jsReadableState_##NAME, (JSGlobalObject * lexicalGlobalObject, EncodedJSValue thisValue, PropertyName attributeName))                                 \ +    {                                                                                                                                                                              \ +        auto& vm = JSC::getVM(lexicalGlobalObject);                                                                                                                                \ +        auto throwScope = DECLARE_THROW_SCOPE(vm);                                                                                                                                 \ +        JSReadableState* state = JSC::jsDynamicCast<JSReadableState*>(JSValue::decode(thisValue));                                                                                 \ +        if (!state) {                                                                                                                                                              \ +            RETURN_IF_EXCEPTION(throwScope, JSC::JSValue::encode(JSC::jsUndefined()));                                                                                             \ +        }                                                                                                                                                                          \ +        RELEASE_AND_RETURN(throwScope, JSC::JSValue::encode(JSC::jsBoolean(state->getBool(JSReadableState::Mask::NAME))));                                                         \ +    }                                                                                                                                                                              \ +                                                                                                                                                                                   \ +    static JSC_DECLARE_CUSTOM_SETTER(setJSReadableState_##NAME);                                                                                                                   \ +    JSC_DEFINE_CUSTOM_SETTER(setJSReadableState_##NAME, (JSGlobalObject * lexicalGlobalObject, EncodedJSValue thisValue, EncodedJSValue encodedValue, PropertyName attributeName)) \ +    {                                                                                                                                                                              \ +        auto& vm = JSC::getVM(lexicalGlobalObject);                                                                                                                                \ +        auto throwScope = DECLARE_THROW_SCOPE(vm);                                                                                                                                 \ +        JSReadableState* state = JSC::jsDynamicCast<JSReadableState*>(JSValue::decode(thisValue));                                                                                 \ +        if (!state) {                                                                                                                                                              \ +            RETURN_IF_EXCEPTION(throwScope, false);                                                                                                                                \ +        }                                                                                                                                                                          \ +        state->setBool(JSReadableState::Mask::NAME, JSC::JSValue::decode(encodedValue).toBoolean(lexicalGlobalObject));                                                            \ +        RELEASE_AND_RETURN(throwScope, true);                                                                                                                                      \ +    } + +                JSReadableState_BOOLEAN_GETTER_SETTER(objectMode) +                    JSReadableState_BOOLEAN_GETTER_SETTER(ended) +                        JSReadableState_BOOLEAN_GETTER_SETTER(endEmitted) +                            JSReadableState_BOOLEAN_GETTER_SETTER(reading) +                                JSReadableState_BOOLEAN_GETTER_SETTER(constructed) +                                    JSReadableState_BOOLEAN_GETTER_SETTER(sync) +                                        JSReadableState_BOOLEAN_GETTER_SETTER(needReadable) +                                            JSReadableState_BOOLEAN_GETTER_SETTER(emittedReadable) +                                                JSReadableState_BOOLEAN_GETTER_SETTER(readableListening) +                                                    JSReadableState_BOOLEAN_GETTER_SETTER(resumeScheduled) +                                                        JSReadableState_BOOLEAN_GETTER_SETTER(errorEmitted) +                                                            JSReadableState_BOOLEAN_GETTER_SETTER(emitClose) +                                                                JSReadableState_BOOLEAN_GETTER_SETTER(autoDestroy) +                                                                    JSReadableState_BOOLEAN_GETTER_SETTER(destroyed) +                                                                        JSReadableState_BOOLEAN_GETTER_SETTER(closed) +                                                                            JSReadableState_BOOLEAN_GETTER_SETTER(closeEmitted) +                                                                                JSReadableState_BOOLEAN_GETTER_SETTER(multiAwaitDrain) +                                                                                    JSReadableState_BOOLEAN_GETTER_SETTER(readingMore) +                                                                                        JSReadableState_BOOLEAN_GETTER_SETTER(dataEmitted) + +#undef JSReadableState_BOOLEAN_GETTER_SETTER + +#define JSReadableState_JSVALUE_GETTER_SETTER(NAME)                                                                                                                                \ +    static JSC_DECLARE_CUSTOM_GETTER(jsReadableState_##NAME);                                                                                                                      \ +    JSC_DEFINE_CUSTOM_GETTER(jsReadableState_##NAME, (JSGlobalObject * lexicalGlobalObject, EncodedJSValue thisValue, PropertyName attributeName))                                 \ +    {                                                                                                                                                                              \ +        auto& vm = JSC::getVM(lexicalGlobalObject);                                                                                                                                \ +        auto throwScope = DECLARE_THROW_SCOPE(vm);                                                                                                                                 \ +        JSReadableState* state = JSC::jsDynamicCast<JSReadableState*>(JSValue::decode(thisValue));                                                                                 \ +        if (!state) {                                                                                                                                                              \ +            RETURN_IF_EXCEPTION(throwScope, JSC::JSValue::encode(JSC::jsUndefined()));                                                                                             \ +        }                                                                                                                                                                          \ +        RELEASE_AND_RETURN(throwScope, JSC::JSValue::encode(state->m_##NAME.get()));                                                                                               \ +    }                                                                                                                                                                              \ +    static JSC_DECLARE_CUSTOM_SETTER(setJSReadableState_##NAME);                                                                                                                   \ +    JSC_DEFINE_CUSTOM_SETTER(setJSReadableState_##NAME, (JSGlobalObject * lexicalGlobalObject, EncodedJSValue thisValue, EncodedJSValue encodedValue, PropertyName attributeName)) \ +    {                                                                                                                                                                              \ +        auto& vm = JSC::getVM(lexicalGlobalObject);                                                                                                                                \ +        auto throwScope = DECLARE_THROW_SCOPE(vm);                                                                                                                                 \ +        JSReadableState* state = JSC::jsDynamicCast<JSReadableState*>(JSValue::decode(thisValue));                                                                                 \ +        if (!state) {                                                                                                                                                              \ +            RETURN_IF_EXCEPTION(throwScope, false);                                                                                                                                \ +        }                                                                                                                                                                          \ +        auto value = JSC::JSValue::decode(encodedValue);                                                                                                                           \ +        state->m_##NAME.set(vm, state, value);                                                                                                                                     \ +        RELEASE_AND_RETURN(throwScope, true);                                                                                                                                      \ +    } + +                                                                                            JSReadableState_JSVALUE_GETTER_SETTER(buffer) +                                                                                                JSReadableState_JSVALUE_GETTER_SETTER(pipes) +                                                                                                    JSReadableState_JSVALUE_GETTER_SETTER(errored) +                                                                                                        JSReadableState_JSVALUE_GETTER_SETTER(defaultEncoding) +                                                                                                            JSReadableState_JSVALUE_GETTER_SETTER(awaitDrainWriters) +                                                                                                                JSReadableState_JSVALUE_GETTER_SETTER(decoder) +                                                                                                                    JSReadableState_JSVALUE_GETTER_SETTER(encoding) + +#undef JSReadableState_JSVALUE_GETTER_SETTER + +#define JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(NAME)                                                                                                                  \ +    {                                                                                                                                                                         \ +#NAME ""_s, static_cast < unsigned>(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::CustomAccessor | JSC::PropertyAttribute::DOMAttribute), NoIntrinsic, \ +        {                                                                                                                                                                     \ +            HashTableValue::GetterSetterType, jsReadableState_##NAME, setJSReadableState_##NAME                                                                               \ +        }                                                                                                                                                                     \ +    } + +    /* Hash table for prototype */ +    static const HashTableValue JSReadableStatePrototypeTableValues[] +    = { +          { "pipesCount"_s, static_cast<unsigned>(JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::CustomAccessor | JSC::PropertyAttribute::DOMAttribute), NoIntrinsic, { HashTableValue::GetterSetterType, jsReadableState_pipesCount, 0 } }, +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(paused), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(flowing), + +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(objectMode), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(ended), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(endEmitted), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(reading), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(constructed), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(sync), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(needReadable), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(emittedReadable), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(readableListening), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(resumeScheduled), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(errorEmitted), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(emitClose), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(autoDestroy), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(destroyed), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(closed), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(closeEmitted), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(multiAwaitDrain), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(readingMore), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(dataEmitted), + +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(length), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(highWaterMark), + +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(buffer), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(pipes), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(errored), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(defaultEncoding), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(awaitDrainWriters), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(decoder), +          JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE(encoding), +      }; + +#undef JSReadableState_GETTER_SETTER_HASH_TABLE_VALUE + +void JSReadableStatePrototype::finishCreation(VM& vm, JSC::JSGlobalObject* globalThis) +{ +    Base::finishCreation(vm); +    reifyStaticProperties(vm, JSReadableState::info(), JSReadableStatePrototypeTableValues, *this); +    JSC_TO_STRING_TAG_WITHOUT_TRANSITION(); +} + +const ClassInfo JSReadableStatePrototype::s_info = { "ReadableState"_s, &Base::s_info, nullptr, nullptr, CREATE_METHOD_TABLE(JSReadableStatePrototype) }; + +void JSReadableStateConstructor::finishCreation(VM& vm, JSC::JSGlobalObject* globalObject, JSReadableStatePrototype* prototype) +{ +    Base::finishCreation(vm, 0, "ReadableState"_s, PropertyAdditionMode::WithoutStructureTransition); +    putDirectWithoutTransition(vm, vm.propertyNames->prototype, prototype, PropertyAttribute::DontEnum | PropertyAttribute::DontDelete | PropertyAttribute::ReadOnly); +    ASSERT(inherits(info())); +} + +JSReadableStateConstructor* JSReadableStateConstructor::create(JSC::VM& vm, JSC::JSGlobalObject* globalObject, JSC::Structure* structure, JSReadableStatePrototype* prototype) +{ +    JSReadableStateConstructor* ptr = new (NotNull, JSC::allocateCell<JSReadableStateConstructor>(vm)) JSReadableStateConstructor(vm, structure, construct); +    ptr->finishCreation(vm, globalObject, prototype); +    return ptr; +} + +JSC::EncodedJSValue JSReadableStateConstructor::construct(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame) +{ +    JSC::VM& vm = lexicalGlobalObject->vm(); +    auto throwScope = DECLARE_THROW_SCOPE(vm); +    if (callFrame->argumentCount() < 3) { +        throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject)); +        return JSValue::encode(jsUndefined()); +    } +    JSValue optionsVal = callFrame->uncheckedArgument(0); +    JSValue streamVal = callFrame->uncheckedArgument(1); +    JSValue isDuplexVal = callFrame->uncheckedArgument(2); + +    bool isDuplex; +    if (!isDuplexVal.isBoolean()) { +        // change this to `stream instanceof Duplex` after native Duplex is implemented. +        JSC::throwTypeError(lexicalGlobalObject, throwScope, "isDuplex should be boolean"_s); +        return JSValue::encode(jsUndefined()); +    } +    isDuplex = isDuplexVal.toBoolean(lexicalGlobalObject); +    RETURN_IF_EXCEPTION(throwScope, encodedJSValue()); +    JSObject* options = nullptr; +    if (optionsVal && optionsVal.isObject()) { +        options = optionsVal.toObject(lexicalGlobalObject); +    } +    RETURN_IF_EXCEPTION(throwScope, encodedJSValue()); + +    JSReadableState* stringDecoder = JSReadableState::create( +        vm, lexicalGlobalObject, reinterpret_cast<Zig::GlobalObject*>(lexicalGlobalObject)->JSReadableStateStructure(), isDuplex, options); +    return JSC::JSValue::encode(stringDecoder); +} + +void JSReadableStateConstructor::initializeProperties(VM& vm, JSC::JSGlobalObject* globalObject, JSReadableStatePrototype* prototype) +{ +} + +const ClassInfo JSReadableStateConstructor::s_info = { "ReadableState"_s, &Base::s_info, nullptr, nullptr, CREATE_METHOD_TABLE(JSReadableStateConstructor) }; + +} // namespace Zig diff --git a/src/bun.js/bindings/JSReadableState.h b/src/bun.js/bindings/JSReadableState.h new file mode 100644 index 000000000..c67baebad --- /dev/null +++ b/src/bun.js/bindings/JSReadableState.h @@ -0,0 +1,154 @@ +#pragma once + +#include "root.h" +#include "BufferEncodingType.h" + +namespace WebCore { +using namespace JSC; + +class JSReadableState : public JSC::JSDestructibleObject { +    using Base = JSC::JSDestructibleObject; + +public: +    JSReadableState(JSC::VM& vm, JSC::Structure* structure) +        : Base(vm, structure) +        , m_paused(0) +    { +    } + +    DECLARE_VISIT_CHILDREN; +    DECLARE_INFO; + +    static constexpr unsigned StructureFlags = Base::StructureFlags; + +    template<typename, JSC::SubspaceAccess mode> static JSC::GCClient::IsoSubspace* subspaceFor(JSC::VM& vm) +    { +        if constexpr (mode == JSC::SubspaceAccess::Concurrently) +            return nullptr; +        return subspaceForImpl(vm); +    } + +    static JSC::GCClient::IsoSubspace* subspaceForImpl(JSC::VM& vm); + +    static JSC::Structure* createStructure(JSC::VM& vm, JSC::JSGlobalObject* globalObject, +        JSC::JSValue prototype) +    { +        return JSC::Structure::create(vm, globalObject, prototype, +            JSC::TypeInfo(JSC::ObjectType, StructureFlags), info()); +    } + +    static JSReadableState* create(JSC::VM& vm, JSC::JSGlobalObject* globalObject, JSC::Structure* structure, bool isDuplex, JSObject* options) +    { +        JSReadableState* accessor = new (NotNull, JSC::allocateCell<JSReadableState>(vm)) JSReadableState(vm, structure); +        accessor->finishCreation(vm, globalObject, isDuplex, options); +        return accessor; +    } + +    void finishCreation(JSC::VM& vm, JSC::JSGlobalObject* globalObject, bool isDuplex, JSObject* options); +    static void destroy(JSCell*) {} + +    enum Mask : uint32_t { +        objectMode = 1 << 0, +        emitClose = 1 << 1, +        autoDestroy = 1 << 2, +        ended = 1 << 3, +        endEmitted = 1 << 4, +        reading = 1 << 5, +        constructed = 1 << 6, +        sync = 1 << 7, +        needReadable = 1 << 8, +        emittedReadable = 1 << 9, +        readableListening = 1 << 10, +        resumeScheduled = 1 << 11, +        errorEmitted = 1 << 12, +        destroyed = 1 << 13, +        closed = 1 << 14, +        closeEmitted = 1 << 15, +        multiAwaitDrain = 1 << 16, +        readingMore = 1 << 17, +        dataEmitted = 1 << 18, +    }; + +    constexpr bool getBool(Mask mask) { return m_bools.contains(mask); } +    constexpr void setBool(Mask mask, bool val) +    { +        m_bools.set(mask, val); +    } + +    // 0 for null, 1 for true, -1 for false +    int8_t m_paused = 0; +    int8_t m_flowing = 0; + +    WTF::OptionSet<Mask> m_bools; + +    int64_t m_length = 0; +    int64_t m_highWaterMark; + +    mutable WriteBarrier<Unknown> m_buffer; +    mutable WriteBarrier<Unknown> m_pipes; +    mutable WriteBarrier<Unknown> m_errored; +    mutable WriteBarrier<Unknown> m_defaultEncoding; +    mutable WriteBarrier<Unknown> m_awaitDrainWriters; +    mutable WriteBarrier<Unknown> m_decoder; +    mutable WriteBarrier<Unknown> m_encoding; +}; + +class JSReadableStatePrototype : public JSC::JSNonFinalObject { +public: +    using Base = JSC::JSNonFinalObject; +    static JSReadableStatePrototype* create(JSC::VM& vm, JSC::JSGlobalObject* globalObject, JSC::Structure* structure) +    { +        JSReadableStatePrototype* ptr = new (NotNull, JSC::allocateCell<JSReadableStatePrototype>(vm)) JSReadableStatePrototype(vm, structure); +        ptr->finishCreation(vm, globalObject); +        return ptr; +    } + +    DECLARE_INFO; +    template<typename CellType, JSC::SubspaceAccess> +    static JSC::GCClient::IsoSubspace* subspaceFor(JSC::VM& vm) +    { +        return &vm.plainObjectSpace(); +    } +    static JSC::Structure* createStructure(JSC::VM& vm, JSC::JSGlobalObject* globalObject, JSC::JSValue prototype) +    { +        return JSC::Structure::create(vm, globalObject, prototype, JSC::TypeInfo(JSC::ObjectType, StructureFlags), info()); +    } + +private: +    JSReadableStatePrototype(JSC::VM& vm, JSC::Structure* structure) +        : Base(vm, structure) +    { +    } + +    void finishCreation(JSC::VM&, JSC::JSGlobalObject*); +}; + +class JSReadableStateConstructor final : public JSC::InternalFunction { +public: +    using Base = JSC::InternalFunction; +    static JSReadableStateConstructor* create(JSC::VM& vm, JSC::JSGlobalObject* globalObject, JSC::Structure* structure, JSReadableStatePrototype* prototype); + +    static constexpr unsigned StructureFlags = Base::StructureFlags; +    static constexpr bool needsDestruction = false; + +    static JSC::Structure* createStructure(JSC::VM& vm, JSC::JSGlobalObject* globalObject, JSC::JSValue prototype) +    { +        return JSC::Structure::create(vm, globalObject, prototype, JSC::TypeInfo(JSC::InternalFunctionType, StructureFlags), info()); +    } + +    void initializeProperties(JSC::VM& vm, JSC::JSGlobalObject* globalObject, JSReadableStatePrototype* prototype); + +    // Must be defined for each specialization class. +    static JSC::EncodedJSValue JSC_HOST_CALL_ATTRIBUTES construct(JSC::JSGlobalObject*, JSC::CallFrame*); +    DECLARE_EXPORT_INFO; + +private: +    JSReadableStateConstructor(JSC::VM& vm, JSC::Structure* structure, JSC::NativeFunction nativeFunction) +        : Base(vm, structure, nativeFunction, nativeFunction) +    { +    } + +    void finishCreation(JSC::VM&, JSC::JSGlobalObject* globalObject, JSReadableStatePrototype* prototype); +}; + +} diff --git a/src/bun.js/bindings/ZigGlobalObject.cpp b/src/bun.js/bindings/ZigGlobalObject.cpp index 091cc0b29..6398fb7a0 100644 --- a/src/bun.js/bindings/ZigGlobalObject.cpp +++ b/src/bun.js/bindings/ZigGlobalObject.cpp @@ -90,6 +90,8 @@  #include "JSCloseEvent.h"  #include "JSFetchHeaders.h"  #include "JSStringDecoder.h" +#include "JSReadableState.h" +#include "JSReadableHelper.h"  #include "Process.h"  #include "AsyncContextFrame.h" @@ -1626,7 +1628,7 @@ static JSC_DEFINE_HOST_FUNCTION(functionLazyLoad,      switch (callFrame->argumentCount()) {      case 0: { -        JSC::throwTypeError(globalObject, scope, "$lazy needs 1 argument (a string)"_s); +        JSC::throwTypeError(globalObject, scope, "lazyLoad needs 1 argument (a string)"_s);          scope.release();          return JSC::JSValue::encode(JSC::JSValue {});      } @@ -1635,7 +1637,7 @@ static JSC_DEFINE_HOST_FUNCTION(functionLazyLoad,          if (moduleName.isNumber()) {              switch (moduleName.toInt32(globalObject)) {              case 0: { -                JSC::throwTypeError(globalObject, scope, "$lazy expects a string"_s); +                JSC::throwTypeError(globalObject, scope, "lazyLoad expects a string"_s);                  scope.release();                  return JSC::JSValue::encode(JSC::JSValue {});              } @@ -1652,7 +1654,7 @@ static JSC_DEFINE_HOST_FUNCTION(functionLazyLoad,              default: {                  auto scope = DECLARE_THROW_SCOPE(globalObject->vm()); -                JSC::throwTypeError(globalObject, scope, "$lazy expects a string"_s); +                JSC::throwTypeError(globalObject, scope, "lazyLoad expects a string"_s);                  scope.release();                  return JSC::JSValue::encode(JSC::JSValue {});              } @@ -1661,7 +1663,7 @@ static JSC_DEFINE_HOST_FUNCTION(functionLazyLoad,          auto string = moduleName.toWTFString(globalObject);          if (string.isNull()) { -            JSC::throwTypeError(globalObject, scope, "$lazy expects a string"_s); +            JSC::throwTypeError(globalObject, scope, "lazyLoad expects a string"_s);              scope.release();              return JSC::JSValue::encode(JSC::JSValue {});          } @@ -1671,6 +1673,7 @@ static JSC_DEFINE_HOST_FUNCTION(functionLazyLoad,          }          if (string == "worker_threads"_s) { +              JSValue workerData = jsUndefined();              JSValue threadId = jsNumber(0); @@ -1705,6 +1708,27 @@ static JSC_DEFINE_HOST_FUNCTION(functionLazyLoad,                  JSFunction::create(vm, globalObject, 1, fileURLToPathString, functionFileURLToPath, ImplementationVisibility::Public, NoIntrinsic));          } +        if (string == "bun:stream"_s) { +            auto* obj = constructEmptyObject(globalObject); +            obj->putDirect(vm, JSC::PropertyName(JSC::Identifier::fromString(vm, "BufferList"_s)), reinterpret_cast<Zig::GlobalObject*>(globalObject)->JSBufferList(), 0); +            obj->putDirect(vm, JSC::PropertyName(JSC::Identifier::fromString(vm, "ReadableState"_s)), reinterpret_cast<Zig::GlobalObject*>(globalObject)->JSReadableState(), 0); +            obj->putDirect( +                vm, JSC::PropertyName(JSC::Identifier::fromString(vm, "maybeReadMore"_s)), +                JSC::JSFunction::create(vm, globalObject, 0, "maybeReadMore"_s, jsReadable_maybeReadMore, ImplementationVisibility::Public), 0); +            obj->putDirect( +                vm, JSC::PropertyName(JSC::Identifier::fromString(vm, "resume"_s)), +                JSC::JSFunction::create(vm, globalObject, 0, "resume"_s, jsReadable_resume, ImplementationVisibility::Public), 0); +            obj->putDirect( +                vm, JSC::PropertyName(JSC::Identifier::fromString(vm, "emitReadable"_s)), +                JSC::JSFunction::create(vm, globalObject, 0, "emitReadable"_s, jsReadable_emitReadable, ImplementationVisibility::Public), 0); +            obj->putDirect( +                vm, JSC::PropertyName(JSC::Identifier::fromString(vm, "onEofChunk"_s)), +                JSC::JSFunction::create(vm, globalObject, 0, "onEofChunk"_s, jsReadable_onEofChunk, ImplementationVisibility::Public), 0); +            return JSValue::encode(obj); +        } +        if (string == "events"_s) { +            return JSValue::encode(WebCore::JSEventEmitter::getConstructor(vm, globalObject)); +        }          if (string == "internal/tls"_s) {              auto* obj = constructEmptyObject(globalObject); @@ -1735,9 +1759,9 @@ static JSC_DEFINE_HOST_FUNCTION(functionLazyLoad,              return JSValue::encode(obj);          } -        // if (string == "masqueradesAsUndefined"_s) { -        //     return JSValue::encode(InternalFunction::createFunctionThatMasqueradesAsUndefined(vm, globalObject, 0, String(), functionCallNotImplemented)); -        // } +        if (string == "masqueradesAsUndefined"_s) { +            return JSValue::encode(InternalFunction::createFunctionThatMasqueradesAsUndefined(vm, globalObject, 0, String(), functionCallNotImplemented)); +        }          if (string == "vm"_s) {              auto* obj = constructEmptyObject(globalObject); @@ -1794,9 +1818,9 @@ static JSC_DEFINE_HOST_FUNCTION(functionLazyLoad,              return JSC::JSValue::encode(obj);          } -        JSC::throwTypeError(globalObject, scope, "$lazy expects a string"_s); -        scope.release(); -        return JSC::JSValue::encode(JSC::JSValue {}); +        return JSC::JSValue::encode(JSC::jsUndefined()); + +        break;      }      }  } @@ -2981,6 +3005,10 @@ void GlobalObject::finishCreation(VM& vm)          [](const Initializer<JSFunction>& init) {              init.set(JSFunction::create(init.vm, init.owner, 4, "performMicrotask"_s, jsFunctionPerformMicrotask, ImplementationVisibility::Public));          }); +    m_emitReadableNextTickFunction.initLater( +        [](const Initializer<JSFunction>& init) { +            init.set(JSFunction::create(init.vm, init.owner, 4, "emitReadable"_s, WebCore::jsReadable_emitReadable_, ImplementationVisibility::Public)); +        });      m_bunSleepThenCallback.initLater(          [](const Initializer<JSFunction>& init) { @@ -3295,6 +3323,18 @@ void GlobalObject::finishCreation(VM& vm)              init.setConstructor(constructor);          }); +    m_JSReadableStateClassStructure.initLater( +        [](LazyClassStructure::Initializer& init) { +            auto* prototype = JSReadableStatePrototype::create( +                init.vm, init.global, JSReadableStatePrototype::createStructure(init.vm, init.global, init.global->objectPrototype())); +            auto* structure = JSReadableState::createStructure(init.vm, init.global, prototype); +            auto* constructor = JSReadableStateConstructor::create( +                init.vm, init.global, JSReadableStateConstructor::createStructure(init.vm, init.global, init.global->functionPrototype()), prototype); +            init.setPrototype(prototype); +            init.setStructure(structure); +            init.setConstructor(constructor); +        }); +      m_JSFFIFunctionStructure.initLater(          [](LazyClassStructure::Initializer& init) {              init.setStructure(Zig::JSFFIFunction::createStructure(init.vm, init.global, init.global->functionPrototype())); @@ -4084,6 +4124,7 @@ void GlobalObject::visitChildrenImpl(JSCell* cell, Visitor& visitor)      thisObject->m_JSFileSinkClassStructure.visit(visitor);      thisObject->m_JSHTTPResponseSinkClassStructure.visit(visitor);      thisObject->m_JSHTTPSResponseSinkClassStructure.visit(visitor); +    thisObject->m_JSReadableStateClassStructure.visit(visitor);      thisObject->m_JSStringDecoderClassStructure.visit(visitor);      thisObject->m_NapiClassStructure.visit(visitor);      thisObject->m_JSBufferClassStructure.visit(visitor); @@ -4109,6 +4150,7 @@ void GlobalObject::visitChildrenImpl(JSCell* cell, Visitor& visitor)      thisObject->m_subtleCryptoObject.visit(visitor);      thisObject->m_JSHTTPResponseController.visit(visitor);      thisObject->m_callSiteStructure.visit(visitor); +    thisObject->m_emitReadableNextTickFunction.visit(visitor);      thisObject->m_JSBufferSubclassStructure.visit(visitor);      thisObject->m_cryptoObject.visit(visitor);      thisObject->m_JSDOMFileConstructor.visit(visitor); diff --git a/src/bun.js/bindings/ZigGlobalObject.h b/src/bun.js/bindings/ZigGlobalObject.h index 7377e6693..29c1cd09c 100644 --- a/src/bun.js/bindings/ZigGlobalObject.h +++ b/src/bun.js/bindings/ZigGlobalObject.h @@ -238,6 +238,10 @@ public:      JSC::JSObject* JSStringDecoder() { return m_JSStringDecoderClassStructure.constructorInitializedOnMainThread(this); }      JSC::JSValue JSStringDecoderPrototype() { return m_JSStringDecoderClassStructure.prototypeInitializedOnMainThread(this); } +    JSC::Structure* JSReadableStateStructure() { return m_JSReadableStateClassStructure.getInitializedOnMainThread(this); } +    JSC::JSObject* JSReadableState() { return m_JSReadableStateClassStructure.constructorInitializedOnMainThread(this); } +    JSC::JSValue JSReadableStatePrototype() { return m_JSReadableStateClassStructure.prototypeInitializedOnMainThread(this); } +      JSC::Structure* NodeVMScriptStructure() { return m_NodeVMScriptClassStructure.getInitializedOnMainThread(this); }      JSC::JSObject* NodeVMScript() { return m_NodeVMScriptClassStructure.constructorInitializedOnMainThread(this); }      JSC::JSValue NodeVMScriptPrototype() { return m_NodeVMScriptClassStructure.prototypeInitializedOnMainThread(this); } @@ -257,6 +261,8 @@ public:      JSC::JSFunction* utilInspectStylizeColorFunction() { return m_utilInspectStylizeColorFunction.getInitializedOnMainThread(this); }      JSC::JSFunction* utilInspectStylizeNoColorFunction() { return m_utilInspectStylizeNoColorFunction.getInitializedOnMainThread(this); } +    JSC::JSFunction* emitReadableNextTickFunction() { return m_emitReadableNextTickFunction.getInitializedOnMainThread(this); } +      JSObject* requireFunctionUnbound() { return m_requireFunctionUnbound.getInitializedOnMainThread(this); }      JSObject* requireResolveFunctionUnbound() { return m_requireResolveFunctionUnbound.getInitializedOnMainThread(this); }      Bun::InternalModuleRegistry* internalModuleRegistry() { return m_internalModuleRegistry.getInitializedOnMainThread(this); } @@ -500,6 +506,7 @@ private:      LazyClassStructure m_JSFileSinkClassStructure;      LazyClassStructure m_JSHTTPResponseSinkClassStructure;      LazyClassStructure m_JSHTTPSResponseSinkClassStructure; +    LazyClassStructure m_JSReadableStateClassStructure;      LazyClassStructure m_JSStringDecoderClassStructure;      LazyClassStructure m_NapiClassStructure;      LazyClassStructure m_callSiteStructure; @@ -523,7 +530,7 @@ private:      LazyProperty<JSGlobalObject, JSFunction> m_utilInspectFunction;      LazyProperty<JSGlobalObject, JSFunction> m_utilInspectStylizeColorFunction;      LazyProperty<JSGlobalObject, JSFunction> m_utilInspectStylizeNoColorFunction; - +    LazyProperty<JSGlobalObject, JSFunction> m_emitReadableNextTickFunction;      LazyProperty<JSGlobalObject, JSMap> m_lazyReadableStreamPrototypeMap;      LazyProperty<JSGlobalObject, JSMap> m_requireMap;      LazyProperty<JSGlobalObject, Structure> m_encodeIntoObjectStructure; diff --git a/src/darwin_c.zig b/src/darwin_c.zig index 4b140560d..1e494db47 100644 --- a/src/darwin_c.zig +++ b/src/darwin_c.zig @@ -307,7 +307,7 @@ pub const SystemErrno = enum(u8) {          map.put(.E2BIG, "Argument list too long");          map.put(.EACCES, "Permission denied");          map.put(.EADDRINUSE, "Address already in use"); -        map.put(.EADDRNOTAVAIL, "Can’t assign requested address"); +        map.put(.EADDRNOTAVAIL, "Can't assign requested address");          map.put(.EAFNOSUPPORT, "Address family not supported by protocol family");          map.put(.EAGAIN, "non-blocking and interrupt i/o. Resource temporarily unavailable");          map.put(.EALREADY, "Operation already in progress"); @@ -350,7 +350,7 @@ pub const SystemErrno = enum(u8) {          map.put(.EMULTIHOP, "Reserved");          map.put(.ENAMETOOLONG, "File name too long");          map.put(.ENEEDAUTH, "Need authenticator"); -        map.put(.ENETDOWN, "ipc/network software – operational errors Network is down"); +        map.put(.ENETDOWN, "ipc/network software - operational errors Network is down");          map.put(.ENETRESET, "Network dropped connection on reset");          map.put(.ENETUNREACH, "Network is unreachable");          map.put(.ENFILE, "Too many open files in system"); @@ -375,7 +375,7 @@ pub const SystemErrno = enum(u8) {          map.put(.ENOTDIR, "Not a directory");          map.put(.ENOTEMPTY, "Directory not empty");          map.put(.ENOTRECOVERABLE, "State not recoverable"); -        map.put(.ENOTSOCK, "ipc/network software – argument errors. Socket operation on non-socket"); +        map.put(.ENOTSOCK, "ipc/network software - argument errors. Socket operation on non-socket");          map.put(.ENOTSUP, "Operation not supported");          map.put(.ENOTTY, "Inappropriate ioctl for device");          map.put(.ENXIO, "Device not configured"); @@ -405,7 +405,7 @@ pub const SystemErrno = enum(u8) {          map.put(.ESTALE, "Network File System. Stale NFS file handle");          map.put(.ETIME, "STREAM ioctl timeout");          map.put(.ETIMEDOUT, "Operation timed out"); -        map.put(.ETOOMANYREFS, "Too many references: can’t splice"); +        map.put(.ETOOMANYREFS, "Too many references: can't splice");          map.put(.ETXTBSY, "Text file busy");          map.put(.EUSERS, "Too many users");          // map.put(.EWOULDBLOCK, "Operation would block"); diff --git a/src/js/_codegen/replacements.ts b/src/js/_codegen/replacements.ts index 68ffb92fd..4621d6134 100644 --- a/src/js/_codegen/replacements.ts +++ b/src/js/_codegen/replacements.ts @@ -99,7 +99,7 @@ export function applyReplacements(src: string, length: number) {      if (name === "debug") {        const innerSlice = sliceSourceCode(rest, true);        return [ -        slice.slice(0, match.index) + "void (IS_BUN_DEVELOPMENT?$debug_log" + innerSlice.result + ":void 0)", +        slice.slice(0, match.index) + "(IS_BUN_DEVELOPMENT?$debug_log" + innerSlice.result + ":void 0)",          innerSlice.rest,          true,        ]; @@ -107,7 +107,7 @@ export function applyReplacements(src: string, length: number) {        const checkSlice = sliceSourceCode(rest, true, undefined, true);        return [          slice.slice(0, match.index) + -          "void (IS_BUN_DEVELOPMENT?$assert(" + +          "(IS_BUN_DEVELOPMENT?$assert(" +            checkSlice.result.slice(1, -1) +            "," +            JSON.stringify(checkSlice.result.slice(1, -1).replace(/__intrinsic__/g, "$")) + diff --git a/src/js/builtins.d.ts b/src/js/builtins.d.ts index bd0ec4770..70d76e5a0 100644 --- a/src/js/builtins.d.ts +++ b/src/js/builtins.d.ts @@ -315,6 +315,7 @@ declare function $isPaused(): TODO;  declare function $isWindows(): TODO;  declare function $join(): TODO;  declare function $kind(): TODO; +declare function $lazy(): TODO;  declare function $lazyLoad(): TODO;  declare function $lazyStreamPrototypeMap(): TODO;  declare function $loadModule(): TODO; diff --git a/src/js/node/stream.js b/src/js/node/stream.js index d91ec2f6c..d7d984cb8 100644 --- a/src/js/node/stream.js +++ b/src/js/node/stream.js @@ -2,7 +2,7 @@  // "readable-stream" npm package  // just transpiled and debug logs added. -const EE = require("node:events"); +const EE = $lazy("events");  const StringDecoder = require("node:string_decoder").StringDecoder;  var __getOwnPropNames = Object.getOwnPropertyNames; @@ -24,275 +24,6 @@ function validateBoolean(value, name) {  $debug("node:stream loaded"); -function highWaterMarkFrom(options, isDuplex, duplexKey) { -  return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; -} -function getDefaultHighWaterMark(objectMode) { -  return objectMode ? 16 : 16 * 1024; -} -function getHighWaterMark(state, options, duplexKey, isDuplex) { -  const hwm = highWaterMarkFrom(options, isDuplex, duplexKey); -  if (hwm != null) { -    if (!Number.isInteger(hwm) || hwm < 0) { -      const name = isDuplex ? `options.${duplexKey}` : "options.highWaterMark"; -      throw new ERR_INVALID_ARG_VALUE(name, hwm); -    } -    return Math.floor(hwm); -  } - -  // Default value -  return getDefaultHighWaterMark(state.objectMode); -} - -class BufferList { -  constructor() { -    this.head = null; -    this.tail = null; -    this.length = 0; -  } -  push(v) { -    const entry = { -      data: v, -      next: null, -    }; -    if (this.length > 0) this.tail.next = entry; -    else this.head = entry; -    this.tail = entry; -    ++this.length; -  } -  unshift(v) { -    const entry = { -      data: v, -      next: this.head, -    }; -    if (this.length === 0) this.tail = entry; -    this.head = entry; -    ++this.length; -  } -  shift() { -    if (this.length === 0) return; -    const ret = this.head.data; -    if (this.length === 1) this.head = this.tail = null; -    else this.head = this.head.next; -    --this.length; -    return ret; -  } -  clear() { -    this.head = this.tail = null; -    this.length = 0; -  } -  join(s) { -    if (this.length === 0) return ""; -    let p = this.head; -    let ret = "" + p.data; -    while ((p = p.next) !== null) ret += s + p.data; -    return ret; -  } -  concat(n) { -    if (this.length === 0) return Buffer.alloc(0); -    const ret = Buffer.allocUnsafe(n >>> 0); -    let p = this.head; -    let i = 0; -    while (p) { -      ret.set(p.data, i); -      i += p.data.length; -      p = p.next; -    } -    return ret; -  } - -  // Consumes a specified amount of bytes or characters from the buffered data. -  consume(n, hasStrings) { -    const data = this.head.data; -    if (n < data.length) { -      // `slice` is the same for buffers and strings. -      const slice = data.slice(0, n); -      this.head.data = data.slice(n); -      return slice; -    } -    if (n === data.length) { -      // First chunk is a perfect match. -      return this.shift(); -    } -    // Result spans more than one buffer. -    return hasStrings ? this._getString(n) : this._getBuffer(n); -  } -  first() { -    return this.head.data; -  } -  *[Symbol.iterator]() { -    for (let p = this.head; p; p = p.next) { -      yield p.data; -    } -  } - -  // Consumes a specified amount of characters from the buffered data. -  _getString(n) { -    let ret = ""; -    let p = this.head; -    let c = 0; -    do { -      const str = p.data; -      if (n > str.length) { -        ret += str; -        n -= str.length; -      } else { -        if (n === str.length) { -          ret += str; -          ++c; -          if (p.next) this.head = p.next; -          else this.head = this.tail = null; -        } else { -          ret += str.slice(0, n); -          this.head = p; -          p.data = str.slice(n); -        } -        break; -      } -      ++c; -    } while ((p = p.next) !== null); -    this.length -= c; -    return ret; -  } - -  // Consumes a specified amount of bytes from the buffered data. -  _getBuffer(n) { -    const ret = Buffer.allocUnsafe(n); -    const retLen = n; -    let p = this.head; -    let c = 0; -    do { -      const buf = p.data; -      if (n > buf.length) { -        ret.set(buf, retLen - n); -        n -= buf.length; -      } else { -        if (n === buf.length) { -          ret.set(buf, retLen - n); -          ++c; -          if (p.next) this.head = p.next; -          else this.head = this.tail = null; -        } else { -          ret.set(new Uint8Array(buf.buffer, buf.byteOffset, n), retLen - n); -          this.head = p; -          p.data = buf.slice(n); -        } -        break; -      } -      ++c; -    } while ((p = p.next) !== null); -    this.length -= c; -    return ret; -  } - -  // Make sure the linked list only shows the minimal necessary information. -  [Symbol.for("nodejs.util.inspect.custom")](_, options) { -    return inspect(this, { -      ...options, -      // Only inspect one level. -      depth: 0, -      // It should not recurse. -      customInspect: false, -    }); -  } -} - -function ReadableState(options, stream, isDuplex) { -  // Duplex streams are both readable and writable, but share -  // the same options object. -  // However, some cases require setting options to different -  // values for the readable and the writable sides of the duplex stream. -  // These options can be provided separately as readableXXX and writableXXX. -  if (typeof isDuplex !== "boolean") isDuplex = stream instanceof Duplex; - -  // Object stream flag. Used to make read(n) ignore n and to -  // make all the buffer merging and length checks go away. -  this.objectMode = !!(options && options.objectMode); -  if (isDuplex) this.objectMode = this.objectMode || !!(options && options.readableObjectMode); - -  // The point at which it stops calling _read() to fill the buffer -  // Note: 0 is a valid value, means "don't call _read preemptively ever" -  this.highWaterMark = options -    ? getHighWaterMark(this, options, "readableHighWaterMark", isDuplex) -    : getDefaultHighWaterMark(false); - -  // A linked list is used to store data chunks instead of an array because the -  // linked list can remove elements from the beginning faster than -  // array.shift(). -  this.buffer = new BufferList(); -  this.length = 0; -  this.pipes = []; -  this.flowing = null; -  this.ended = false; -  this.endEmitted = false; -  this.reading = false; - -  // Stream is still being constructed and cannot be -  // destroyed until construction finished or failed. -  // Async construction is opt in, therefore we start as -  // constructed. -  this.constructed = true; - -  // A flag to be able to tell if the event 'readable'/'data' is emitted -  // immediately, or on a later tick.  We set this to true at first, because -  // any actions that shouldn't happen until "later" should generally also -  // not happen before the first read call. -  this.sync = true; - -  // Whenever we return null, then we set a flag to say -  // that we're awaiting a 'readable' event emission. -  this.needReadable = false; -  this.emittedReadable = false; -  this.readableListening = false; -  this.resumeScheduled = false; -  // this[kPaused] = null - -  // True if the error was already emitted and should not be thrown again. -  this.errorEmitted = false; - -  // Should close be emitted on destroy. Defaults to true. -  this.emitClose = !options || options.emitClose !== false; - -  // Should .destroy() be called after 'end' (and potentially 'finish'). -  this.autoDestroy = !options || options.autoDestroy !== false; - -  // Has it been destroyed. -  this.destroyed = false; - -  // Indicates whether the stream has errored. When true no further -  // _read calls, 'data' or 'readable' events should occur. This is needed -  // since when autoDestroy is disabled we need a way to tell whether the -  // stream has failed. -  this.errored = null; - -  // Indicates whether the stream has finished destroying. -  this.closed = false; - -  // True if close has been emitted or would have been emitted -  // depending on emitClose. -  this.closeEmitted = false; - -  // Crypto is kind of old and crusty.  Historically, its default string -  // encoding is 'binary' so we have to make this configurable. -  // Everything else in the universe uses 'utf8', though. -  this.defaultEncoding = (options && options.defaultEncoding) || "utf8"; - -  // Ref the piped dest which we need a drain event on it -  // type: null | Writable | Set<Writable>. -  this.awaitDrainWriters = null; -  this.multiAwaitDrain = false; - -  // If true, a maybeReadMore has been scheduled. -  this.readingMore = false; -  this.dataEmitted = false; -  this.decoder = null; -  this.encoding = null; -  if (options && options.encoding) { -    this.decoder = new StringDecoder(options.encoding); -    this.encoding = options.encoding; -  } -} -  /**   * @callback validateObject   * @param {*} value @@ -311,7 +42,7 @@ const validateObject = (value, name, options = null) => {    const nullable = options?.nullable ?? false;    if (      (!nullable && value === null) || -    (!allowArray && $isArray(value)) || +    (!allowArray && ArrayIsArray(value)) ||      (typeof value !== "object" && (!allowFunction || typeof value !== "function"))    ) {      throw new ERR_INVALID_ARG_TYPE(name, "Object", value); @@ -330,6 +61,8 @@ function validateString(value, name) {    if (typeof value !== "string") throw new ERR_INVALID_ARG_TYPE(name, "string", value);  } +var ArrayIsArray = Array.isArray; +  //------------------------------------------------------------------------------  // Node error polyfills  //------------------------------------------------------------------------------ @@ -348,7 +81,7 @@ var require_primordials = __commonJS({      "use strict";      module.exports = {        ArrayIsArray(self) { -        return $isArray(self); +        return Array.isArray(self);        },        ArrayPrototypeIncludes(self, el) {          return self.includes(el); @@ -432,6 +165,9 @@ var require_primordials = __commonJS({        SymbolAsyncIterator: Symbol.asyncIterator,        SymbolHasInstance: Symbol.hasInstance,        SymbolIterator: Symbol.iterator, +      TypedArrayPrototypeSet(self, buf, len) { +        return self.set(buf, len); +      },        Uint8Array,      };    }, @@ -450,7 +186,21 @@ var require_util = __commonJS({          : function isBlob2(b) {              return false;            }; - +    var AggregateError = class extends Error { +      constructor(errors) { +        if (!Array.isArray(errors)) { +          throw new TypeError(`Expected input to be an Array, got ${typeof errors}`); +        } +        let message = ""; +        for (let i = 0; i < errors.length; i++) { +          message += `    ${errors[i].stack} +`; +        } +        super(message); +        this.name = "AggregateError"; +        this.errors = errors; +      } +    };      module.exports = {        AggregateError,        once(callback) { @@ -549,8 +299,8 @@ var require_util = __commonJS({  var require_errors = __commonJS({    "node_modules/readable-stream/lib/ours/errors.js"(exports, module) {      "use strict"; -    var { format, inspect } = require_util(); -    var AggregateError = globalThis.AggregateError; +    var { format, inspect, AggregateError: CustomAggregateError } = require_util(); +    var AggregateError = globalThis.AggregateError || CustomAggregateError;      var kIsNodeError = Symbol("kIsNodeError");      var kTypes = ["string", "function", "number", "object", "Function", "Object", "boolean", "bigint", "symbol"];      var classRegExp = /^([A-Z][a-z0-9]*)+$/; @@ -2510,6 +2260,7 @@ var require_readable = __commonJS({        Symbol: Symbol2,      } = require_primordials(); +    var ReadableState = $lazy("bun:stream").ReadableState;      var { Stream, prependListener } = require_legacy();      function Readable(options) { @@ -2759,127 +2510,15 @@ var require_readable = __commonJS({      var { addAbortSignal } = require_add_abort_signal();      var eos = require_end_of_stream(); +    const { maybeReadMore: _maybeReadMore, resume, emitReadable: _emitReadable, onEofChunk } = $lazy("bun:stream");      function maybeReadMore(stream, state) { -      if (!state.readingMore && state.constructed) { -        state.readingMore = true; -        process.nextTick(maybeReadMore_, stream, state); -      } +      process.nextTick(_maybeReadMore, stream, state);      } -    function maybeReadMore_(stream, state) { -      // Attempt to read more data if we should. -      // -      // The conditions for reading more data are (one of): -      // - Not enough data buffered (state.length < state.highWaterMark). The loop -      //   is responsible for filling the buffer with enough data if such data -      //   is available. If highWaterMark is 0 and we are not in the flowing mode -      //   we should _not_ attempt to buffer any extra data. We'll get more data -      //   when the stream consumer calls read() instead. -      // - No data in the buffer, and the stream is in flowing mode. In this mode -      //   the loop below is responsible for ensuring read() is called. Failing to -      //   call read here would abort the flow and there's no other mechanism for -      //   continuing the flow if the stream consumer has just subscribed to the -      //   'data' event. -      // -      // In addition to the above conditions to keep reading data, the following -      // conditions prevent the data from being read: -      // - The stream has ended (state.ended). -      // - There is already a pending 'read' operation (state.reading). This is a -      //   case where the stream has called the implementation defined _read() -      //   method, but they are processing the call asynchronously and have _not_ -      //   called push() with new data. In this case we skip performing more -      //   read()s. The execution ends in this method again after the _read() ends -      //   up calling push() with more data. -      while ( -        !state.reading && -        !state.ended && -        (state.length < state.highWaterMark || (state.flowing && state.length === 0)) -      ) { -        const len = state.length; -        $debug("maybeReadMore read 0"); -        stream.read(0); -        if (len === state.length) -          // Didn't get any data, stop spinning. -          break; -      } -      state.readingMore = false; -    } -    // Don't emit readable right away in sync mode, because this can trigger -    // another read() call => stack overflow.  This way, it might trigger -    // a nextTick recursion warning, but that's not so bad. -    function emitReadable(stream) { -      const state = stream._readableState; -      $debug("emitReadable", state.needReadable, state.emittedReadable); -      state.needReadable = false; -      if (!state.emittedReadable) { -        $debug("emitReadable", state.flowing); -        state.emittedReadable = true; -        process.nextTick(emitReadable_, stream); -      } -    } -    function emitReadable_(stream) { -      const state = stream._readableState; -      $debug("emitReadable_", state.destroyed, state.length, state.ended); -      if (!state.destroyed && !state.errored && (state.length || state.ended)) { -        stream.emit("readable"); -        state.emittedReadable = false; -      } - -      // The stream needs another readable event if: -      // 1. It is not flowing, as the flow mechanism will take -      //    care of it. -      // 2. It is not ended. -      // 3. It is below the highWaterMark, so we can schedule -      //    another readable later. -      state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark; -      flow(stream); -    } -    function flow(stream) { -      const state = stream._readableState; -      $debug("flow", state.flowing); -      while (state.flowing && stream.read() !== null); -    } -    function onEofChunk(stream, state) { -      $debug("onEofChunk"); -      if (state.ended) return; -      if (state.decoder) { -        const chunk = state.decoder.end(); -        if (chunk && chunk.length) { -          state.buffer.push(chunk); -          state.length += state.objectMode ? 1 : chunk.length; -        } -      } -      state.ended = true; -      if (state.sync) { -        // If we are sync, wait until next tick to emit the data. -        // Otherwise we risk emitting data in the flow() -        // the readable code triggers during a read() call. -        emitReadable(stream); -      } else { -        // Emit 'readable' now to make sure it gets picked up. -        state.needReadable = false; -        state.emittedReadable = true; -        // We have to emit readable now that we are EOF. Modules -        // in the ecosystem (e.g. dicer) rely on this event being sync. -        emitReadable_(stream); -      } -    } -    function resume(stream, state) { -      if (!state.resumeScheduled) { -        state.resumeScheduled = true; -        process.nextTick(resume_, stream, state); -      } +    // REVERT ME +    function emitReadable(stream, state) { +      $debug("NativeReadable - emitReadable", stream.__id); +      _emitReadable(stream, state);      } -    function resume_(stream, state) { -      $debug("resume", state.reading); -      if (!state.reading) { -        stream.read(0); -      } -      state.resumeScheduled = false; -      stream.emit("resume"); -      flow(stream); -      if (state.flowing && !state.reading) stream.read(0); -    } -      var destroyImpl = require_destroy();      var {        aggregateTwoErrors, @@ -5968,6 +5607,4 @@ exports[Symbol.for("::bunternal::")] = { _ReadableFromWeb, _ReadableFromWebForUn  exports.eos = require_end_of_stream();  exports.EventEmitter = EE; -var Duplex = exports.Duplex; -  export default exports; diff --git a/src/js/out/InternalModuleRegistryConstants.h b/src/js/out/InternalModuleRegistryConstants.h index da22c5cad..24e6be228 100644 --- a/src/js/out/InternalModuleRegistryConstants.h +++ b/src/js/out/InternalModuleRegistryConstants.h @@ -154,7 +154,7 @@ static constexpr ASCIILiteral NodeStreamConsumersCode = "(function (){\"use stri  //  // -static constexpr ASCIILiteral NodeStreamCode = "(function (){\"use strict\";// src/js/out/tmp/node/stream.ts\nvar isReadableStream = function(value) {\n  return typeof value === \"object\" && value !== null && value instanceof ReadableStream;\n}, validateBoolean = function(value, name) {\n  if (typeof value !== \"boolean\")\n    throw new ERR_INVALID_ARG_TYPE(name, \"boolean\", value);\n}, highWaterMarkFrom = function(options, isDuplex, duplexKey) {\n  return options.highWaterMark != null \? options.highWaterMark : isDuplex \? options[duplexKey] : null;\n}, getDefaultHighWaterMark = function(objectMode) {\n  return objectMode \? 16 : 16384;\n}, getHighWaterMark = function(state, options, duplexKey, isDuplex) {\n  const hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n  if (hwm != null) {\n    if (!Number.isInteger(hwm) || hwm < 0) {\n      const name = isDuplex \? `options.${duplexKey}` : \"options.highWaterMark\";\n      throw new ERR_INVALID_ARG_VALUE(name, hwm);\n    }\n    return Math.floor(hwm);\n  }\n  return getDefaultHighWaterMark(state.objectMode);\n}, ReadableState = function(options, stream, isDuplex) {\n  if (typeof isDuplex !== \"boolean\")\n    isDuplex = stream instanceof Duplex;\n  if (this.objectMode = !!(options && options.objectMode), isDuplex)\n    this.objectMode = this.objectMode || !!(options && options.readableObjectMode);\n  if (this.highWaterMark = options \? getHighWaterMark(this, options, \"readableHighWaterMark\", isDuplex) : getDefaultHighWaterMark(!1), this.buffer = new BufferList, this.length = 0, this.pipes = [], this.flowing = null, this.ended = !1, this.endEmitted = !1, this.reading = !1, this.constructed = !0, this.sync = !0, this.needReadable = !1, this.emittedReadable = !1, this.readableListening = !1, this.resumeScheduled = !1, this.errorEmitted = !1, this.emitClose = !options || options.emitClose !== !1, this.autoDestroy = !options || options.autoDestroy !== !1, this.destroyed = !1, this.errored = null, this.closed = !1, this.closeEmitted = !1, this.defaultEncoding = options && options.defaultEncoding || \"utf8\", this.awaitDrainWriters = null, this.multiAwaitDrain = !1, this.readingMore = !1, this.dataEmitted = !1, this.decoder = null, this.encoding = null, options && options.encoding)\n    this.decoder = new StringDecoder(options.encoding), this.encoding = options.encoding;\n};\nvar ERR_INVALID_ARG_TYPE = function(name, type, value) {\n  return new Error(`The argument '${name}' is invalid. Received '${value}' for type '${type}'`);\n}, ERR_INVALID_ARG_VALUE = function(name, value, reason) {\n  return new Error(`The value '${value}' is invalid for argument '${name}'. Reason: ${reason}`);\n}, createNativeStreamReadable = function(nativeType, Readable) {\n  var [pull, start, cancel, setClose, deinit, updateRef, drainFn] = globalThis[globalThis.Symbol.for('Bun.lazy')](nativeType), closer = [!1], handleNumberResult = function(nativeReadable, result, view, isClosed) {\n    if (result > 0) {\n      const slice = view.subarray(0, result), remainder = view.subarray(result);\n      if (slice.byteLength > 0)\n        nativeReadable.push(slice);\n      if (isClosed)\n        nativeReadable.push(null);\n      return remainder.byteLength > 0 \? remainder : void 0;\n    }\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, handleArrayBufferViewResult = function(nativeReadable, result, view, isClosed) {\n    if (result.byteLength > 0)\n      nativeReadable.push(result);\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, DYNAMICALLY_ADJUST_CHUNK_SIZE = process.env.BUN_DISABLE_DYNAMIC_CHUNK_SIZE !== \"1\";\n  const finalizer = new FinalizationRegistry((ptr) => ptr && deinit(ptr)), MIN_BUFFER_SIZE = 512;\n  var NativeReadable = class NativeReadable2 extends Readable {\n    #bunNativePtr;\n    #refCount = 1;\n    #constructed = !1;\n    #remainingChunk = void 0;\n    #highWaterMark;\n    #pendingRead = !1;\n    #hasResized = !DYNAMICALLY_ADJUST_CHUNK_SIZE;\n    #unregisterToken;\n    constructor(ptr, options = {}) {\n      super(options);\n      if (typeof options.highWaterMark === \"number\")\n        this.#highWaterMark = options.highWaterMark;\n      else\n        this.#highWaterMark = 262144;\n      this.#bunNativePtr = ptr, this.#constructed = !1, this.#remainingChunk = void 0, this.#pendingRead = !1, this.#unregisterToken = {}, finalizer.register(this, this.#bunNativePtr, this.#unregisterToken);\n    }\n    _read(maxToRead) {\n      if (this.#pendingRead)\n        return;\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        this.push(null);\n        return;\n      }\n      if (!this.#constructed)\n        this.#internalConstruct(ptr);\n      return this.#internalRead(this.#getRemainingChunk(maxToRead), ptr);\n    }\n    #internalConstruct(ptr) {\n      this.#constructed = !0;\n      const result = start(ptr, this.#highWaterMark);\n      if (typeof result === \"number\" && result > 1)\n        this.#hasResized = !0, this.#highWaterMark = Math.min(this.#highWaterMark, result);\n      if (drainFn) {\n        const drainResult = drainFn(ptr);\n        if ((drainResult\?.byteLength \?\? 0) > 0)\n          this.push(drainResult);\n      }\n    }\n    #getRemainingChunk(maxToRead = this.#highWaterMark) {\n      var chunk = this.#remainingChunk;\n      if (chunk\?.byteLength \?\? 0 < MIN_BUFFER_SIZE) {\n        var size = maxToRead > MIN_BUFFER_SIZE \? maxToRead : MIN_BUFFER_SIZE;\n        this.#remainingChunk = chunk = new Buffer(size);\n      }\n      return chunk;\n    }\n    #handleResult(result, view, isClosed) {\n      if (typeof result === \"number\") {\n        if (result >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleNumberResult(this, result, view, isClosed);\n      } else if (typeof result === \"boolean\")\n        return process.nextTick(() => {\n          this.push(null);\n        }), view\?.byteLength \?\? 0 > 0 \? view : void 0;\n      else if (ArrayBuffer.isView(result)) {\n        if (result.byteLength >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleArrayBufferViewResult(this, result, view, isClosed);\n      } else\n        throw new Error(\"Invalid result from pull\");\n    }\n    #internalRead(view, ptr) {\n      closer[0] = !1;\n      var result = pull(ptr, view, closer);\n      if (@isPromise(result))\n        return this.#pendingRead = !0, result.then((result2) => {\n          this.#pendingRead = !1, this.#remainingChunk = this.#handleResult(result2, view, closer[0]);\n        }, (reason) => {\n          errorOrDestroy(this, reason);\n        });\n      else\n        this.#remainingChunk = this.#handleResult(result, view, closer[0]);\n    }\n    _destroy(error, callback) {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        callback(error);\n        return;\n      }\n      if (finalizer.unregister(this.#unregisterToken), this.#bunNativePtr = 0, updateRef)\n        updateRef(ptr, !1);\n      cancel(ptr, error), callback(error);\n    }\n    ref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount++ === 0)\n        updateRef(ptr, !0);\n    }\n    unref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount-- === 1)\n        updateRef(ptr, !1);\n    }\n  };\n  if (!updateRef)\n    NativeReadable.prototype.ref = void 0, NativeReadable.prototype.unref = void 0;\n  return NativeReadable;\n}, getNativeReadableStreamPrototype = function(nativeType, Readable) {\n  return nativeReadableStreamPrototypes[nativeType] ||= createNativeStreamReadable(nativeType, Readable);\n}, getNativeReadableStream = function(Readable, stream, options) {\n  if (!(stream && typeof stream === \"object\" && stream instanceof ReadableStream))\n    return;\n  const native = @direct(stream);\n  if (!native)\n    return;\n  const { stream: ptr, data: type } = native;\n  return new (getNativeReadableStreamPrototype(type, Readable))(ptr, options);\n}, EE = @getInternalField(@internalModuleRegistry, 18) || @createInternalModuleById(18), StringDecoder = @requireNativeModule(\"string_decoder\").StringDecoder, __getOwnPropNames = Object.getOwnPropertyNames, __commonJS = (cb, mod) => function __require2() {\n  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n}, runOnNextTick = process.nextTick;\n\nclass BufferList {\n  constructor() {\n    this.head = null, this.tail = null, this.length = 0;\n  }\n  push(v) {\n    const entry = {\n      data: v,\n      next: null\n    };\n    if (this.length > 0)\n      this.tail.next = entry;\n    else\n      this.head = entry;\n    this.tail = entry, ++this.length;\n  }\n  unshift(v) {\n    const entry = {\n      data: v,\n      next: this.head\n    };\n    if (this.length === 0)\n      this.tail = entry;\n    this.head = entry, ++this.length;\n  }\n  shift() {\n    if (this.length === 0)\n      return;\n    const ret = this.head.data;\n    if (this.length === 1)\n      this.head = this.tail = null;\n    else\n      this.head = this.head.next;\n    return --this.length, ret;\n  }\n  clear() {\n    this.head = this.tail = null, this.length = 0;\n  }\n  join(s) {\n    if (this.length === 0)\n      return \"\";\n    let p = this.head, ret = \"\" + p.data;\n    while ((p = p.next) !== null)\n      ret += s + p.data;\n    return ret;\n  }\n  concat(n) {\n    if (this.length === 0)\n      return Buffer.alloc(0);\n    const ret = Buffer.allocUnsafe(n >>> 0);\n    let p = this.head, i = 0;\n    while (p)\n      ret.set(p.data, i), i += p.data.length, p = p.next;\n    return ret;\n  }\n  consume(n, hasStrings) {\n    const data = this.head.data;\n    if (n < data.length) {\n      const slice = data.slice(0, n);\n      return this.head.data = data.slice(n), slice;\n    }\n    if (n === data.length)\n      return this.shift();\n    return hasStrings \? this._getString(n) : this._getBuffer(n);\n  }\n  first() {\n    return this.head.data;\n  }\n  *[Symbol.iterator]() {\n    for (let p = this.head;p; p = p.next)\n      yield p.data;\n  }\n  _getString(n) {\n    let ret = \"\", p = this.head, c = 0;\n    do {\n      const str = p.data;\n      if (n > str.length)\n        ret += str, n -= str.length;\n      else {\n        if (n === str.length)\n          if (ret += str, ++c, p.next)\n            this.head = p.next;\n          else\n            this.head = this.tail = null;\n        else\n          ret += str.slice(0, n), this.head = p, p.data = str.slice(n);\n        break;\n      }\n      ++c;\n    } while ((p = p.next) !== null);\n    return this.length -= c, ret;\n  }\n  _getBuffer(n) {\n    const ret = Buffer.allocUnsafe(n), retLen = n;\n    let p = this.head, c = 0;\n    do {\n      const buf = p.data;\n      if (n > buf.length)\n        ret.set(buf, retLen - n), n -= buf.length;\n      else {\n        if (n === buf.length)\n          if (ret.set(buf, retLen - n), ++c, p.next)\n            this.head = p.next;\n          else\n            this.head = this.tail = null;\n        else\n          ret.set(new Uint8Array(buf.buffer, buf.byteOffset, n), retLen - n), this.head = p, p.data = buf.slice(n);\n        break;\n      }\n      ++c;\n    } while ((p = p.next) !== null);\n    return this.length -= c, ret;\n  }\n  [Symbol.for(\"nodejs.util.inspect.custom\")](_, options) {\n    return inspect(this, {\n      ...options,\n      depth: 0,\n      customInspect: !1\n    });\n  }\n}\nvar require_primordials = __commonJS({\n  \"node_modules/readable-stream/lib/ours/primordials.js\"(exports, module) {\n    module.exports = {\n      ArrayIsArray(self) {\n        return @isArray(self);\n      },\n      ArrayPrototypeIncludes(self, el) {\n        return self.includes(el);\n      },\n      ArrayPrototypeIndexOf(self, el) {\n        return self.indexOf(el);\n      },\n      ArrayPrototypeJoin(self, sep) {\n        return self.join(sep);\n      },\n      ArrayPrototypeMap(self, fn) {\n        return self.map(fn);\n      },\n      ArrayPrototypePop(self, el) {\n        return self.pop(el);\n      },\n      ArrayPrototypePush(self, el) {\n        return self.push(el);\n      },\n      ArrayPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      Error,\n      FunctionPrototypeCall(fn, thisArgs, ...args) {\n        return fn.call(thisArgs, ...args);\n      },\n      FunctionPrototypeSymbolHasInstance(self, instance) {\n        return Function.prototype[Symbol.hasInstance].call(self, instance);\n      },\n      MathFloor: Math.floor,\n      Number,\n      NumberIsInteger: Number.isInteger,\n      NumberIsNaN: Number.isNaN,\n      NumberMAX_SAFE_INTEGER: Number.MAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER: Number.MIN_SAFE_INTEGER,\n      NumberParseInt: Number.parseInt,\n      ObjectDefineProperties(self, props) {\n        return Object.defineProperties(self, props);\n      },\n      ObjectDefineProperty(self, name, prop) {\n        return Object.defineProperty(self, name, prop);\n      },\n      ObjectGetOwnPropertyDescriptor(self, name) {\n        return Object.getOwnPropertyDescriptor(self, name);\n      },\n      ObjectKeys(obj) {\n        return Object.keys(obj);\n      },\n      ObjectSetPrototypeOf(target, proto) {\n        return Object.setPrototypeOf(target, proto);\n      },\n      Promise,\n      PromisePrototypeCatch(self, fn) {\n        return self.catch(fn);\n      },\n      PromisePrototypeThen(self, thenFn, catchFn) {\n        return self.then(thenFn, catchFn);\n      },\n      PromiseReject(err) {\n        return Promise.reject(err);\n      },\n      ReflectApply: Reflect.apply,\n      RegExpPrototypeTest(self, value) {\n        return self.test(value);\n      },\n      SafeSet: Set,\n      String,\n      StringPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      StringPrototypeToLowerCase(self) {\n        return self.toLowerCase();\n      },\n      StringPrototypeToUpperCase(self) {\n        return self.toUpperCase();\n      },\n      StringPrototypeTrim(self) {\n        return self.trim();\n      },\n      Symbol,\n      SymbolAsyncIterator: Symbol.asyncIterator,\n      SymbolHasInstance: Symbol.hasInstance,\n      SymbolIterator: Symbol.iterator,\n      Uint8Array\n    };\n  }\n}), require_util = __commonJS({\n  \"node_modules/readable-stream/lib/ours/util.js\"(exports, module) {\n    var AsyncFunction = Object.getPrototypeOf(async function() {\n    }).constructor, isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    };\n    module.exports = {\n      AggregateError,\n      once(callback) {\n        let called = !1;\n        return function(...args) {\n          if (called)\n            return;\n          called = !0, callback.apply(this, args);\n        };\n      },\n      createDeferredPromise: function() {\n        let resolve, reject;\n        return {\n          promise: new Promise((res, rej) => {\n            resolve = res, reject = rej;\n          }),\n          resolve,\n          reject\n        };\n      },\n      promisify(fn) {\n        return new Promise((resolve, reject) => {\n          fn((err, ...args) => {\n            if (err)\n              return reject(err);\n            return resolve(...args);\n          });\n        });\n      },\n      debuglog() {\n        return function() {\n        };\n      },\n      format(format, ...args) {\n        return format.replace(/%([sdifj])/g, function(...[_unused, type]) {\n          const replacement = args.shift();\n          if (type === \"f\")\n            return replacement.toFixed(6);\n          else if (type === \"j\")\n            return JSON.stringify(replacement);\n          else if (type === \"s\" && typeof replacement === \"object\")\n            return `${replacement.constructor !== Object \? replacement.constructor.name : \"\"} {}`.trim();\n          else\n            return replacement.toString();\n        });\n      },\n      inspect(value) {\n        switch (typeof value) {\n          case \"string\":\n            if (value.includes(\"'\")) {\n              if (!value.includes('\"'))\n                return `\"${value}\"`;\n              else if (!value.includes(\"`\") && !value.includes(\"${\"))\n                return `\\`${value}\\``;\n            }\n            return `'${value}'`;\n          case \"number\":\n            if (isNaN(value))\n              return \"NaN\";\n            else if (Object.is(value, -0))\n              return String(value);\n            return value;\n          case \"bigint\":\n            return `${String(value)}n`;\n          case \"boolean\":\n          case \"undefined\":\n            return String(value);\n          case \"object\":\n            return \"{}\";\n        }\n      },\n      types: {\n        isAsyncFunction(fn) {\n          return fn instanceof AsyncFunction;\n        },\n        isArrayBufferView(arr) {\n          return ArrayBuffer.isView(arr);\n        }\n      },\n      isBlob\n    }, module.exports.promisify.custom = Symbol.for(\"nodejs.util.promisify.custom\");\n  }\n}), require_errors = __commonJS({\n  \"node_modules/readable-stream/lib/ours/errors.js\"(exports, module) {\n    var { format, inspect: inspect2 } = require_util(), AggregateError2 = globalThis.AggregateError, kIsNodeError = Symbol(\"kIsNodeError\"), kTypes = [\"string\", \"function\", \"number\", \"object\", \"Function\", \"Object\", \"boolean\", \"bigint\", \"symbol\"], classRegExp = /^([A-Z][a-z0-9]*)+$/, nodeInternalPrefix = \"__node_internal_\", codes = {};\n    function assert(value, message) {\n      if (!value)\n        throw new codes.ERR_INTERNAL_ASSERTION(message);\n    }\n    function addNumericalSeparator(val) {\n      let res = \"\", i = val.length;\n      const start = val[0] === \"-\" \? 1 : 0;\n      for (;i >= start + 4; i -= 3)\n        res = `_${val.slice(i - 3, i)}${res}`;\n      return `${val.slice(0, i)}${res}`;\n    }\n    function getMessage(key, msg, args) {\n      if (typeof msg === \"function\")\n        return assert(msg.length <= args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${msg.length}).`), msg(...args);\n      const expectedLength = (msg.match(/%[dfijoOs]/g) || []).length;\n      if (assert(expectedLength === args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${expectedLength}).`), args.length === 0)\n        return msg;\n      return format(msg, ...args);\n    }\n    function E(code, message, Base) {\n      if (!Base)\n        Base = Error;\n\n      class NodeError extends Base {\n        constructor(...args) {\n          super(getMessage(code, message, args));\n        }\n        toString() {\n          return `${this.name} [${code}]: ${this.message}`;\n        }\n      }\n      Object.defineProperties(NodeError.prototype, {\n        name: {\n          value: Base.name,\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        },\n        toString: {\n          value() {\n            return `${this.name} [${code}]: ${this.message}`;\n          },\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        }\n      }), NodeError.prototype.code = code, NodeError.prototype[kIsNodeError] = !0, codes[code] = NodeError;\n    }\n    function hideStackFrames(fn) {\n      const hidden = nodeInternalPrefix + fn.name;\n      return Object.defineProperty(fn, \"name\", {\n        value: hidden\n      }), fn;\n    }\n    function aggregateTwoErrors(innerError, outerError) {\n      if (innerError && outerError && innerError !== outerError) {\n        if (Array.isArray(outerError.errors))\n          return outerError.errors.push(innerError), outerError;\n        const err = new AggregateError2([outerError, innerError], outerError.message);\n        return err.code = outerError.code, err;\n      }\n      return innerError || outerError;\n    }\n    var AbortError2 = class extends Error {\n      constructor(message = \"The operation was aborted\", options = void 0) {\n        if (options !== void 0 && typeof options !== \"object\")\n          throw new codes.ERR_INVALID_ARG_TYPE(\"options\", \"Object\", options);\n        super(message, options);\n        this.code = \"ABORT_ERR\", this.name = \"AbortError\";\n      }\n    };\n    E(\"ERR_ASSERTION\", \"%s\", Error), E(\"ERR_INVALID_ARG_TYPE\", (name, expected, actual) => {\n      if (assert(typeof name === \"string\", \"'name' must be a string\"), !Array.isArray(expected))\n        expected = [expected];\n      let msg = \"The \";\n      if (name.endsWith(\" argument\"))\n        msg += `${name} `;\n      else\n        msg += `\"${name}\" ${name.includes(\".\") \? \"property\" : \"argument\"} `;\n      msg += \"must be \";\n      const types = [], instances = [], other = [];\n      for (let value of expected)\n        if (assert(typeof value === \"string\", \"All expected entries have to be of type string\"), kTypes.includes(value))\n          types.push(value.toLowerCase());\n        else if (classRegExp.test(value))\n          instances.push(value);\n        else\n          assert(value !== \"object\", 'The value \"object\" should be written as \"Object\"'), other.push(value);\n      if (instances.length > 0) {\n        const pos = types.indexOf(\"object\");\n        if (pos !== -1)\n          types.splice(types, pos, 1), instances.push(\"Object\");\n      }\n      if (types.length > 0) {\n        switch (types.length) {\n          case 1:\n            msg += `of type ${types[0]}`;\n            break;\n          case 2:\n            msg += `one of type ${types[0]} or ${types[1]}`;\n            break;\n          default: {\n            const last = types.pop();\n            msg += `one of type ${types.join(\", \")}, or ${last}`;\n          }\n        }\n        if (instances.length > 0 || other.length > 0)\n          msg += \" or \";\n      }\n      if (instances.length > 0) {\n        switch (instances.length) {\n          case 1:\n            msg += `an instance of ${instances[0]}`;\n            break;\n          case 2:\n            msg += `an instance of ${instances[0]} or ${instances[1]}`;\n            break;\n          default: {\n            const last = instances.pop();\n            msg += `an instance of ${instances.join(\", \")}, or ${last}`;\n          }\n        }\n        if (other.length > 0)\n          msg += \" or \";\n      }\n      switch (other.length) {\n        case 0:\n          break;\n        case 1:\n          if (other[0].toLowerCase() !== other[0])\n            msg += \"an \";\n          msg += `${other[0]}`;\n          break;\n        case 2:\n          msg += `one of ${other[0]} or ${other[1]}`;\n          break;\n        default: {\n          const last = other.pop();\n          msg += `one of ${other.join(\", \")}, or ${last}`;\n        }\n      }\n      if (actual == null)\n        msg += `. Received ${actual}`;\n      else if (typeof actual === \"function\" && actual.name)\n        msg += `. Received function ${actual.name}`;\n      else if (typeof actual === \"object\") {\n        var _actual$constructor;\n        if ((_actual$constructor = actual.constructor) !== null && _actual$constructor !== void 0 && _actual$constructor.name)\n          msg += `. Received an instance of ${actual.constructor.name}`;\n        else {\n          const inspected = inspect2(actual, {\n            depth: -1\n          });\n          msg += `. Received ${inspected}`;\n        }\n      } else {\n        let inspected = inspect2(actual, {\n          colors: !1\n        });\n        if (inspected.length > 25)\n          inspected = `${inspected.slice(0, 25)}...`;\n        msg += `. Received type ${typeof actual} (${inspected})`;\n      }\n      return msg;\n    }, TypeError), E(\"ERR_INVALID_ARG_VALUE\", (name, value, reason = \"is invalid\") => {\n      let inspected = inspect2(value);\n      if (inspected.length > 128)\n        inspected = inspected.slice(0, 128) + \"...\";\n      return `The ${name.includes(\".\") \? \"property\" : \"argument\"} '${name}' ${reason}. Received ${inspected}`;\n    }, TypeError), E(\"ERR_INVALID_RETURN_VALUE\", (input, name, value) => {\n      var _value$constructor;\n      const type = value !== null && value !== void 0 && (_value$constructor = value.constructor) !== null && _value$constructor !== void 0 && _value$constructor.name \? `instance of ${value.constructor.name}` : `type ${typeof value}`;\n      return `Expected ${input} to be returned from the \"${name}\" function but got ${type}.`;\n    }, TypeError), E(\"ERR_MISSING_ARGS\", (...args) => {\n      assert(args.length > 0, \"At least one arg needs to be specified\");\n      let msg;\n      const len = args.length;\n      switch (args = (Array.isArray(args) \? args : [args]).map((a) => `\"${a}\"`).join(\" or \"), len) {\n        case 1:\n          msg += `The ${args[0]} argument`;\n          break;\n        case 2:\n          msg += `The ${args[0]} and ${args[1]} arguments`;\n          break;\n        default:\n          {\n            const last = args.pop();\n            msg += `The ${args.join(\", \")}, and ${last} arguments`;\n          }\n          break;\n      }\n      return `${msg} must be specified`;\n    }, TypeError), E(\"ERR_OUT_OF_RANGE\", (str, range, input) => {\n      assert(range, 'Missing \"range\" argument');\n      let received;\n      if (Number.isInteger(input) && Math.abs(input) > 4294967296)\n        received = addNumericalSeparator(String(input));\n      else if (typeof input === \"bigint\") {\n        if (received = String(input), input > 2n ** 32n || input < -(2n ** 32n))\n          received = addNumericalSeparator(received);\n        received += \"n\";\n      } else\n        received = inspect2(input);\n      return `The value of \"${str}\" is out of range. It must be ${range}. Received ${received}`;\n    }, RangeError), E(\"ERR_MULTIPLE_CALLBACK\", \"Callback called multiple times\", Error), E(\"ERR_METHOD_NOT_IMPLEMENTED\", \"The %s method is not implemented\", Error), E(\"ERR_STREAM_ALREADY_FINISHED\", \"Cannot call %s after a stream was finished\", Error), E(\"ERR_STREAM_CANNOT_PIPE\", \"Cannot pipe, not readable\", Error), E(\"ERR_STREAM_DESTROYED\", \"Cannot call %s after a stream was destroyed\", Error), E(\"ERR_STREAM_NULL_VALUES\", \"May not write null values to stream\", TypeError), E(\"ERR_STREAM_PREMATURE_CLOSE\", \"Premature close\", Error), E(\"ERR_STREAM_PUSH_AFTER_EOF\", \"stream.push() after EOF\", Error), E(\"ERR_STREAM_UNSHIFT_AFTER_END_EVENT\", \"stream.unshift() after end event\", Error), E(\"ERR_STREAM_WRITE_AFTER_END\", \"write after end\", Error), E(\"ERR_UNKNOWN_ENCODING\", \"Unknown encoding: %s\", TypeError), module.exports = {\n      AbortError: AbortError2,\n      aggregateTwoErrors: hideStackFrames(aggregateTwoErrors),\n      hideStackFrames,\n      codes\n    };\n  }\n}), require_validators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/validators.js\"(exports, module) {\n    var {\n      ArrayIsArray,\n      ArrayPrototypeIncludes,\n      ArrayPrototypeJoin,\n      ArrayPrototypeMap,\n      NumberIsInteger,\n      NumberMAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER,\n      NumberParseInt,\n      RegExpPrototypeTest,\n      String: String2,\n      StringPrototypeToUpperCase,\n      StringPrototypeTrim\n    } = require_primordials(), {\n      hideStackFrames,\n      codes: { ERR_SOCKET_BAD_PORT, ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_OUT_OF_RANGE, ERR_UNKNOWN_SIGNAL }\n    } = require_errors(), { normalizeEncoding } = require_util(), { isAsyncFunction, isArrayBufferView } = require_util().types, signals = {};\n    function isInt32(value) {\n      return value === (value | 0);\n    }\n    function isUint32(value) {\n      return value === value >>> 0;\n    }\n    var octalReg = /^[0-7]+$/, modeDesc = \"must be a 32-bit unsigned integer or an octal string\";\n    function parseFileMode(value, name, def) {\n      if (typeof value === \"undefined\")\n        value = def;\n      if (typeof value === \"string\") {\n        if (!RegExpPrototypeTest(octalReg, value))\n          throw new ERR_INVALID_ARG_VALUE2(name, value, modeDesc);\n        value = NumberParseInt(value, 8);\n      }\n      return validateInt32(value, name, 0, 4294967295), value;\n    }\n    var validateInteger = hideStackFrames((value, name, min = NumberMIN_SAFE_INTEGER, max = NumberMAX_SAFE_INTEGER) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!NumberIsInteger(value))\n        throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateInt32 = hideStackFrames((value, name, min = -2147483648, max = 2147483647) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isInt32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n      }\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateUint32 = hideStackFrames((value, name, positive) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isUint32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${positive \? 1 : 0} && < 4294967296`, value);\n      }\n      if (positive && value === 0)\n        throw new ERR_OUT_OF_RANGE(name, \">= 1 && < 4294967296\", value);\n    });\n    function validateString(value, name) {\n      if (typeof value !== \"string\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"string\", value);\n    }\n    function validateNumber(value, name) {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n    }\n    var validateOneOf = hideStackFrames((value, name, oneOf) => {\n      if (!ArrayPrototypeIncludes(oneOf, value)) {\n        const reason = \"must be one of: \" + ArrayPrototypeJoin(ArrayPrototypeMap(oneOf, (v) => typeof v === \"string\" \? `'${v}'` : String2(v)), \", \");\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateBoolean2(value, name) {\n      if (typeof value !== \"boolean\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"boolean\", value);\n    }\n    var validateObject = hideStackFrames((value, name, options) => {\n      const useDefaultOptions = options == null, allowArray = useDefaultOptions \? !1 : options.allowArray, allowFunction = useDefaultOptions \? !1 : options.allowFunction;\n      if (!(useDefaultOptions \? !1 : options.nullable) && value === null || !allowArray && ArrayIsArray(value) || typeof value !== \"object\" && (!allowFunction || typeof value !== \"function\"))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Object\", value);\n    }), validateArray = hideStackFrames((value, name, minLength = 0) => {\n      if (!ArrayIsArray(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Array\", value);\n      if (value.length < minLength) {\n        const reason = `must be longer than ${minLength}`;\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateSignalName(signal, name = \"signal\") {\n      if (validateString(signal, name), signals[signal] === void 0) {\n        if (signals[StringPrototypeToUpperCase(signal)] !== void 0)\n          throw new ERR_UNKNOWN_SIGNAL(signal + \" (signals must use all capital letters)\");\n        throw new ERR_UNKNOWN_SIGNAL(signal);\n      }\n    }\n    var validateBuffer = hideStackFrames((buffer, name = \"buffer\") => {\n      if (!isArrayBufferView(buffer))\n        throw new ERR_INVALID_ARG_TYPE2(name, [\"Buffer\", \"TypedArray\", \"DataView\"], buffer);\n    });\n    function validateEncoding(data, encoding) {\n      const normalizedEncoding = normalizeEncoding(encoding), length = data.length;\n      if (normalizedEncoding === \"hex\" && length % 2 !== 0)\n        throw new ERR_INVALID_ARG_VALUE2(\"encoding\", encoding, `is invalid for data of length ${length}`);\n    }\n    function validatePort(port, name = \"Port\", allowZero = !0) {\n      if (typeof port !== \"number\" && typeof port !== \"string\" || typeof port === \"string\" && StringPrototypeTrim(port).length === 0 || +port !== +port >>> 0 || port > 65535 || port === 0 && !allowZero)\n        throw new ERR_SOCKET_BAD_PORT(name, port, allowZero);\n      return port | 0;\n    }\n    var validateAbortSignal = hideStackFrames((signal, name) => {\n      if (signal !== void 0 && (signal === null || typeof signal !== \"object\" || !(\"aborted\" in signal)))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    }), validateFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validatePlainFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\" || isAsyncFunction(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validateUndefined = hideStackFrames((value, name) => {\n      if (value !== void 0)\n        throw new ERR_INVALID_ARG_TYPE2(name, \"undefined\", value);\n    });\n    module.exports = {\n      isInt32,\n      isUint32,\n      parseFileMode,\n      validateArray,\n      validateBoolean: validateBoolean2,\n      validateBuffer,\n      validateEncoding,\n      validateFunction,\n      validateInt32,\n      validateInteger,\n      validateNumber,\n      validateObject,\n      validateOneOf,\n      validatePlainFunction,\n      validatePort,\n      validateSignalName,\n      validateString,\n      validateUint32,\n      validateUndefined,\n      validateAbortSignal\n    };\n  }\n}), require_utils = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/utils.js\"(exports, module) {\n    var { Symbol: Symbol2, SymbolAsyncIterator, SymbolIterator } = require_primordials(), kDestroyed = Symbol2(\"kDestroyed\"), kIsErrored = Symbol2(\"kIsErrored\"), kIsReadable = Symbol2(\"kIsReadable\"), kIsDisturbed = Symbol2(\"kIsDisturbed\");\n    function isReadableNodeStream(obj, strict = !1) {\n      var _obj$_readableState;\n      return !!(obj && typeof obj.pipe === \"function\" && typeof obj.on === \"function\" && (!strict || typeof obj.pause === \"function\" && typeof obj.resume === \"function\") && (!obj._writableState || ((_obj$_readableState = obj._readableState) === null || _obj$_readableState === void 0 \? void 0 : _obj$_readableState.readable) !== !1) && (!obj._writableState || obj._readableState));\n    }\n    function isWritableNodeStream(obj) {\n      var _obj$_writableState;\n      return !!(obj && typeof obj.write === \"function\" && typeof obj.on === \"function\" && (!obj._readableState || ((_obj$_writableState = obj._writableState) === null || _obj$_writableState === void 0 \? void 0 : _obj$_writableState.writable) !== !1));\n    }\n    function isDuplexNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\" && obj._readableState && typeof obj.on === \"function\" && typeof obj.write === \"function\");\n    }\n    function isNodeStream(obj) {\n      return obj && (obj._readableState || obj._writableState || typeof obj.write === \"function\" && typeof obj.on === \"function\" || typeof obj.pipe === \"function\" && typeof obj.on === \"function\");\n    }\n    function isIterable(obj, isAsync) {\n      if (obj == null)\n        return !1;\n      if (isAsync === !0)\n        return typeof obj[SymbolAsyncIterator] === \"function\";\n      if (isAsync === !1)\n        return typeof obj[SymbolIterator] === \"function\";\n      return typeof obj[SymbolAsyncIterator] === \"function\" || typeof obj[SymbolIterator] === \"function\";\n    }\n    function isDestroyed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !!(stream.destroyed || stream[kDestroyed] || state !== null && state !== void 0 && state.destroyed);\n    }\n    function isWritableEnded(stream) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableEnded === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.ended) !== \"boolean\")\n        return null;\n      return wState.ended;\n    }\n    function isWritableFinished(stream, strict) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableFinished === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.finished) !== \"boolean\")\n        return null;\n      return !!(wState.finished || strict === !1 && wState.ended === !0 && wState.length === 0);\n    }\n    function isReadableEnded(stream) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      if (stream.readableEnded === !0)\n        return !0;\n      const rState = stream._readableState;\n      if (!rState || rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.ended) !== \"boolean\")\n        return null;\n      return rState.ended;\n    }\n    function isReadableFinished(stream, strict) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      const rState = stream._readableState;\n      if (rState !== null && rState !== void 0 && rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.endEmitted) !== \"boolean\")\n        return null;\n      return !!(rState.endEmitted || strict === !1 && rState.ended === !0 && rState.length === 0);\n    }\n    function isReadable(stream) {\n      if (stream && stream[kIsReadable] != null)\n        return stream[kIsReadable];\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.readable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isReadableNodeStream(stream) && stream.readable && !isReadableFinished(stream);\n    }\n    function isWritable(stream) {\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.writable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isWritableNodeStream(stream) && stream.writable && !isWritableEnded(stream);\n    }\n    function isFinished(stream, opts) {\n      if (!isNodeStream(stream))\n        return null;\n      if (isDestroyed(stream))\n        return !0;\n      if ((opts === null || opts === void 0 \? void 0 : opts.readable) !== !1 && isReadable(stream))\n        return !1;\n      if ((opts === null || opts === void 0 \? void 0 : opts.writable) !== !1 && isWritable(stream))\n        return !1;\n      return !0;\n    }\n    function isWritableErrored(stream) {\n      var _stream$_writableStat, _stream$_writableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.writableErrored)\n        return stream.writableErrored;\n      return (_stream$_writableStat = (_stream$_writableStat2 = stream._writableState) === null || _stream$_writableStat2 === void 0 \? void 0 : _stream$_writableStat2.errored) !== null && _stream$_writableStat !== void 0 \? _stream$_writableStat : null;\n    }\n    function isReadableErrored(stream) {\n      var _stream$_readableStat, _stream$_readableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.readableErrored)\n        return stream.readableErrored;\n      return (_stream$_readableStat = (_stream$_readableStat2 = stream._readableState) === null || _stream$_readableStat2 === void 0 \? void 0 : _stream$_readableStat2.errored) !== null && _stream$_readableStat !== void 0 \? _stream$_readableStat : null;\n    }\n    function isClosed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      if (typeof stream.closed === \"boolean\")\n        return stream.closed;\n      const { _writableState: wState, _readableState: rState } = stream;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.closed) === \"boolean\" || typeof (rState === null || rState === void 0 \? void 0 : rState.closed) === \"boolean\")\n        return (wState === null || wState === void 0 \? void 0 : wState.closed) || (rState === null || rState === void 0 \? void 0 : rState.closed);\n      if (typeof stream._closed === \"boolean\" && isOutgoingMessage(stream))\n        return stream._closed;\n      return null;\n    }\n    function isOutgoingMessage(stream) {\n      return typeof stream._closed === \"boolean\" && typeof stream._defaultKeepAlive === \"boolean\" && typeof stream._removedConnection === \"boolean\" && typeof stream._removedContLen === \"boolean\";\n    }\n    function isServerResponse(stream) {\n      return typeof stream._sent100 === \"boolean\" && isOutgoingMessage(stream);\n    }\n    function isServerRequest(stream) {\n      var _stream$req;\n      return typeof stream._consuming === \"boolean\" && typeof stream._dumped === \"boolean\" && ((_stream$req = stream.req) === null || _stream$req === void 0 \? void 0 : _stream$req.upgradeOrConnect) === void 0;\n    }\n    function willEmitClose(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !state && isServerResponse(stream) || !!(state && state.autoDestroy && state.emitClose && state.closed === !1);\n    }\n    function isDisturbed(stream) {\n      var _stream$kIsDisturbed;\n      return !!(stream && ((_stream$kIsDisturbed = stream[kIsDisturbed]) !== null && _stream$kIsDisturbed !== void 0 \? _stream$kIsDisturbed : stream.readableDidRead || stream.readableAborted));\n    }\n    function isErrored(stream) {\n      var _ref, _ref2, _ref3, _ref4, _ref5, _stream$kIsErrored, _stream$_readableStat3, _stream$_writableStat3, _stream$_readableStat4, _stream$_writableStat4;\n      return !!(stream && ((_ref = (_ref2 = (_ref3 = (_ref4 = (_ref5 = (_stream$kIsErrored = stream[kIsErrored]) !== null && _stream$kIsErrored !== void 0 \? _stream$kIsErrored : stream.readableErrored) !== null && _ref5 !== void 0 \? _ref5 : stream.writableErrored) !== null && _ref4 !== void 0 \? _ref4 : (_stream$_readableStat3 = stream._readableState) === null || _stream$_readableStat3 === void 0 \? void 0 : _stream$_readableStat3.errorEmitted) !== null && _ref3 !== void 0 \? _ref3 : (_stream$_writableStat3 = stream._writableState) === null || _stream$_writableStat3 === void 0 \? void 0 : _stream$_writableStat3.errorEmitted) !== null && _ref2 !== void 0 \? _ref2 : (_stream$_readableStat4 = stream._readableState) === null || _stream$_readableStat4 === void 0 \? void 0 : _stream$_readableStat4.errored) !== null && _ref !== void 0 \? _ref : (_stream$_writableStat4 = stream._writableState) === null || _stream$_writableStat4 === void 0 \? void 0 : _stream$_writableStat4.errored));\n    }\n    module.exports = {\n      kDestroyed,\n      isDisturbed,\n      kIsDisturbed,\n      isErrored,\n      kIsErrored,\n      isReadable,\n      kIsReadable,\n      isClosed,\n      isDestroyed,\n      isDuplexNodeStream,\n      isFinished,\n      isIterable,\n      isReadableNodeStream,\n      isReadableEnded,\n      isReadableFinished,\n      isReadableErrored,\n      isNodeStream,\n      isWritable,\n      isWritableNodeStream,\n      isWritableEnded,\n      isWritableFinished,\n      isWritableErrored,\n      isServerRequest,\n      isServerResponse,\n      willEmitClose\n    };\n  }\n}), require_end_of_stream = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/end-of-stream.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_PREMATURE_CLOSE } = codes, { once } = require_util(), { validateAbortSignal, validateFunction, validateObject } = require_validators(), { Promise: Promise2 } = require_primordials(), {\n      isClosed,\n      isReadable,\n      isReadableNodeStream,\n      isReadableFinished,\n      isReadableErrored,\n      isWritable,\n      isWritableNodeStream,\n      isWritableFinished,\n      isWritableErrored,\n      isNodeStream,\n      willEmitClose: _willEmitClose\n    } = require_utils();\n    function isRequest(stream) {\n      return stream.setHeader && typeof stream.abort === \"function\";\n    }\n    var nop = () => {\n    };\n    function eos(stream, options, callback) {\n      var _options$readable, _options$writable;\n      if (arguments.length === 2)\n        callback = options, options = {};\n      else if (options == null)\n        options = {};\n      else\n        validateObject(options, \"options\");\n      validateFunction(callback, \"callback\"), validateAbortSignal(options.signal, \"options.signal\"), callback = once(callback);\n      const readable = (_options$readable = options.readable) !== null && _options$readable !== void 0 \? _options$readable : isReadableNodeStream(stream), writable = (_options$writable = options.writable) !== null && _options$writable !== void 0 \? _options$writable : isWritableNodeStream(stream);\n      if (!isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"Stream\", stream);\n      const { _writableState: wState, _readableState: rState } = stream, onlegacyfinish = () => {\n        if (!stream.writable)\n          onfinish();\n      };\n      let willEmitClose = _willEmitClose(stream) && isReadableNodeStream(stream) === readable && isWritableNodeStream(stream) === writable, writableFinished = isWritableFinished(stream, !1);\n      const onfinish = () => {\n        if (writableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.readable || readable))\n          return;\n        if (!readable || readableFinished)\n          callback.call(stream);\n      };\n      let readableFinished = isReadableFinished(stream, !1);\n      const onend = () => {\n        if (readableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.writable || writable))\n          return;\n        if (!writable || writableFinished)\n          callback.call(stream);\n      }, onerror = (err) => {\n        callback.call(stream, err);\n      };\n      let closed = isClosed(stream);\n      const onclose = () => {\n        closed = !0;\n        const errored = isWritableErrored(stream) || isReadableErrored(stream);\n        if (errored && typeof errored !== \"boolean\")\n          return callback.call(stream, errored);\n        if (readable && !readableFinished && isReadableNodeStream(stream, !0)) {\n          if (!isReadableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        if (writable && !writableFinished) {\n          if (!isWritableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        callback.call(stream);\n      }, onrequest = () => {\n        stream.req.on(\"finish\", onfinish);\n      };\n      if (isRequest(stream)) {\n        if (stream.on(\"complete\", onfinish), !willEmitClose)\n          stream.on(\"abort\", onclose);\n        if (stream.req)\n          onrequest();\n        else\n          stream.on(\"request\", onrequest);\n      } else if (writable && !wState)\n        stream.on(\"end\", onlegacyfinish), stream.on(\"close\", onlegacyfinish);\n      if (!willEmitClose && typeof stream.aborted === \"boolean\")\n        stream.on(\"aborted\", onclose);\n      if (stream.on(\"end\", onend), stream.on(\"finish\", onfinish), options.error !== !1)\n        stream.on(\"error\", onerror);\n      if (stream.on(\"close\", onclose), closed)\n        runOnNextTick(onclose);\n      else if (wState !== null && wState !== void 0 && wState.errorEmitted || rState !== null && rState !== void 0 && rState.errorEmitted) {\n        if (!willEmitClose)\n          runOnNextTick(onclose);\n      } else if (!readable && (!willEmitClose || isReadable(stream)) && (writableFinished || isWritable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (!writable && (!willEmitClose || isWritable(stream)) && (readableFinished || isReadable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (rState && stream.req && stream.aborted)\n        runOnNextTick(onclose);\n      const cleanup = () => {\n        if (callback = nop, stream.removeListener(\"aborted\", onclose), stream.removeListener(\"complete\", onfinish), stream.removeListener(\"abort\", onclose), stream.removeListener(\"request\", onrequest), stream.req)\n          stream.req.removeListener(\"finish\", onfinish);\n        stream.removeListener(\"end\", onlegacyfinish), stream.removeListener(\"close\", onlegacyfinish), stream.removeListener(\"finish\", onfinish), stream.removeListener(\"end\", onend), stream.removeListener(\"error\", onerror), stream.removeListener(\"close\", onclose);\n      };\n      if (options.signal && !closed) {\n        const abort = () => {\n          const endCallback = callback;\n          cleanup(), endCallback.call(stream, new AbortError2(void 0, {\n            cause: options.signal.reason\n          }));\n        };\n        if (options.signal.aborted)\n          runOnNextTick(abort);\n        else {\n          const originalCallback = callback;\n          callback = once((...args) => {\n            options.signal.removeEventListener(\"abort\", abort), originalCallback.apply(stream, args);\n          }), options.signal.addEventListener(\"abort\", abort);\n        }\n      }\n      return cleanup;\n    }\n    function finished(stream, opts) {\n      return new Promise2((resolve, reject) => {\n        eos(stream, opts, (err) => {\n          if (err)\n            reject(err);\n          else\n            resolve();\n        });\n      });\n    }\n    module.exports = eos, module.exports.finished = finished;\n  }\n}), require_operators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/operators.js\"(exports, module) {\n    var {\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_MISSING_ARGS, ERR_OUT_OF_RANGE },\n      AbortError: AbortError2\n    } = require_errors(), { validateAbortSignal, validateInteger, validateObject } = require_validators(), kWeakHandler = require_primordials().Symbol(\"kWeak\"), { finished } = require_end_of_stream(), {\n      ArrayPrototypePush,\n      MathFloor,\n      Number: Number2,\n      NumberIsNaN,\n      Promise: Promise2,\n      PromiseReject,\n      PromisePrototypeCatch,\n      Symbol: Symbol2\n    } = require_primordials(), kEmpty = Symbol2(\"kEmpty\"), kEof = Symbol2(\"kEof\");\n    function map(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let concurrency = 1;\n      if ((options === null || options === void 0 \? void 0 : options.concurrency) != null)\n        concurrency = MathFloor(options.concurrency);\n      return validateInteger(concurrency, \"concurrency\", 1), async function* map2() {\n        var _options$signal, _options$signal2;\n        const ac = new AbortController, stream = this, queue = [], signal = ac.signal, signalOpt = {\n          signal\n        }, abort = () => ac.abort();\n        if (options !== null && options !== void 0 && (_options$signal = options.signal) !== null && _options$signal !== void 0 && _options$signal.aborted)\n          abort();\n        options === null || options === void 0 || (_options$signal2 = options.signal) === null || _options$signal2 === void 0 || _options$signal2.addEventListener(\"abort\", abort);\n        let next, resume, done = !1;\n        function onDone() {\n          done = !0;\n        }\n        async function pump() {\n          try {\n            for await (let val of stream) {\n              var _val;\n              if (done)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              try {\n                val = fn(val, signalOpt);\n              } catch (err) {\n                val = PromiseReject(err);\n              }\n              if (val === kEmpty)\n                continue;\n              if (typeof ((_val = val) === null || _val === void 0 \? void 0 : _val.catch) === \"function\")\n                val.catch(onDone);\n              if (queue.push(val), next)\n                next(), next = null;\n              if (!done && queue.length && queue.length >= concurrency)\n                await new Promise2((resolve) => {\n                  resume = resolve;\n                });\n            }\n            queue.push(kEof);\n          } catch (err) {\n            const val = PromiseReject(err);\n            PromisePrototypeCatch(val, onDone), queue.push(val);\n          } finally {\n            var _options$signal3;\n            if (done = !0, next)\n              next(), next = null;\n            options === null || options === void 0 || (_options$signal3 = options.signal) === null || _options$signal3 === void 0 || _options$signal3.removeEventListener(\"abort\", abort);\n          }\n        }\n        pump();\n        try {\n          while (!0) {\n            while (queue.length > 0) {\n              const val = await queue[0];\n              if (val === kEof)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              if (val !== kEmpty)\n                yield val;\n              if (queue.shift(), resume)\n                resume(), resume = null;\n            }\n            await new Promise2((resolve) => {\n              next = resolve;\n            });\n          }\n        } finally {\n          if (ac.abort(), done = !0, resume)\n            resume(), resume = null;\n        }\n      }.call(this);\n    }\n    function asIndexedPairs(options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return async function* asIndexedPairs2() {\n        let index = 0;\n        for await (let val of this) {\n          var _options$signal4;\n          if (options !== null && options !== void 0 && (_options$signal4 = options.signal) !== null && _options$signal4 !== void 0 && _options$signal4.aborted)\n            throw new AbortError2({\n              cause: options.signal.reason\n            });\n          yield [index++, val];\n        }\n      }.call(this);\n    }\n    async function some(fn, options = void 0) {\n      for await (let unused of filter.call(this, fn, options))\n        return !0;\n      return !1;\n    }\n    async function every(fn, options = void 0) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      return !await some.call(this, async (...args) => {\n        return !await fn(...args);\n      }, options);\n    }\n    async function find(fn, options) {\n      for await (let result of filter.call(this, fn, options))\n        return result;\n      return;\n    }\n    async function forEach(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function forEachFn(value, options2) {\n        return await fn(value, options2), kEmpty;\n      }\n      for await (let unused of map.call(this, forEachFn, options))\n        ;\n    }\n    function filter(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function filterFn(value, options2) {\n        if (await fn(value, options2))\n          return value;\n        return kEmpty;\n      }\n      return map.call(this, filterFn, options);\n    }\n    var ReduceAwareErrMissingArgs = class extends ERR_MISSING_ARGS {\n      constructor() {\n        super(\"reduce\");\n        this.message = \"Reduce of an empty stream requires an initial value\";\n      }\n    };\n    async function reduce(reducer, initialValue, options) {\n      var _options$signal5;\n      if (typeof reducer !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"reducer\", [\"Function\", \"AsyncFunction\"], reducer);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let hasInitialValue = arguments.length > 1;\n      if (options !== null && options !== void 0 && (_options$signal5 = options.signal) !== null && _options$signal5 !== void 0 && _options$signal5.aborted) {\n        const err = new AbortError2(void 0, {\n          cause: options.signal.reason\n        });\n        throw this.once(\"error\", () => {\n        }), await finished(this.destroy(err)), err;\n      }\n      const ac = new AbortController, signal = ac.signal;\n      if (options !== null && options !== void 0 && options.signal) {\n        const opts = {\n          once: !0,\n          [kWeakHandler]: this\n        };\n        options.signal.addEventListener(\"abort\", () => ac.abort(), opts);\n      }\n      let gotAnyItemFromStream = !1;\n      try {\n        for await (let value of this) {\n          var _options$signal6;\n          if (gotAnyItemFromStream = !0, options !== null && options !== void 0 && (_options$signal6 = options.signal) !== null && _options$signal6 !== void 0 && _options$signal6.aborted)\n            throw new AbortError2;\n          if (!hasInitialValue)\n            initialValue = value, hasInitialValue = !0;\n          else\n            initialValue = await reducer(initialValue, value, {\n              signal\n            });\n        }\n        if (!gotAnyItemFromStream && !hasInitialValue)\n          throw new ReduceAwareErrMissingArgs;\n      } finally {\n        ac.abort();\n      }\n      return initialValue;\n    }\n    async function toArray(options) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      const result = [];\n      for await (let val of this) {\n        var _options$signal7;\n        if (options !== null && options !== void 0 && (_options$signal7 = options.signal) !== null && _options$signal7 !== void 0 && _options$signal7.aborted)\n          throw new AbortError2(void 0, {\n            cause: options.signal.reason\n          });\n        ArrayPrototypePush(result, val);\n      }\n      return result;\n    }\n    function flatMap(fn, options) {\n      const values = map.call(this, fn, options);\n      return async function* flatMap2() {\n        for await (let val of values)\n          yield* val;\n      }.call(this);\n    }\n    function toIntegerOrInfinity(number) {\n      if (number = Number2(number), NumberIsNaN(number))\n        return 0;\n      if (number < 0)\n        throw new ERR_OUT_OF_RANGE(\"number\", \">= 0\", number);\n      return number;\n    }\n    function drop(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* drop2() {\n        var _options$signal8;\n        if (options !== null && options !== void 0 && (_options$signal8 = options.signal) !== null && _options$signal8 !== void 0 && _options$signal8.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal9;\n          if (options !== null && options !== void 0 && (_options$signal9 = options.signal) !== null && _options$signal9 !== void 0 && _options$signal9.aborted)\n            throw new AbortError2;\n          if (number-- <= 0)\n            yield val;\n        }\n      }.call(this);\n    }\n    function take(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* take2() {\n        var _options$signal10;\n        if (options !== null && options !== void 0 && (_options$signal10 = options.signal) !== null && _options$signal10 !== void 0 && _options$signal10.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal11;\n          if (options !== null && options !== void 0 && (_options$signal11 = options.signal) !== null && _options$signal11 !== void 0 && _options$signal11.aborted)\n            throw new AbortError2;\n          if (number-- > 0)\n            yield val;\n          else\n            return;\n        }\n      }.call(this);\n    }\n    module.exports.streamReturningOperators = {\n      asIndexedPairs,\n      drop,\n      filter,\n      flatMap,\n      map,\n      take\n    }, module.exports.promiseReturningOperators = {\n      every,\n      forEach,\n      reduce,\n      toArray,\n      some,\n      find\n    };\n  }\n}), require_destroy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/destroy.js\"(exports, module) {\n    var {\n      aggregateTwoErrors,\n      codes: { ERR_MULTIPLE_CALLBACK },\n      AbortError: AbortError2\n    } = require_errors(), { Symbol: Symbol2 } = require_primordials(), { kDestroyed, isDestroyed, isFinished, isServerRequest } = require_utils(), kDestroy = \"#kDestroy\", kConstruct = \"#kConstruct\";\n    function checkError(err, w, r) {\n      if (err) {\n        if (err.stack, w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n      }\n    }\n    function destroy2(err, cb) {\n      const r = this._readableState, w = this._writableState, s = w || r;\n      if (w && w.destroyed || r && r.destroyed) {\n        if (typeof cb === \"function\")\n          cb();\n        return this;\n      }\n      if (checkError(err, w, r), w)\n        w.destroyed = !0;\n      if (r)\n        r.destroyed = !0;\n      if (!s.constructed)\n        this.once(kDestroy, (er) => {\n          _destroy(this, aggregateTwoErrors(er, err), cb);\n        });\n      else\n        _destroy(this, err, cb);\n      return this;\n    }\n    function _destroy(self, err, cb) {\n      let called = !1;\n      function onDestroy(err2) {\n        if (called)\n          return;\n        called = !0;\n        const { _readableState: r, _writableState: w } = self;\n        if (checkError(err2, w, r), w)\n          w.closed = !0;\n        if (r)\n          r.closed = !0;\n        if (typeof cb === \"function\")\n          cb(err2);\n        if (err2)\n          runOnNextTick(emitErrorCloseNT, self, err2);\n        else\n          runOnNextTick(emitCloseNT, self);\n      }\n      try {\n        self._destroy(err || null, onDestroy);\n      } catch (err2) {\n        onDestroy(err2);\n      }\n    }\n    function emitErrorCloseNT(self, err) {\n      emitErrorNT(self, err), emitCloseNT(self);\n    }\n    function emitCloseNT(self) {\n      const { _readableState: r, _writableState: w } = self;\n      if (w)\n        w.closeEmitted = !0;\n      if (r)\n        r.closeEmitted = !0;\n      if (w && w.emitClose || r && r.emitClose)\n        self.emit(\"close\");\n    }\n    function emitErrorNT(self, err) {\n      const r = self\?._readableState, w = self\?._writableState;\n      if (w\?.errorEmitted || r\?.errorEmitted)\n        return;\n      if (w)\n        w.errorEmitted = !0;\n      if (r)\n        r.errorEmitted = !0;\n      self\?.emit\?.(\"error\", err);\n    }\n    function undestroy() {\n      const r = this._readableState, w = this._writableState;\n      if (r)\n        r.constructed = !0, r.closed = !1, r.closeEmitted = !1, r.destroyed = !1, r.errored = null, r.errorEmitted = !1, r.reading = !1, r.ended = r.readable === !1, r.endEmitted = r.readable === !1;\n      if (w)\n        w.constructed = !0, w.destroyed = !1, w.closed = !1, w.closeEmitted = !1, w.errored = null, w.errorEmitted = !1, w.finalCalled = !1, w.prefinished = !1, w.ended = w.writable === !1, w.ending = w.writable === !1, w.finished = w.writable === !1;\n    }\n    function errorOrDestroy2(stream, err, sync) {\n      const r = stream\?._readableState, w = stream\?._writableState;\n      if (w && w.destroyed || r && r.destroyed)\n        return this;\n      if (r && r.autoDestroy || w && w.autoDestroy)\n        stream.destroy(err);\n      else if (err) {\n        if (Error.captureStackTrace(err), w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n        if (sync)\n          runOnNextTick(emitErrorNT, stream, err);\n        else\n          emitErrorNT(stream, err);\n      }\n    }\n    function construct(stream, cb) {\n      if (typeof stream._construct !== \"function\")\n        return;\n      const { _readableState: r, _writableState: w } = stream;\n      if (r)\n        r.constructed = !1;\n      if (w)\n        w.constructed = !1;\n      if (stream.once(kConstruct, cb), stream.listenerCount(kConstruct) > 1)\n        return;\n      runOnNextTick(constructNT, stream);\n    }\n    function constructNT(stream) {\n      let called = !1;\n      function onConstruct(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : new ERR_MULTIPLE_CALLBACK);\n          return;\n        }\n        called = !0;\n        const { _readableState: r, _writableState: w } = stream, s = w || r;\n        if (r)\n          r.constructed = !0;\n        if (w)\n          w.constructed = !0;\n        if (s.destroyed)\n          stream.emit(kDestroy, err);\n        else if (err)\n          errorOrDestroy2(stream, err, !0);\n        else\n          runOnNextTick(emitConstructNT, stream);\n      }\n      try {\n        stream._construct(onConstruct);\n      } catch (err) {\n        onConstruct(err);\n      }\n    }\n    function emitConstructNT(stream) {\n      stream.emit(kConstruct);\n    }\n    function isRequest(stream) {\n      return stream && stream.setHeader && typeof stream.abort === \"function\";\n    }\n    function emitCloseLegacy(stream) {\n      stream.emit(\"close\");\n    }\n    function emitErrorCloseLegacy(stream, err) {\n      stream.emit(\"error\", err), runOnNextTick(emitCloseLegacy, stream);\n    }\n    function destroyer(stream, err) {\n      if (!stream || isDestroyed(stream))\n        return;\n      if (!err && !isFinished(stream))\n        err = new AbortError2;\n      if (isServerRequest(stream))\n        stream.socket = null, stream.destroy(err);\n      else if (isRequest(stream))\n        stream.abort();\n      else if (isRequest(stream.req))\n        stream.req.abort();\n      else if (typeof stream.destroy === \"function\")\n        stream.destroy(err);\n      else if (typeof stream.close === \"function\")\n        stream.close();\n      else if (err)\n        runOnNextTick(emitErrorCloseLegacy, stream);\n      else\n        runOnNextTick(emitCloseLegacy, stream);\n      if (!stream.destroyed)\n        stream[kDestroyed] = !0;\n    }\n    module.exports = {\n      construct,\n      destroyer,\n      destroy: destroy2,\n      undestroy,\n      errorOrDestroy: errorOrDestroy2\n    };\n  }\n}), require_legacy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/legacy.js\"(exports, module) {\n    var { ArrayIsArray, ObjectSetPrototypeOf } = require_primordials();\n    function Stream(options) {\n      if (!(this instanceof Stream))\n        return new Stream(options);\n      EE.call(this, options);\n    }\n    Stream.prototype = {}, ObjectSetPrototypeOf(Stream.prototype, EE.prototype), ObjectSetPrototypeOf(Stream, EE), Stream.prototype.pipe = function(dest, options) {\n      const source = this;\n      function ondata(chunk) {\n        if (dest.writable && dest.write(chunk) === !1 && source.pause)\n          source.pause();\n      }\n      source.on(\"data\", ondata);\n      function ondrain() {\n        if (source.readable && source.resume)\n          source.resume();\n      }\n      if (dest.on(\"drain\", ondrain), !dest._isStdio && (!options || options.end !== !1))\n        source.on(\"end\", onend), source.on(\"close\", onclose);\n      let didOnEnd = !1;\n      function onend() {\n        if (didOnEnd)\n          return;\n        didOnEnd = !0, dest.end();\n      }\n      function onclose() {\n        if (didOnEnd)\n          return;\n        if (didOnEnd = !0, typeof dest.destroy === \"function\")\n          dest.destroy();\n      }\n      function onerror(er) {\n        if (cleanup(), EE.listenerCount(this, \"error\") === 0)\n          this.emit(\"error\", er);\n      }\n      prependListener(source, \"error\", onerror), prependListener(dest, \"error\", onerror);\n      function cleanup() {\n        source.removeListener(\"data\", ondata), dest.removeListener(\"drain\", ondrain), source.removeListener(\"end\", onend), source.removeListener(\"close\", onclose), source.removeListener(\"error\", onerror), dest.removeListener(\"error\", onerror), source.removeListener(\"end\", cleanup), source.removeListener(\"close\", cleanup), dest.removeListener(\"close\", cleanup);\n      }\n      return source.on(\"end\", cleanup), source.on(\"close\", cleanup), dest.on(\"close\", cleanup), dest.emit(\"pipe\", source), dest;\n    };\n    function prependListener(emitter, event, fn) {\n      if (typeof emitter.prependListener === \"function\")\n        return emitter.prependListener(event, fn);\n      if (!emitter._events || !emitter._events[event])\n        emitter.on(event, fn);\n      else if (ArrayIsArray(emitter._events[event]))\n        emitter._events[event].unshift(fn);\n      else\n        emitter._events[event] = [fn, emitter._events[event]];\n    }\n    module.exports = {\n      Stream,\n      prependListener\n    };\n  }\n}), require_add_abort_signal = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/add-abort-signal.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), eos = require_end_of_stream(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2 } = codes, validateAbortSignal = (signal, name) => {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    };\n    function isNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\");\n    }\n    module.exports.addAbortSignal = function addAbortSignal(signal, stream) {\n      if (validateAbortSignal(signal, \"signal\"), !isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"stream.Stream\", stream);\n      return module.exports.addAbortSignalNoValidate(signal, stream);\n    }, module.exports.addAbortSignalNoValidate = function(signal, stream) {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        return stream;\n      const onAbort = () => {\n        stream.destroy(new AbortError2(void 0, {\n          cause: signal.reason\n        }));\n      };\n      if (signal.aborted)\n        onAbort();\n      else\n        signal.addEventListener(\"abort\", onAbort), eos(stream, () => signal.removeEventListener(\"abort\", onAbort));\n      return stream;\n    };\n  }\n}), require_state = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/state.js\"(exports, module) {\n    var { MathFloor, NumberIsInteger } = require_primordials(), { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2 } = require_errors().codes;\n    function highWaterMarkFrom2(options, isDuplex, duplexKey) {\n      return options.highWaterMark != null \? options.highWaterMark : isDuplex \? options[duplexKey] : null;\n    }\n    function getDefaultHighWaterMark2(objectMode) {\n      return objectMode \? 16 : 16384;\n    }\n    function getHighWaterMark2(state, options, duplexKey, isDuplex) {\n      const hwm = highWaterMarkFrom2(options, isDuplex, duplexKey);\n      if (hwm != null) {\n        if (!NumberIsInteger(hwm) || hwm < 0) {\n          const name = isDuplex \? `options.${duplexKey}` : \"options.highWaterMark\";\n          throw new ERR_INVALID_ARG_VALUE2(name, hwm);\n        }\n        return MathFloor(hwm);\n      }\n      return getDefaultHighWaterMark2(state.objectMode);\n    }\n    module.exports = {\n      getHighWaterMark: getHighWaterMark2,\n      getDefaultHighWaterMark: getDefaultHighWaterMark2\n    };\n  }\n}), require_from = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/from.js\"(exports, module) {\n    var { PromisePrototypeThen, SymbolAsyncIterator, SymbolIterator } = require_primordials(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_NULL_VALUES } = require_errors().codes;\n    function from(Readable, iterable, opts) {\n      let iterator;\n      if (typeof iterable === \"string\" || iterable instanceof Buffer)\n        return new Readable({\n          objectMode: !0,\n          ...opts,\n          read() {\n            this.push(iterable), this.push(null);\n          }\n        });\n      let isAsync;\n      if (iterable && iterable[SymbolAsyncIterator])\n        isAsync = !0, iterator = iterable[SymbolAsyncIterator]();\n      else if (iterable && iterable[SymbolIterator])\n        isAsync = !1, iterator = iterable[SymbolIterator]();\n      else\n        throw new ERR_INVALID_ARG_TYPE2(\"iterable\", [\"Iterable\"], iterable);\n      const readable = new Readable({\n        objectMode: !0,\n        highWaterMark: 1,\n        ...opts\n      });\n      let reading = !1;\n      readable._read = function() {\n        if (!reading)\n          reading = !0, next();\n      }, readable._destroy = function(error, cb) {\n        PromisePrototypeThen(close(error), () => runOnNextTick(cb, error), (e) => runOnNextTick(cb, e || error));\n      };\n      async function close(error) {\n        const hadError = error !== void 0 && error !== null, hasThrow = typeof iterator.throw === \"function\";\n        if (hadError && hasThrow) {\n          const { value, done } = await iterator.throw(error);\n          if (await value, done)\n            return;\n        }\n        if (typeof iterator.return === \"function\") {\n          const { value } = await iterator.return();\n          await value;\n        }\n      }\n      async function next() {\n        for (;; ) {\n          try {\n            const { value, done } = isAsync \? await iterator.next() : iterator.next();\n            if (done)\n              readable.push(null);\n            else {\n              const res = value && typeof value.then === \"function\" \? await value : value;\n              if (res === null)\n                throw reading = !1, new ERR_STREAM_NULL_VALUES;\n              else if (readable.push(res))\n                continue;\n              else\n                reading = !1;\n            }\n          } catch (err) {\n            readable.destroy(err);\n          }\n          break;\n        }\n      }\n      return readable;\n    }\n    module.exports = from;\n  }\n}), _ReadableFromWeb, _ReadableFromWebForUndici, require_readable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/readable.js\"(exports, module) {\n    var {\n      ArrayPrototypeIndexOf,\n      NumberIsInteger,\n      NumberIsNaN,\n      NumberParseInt,\n      ObjectDefineProperties,\n      ObjectKeys,\n      ObjectSetPrototypeOf,\n      Promise: Promise2,\n      SafeSet,\n      SymbolAsyncIterator,\n      Symbol: Symbol2\n    } = require_primordials(), { Stream, prependListener } = require_legacy();\n    function Readable(options) {\n      if (!(this instanceof Readable))\n        return new Readable(options);\n      const isDuplex = this instanceof require_duplex();\n      if (this._readableState = new ReadableState(options, this, isDuplex), options) {\n        const { read, destroy: destroy2, construct, signal } = options;\n        if (typeof read === \"function\")\n          this._read = read;\n        if (typeof destroy2 === \"function\")\n          this._destroy = destroy2;\n        if (typeof construct === \"function\")\n          this._construct = construct;\n        if (signal && !isDuplex)\n          addAbortSignal(signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        if (this._readableState.needReadable)\n          maybeReadMore(this, this._readableState);\n      });\n    }\n    Readable.prototype = {}, ObjectSetPrototypeOf(Readable.prototype, Stream.prototype), ObjectSetPrototypeOf(Readable, Stream), Readable.prototype.on = function(ev, fn) {\n      const res = Stream.prototype.on.call(this, ev, fn), state = this._readableState;\n      if (ev === \"data\") {\n        if (state.readableListening = this.listenerCount(\"readable\") > 0, state.flowing !== !1)\n          this.resume();\n      } else if (ev === \"readable\") {\n        if (!state.endEmitted && !state.readableListening) {\n          if (state.readableListening = state.needReadable = !0, state.flowing = !1, state.emittedReadable = !1, state.length)\n            emitReadable(this, state);\n          else if (!state.reading)\n            runOnNextTick(nReadingNextTick, this);\n        } else if (state.endEmitted)\n          ;\n      }\n      return res;\n    };\n\n    class ReadableFromWeb extends Readable {\n      #reader;\n      #closed;\n      #pendingChunks;\n      #stream;\n      constructor(options, stream) {\n        const { objectMode, highWaterMark, encoding, signal } = options;\n        super({\n          objectMode,\n          highWaterMark,\n          encoding,\n          signal\n        });\n        this.#pendingChunks = [], this.#reader = void 0, this.#stream = stream, this.#closed = !1;\n      }\n      #drainPending() {\n        var pendingChunks = this.#pendingChunks, pendingChunksI = 0, pendingChunksCount = pendingChunks.length;\n        for (;pendingChunksI < pendingChunksCount; pendingChunksI++) {\n          const chunk = pendingChunks[pendingChunksI];\n          if (pendingChunks[pendingChunksI] = void 0, !this.push(chunk, void 0))\n            return this.#pendingChunks = pendingChunks.slice(pendingChunksI + 1), !0;\n        }\n        if (pendingChunksCount > 0)\n          this.#pendingChunks = [];\n        return !1;\n      }\n      #handleDone(reader) {\n        reader.releaseLock(), this.#reader = void 0, this.#closed = !0, this.push(null);\n        return;\n      }\n      async _read() {\n        var stream = this.#stream, reader = this.#reader;\n        if (stream)\n          reader = this.#reader = stream.getReader(), this.#stream = void 0;\n        else if (this.#drainPending())\n          return;\n        var deferredError;\n        try {\n          do {\n            var done = !1, value;\n            const firstResult = reader.readMany();\n            if (@isPromise(firstResult)) {\n              if ({ done, value } = await firstResult, this.#closed) {\n                this.#pendingChunks.push(...value);\n                return;\n              }\n            } else\n              ({ done, value } = firstResult);\n            if (done) {\n              this.#handleDone(reader);\n              return;\n            }\n            if (!this.push(value[0])) {\n              this.#pendingChunks = value.slice(1);\n              return;\n            }\n            for (let i = 1, count = value.length;i < count; i++)\n              if (!this.push(value[i])) {\n                this.#pendingChunks = value.slice(i + 1);\n                return;\n              }\n          } while (!this.#closed);\n        } catch (e) {\n          deferredError = e;\n        } finally {\n          if (deferredError)\n            throw deferredError;\n        }\n      }\n      _destroy(error, callback) {\n        if (!this.#closed) {\n          var reader = this.#reader;\n          if (reader)\n            this.#reader = void 0, reader.cancel(error).finally(() => {\n              this.#closed = !0, callback(error);\n            });\n          return;\n        }\n        try {\n          callback(error);\n        } catch (error2) {\n          globalThis.reportError(error2);\n        }\n      }\n    }\n    _ReadableFromWebForUndici = ReadableFromWeb;\n    function newStreamReadableFromReadableStream(readableStream, options = {}) {\n      if (!isReadableStream(readableStream))\n        throw new ERR_INVALID_ARG_TYPE2(\"readableStream\", \"ReadableStream\", readableStream);\n      validateObject(options, \"options\");\n      const {\n        highWaterMark,\n        encoding,\n        objectMode = !1,\n        signal\n      } = options;\n      if (encoding !== void 0 && !Buffer.isEncoding(encoding))\n        throw new ERR_INVALID_ARG_VALUE(encoding, \"options.encoding\");\n      return validateBoolean(objectMode, \"options.objectMode\"), getNativeReadableStream(Readable, readableStream, options) || new ReadableFromWeb({\n        highWaterMark,\n        encoding,\n        objectMode,\n        signal\n      }, readableStream);\n    }\n    module.exports = Readable, _ReadableFromWeb = newStreamReadableFromReadableStream;\n    var { addAbortSignal } = require_add_abort_signal(), eos = require_end_of_stream();\n    function maybeReadMore(stream, state) {\n      if (!state.readingMore && state.constructed)\n        state.readingMore = !0, process.nextTick(maybeReadMore_, stream, state);\n    }\n    function maybeReadMore_(stream, state) {\n      while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) {\n        const len = state.length;\n        if (stream.read(0), len === state.length)\n          break;\n      }\n      state.readingMore = !1;\n    }\n    function emitReadable(stream) {\n      const state = stream._readableState;\n      if (state.needReadable = !1, !state.emittedReadable)\n        state.emittedReadable = !0, process.nextTick(emitReadable_, stream);\n    }\n    function emitReadable_(stream) {\n      const state = stream._readableState;\n      if (!state.destroyed && !state.errored && (state.length || state.ended))\n        stream.emit(\"readable\"), state.emittedReadable = !1;\n      state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark, flow(stream);\n    }\n    function flow(stream) {\n      const state = stream._readableState;\n      while (state.flowing && stream.read() !== null)\n        ;\n    }\n    function onEofChunk(stream, state) {\n      if (state.ended)\n        return;\n      if (state.decoder) {\n        const chunk = state.decoder.end();\n        if (chunk && chunk.length)\n          state.buffer.push(chunk), state.length += state.objectMode \? 1 : chunk.length;\n      }\n      if (state.ended = !0, state.sync)\n        emitReadable(stream);\n      else\n        state.needReadable = !1, state.emittedReadable = !0, emitReadable_(stream);\n    }\n    function resume(stream, state) {\n      if (!state.resumeScheduled)\n        state.resumeScheduled = !0, process.nextTick(resume_, stream, state);\n    }\n    function resume_(stream, state) {\n      if (!state.reading)\n        stream.read(0);\n      if (state.resumeScheduled = !1, stream.emit(\"resume\"), flow(stream), state.flowing && !state.reading)\n        stream.read(0);\n    }\n    var destroyImpl = require_destroy(), {\n      aggregateTwoErrors,\n      codes: {\n        ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n        ERR_METHOD_NOT_IMPLEMENTED,\n        ERR_OUT_OF_RANGE,\n        ERR_STREAM_PUSH_AFTER_EOF,\n        ERR_STREAM_UNSHIFT_AFTER_END_EVENT\n      }\n    } = require_errors(), { validateObject } = require_validators(), from = require_from(), nop = () => {\n    }, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    Readable.prototype.destroy = destroyImpl.destroy, Readable.prototype._undestroy = destroyImpl.undestroy, Readable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Readable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    }, Readable.prototype.push = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !1);\n    }, Readable.prototype.unshift = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !0);\n    };\n    function readableAddChunk(stream, chunk, encoding, addToFront) {\n      const state = stream._readableState;\n      let err;\n      if (!state.objectMode) {\n        if (typeof chunk === \"string\") {\n          if (encoding = encoding || state.defaultEncoding, state.encoding !== encoding)\n            if (addToFront && state.encoding)\n              chunk = Buffer.from(chunk, encoding).toString(state.encoding);\n            else\n              chunk = Buffer.from(chunk, encoding), encoding = \"\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"\";\n        else if (Stream._isUint8Array(chunk)) {\n          if (addToFront || !state.decoder)\n            chunk = Stream._uint8ArrayToBuffer(chunk);\n          encoding = \"\";\n        } else if (chunk != null)\n          err = new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      }\n      if (err)\n        errorOrDestroy2(stream, err);\n      else if (chunk === null)\n        state.reading = !1, onEofChunk(stream, state);\n      else if (state.objectMode || chunk && chunk.length > 0)\n        if (addToFront)\n          if (state.endEmitted)\n            errorOrDestroy2(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT);\n          else if (state.destroyed || state.errored)\n            return !1;\n          else\n            addChunk(stream, state, chunk, !0);\n        else if (state.ended)\n          errorOrDestroy2(stream, new ERR_STREAM_PUSH_AFTER_EOF);\n        else if (state.destroyed || state.errored)\n          return !1;\n        else if (state.reading = !1, state.decoder && !encoding)\n          if (chunk = state.decoder.write(chunk), state.objectMode || chunk.length !== 0)\n            addChunk(stream, state, chunk, !1);\n          else\n            maybeReadMore(stream, state);\n        else\n          addChunk(stream, state, chunk, !1);\n      else if (!addToFront)\n        state.reading = !1, maybeReadMore(stream, state);\n      return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n    }\n    function addChunk(stream, state, chunk, addToFront) {\n      if (state.flowing && state.length === 0 && !state.sync && stream.listenerCount(\"data\") > 0) {\n        if (state.multiAwaitDrain)\n          state.awaitDrainWriters.clear();\n        else\n          state.awaitDrainWriters = null;\n        state.dataEmitted = !0, stream.emit(\"data\", chunk);\n      } else {\n        if (state.length += state.objectMode \? 1 : chunk.length, addToFront)\n          state.buffer.unshift(chunk);\n        else\n          state.buffer.push(chunk);\n        if (state.needReadable)\n          emitReadable(stream, state);\n      }\n      maybeReadMore(stream, state);\n    }\n    Readable.prototype.isPaused = function() {\n      const state = this._readableState;\n      return state.paused === !0 || state.flowing === !1;\n    }, Readable.prototype.setEncoding = function(enc) {\n      const decoder = new StringDecoder(enc);\n      this._readableState.decoder = decoder, this._readableState.encoding = this._readableState.decoder.encoding;\n      const buffer = this._readableState.buffer;\n      let content = \"\";\n      for (let i = buffer.length;i > 0; i--)\n        content += decoder.write(buffer.shift());\n      if (content !== \"\")\n        buffer.push(content);\n      return this._readableState.length = content.length, this;\n    };\n    var MAX_HWM = 1073741824;\n    function computeNewHighWaterMark(n) {\n      if (n > MAX_HWM)\n        throw new ERR_OUT_OF_RANGE(\"size\", \"<= 1GiB\", n);\n      else\n        n--, n |= n >>> 1, n |= n >>> 2, n |= n >>> 4, n |= n >>> 8, n |= n >>> 16, n++;\n      return n;\n    }\n    function howMuchToRead(n, state) {\n      if (n <= 0 || state.length === 0 && state.ended)\n        return 0;\n      if (state.objectMode)\n        return 1;\n      if (NumberIsNaN(n)) {\n        if (state.flowing && state.length)\n          return state.buffer.first().length;\n        return state.length;\n      }\n      if (n <= state.length)\n        return n;\n      return state.ended \? state.length : 0;\n    }\n    Readable.prototype.read = function(n) {\n      if (!NumberIsInteger(n))\n        n = NumberParseInt(n, 10);\n      const state = this._readableState, nOrig = n;\n      if (n > state.highWaterMark)\n        state.highWaterMark = computeNewHighWaterMark(n);\n      if (n !== 0)\n        state.emittedReadable = !1;\n      if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 \? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n        if (state.length === 0 && state.ended)\n          endReadable(this);\n        else\n          emitReadable(this, state);\n        return null;\n      }\n      if (n = howMuchToRead(n, state), n === 0 && state.ended) {\n        if (state.length === 0)\n          endReadable(this);\n        return null;\n      }\n      let doRead = state.needReadable;\n      if (state.length === 0 || state.length - n < state.highWaterMark)\n        doRead = !0;\n      if (state.ended || state.reading || state.destroyed || state.errored || !state.constructed)\n        doRead = !1;\n      else if (doRead) {\n        if (state.reading = !0, state.sync = !0, state.length === 0)\n          state.needReadable = !0;\n        try {\n          var result = this._read(state.highWaterMark);\n          if (@isPromise(result)) {\n            const peeked = Bun.peek(result);\n            if (peeked !== result)\n              result = peeked;\n          }\n          if (@isPromise(result) && result\?.then && @isCallable(result.then))\n            result.then(nop, function(err) {\n              errorOrDestroy2(this, err);\n            });\n        } catch (err) {\n          errorOrDestroy2(this, err);\n        }\n        if (state.sync = !1, !state.reading)\n          n = howMuchToRead(nOrig, state);\n      }\n      let ret;\n      if (n > 0)\n        ret = fromList(n, state);\n      else\n        ret = null;\n      if (ret === null)\n        state.needReadable = state.length <= state.highWaterMark, n = 0;\n      else if (state.length -= n, state.multiAwaitDrain)\n        state.awaitDrainWriters.clear();\n      else\n        state.awaitDrainWriters = null;\n      if (state.length === 0) {\n        if (!state.ended)\n          state.needReadable = !0;\n        if (nOrig !== n && state.ended)\n          endReadable(this);\n      }\n      if (ret !== null && !state.errorEmitted && !state.closeEmitted)\n        state.dataEmitted = !0, this.emit(\"data\", ret);\n      return ret;\n    }, Readable.prototype._read = function(n) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_read()\");\n    }, Readable.prototype.pipe = function(dest, pipeOpts) {\n      const src = this, state = this._readableState;\n      if (state.pipes.length === 1) {\n        if (!state.multiAwaitDrain)\n          state.multiAwaitDrain = !0, state.awaitDrainWriters = new SafeSet(state.awaitDrainWriters \? [state.awaitDrainWriters] : []);\n      }\n      state.pipes.push(dest);\n      const endFn = (!pipeOpts || pipeOpts.end !== !1) && dest !== process.stdout && dest !== process.stderr \? onend : unpipe;\n      if (state.endEmitted)\n        runOnNextTick(endFn);\n      else\n        src.once(\"end\", endFn);\n      dest.on(\"unpipe\", onunpipe);\n      function onunpipe(readable, unpipeInfo) {\n        if (readable === src) {\n          if (unpipeInfo && unpipeInfo.hasUnpiped === !1)\n            unpipeInfo.hasUnpiped = !0, cleanup();\n        }\n      }\n      function onend() {\n        dest.end();\n      }\n      let ondrain, cleanedUp = !1;\n      function cleanup() {\n        if (dest.removeListener(\"close\", onclose), dest.removeListener(\"finish\", onfinish), ondrain)\n          dest.removeListener(\"drain\", ondrain);\n        if (dest.removeListener(\"error\", onerror), dest.removeListener(\"unpipe\", onunpipe), src.removeListener(\"end\", onend), src.removeListener(\"end\", unpipe), src.removeListener(\"data\", ondata), cleanedUp = !0, ondrain && state.awaitDrainWriters && (!dest._writableState || dest._writableState.needDrain))\n          ondrain();\n      }\n      function pause() {\n        if (!cleanedUp) {\n          if (state.pipes.length === 1 && state.pipes[0] === dest)\n            state.awaitDrainWriters = dest, state.multiAwaitDrain = !1;\n          else if (state.pipes.length > 1 && state.pipes.includes(dest))\n            state.awaitDrainWriters.add(dest);\n          src.pause();\n        }\n        if (!ondrain)\n          ondrain = pipeOnDrain(src, dest), dest.on(\"drain\", ondrain);\n      }\n      src.on(\"data\", ondata);\n      function ondata(chunk) {\n        if (dest.write(chunk) === !1)\n          pause();\n      }\n      function onerror(er) {\n        if (unpipe(), dest.removeListener(\"error\", onerror), dest.listenerCount(\"error\") === 0) {\n          const s = dest._writableState || dest._readableState;\n          if (s && !s.errorEmitted)\n            errorOrDestroy2(dest, er);\n          else\n            dest.emit(\"error\", er);\n        }\n      }\n      prependListener(dest, \"error\", onerror);\n      function onclose() {\n        dest.removeListener(\"finish\", onfinish), unpipe();\n      }\n      dest.once(\"close\", onclose);\n      function onfinish() {\n        dest.removeListener(\"close\", onclose), unpipe();\n      }\n      dest.once(\"finish\", onfinish);\n      function unpipe() {\n        src.unpipe(dest);\n      }\n      if (dest.emit(\"pipe\", src), dest.writableNeedDrain === !0) {\n        if (state.flowing)\n          pause();\n      } else if (!state.flowing)\n        src.resume();\n      return dest;\n    };\n    function pipeOnDrain(src, dest) {\n      return function pipeOnDrainFunctionResult() {\n        const state = src._readableState;\n        if (state.awaitDrainWriters === dest)\n          state.awaitDrainWriters = null;\n        else if (state.multiAwaitDrain)\n          state.awaitDrainWriters.delete(dest);\n        if ((!state.awaitDrainWriters || state.awaitDrainWriters.size === 0) && src.listenerCount(\"data\"))\n          src.resume();\n      };\n    }\n    Readable.prototype.unpipe = function(dest) {\n      const state = this._readableState, unpipeInfo = {\n        hasUnpiped: !1\n      };\n      if (state.pipes.length === 0)\n        return this;\n      if (!dest) {\n        const dests = state.pipes;\n        state.pipes = [], this.pause();\n        for (let i = 0;i < dests.length; i++)\n          dests[i].emit(\"unpipe\", this, {\n            hasUnpiped: !1\n          });\n        return this;\n      }\n      const index = ArrayPrototypeIndexOf(state.pipes, dest);\n      if (index === -1)\n        return this;\n      if (state.pipes.splice(index, 1), state.pipes.length === 0)\n        this.pause();\n      return dest.emit(\"unpipe\", this, unpipeInfo), this;\n    }, Readable.prototype.addListener = Readable.prototype.on, Readable.prototype.removeListener = function(ev, fn) {\n      const res = Stream.prototype.removeListener.call(this, ev, fn);\n      if (ev === \"readable\")\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    }, Readable.prototype.off = Readable.prototype.removeListener, Readable.prototype.removeAllListeners = function(ev) {\n      const res = Stream.prototype.removeAllListeners.apply(this, arguments);\n      if (ev === \"readable\" || ev === void 0)\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    };\n    function updateReadableListening(self) {\n      const state = self._readableState;\n      if (state.readableListening = self.listenerCount(\"readable\") > 0, state.resumeScheduled && state.paused === !1)\n        state.flowing = !0;\n      else if (self.listenerCount(\"data\") > 0)\n        self.resume();\n      else if (!state.readableListening)\n        state.flowing = null;\n    }\n    function nReadingNextTick(self) {\n      self.read(0);\n    }\n    Readable.prototype.resume = function() {\n      const state = this._readableState;\n      if (!state.flowing)\n        state.flowing = !state.readableListening, resume(this, state);\n      return state.paused = !1, this;\n    }, Readable.prototype.pause = function() {\n      if (this._readableState.flowing !== !1)\n        this._readableState.flowing = !1, this.emit(\"pause\");\n      return this._readableState.paused = !0, this;\n    }, Readable.prototype.wrap = function(stream) {\n      let paused = !1;\n      stream.on(\"data\", (chunk) => {\n        if (!this.push(chunk) && stream.pause)\n          paused = !0, stream.pause();\n      }), stream.on(\"end\", () => {\n        this.push(null);\n      }), stream.on(\"error\", (err) => {\n        errorOrDestroy2(this, err);\n      }), stream.on(\"close\", () => {\n        this.destroy();\n      }), stream.on(\"destroy\", () => {\n        this.destroy();\n      }), this._read = () => {\n        if (paused && stream.resume)\n          paused = !1, stream.resume();\n      };\n      const streamKeys = ObjectKeys(stream);\n      for (let j = 1;j < streamKeys.length; j++) {\n        const i = streamKeys[j];\n        if (this[i] === void 0 && typeof stream[i] === \"function\")\n          this[i] = stream[i].bind(stream);\n      }\n      return this;\n    }, Readable.prototype[SymbolAsyncIterator] = function() {\n      return streamToAsyncIterator(this);\n    }, Readable.prototype.iterator = function(options) {\n      if (options !== void 0)\n        validateObject(options, \"options\");\n      return streamToAsyncIterator(this, options);\n    };\n    function streamToAsyncIterator(stream, options) {\n      if (typeof stream.read !== \"function\")\n        stream = Readable.wrap(stream, {\n          objectMode: !0\n        });\n      const iter = createAsyncIterator(stream, options);\n      return iter.stream = stream, iter;\n    }\n    async function* createAsyncIterator(stream, options) {\n      let callback = nop;\n      function next(resolve) {\n        if (this === stream)\n          callback(), callback = nop;\n        else\n          callback = resolve;\n      }\n      stream.on(\"readable\", next);\n      let error;\n      const cleanup = eos(stream, {\n        writable: !1\n      }, (err) => {\n        error = err \? aggregateTwoErrors(error, err) : null, callback(), callback = nop;\n      });\n      try {\n        while (!0) {\n          const chunk = stream.destroyed \? null : stream.read();\n          if (chunk !== null)\n            yield chunk;\n          else if (error)\n            throw error;\n          else if (error === null)\n            return;\n          else\n            await new Promise2(next);\n        }\n      } catch (err) {\n        throw error = aggregateTwoErrors(error, err), error;\n      } finally {\n        if ((error || (options === null || options === void 0 \? void 0 : options.destroyOnReturn) !== !1) && (error === void 0 || stream._readableState.autoDestroy))\n          destroyImpl.destroyer(stream, null);\n        else\n          stream.off(\"readable\", next), cleanup();\n      }\n    }\n    ObjectDefineProperties(Readable.prototype, {\n      readable: {\n        get() {\n          const r = this._readableState;\n          return !!r && r.readable !== !1 && !r.destroyed && !r.errorEmitted && !r.endEmitted;\n        },\n        set(val) {\n          if (this._readableState)\n            this._readableState.readable = !!val;\n        }\n      },\n      readableDidRead: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.dataEmitted;\n        }\n      },\n      readableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._readableState.readable !== !1 && (this._readableState.destroyed || this._readableState.errored) && !this._readableState.endEmitted);\n        }\n      },\n      readableHighWaterMark: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.highWaterMark;\n        }\n      },\n      readableBuffer: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState && this._readableState.buffer;\n        }\n      },\n      readableFlowing: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.flowing;\n        },\n        set: function(state) {\n          if (this._readableState)\n            this._readableState.flowing = state;\n        }\n      },\n      readableLength: {\n        enumerable: !1,\n        get() {\n          return this._readableState.length;\n        }\n      },\n      readableObjectMode: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.objectMode : !1;\n        }\n      },\n      readableEncoding: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.encoding : null;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.errored : null;\n        }\n      },\n      closed: {\n        get() {\n          return this._readableState \? this._readableState.closed : !1;\n        }\n      },\n      destroyed: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.destroyed : !1;\n        },\n        set(value) {\n          if (!this._readableState)\n            return;\n          this._readableState.destroyed = value;\n        }\n      },\n      readableEnded: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.endEmitted : !1;\n        }\n      }\n    }), Readable._fromList = fromList;\n    function fromList(n, state) {\n      if (state.length === 0)\n        return null;\n      let ret;\n      if (state.objectMode)\n        ret = state.buffer.shift();\n      else if (!n || n >= state.length) {\n        if (state.decoder)\n          ret = state.buffer.join(\"\");\n        else if (state.buffer.length === 1)\n          ret = state.buffer.first();\n        else\n          ret = state.buffer.concat(state.length);\n        state.buffer.clear();\n      } else\n        ret = state.buffer.consume(n, state.decoder);\n      return ret;\n    }\n    function endReadable(stream) {\n      const state = stream._readableState;\n      if (!state.endEmitted)\n        state.ended = !0, runOnNextTick(endReadableNT, state, stream);\n    }\n    function endReadableNT(state, stream) {\n      if (!state.errored && !state.closeEmitted && !state.endEmitted && state.length === 0) {\n        if (state.endEmitted = !0, stream.emit(\"end\"), stream.writable && stream.allowHalfOpen === !1)\n          runOnNextTick(endWritableNT, stream);\n        else if (state.autoDestroy) {\n          const wState = stream._writableState;\n          if (!wState || wState.autoDestroy && (wState.finished || wState.writable === !1))\n            stream.destroy();\n        }\n      }\n    }\n    function endWritableNT(stream) {\n      if (stream.writable && !stream.writableEnded && !stream.destroyed)\n        stream.end();\n    }\n    Readable.from = function(iterable, opts) {\n      return from(Readable, iterable, opts);\n    };\n    var webStreamsAdapters = {\n      newStreamReadableFromReadableStream,\n      newReadableStreamFromStreamReadable(streamReadable, options = {}) {\n        if (typeof streamReadable\?._readableState !== \"object\")\n          throw new ERR_INVALID_ARG_TYPE2(\"streamReadable\", \"stream.Readable\", streamReadable);\n        var { isDestroyed, isReadable } = require_utils();\n        if (isDestroyed(streamReadable) || !isReadable(streamReadable)) {\n          const readable = new ReadableStream;\n          return readable.cancel(), readable;\n        }\n        const { readableObjectMode: objectMode, readableHighWaterMark: highWaterMark } = streamReadable, strategy = ((strategy2) => {\n          if (strategy2)\n            return strategy2;\n          if (objectMode)\n            return new CountQueuingStrategy({ highWaterMark });\n          return { highWaterMark };\n        })(options\?.strategy);\n        let controller;\n        function onData(chunk) {\n          if (controller.enqueue(chunk), controller.desiredSize <= 0)\n            streamReadable.pause();\n        }\n        streamReadable.pause();\n        const cleanup = eos(streamReadable, (error) => {\n          if (error\?.code === \"ERR_STREAM_PREMATURE_CLOSE\")\n            error = new AbortError(void 0, { cause: error });\n          if (cleanup(), streamReadable.on(\"error\", () => {\n          }), error)\n            return controller.error(error);\n          controller.close();\n        });\n        return streamReadable.on(\"data\", onData), new ReadableStream({\n          start(c) {\n            controller = c;\n          },\n          pull() {\n            streamReadable.resume();\n          },\n          cancel(reason) {\n            destroy(streamReadable, reason);\n          }\n        }, strategy);\n      }\n    };\n    Readable.fromWeb = function(readableStream, options) {\n      return webStreamsAdapters.newStreamReadableFromReadableStream(readableStream, options);\n    }, Readable.toWeb = function(streamReadable, options) {\n      return webStreamsAdapters.newReadableStreamFromStreamReadable(streamReadable, options);\n    }, Readable.wrap = function(src, options) {\n      var _ref, _src$readableObjectMo;\n      return new Readable({\n        objectMode: (_ref = (_src$readableObjectMo = src.readableObjectMode) !== null && _src$readableObjectMo !== void 0 \? _src$readableObjectMo : src.objectMode) !== null && _ref !== void 0 \? _ref : !0,\n        ...options,\n        destroy(err, callback) {\n          destroyImpl.destroyer(src, err), callback(err);\n        }\n      }).wrap(src);\n    };\n  }\n}), require_writable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/writable.js\"(exports, module) {\n    var {\n      ArrayPrototypeSlice,\n      Error: Error2,\n      FunctionPrototypeSymbolHasInstance,\n      ObjectDefineProperty,\n      ObjectDefineProperties,\n      ObjectSetPrototypeOf,\n      StringPrototypeToLowerCase,\n      Symbol: Symbol2,\n      SymbolHasInstance\n    } = require_primordials(), Stream = require_legacy().Stream, destroyImpl = require_destroy(), { addAbortSignal } = require_add_abort_signal(), { getHighWaterMark: getHighWaterMark2, getDefaultHighWaterMark: getDefaultHighWaterMark2 } = require_state(), {\n      ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n      ERR_METHOD_NOT_IMPLEMENTED,\n      ERR_MULTIPLE_CALLBACK,\n      ERR_STREAM_CANNOT_PIPE,\n      ERR_STREAM_DESTROYED,\n      ERR_STREAM_ALREADY_FINISHED,\n      ERR_STREAM_NULL_VALUES,\n      ERR_STREAM_WRITE_AFTER_END,\n      ERR_UNKNOWN_ENCODING\n    } = require_errors().codes, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    function Writable(options = {}) {\n      const isDuplex = this instanceof require_duplex();\n      if (!isDuplex && !FunctionPrototypeSymbolHasInstance(Writable, this))\n        return new Writable(options);\n      if (this._writableState = new WritableState(options, this, isDuplex), options) {\n        if (typeof options.write === \"function\")\n          this._write = options.write;\n        if (typeof options.writev === \"function\")\n          this._writev = options.writev;\n        if (typeof options.destroy === \"function\")\n          this._destroy = options.destroy;\n        if (typeof options.final === \"function\")\n          this._final = options.final;\n        if (typeof options.construct === \"function\")\n          this._construct = options.construct;\n        if (options.signal)\n          addAbortSignal(options.signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        const state = this._writableState;\n        if (!state.writing)\n          clearBuffer(this, state);\n        finishMaybe(this, state);\n      });\n    }\n    Writable.prototype = {}, ObjectSetPrototypeOf(Writable.prototype, Stream.prototype), ObjectSetPrototypeOf(Writable, Stream), module.exports = Writable;\n    function nop() {\n    }\n    var kOnFinished = Symbol2(\"kOnFinished\");\n    function WritableState(options, stream, isDuplex) {\n      if (typeof isDuplex !== \"boolean\")\n        isDuplex = stream instanceof require_duplex();\n      if (this.objectMode = !!(options && options.objectMode), isDuplex)\n        this.objectMode = this.objectMode || !!(options && options.writableObjectMode);\n      this.highWaterMark = options \? getHighWaterMark2(this, options, \"writableHighWaterMark\", isDuplex) : getDefaultHighWaterMark2(!1), this.finalCalled = !1, this.needDrain = !1, this.ending = !1, this.ended = !1, this.finished = !1, this.destroyed = !1;\n      const noDecode = !!(options && options.decodeStrings === !1);\n      this.decodeStrings = !noDecode, this.defaultEncoding = options && options.defaultEncoding || \"utf8\", this.length = 0, this.writing = !1, this.corked = 0, this.sync = !0, this.bufferProcessing = !1, this.onwrite = onwrite.bind(void 0, stream), this.writecb = null, this.writelen = 0, this.afterWriteTickInfo = null, resetBuffer(this), this.pendingcb = 0, this.constructed = !0, this.prefinished = !1, this.errorEmitted = !1, this.emitClose = !options || options.emitClose !== !1, this.autoDestroy = !options || options.autoDestroy !== !1, this.errored = null, this.closed = !1, this.closeEmitted = !1, this[kOnFinished] = [];\n    }\n    WritableState.prototype = {};\n    function resetBuffer(state) {\n      state.buffered = [], state.bufferedIndex = 0, state.allBuffers = !0, state.allNoop = !0;\n    }\n    WritableState.prototype.getBuffer = function getBuffer() {\n      return ArrayPrototypeSlice(this.buffered, this.bufferedIndex);\n    }, ObjectDefineProperty(WritableState.prototype, \"bufferedRequestCount\", {\n      get() {\n        return this.buffered.length - this.bufferedIndex;\n      }\n    }), ObjectDefineProperty(Writable, SymbolHasInstance, {\n      value: function(object) {\n        if (FunctionPrototypeSymbolHasInstance(this, object))\n          return !0;\n        if (this !== Writable)\n          return !1;\n        return object && object._writableState instanceof WritableState;\n      }\n    }), Writable.prototype.pipe = function() {\n      errorOrDestroy2(this, new ERR_STREAM_CANNOT_PIPE);\n    };\n    function _write(stream, chunk, encoding, cb) {\n      const state = stream._writableState;\n      if (typeof encoding === \"function\")\n        cb = encoding, encoding = state.defaultEncoding;\n      else {\n        if (!encoding)\n          encoding = state.defaultEncoding;\n        else if (encoding !== \"buffer\" && !Buffer.isEncoding(encoding))\n          throw new ERR_UNKNOWN_ENCODING(encoding);\n        if (typeof cb !== \"function\")\n          cb = nop;\n      }\n      if (chunk === null)\n        throw new ERR_STREAM_NULL_VALUES;\n      else if (!state.objectMode)\n        if (typeof chunk === \"string\") {\n          if (state.decodeStrings !== !1)\n            chunk = Buffer.from(chunk, encoding), encoding = \"buffer\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"buffer\";\n        else if (Stream._isUint8Array(chunk))\n          chunk = Stream._uint8ArrayToBuffer(chunk), encoding = \"buffer\";\n        else\n          throw new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      let err;\n      if (state.ending)\n        err = new ERR_STREAM_WRITE_AFTER_END;\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"write\");\n      if (err)\n        return runOnNextTick(cb, err), errorOrDestroy2(stream, err, !0), err;\n      return state.pendingcb++, writeOrBuffer(stream, state, chunk, encoding, cb);\n    }\n    Writable.prototype.write = function(chunk, encoding, cb) {\n      return _write(this, chunk, encoding, cb) === !0;\n    }, Writable.prototype.cork = function() {\n      this._writableState.corked++;\n    }, Writable.prototype.uncork = function() {\n      const state = this._writableState;\n      if (state.corked) {\n        if (state.corked--, !state.writing)\n          clearBuffer(this, state);\n      }\n    }, Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n      if (typeof encoding === \"string\")\n        encoding = StringPrototypeToLowerCase(encoding);\n      if (!Buffer.isEncoding(encoding))\n        throw new ERR_UNKNOWN_ENCODING(encoding);\n      return this._writableState.defaultEncoding = encoding, this;\n    };\n    function writeOrBuffer(stream, state, chunk, encoding, callback) {\n      const len = state.objectMode \? 1 : chunk.length;\n      state.length += len;\n      const ret = state.length < state.highWaterMark;\n      if (!ret)\n        state.needDrain = !0;\n      if (state.writing || state.corked || state.errored || !state.constructed) {\n        if (state.buffered.push({\n          chunk,\n          encoding,\n          callback\n        }), state.allBuffers && encoding !== \"buffer\")\n          state.allBuffers = !1;\n        if (state.allNoop && callback !== nop)\n          state.allNoop = !1;\n      } else\n        state.writelen = len, state.writecb = callback, state.writing = !0, state.sync = !0, stream._write(chunk, encoding, state.onwrite), state.sync = !1;\n      return ret && !state.errored && !state.destroyed;\n    }\n    function doWrite(stream, state, writev, len, chunk, encoding, cb) {\n      if (state.writelen = len, state.writecb = cb, state.writing = !0, state.sync = !0, state.destroyed)\n        state.onwrite(new ERR_STREAM_DESTROYED(\"write\"));\n      else if (writev)\n        stream._writev(chunk, state.onwrite);\n      else\n        stream._write(chunk, encoding, state.onwrite);\n      state.sync = !1;\n    }\n    function onwriteError(stream, state, er, cb) {\n      --state.pendingcb, cb(er), errorBuffer(state), errorOrDestroy2(stream, er);\n    }\n    function onwrite(stream, er) {\n      const state = stream._writableState, sync = state.sync, cb = state.writecb;\n      if (typeof cb !== \"function\") {\n        errorOrDestroy2(stream, new ERR_MULTIPLE_CALLBACK);\n        return;\n      }\n      if (state.writing = !1, state.writecb = null, state.length -= state.writelen, state.writelen = 0, er) {\n        if (Error.captureStackTrace(er), !state.errored)\n          state.errored = er;\n        if (stream._readableState && !stream._readableState.errored)\n          stream._readableState.errored = er;\n        if (sync)\n          runOnNextTick(onwriteError, stream, state, er, cb);\n        else\n          onwriteError(stream, state, er, cb);\n      } else {\n        if (state.buffered.length > state.bufferedIndex)\n          clearBuffer(stream, state);\n        if (sync)\n          if (state.afterWriteTickInfo !== null && state.afterWriteTickInfo.cb === cb)\n            state.afterWriteTickInfo.count++;\n          else\n            state.afterWriteTickInfo = {\n              count: 1,\n              cb,\n              stream,\n              state\n            }, runOnNextTick(afterWriteTick, state.afterWriteTickInfo);\n        else\n          afterWrite(stream, state, 1, cb);\n      }\n    }\n    function afterWriteTick({ stream, state, count, cb }) {\n      return state.afterWriteTickInfo = null, afterWrite(stream, state, count, cb);\n    }\n    function afterWrite(stream, state, count, cb) {\n      if (!state.ending && !stream.destroyed && state.length === 0 && state.needDrain)\n        state.needDrain = !1, stream.emit(\"drain\");\n      while (count-- > 0)\n        state.pendingcb--, cb();\n      if (state.destroyed)\n        errorBuffer(state);\n      finishMaybe(stream, state);\n    }\n    function errorBuffer(state) {\n      if (state.writing)\n        return;\n      for (let n = state.bufferedIndex;n < state.buffered.length; ++n) {\n        var _state$errored;\n        const { chunk, callback } = state.buffered[n], len = state.objectMode \? 1 : chunk.length;\n        state.length -= len, callback((_state$errored = state.errored) !== null && _state$errored !== void 0 \? _state$errored : new ERR_STREAM_DESTROYED(\"write\"));\n      }\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++) {\n        var _state$errored2;\n        onfinishCallbacks[i]((_state$errored2 = state.errored) !== null && _state$errored2 !== void 0 \? _state$errored2 : new ERR_STREAM_DESTROYED(\"end\"));\n      }\n      resetBuffer(state);\n    }\n    function clearBuffer(stream, state) {\n      if (state.corked || state.bufferProcessing || state.destroyed || !state.constructed)\n        return;\n      const { buffered, bufferedIndex, objectMode } = state, bufferedLength = buffered.length - bufferedIndex;\n      if (!bufferedLength)\n        return;\n      let i = bufferedIndex;\n      if (state.bufferProcessing = !0, bufferedLength > 1 && stream._writev) {\n        state.pendingcb -= bufferedLength - 1;\n        const callback = state.allNoop \? nop : (err) => {\n          for (let n = i;n < buffered.length; ++n)\n            buffered[n].callback(err);\n        }, chunks = state.allNoop && i === 0 \? buffered : ArrayPrototypeSlice(buffered, i);\n        chunks.allBuffers = state.allBuffers, doWrite(stream, state, !0, state.length, chunks, \"\", callback), resetBuffer(state);\n      } else {\n        do {\n          const { chunk, encoding, callback } = buffered[i];\n          buffered[i++] = null;\n          const len = objectMode \? 1 : chunk.length;\n          doWrite(stream, state, !1, len, chunk, encoding, callback);\n        } while (i < buffered.length && !state.writing);\n        if (i === buffered.length)\n          resetBuffer(state);\n        else if (i > 256)\n          buffered.splice(0, i), state.bufferedIndex = 0;\n        else\n          state.bufferedIndex = i;\n      }\n      state.bufferProcessing = !1;\n    }\n    Writable.prototype._write = function(chunk, encoding, cb) {\n      if (this._writev)\n        this._writev([\n          {\n            chunk,\n            encoding\n          }\n        ], cb);\n      else\n        throw new ERR_METHOD_NOT_IMPLEMENTED(\"_write()\");\n    }, Writable.prototype._writev = null, Writable.prototype.end = function(chunk, encoding, cb, native = !1) {\n      const state = this._writableState;\n      if (typeof chunk === \"function\")\n        cb = chunk, chunk = null, encoding = null;\n      else if (typeof encoding === \"function\")\n        cb = encoding, encoding = null;\n      let err;\n      if (chunk !== null && chunk !== void 0) {\n        let ret;\n        if (!native)\n          ret = _write(this, chunk, encoding);\n        else\n          ret = this.write(chunk, encoding);\n        if (ret instanceof Error2)\n          err = ret;\n      }\n      if (state.corked)\n        state.corked = 1, this.uncork();\n      if (err)\n        this.emit(\"error\", err);\n      else if (!state.errored && !state.ending)\n        state.ending = !0, finishMaybe(this, state, !0), state.ended = !0;\n      else if (state.finished)\n        err = new ERR_STREAM_ALREADY_FINISHED(\"end\");\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"end\");\n      if (typeof cb === \"function\")\n        if (err || state.finished)\n          runOnNextTick(cb, err);\n        else\n          state[kOnFinished].push(cb);\n      return this;\n    };\n    function needFinish(state, tag) {\n      var needFinish2 = state.ending && !state.destroyed && state.constructed && state.length === 0 && !state.errored && state.buffered.length === 0 && !state.finished && !state.writing && !state.errorEmitted && !state.closeEmitted;\n      return needFinish2;\n    }\n    function callFinal(stream, state) {\n      let called = !1;\n      function onFinish(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : ERR_MULTIPLE_CALLBACK());\n          return;\n        }\n        if (called = !0, state.pendingcb--, err) {\n          const onfinishCallbacks = state[kOnFinished].splice(0);\n          for (let i = 0;i < onfinishCallbacks.length; i++)\n            onfinishCallbacks[i](err);\n          errorOrDestroy2(stream, err, state.sync);\n        } else if (needFinish(state))\n          state.prefinished = !0, stream.emit(\"prefinish\"), state.pendingcb++, runOnNextTick(finish, stream, state);\n      }\n      state.sync = !0, state.pendingcb++;\n      try {\n        stream._final(onFinish);\n      } catch (err) {\n        onFinish(err);\n      }\n      state.sync = !1;\n    }\n    function prefinish(stream, state) {\n      if (!state.prefinished && !state.finalCalled)\n        if (typeof stream._final === \"function\" && !state.destroyed)\n          state.finalCalled = !0, callFinal(stream, state);\n        else\n          state.prefinished = !0, stream.emit(\"prefinish\");\n    }\n    function finishMaybe(stream, state, sync) {\n      if (!needFinish(state, stream.__id))\n        return;\n      if (prefinish(stream, state), state.pendingcb === 0) {\n        if (sync)\n          state.pendingcb++, runOnNextTick((stream2, state2) => {\n            if (needFinish(state2))\n              finish(stream2, state2);\n            else\n              state2.pendingcb--;\n          }, stream, state);\n        else if (needFinish(state))\n          state.pendingcb++, finish(stream, state);\n      }\n    }\n    function finish(stream, state) {\n      state.pendingcb--, state.finished = !0;\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++)\n        onfinishCallbacks[i]();\n      if (stream.emit(\"finish\"), state.autoDestroy) {\n        const rState = stream._readableState;\n        if (!rState || rState.autoDestroy && (rState.endEmitted || rState.readable === !1))\n          stream.destroy();\n      }\n    }\n    ObjectDefineProperties(Writable.prototype, {\n      closed: {\n        get() {\n          return this._writableState \? this._writableState.closed : !1;\n        }\n      },\n      destroyed: {\n        get() {\n          return this._writableState \? this._writableState.destroyed : !1;\n        },\n        set(value) {\n          if (this._writableState)\n            this._writableState.destroyed = value;\n        }\n      },\n      writable: {\n        get() {\n          const w = this._writableState;\n          return !!w && w.writable !== !1 && !w.destroyed && !w.errored && !w.ending && !w.ended;\n        },\n        set(val) {\n          if (this._writableState)\n            this._writableState.writable = !!val;\n        }\n      },\n      writableFinished: {\n        get() {\n          return this._writableState \? this._writableState.finished : !1;\n        }\n      },\n      writableObjectMode: {\n        get() {\n          return this._writableState \? this._writableState.objectMode : !1;\n        }\n      },\n      writableBuffer: {\n        get() {\n          return this._writableState && this._writableState.getBuffer();\n        }\n      },\n      writableEnded: {\n        get() {\n          return this._writableState \? this._writableState.ending : !1;\n        }\n      },\n      writableNeedDrain: {\n        get() {\n          const wState = this._writableState;\n          if (!wState)\n            return !1;\n          return !wState.destroyed && !wState.ending && wState.needDrain;\n        }\n      },\n      writableHighWaterMark: {\n        get() {\n          return this._writableState && this._writableState.highWaterMark;\n        }\n      },\n      writableCorked: {\n        get() {\n          return this._writableState \? this._writableState.corked : 0;\n        }\n      },\n      writableLength: {\n        get() {\n          return this._writableState && this._writableState.length;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._writableState \? this._writableState.errored : null;\n        }\n      },\n      writableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._writableState.writable !== !1 && (this._writableState.destroyed || this._writableState.errored) && !this._writableState.finished);\n        }\n      }\n    });\n    var destroy2 = destroyImpl.destroy;\n    Writable.prototype.destroy = function(err, cb) {\n      const state = this._writableState;\n      if (!state.destroyed && (state.bufferedIndex < state.buffered.length || state[kOnFinished].length))\n        runOnNextTick(errorBuffer, state);\n      return destroy2.call(this, err, cb), this;\n    }, Writable.prototype._undestroy = destroyImpl.undestroy, Writable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Writable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    };\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Writable.fromWeb = function(writableStream, options) {\n      return lazyWebStreams().newStreamWritableFromWritableStream(writableStream, options);\n    }, Writable.toWeb = function(streamWritable) {\n      return lazyWebStreams().newWritableStreamFromStreamWritable(streamWritable);\n    };\n  }\n}), require_duplexify = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplexify.js\"(exports, module) {\n    var {\n      isReadable,\n      isWritable,\n      isIterable,\n      isNodeStream,\n      isReadableNodeStream,\n      isWritableNodeStream,\n      isDuplexNodeStream\n    } = require_utils(), eos = require_end_of_stream(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE }\n    } = require_errors(), { destroyer } = require_destroy(), Duplex = require_duplex(), Readable = require_readable(), { createDeferredPromise } = require_util(), from = require_from(), isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    }, { FunctionPrototypeCall } = require_primordials();\n\n    class Duplexify extends Duplex {\n      constructor(options) {\n        super(options);\n        if ((options === null || options === void 0 \? void 0 : options.readable) === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if ((options === null || options === void 0 \? void 0 : options.writable) === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      }\n    }\n    module.exports = function duplexify(body, name) {\n      if (isDuplexNodeStream(body))\n        return body;\n      if (isReadableNodeStream(body))\n        return _duplexify({\n          readable: body\n        });\n      if (isWritableNodeStream(body))\n        return _duplexify({\n          writable: body\n        });\n      if (isNodeStream(body))\n        return _duplexify({\n          writable: !1,\n          readable: !1\n        });\n      if (typeof body === \"function\") {\n        const { value, write, final, destroy: destroy2 } = fromAsyncGen(body);\n        if (isIterable(value))\n          return from(Duplexify, value, {\n            objectMode: !0,\n            write,\n            final,\n            destroy: destroy2\n          });\n        const then2 = value === null || value === void 0 \? void 0 : value.then;\n        if (typeof then2 === \"function\") {\n          let d;\n          const promise = FunctionPrototypeCall(then2, value, (val) => {\n            if (val != null)\n              throw new ERR_INVALID_RETURN_VALUE(\"nully\", \"body\", val);\n          }, (err) => {\n            destroyer(d, err);\n          });\n          return d = new Duplexify({\n            objectMode: !0,\n            readable: !1,\n            write,\n            final(cb) {\n              final(async () => {\n                try {\n                  await promise, runOnNextTick(cb, null);\n                } catch (err) {\n                  runOnNextTick(cb, err);\n                }\n              });\n            },\n            destroy: destroy2\n          });\n        }\n        throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or AsyncFunction\", name, value);\n      }\n      if (isBlob(body))\n        return duplexify(body.arrayBuffer());\n      if (isIterable(body))\n        return from(Duplexify, body, {\n          objectMode: !0,\n          writable: !1\n        });\n      if (typeof (body === null || body === void 0 \? void 0 : body.writable) === \"object\" || typeof (body === null || body === void 0 \? void 0 : body.readable) === \"object\") {\n        const readable = body !== null && body !== void 0 && body.readable \? isReadableNodeStream(body === null || body === void 0 \? void 0 : body.readable) \? body === null || body === void 0 \? void 0 : body.readable : duplexify(body.readable) : void 0, writable = body !== null && body !== void 0 && body.writable \? isWritableNodeStream(body === null || body === void 0 \? void 0 : body.writable) \? body === null || body === void 0 \? void 0 : body.writable : duplexify(body.writable) : void 0;\n        return _duplexify({\n          readable,\n          writable\n        });\n      }\n      const then = body === null || body === void 0 \? void 0 : body.then;\n      if (typeof then === \"function\") {\n        let d;\n        return FunctionPrototypeCall(then, body, (val) => {\n          if (val != null)\n            d.push(val);\n          d.push(null);\n        }, (err) => {\n          destroyer(d, err);\n        }), d = new Duplexify({\n          objectMode: !0,\n          writable: !1,\n          read() {\n          }\n        });\n      }\n      throw new ERR_INVALID_ARG_TYPE2(name, [\n        \"Blob\",\n        \"ReadableStream\",\n        \"WritableStream\",\n        \"Stream\",\n        \"Iterable\",\n        \"AsyncIterable\",\n        \"Function\",\n        \"{ readable, writable } pair\",\n        \"Promise\"\n      ], body);\n    };\n    function fromAsyncGen(fn) {\n      let { promise, resolve } = createDeferredPromise();\n      const ac = new AbortController, signal = ac.signal;\n      return {\n        value: fn(async function* () {\n          while (!0) {\n            const _promise = promise;\n            promise = null;\n            const { chunk, done, cb } = await _promise;\n            if (runOnNextTick(cb), done)\n              return;\n            if (signal.aborted)\n              throw new AbortError2(void 0, {\n                cause: signal.reason\n              });\n            ({ promise, resolve } = createDeferredPromise()), yield chunk;\n          }\n        }(), {\n          signal\n        }),\n        write(chunk, encoding, cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            chunk,\n            done: !1,\n            cb\n          });\n        },\n        final(cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            done: !0,\n            cb\n          });\n        },\n        destroy(err, cb) {\n          ac.abort(), cb(err);\n        }\n      };\n    }\n    function _duplexify(pair) {\n      const r = pair.readable && typeof pair.readable.read !== \"function\" \? Readable.wrap(pair.readable) : pair.readable, w = pair.writable;\n      let readable = !!isReadable(r), writable = !!isWritable(w), ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      if (d = new Duplexify({\n        readableObjectMode: !!(r !== null && r !== void 0 && r.readableObjectMode),\n        writableObjectMode: !!(w !== null && w !== void 0 && w.writableObjectMode),\n        readable,\n        writable\n      }), writable)\n        eos(w, (err) => {\n          if (writable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), d._write = function(chunk, encoding, callback) {\n          if (w.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          w.end(), onfinish = callback;\n        }, w.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), w.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        eos(r, (err) => {\n          if (readable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), r.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), r.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = r.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(w, err), destroyer(r, err);\n      }, d;\n    }\n  }\n}), require_duplex = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplex.js\"(exports, module) {\n    var { ObjectDefineProperties, ObjectGetOwnPropertyDescriptor, ObjectKeys, ObjectSetPrototypeOf } = require_primordials(), Readable = require_readable();\n    function Duplex(options) {\n      if (!(this instanceof Duplex))\n        return new Duplex(options);\n      if (Readable.call(this, options), Writable.call(this, options), options) {\n        if (this.allowHalfOpen = options.allowHalfOpen !== !1, options.readable === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if (options.writable === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      } else\n        this.allowHalfOpen = !0;\n    }\n    Duplex.prototype = {}, module.exports = Duplex, ObjectSetPrototypeOf(Duplex.prototype, Readable.prototype), ObjectSetPrototypeOf(Duplex, Readable);\n    for (var method in Writable.prototype)\n      if (!Duplex.prototype[method])\n        Duplex.prototype[method] = Writable.prototype[method];\n    ObjectDefineProperties(Duplex.prototype, {\n      writable: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writable\"),\n      writableHighWaterMark: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableHighWaterMark\"),\n      writableObjectMode: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableObjectMode\"),\n      writableBuffer: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableBuffer\"),\n      writableLength: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableLength\"),\n      writableFinished: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableFinished\"),\n      writableCorked: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableCorked\"),\n      writableEnded: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableEnded\"),\n      writableNeedDrain: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableNeedDrain\"),\n      destroyed: {\n        get() {\n          if (this._readableState === void 0 || this._writableState === void 0)\n            return !1;\n          return this._readableState.destroyed && this._writableState.destroyed;\n        },\n        set(value) {\n          if (this._readableState && this._writableState)\n            this._readableState.destroyed = value, this._writableState.destroyed = value;\n        }\n      }\n    });\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Duplex.fromWeb = function(pair, options) {\n      return lazyWebStreams().newStreamDuplexFromReadableWritablePair(pair, options);\n    }, Duplex.toWeb = function(duplex) {\n      return lazyWebStreams().newReadableWritablePairFromDuplex(duplex);\n    };\n    var duplexify;\n    Duplex.from = function(body) {\n      if (!duplexify)\n        duplexify = require_duplexify();\n      return duplexify(body, \"body\");\n    };\n  }\n}), require_transform = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/transform.js\"(exports, module) {\n    var { ObjectSetPrototypeOf, Symbol: Symbol2 } = require_primordials(), { ERR_METHOD_NOT_IMPLEMENTED } = require_errors().codes, Duplex = require_duplex();\n    function Transform(options) {\n      if (!(this instanceof Transform))\n        return new Transform(options);\n      if (Duplex.call(this, options), this._readableState.sync = !1, this[kCallback] = null, options) {\n        if (typeof options.transform === \"function\")\n          this._transform = options.transform;\n        if (typeof options.flush === \"function\")\n          this._flush = options.flush;\n      }\n      this.on(\"prefinish\", prefinish.bind(this));\n    }\n    Transform.prototype = {}, ObjectSetPrototypeOf(Transform.prototype, Duplex.prototype), ObjectSetPrototypeOf(Transform, Duplex), module.exports = Transform;\n    var kCallback = Symbol2(\"kCallback\");\n    function final(cb) {\n      if (typeof this._flush === \"function\" && !this.destroyed)\n        this._flush((er, data) => {\n          if (er) {\n            if (cb)\n              cb(er);\n            else\n              this.destroy(er);\n            return;\n          }\n          if (data != null)\n            this.push(data);\n          if (this.push(null), cb)\n            cb();\n        });\n      else if (this.push(null), cb)\n        cb();\n    }\n    function prefinish() {\n      if (this._final !== final)\n        final.call(this);\n    }\n    Transform.prototype._final = final, Transform.prototype._transform = function(chunk, encoding, callback) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_transform()\");\n    }, Transform.prototype._write = function(chunk, encoding, callback) {\n      const rState = this._readableState, wState = this._writableState, length = rState.length;\n      this._transform(chunk, encoding, (err, val) => {\n        if (err) {\n          callback(err);\n          return;\n        }\n        if (val != null)\n          this.push(val);\n        if (wState.ended || length === rState.length || rState.length < rState.highWaterMark || rState.highWaterMark === 0 || rState.length === 0)\n          callback();\n        else\n          this[kCallback] = callback;\n      });\n    }, Transform.prototype._read = function() {\n      if (this[kCallback]) {\n        const callback = this[kCallback];\n        this[kCallback] = null, callback();\n      }\n    };\n  }\n}), require_passthrough = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/passthrough.js\"(exports, module) {\n    var { ObjectSetPrototypeOf } = require_primordials(), Transform = require_transform();\n    function PassThrough(options) {\n      if (!(this instanceof PassThrough))\n        return new PassThrough(options);\n      Transform.call(this, options);\n    }\n    PassThrough.prototype = {}, ObjectSetPrototypeOf(PassThrough.prototype, Transform.prototype), ObjectSetPrototypeOf(PassThrough, Transform), PassThrough.prototype._transform = function(chunk, encoding, cb) {\n      cb(null, chunk);\n    }, module.exports = PassThrough;\n  }\n}), require_pipeline = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/pipeline.js\"(exports, module) {\n    var { ArrayIsArray, Promise: Promise2, SymbolAsyncIterator } = require_primordials(), eos = require_end_of_stream(), { once } = require_util(), destroyImpl = require_destroy(), Duplex = require_duplex(), {\n      aggregateTwoErrors,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE, ERR_MISSING_ARGS, ERR_STREAM_DESTROYED },\n      AbortError: AbortError2\n    } = require_errors(), { validateFunction, validateAbortSignal } = require_validators(), { isIterable, isReadable, isReadableNodeStream, isNodeStream } = require_utils(), PassThrough, Readable;\n    function destroyer(stream, reading, writing) {\n      let finished = !1;\n      stream.on(\"close\", () => {\n        finished = !0;\n      });\n      const cleanup = eos(stream, {\n        readable: reading,\n        writable: writing\n      }, (err) => {\n        finished = !err;\n      });\n      return {\n        destroy: (err) => {\n          if (finished)\n            return;\n          finished = !0, destroyImpl.destroyer(stream, err || new ERR_STREAM_DESTROYED(\"pipe\"));\n        },\n        cleanup\n      };\n    }\n    function popCallback(streams) {\n      return validateFunction(streams[streams.length - 1], \"streams[stream.length - 1]\"), streams.pop();\n    }\n    function makeAsyncIterable(val) {\n      if (isIterable(val))\n        return val;\n      else if (isReadableNodeStream(val))\n        return fromReadable(val);\n      throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], val);\n    }\n    async function* fromReadable(val) {\n      if (!Readable)\n        Readable = require_readable();\n      yield* Readable.prototype[SymbolAsyncIterator].call(val);\n    }\n    async function pump(iterable, writable, finish, { end }) {\n      let error, onresolve = null;\n      const resume = (err) => {\n        if (err)\n          error = err;\n        if (onresolve) {\n          const callback = onresolve;\n          onresolve = null, callback();\n        }\n      }, wait = () => new Promise2((resolve, reject) => {\n        if (error)\n          reject(error);\n        else\n          onresolve = () => {\n            if (error)\n              reject(error);\n            else\n              resolve();\n          };\n      });\n      writable.on(\"drain\", resume);\n      const cleanup = eos(writable, {\n        readable: !1\n      }, resume);\n      try {\n        if (writable.writableNeedDrain)\n          await wait();\n        for await (let chunk of iterable)\n          if (!writable.write(chunk))\n            await wait();\n        if (end)\n          writable.end();\n        await wait(), finish();\n      } catch (err) {\n        finish(error !== err \? aggregateTwoErrors(error, err) : err);\n      } finally {\n        cleanup(), writable.off(\"drain\", resume);\n      }\n    }\n    function pipeline(...streams) {\n      return pipelineImpl(streams, once(popCallback(streams)));\n    }\n    function pipelineImpl(streams, callback, opts) {\n      if (streams.length === 1 && ArrayIsArray(streams[0]))\n        streams = streams[0];\n      if (streams.length < 2)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      const ac = new AbortController, signal = ac.signal, outerSignal = opts === null || opts === void 0 \? void 0 : opts.signal, lastStreamCleanup = [];\n      validateAbortSignal(outerSignal, \"options.signal\");\n      function abort() {\n        finishImpl(new AbortError2);\n      }\n      outerSignal === null || outerSignal === void 0 || outerSignal.addEventListener(\"abort\", abort);\n      let error, value;\n      const destroys = [];\n      let finishCount = 0;\n      function finish(err) {\n        finishImpl(err, --finishCount === 0);\n      }\n      function finishImpl(err, final) {\n        if (err && (!error || error.code === \"ERR_STREAM_PREMATURE_CLOSE\"))\n          error = err;\n        if (!error && !final)\n          return;\n        while (destroys.length)\n          destroys.shift()(error);\n        if (outerSignal === null || outerSignal === void 0 || outerSignal.removeEventListener(\"abort\", abort), ac.abort(), final) {\n          if (!error)\n            lastStreamCleanup.forEach((fn) => fn());\n          runOnNextTick(callback, error, value);\n        }\n      }\n      let ret;\n      for (let i = 0;i < streams.length; i++) {\n        const stream = streams[i], reading = i < streams.length - 1, writing = i > 0, end = reading || (opts === null || opts === void 0 \? void 0 : opts.end) !== !1, isLastStream = i === streams.length - 1;\n        if (isNodeStream(stream)) {\n          let onError = function(err) {\n            if (err && err.name !== \"AbortError\" && err.code !== \"ERR_STREAM_PREMATURE_CLOSE\")\n              finish(err);\n          };\n          if (end) {\n            const { destroy: destroy2, cleanup } = destroyer(stream, reading, writing);\n            if (destroys.push(destroy2), isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n          if (stream.on(\"error\", onError), isReadable(stream) && isLastStream)\n            lastStreamCleanup.push(() => {\n              stream.removeListener(\"error\", onError);\n            });\n        }\n        if (i === 0)\n          if (typeof stream === \"function\") {\n            if (ret = stream({\n              signal\n            }), !isIterable(ret))\n              throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or Stream\", \"source\", ret);\n          } else if (isIterable(stream) || isReadableNodeStream(stream))\n            ret = stream;\n          else\n            ret = Duplex.from(stream);\n        else if (typeof stream === \"function\")\n          if (ret = makeAsyncIterable(ret), ret = stream(ret, {\n            signal\n          }), reading) {\n            if (!isIterable(ret, !0))\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable\", `transform[${i - 1}]`, ret);\n          } else {\n            var _ret;\n            if (!PassThrough)\n              PassThrough = require_passthrough();\n            const pt = new PassThrough({\n              objectMode: !0\n            }), then = (_ret = ret) === null || _ret === void 0 \? void 0 : _ret.then;\n            if (typeof then === \"function\")\n              finishCount++, then.call(ret, (val) => {\n                if (value = val, val != null)\n                  pt.write(val);\n                if (end)\n                  pt.end();\n                runOnNextTick(finish);\n              }, (err) => {\n                pt.destroy(err), runOnNextTick(finish, err);\n              });\n            else if (isIterable(ret, !0))\n              finishCount++, pump(ret, pt, finish, {\n                end\n              });\n            else\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable or Promise\", \"destination\", ret);\n            ret = pt;\n            const { destroy: destroy2, cleanup } = destroyer(ret, !1, !0);\n            if (destroys.push(destroy2), isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n        else if (isNodeStream(stream)) {\n          if (isReadableNodeStream(ret)) {\n            finishCount += 2;\n            const cleanup = pipe(ret, stream, finish, {\n              end\n            });\n            if (isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          } else if (isIterable(ret))\n            finishCount++, pump(ret, stream, finish, {\n              end\n            });\n          else\n            throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], ret);\n          ret = stream;\n        } else\n          ret = Duplex.from(stream);\n      }\n      if (signal !== null && signal !== void 0 && signal.aborted || outerSignal !== null && outerSignal !== void 0 && outerSignal.aborted)\n        runOnNextTick(abort);\n      return ret;\n    }\n    function pipe(src, dst, finish, { end }) {\n      if (src.pipe(dst, {\n        end\n      }), end)\n        src.once(\"end\", () => dst.end());\n      else\n        finish();\n      return eos(src, {\n        readable: !0,\n        writable: !1\n      }, (err) => {\n        const rState = src._readableState;\n        if (err && err.code === \"ERR_STREAM_PREMATURE_CLOSE\" && rState && rState.ended && !rState.errored && !rState.errorEmitted)\n          src.once(\"end\", finish).once(\"error\", finish);\n        else\n          finish(err);\n      }), eos(dst, {\n        readable: !1,\n        writable: !0\n      }, finish);\n    }\n    module.exports = {\n      pipelineImpl,\n      pipeline\n    };\n  }\n}), require_compose = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/compose.js\"(exports, module) {\n    var { pipeline } = require_pipeline(), Duplex = require_duplex(), { destroyer } = require_destroy(), { isNodeStream, isReadable, isWritable } = require_utils(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_MISSING_ARGS }\n    } = require_errors();\n    module.exports = function compose(...streams) {\n      if (streams.length === 0)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      if (streams.length === 1)\n        return Duplex.from(streams[0]);\n      const orgStreams = [...streams];\n      if (typeof streams[0] === \"function\")\n        streams[0] = Duplex.from(streams[0]);\n      if (typeof streams[streams.length - 1] === \"function\") {\n        const idx = streams.length - 1;\n        streams[idx] = Duplex.from(streams[idx]);\n      }\n      for (let n = 0;n < streams.length; ++n) {\n        if (!isNodeStream(streams[n]))\n          continue;\n        if (n < streams.length - 1 && !isReadable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be readable\");\n        if (n > 0 && !isWritable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be writable\");\n      }\n      let ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      const head = streams[0], tail = pipeline(streams, onfinished), writable = !!isWritable(head), readable = !!isReadable(tail);\n      if (d = new Duplex({\n        writableObjectMode: !!(head !== null && head !== void 0 && head.writableObjectMode),\n        readableObjectMode: !!(tail !== null && tail !== void 0 && tail.writableObjectMode),\n        writable,\n        readable\n      }), writable)\n        d._write = function(chunk, encoding, callback) {\n          if (head.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          head.end(), onfinish = callback;\n        }, head.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), tail.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        tail.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), tail.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = tail.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(tail, err);\n      }, d;\n    };\n  }\n}), require_promises = __commonJS({\n  \"node_modules/readable-stream/lib/stream/promises.js\"(exports, module) {\n    var { ArrayPrototypePop, Promise: Promise2 } = require_primordials(), { isIterable, isNodeStream } = require_utils(), { pipelineImpl: pl } = require_pipeline(), { finished } = require_end_of_stream();\n    function pipeline(...streams) {\n      return new Promise2((resolve, reject) => {\n        let signal, end;\n        const lastArg = streams[streams.length - 1];\n        if (lastArg && typeof lastArg === \"object\" && !isNodeStream(lastArg) && !isIterable(lastArg)) {\n          const options = ArrayPrototypePop(streams);\n          signal = options.signal, end = options.end;\n        }\n        pl(streams, (err, value) => {\n          if (err)\n            reject(err);\n          else\n            resolve(value);\n        }, {\n          signal,\n          end\n        });\n      });\n    }\n    module.exports = {\n      finished,\n      pipeline\n    };\n  }\n}), require_stream = __commonJS({\n  \"node_modules/readable-stream/lib/stream.js\"(exports, module) {\n    var { ObjectDefineProperty, ObjectKeys, ReflectApply } = require_primordials(), {\n      promisify: { custom: customPromisify }\n    } = require_util(), { streamReturningOperators, promiseReturningOperators } = require_operators(), {\n      codes: { ERR_ILLEGAL_CONSTRUCTOR }\n    } = require_errors(), compose = require_compose(), { pipeline } = require_pipeline(), { destroyer } = require_destroy(), eos = require_end_of_stream(), promises = require_promises(), utils = require_utils(), Stream = module.exports = require_legacy().Stream;\n    Stream.isDisturbed = utils.isDisturbed, Stream.isErrored = utils.isErrored, Stream.isWritable = utils.isWritable, Stream.isReadable = utils.isReadable, Stream.Readable = require_readable();\n    for (let key of ObjectKeys(streamReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return Stream.Readable.from(ReflectApply(op, this, args));\n      };\n      const op = streamReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    for (let key of ObjectKeys(promiseReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return ReflectApply(op, this, args);\n      };\n      const op = promiseReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    Stream.Writable = require_writable(), Stream.Duplex = require_duplex(), Stream.Transform = require_transform(), Stream.PassThrough = require_passthrough(), Stream.pipeline = pipeline;\n    var { addAbortSignal } = require_add_abort_signal();\n    Stream.addAbortSignal = addAbortSignal, Stream.finished = eos, Stream.destroy = destroyer, Stream.compose = compose, ObjectDefineProperty(Stream, \"promises\", {\n      configurable: !0,\n      enumerable: !0,\n      get() {\n        return promises;\n      }\n    }), ObjectDefineProperty(pipeline, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.pipeline;\n      }\n    }), ObjectDefineProperty(eos, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.finished;\n      }\n    }), Stream.Stream = Stream, Stream._isUint8Array = function isUint8Array(value) {\n      return value instanceof Uint8Array;\n    }, Stream._uint8ArrayToBuffer = function _uint8ArrayToBuffer(chunk) {\n      return new Buffer(chunk.buffer, chunk.byteOffset, chunk.byteLength);\n    };\n  }\n}), nativeReadableStreamPrototypes = {\n  0: void 0,\n  1: void 0,\n  2: void 0,\n  3: void 0,\n  4: void 0,\n  5: void 0\n}, Writable = require_writable(), NativeWritable = class NativeWritable2 extends Writable {\n  #pathOrFdOrSink;\n  #fileSink;\n  #native = !0;\n  _construct;\n  _destroy;\n  _final;\n  constructor(pathOrFdOrSink, options = {}) {\n    super(options);\n    this._construct = this.#internalConstruct, this._destroy = this.#internalDestroy, this._final = this.#internalFinal, this.#pathOrFdOrSink = pathOrFdOrSink;\n  }\n  #internalConstruct(cb) {\n    if (this._writableState.constructed = !0, this.constructed = !0, typeof cb === \"function\")\n      cb();\n    process.nextTick(() => {\n      this.emit(\"open\", this.fd), this.emit(\"ready\");\n    });\n  }\n  #lazyConstruct() {\n    if (typeof this.#pathOrFdOrSink === \"object\")\n      if (typeof this.#pathOrFdOrSink.write === \"function\")\n        this.#fileSink = this.#pathOrFdOrSink;\n      else\n        throw new Error(\"Invalid FileSink\");\n    else\n      this.#fileSink = Bun.file(this.#pathOrFdOrSink).writer();\n  }\n  write(chunk, encoding, cb, native = this.#native) {\n    if (!native)\n      return this.#native = !1, super.write(chunk, encoding, cb);\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    var fileSink = this.#fileSink, result = fileSink.write(chunk);\n    if (@isPromise(result))\n      return result.then(() => {\n        this.emit(\"drain\"), fileSink.flush(!0);\n      }), !1;\n    if (fileSink.flush(!0), cb)\n      cb(null, chunk.byteLength);\n    return !0;\n  }\n  end(chunk, encoding, cb, native = this.#native) {\n    return super.end(chunk, encoding, cb, native);\n  }\n  #internalDestroy(error, cb) {\n    const w = this._writableState, r = this._readableState;\n    if (w)\n      w.destroyed = !0, w.closeEmitted = !0;\n    if (r)\n      r.destroyed = !0, r.closeEmitted = !0;\n    if (typeof cb === \"function\")\n      cb(error);\n    if (w\?.closeEmitted || r\?.closeEmitted)\n      this.emit(\"close\");\n  }\n  #internalFinal(cb) {\n    if (this.#fileSink)\n      this.#fileSink.end();\n    if (cb)\n      cb();\n  }\n  ref() {\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    this.#fileSink.ref();\n  }\n  unref() {\n    if (!this.#fileSink)\n      return;\n    this.#fileSink.unref();\n  }\n}, exports = require_stream(), promises = require_promises();\nexports._getNativeReadableStreamPrototype = getNativeReadableStreamPrototype;\nexports.NativeWritable = NativeWritable;\nObject.defineProperty(exports, \"promises\", {\n  configurable: !0,\n  enumerable: !0,\n  get() {\n    return promises;\n  }\n});\nexports[Symbol.for(\"::bunternal::\")] = { _ReadableFromWeb, _ReadableFromWebForUndici };\nexports.eos = require_end_of_stream();\nexports.EventEmitter = EE;\nvar Duplex = exports.Duplex;\nreturn exports})\n"_s; +static constexpr ASCIILiteral NodeStreamCode = "(function (){\"use strict\";// src/js/out/tmp/node/stream.ts\nvar isReadableStream = function(value) {\n  return typeof value === \"object\" && value !== null && value instanceof ReadableStream;\n}, validateBoolean = function(value, name) {\n  if (typeof value !== \"boolean\")\n    throw new ERR_INVALID_ARG_TYPE(name, \"boolean\", value);\n};\nvar ERR_INVALID_ARG_TYPE = function(name, type, value) {\n  return new Error(`The argument '${name}' is invalid. Received '${value}' for type '${type}'`);\n}, ERR_INVALID_ARG_VALUE = function(name, value, reason) {\n  return new Error(`The value '${value}' is invalid for argument '${name}'. Reason: ${reason}`);\n}, createNativeStreamReadable = function(nativeType, Readable) {\n  var [pull, start, cancel, setClose, deinit, updateRef, drainFn] = globalThis[globalThis.Symbol.for('Bun.lazy')](nativeType), closer = [!1], handleNumberResult = function(nativeReadable, result, view, isClosed) {\n    if (result > 0) {\n      const slice = view.subarray(0, result), remainder = view.subarray(result);\n      if (slice.byteLength > 0)\n        nativeReadable.push(slice);\n      if (isClosed)\n        nativeReadable.push(null);\n      return remainder.byteLength > 0 \? remainder : void 0;\n    }\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, handleArrayBufferViewResult = function(nativeReadable, result, view, isClosed) {\n    if (result.byteLength > 0)\n      nativeReadable.push(result);\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, DYNAMICALLY_ADJUST_CHUNK_SIZE = process.env.BUN_DISABLE_DYNAMIC_CHUNK_SIZE !== \"1\";\n  const finalizer = new FinalizationRegistry((ptr) => ptr && deinit(ptr)), MIN_BUFFER_SIZE = 512;\n  var NativeReadable = class NativeReadable2 extends Readable {\n    #bunNativePtr;\n    #refCount = 1;\n    #constructed = !1;\n    #remainingChunk = void 0;\n    #highWaterMark;\n    #pendingRead = !1;\n    #hasResized = !DYNAMICALLY_ADJUST_CHUNK_SIZE;\n    #unregisterToken;\n    constructor(ptr, options = {}) {\n      super(options);\n      if (typeof options.highWaterMark === \"number\")\n        this.#highWaterMark = options.highWaterMark;\n      else\n        this.#highWaterMark = 262144;\n      this.#bunNativePtr = ptr, this.#constructed = !1, this.#remainingChunk = void 0, this.#pendingRead = !1, this.#unregisterToken = {}, finalizer.register(this, this.#bunNativePtr, this.#unregisterToken);\n    }\n    _read(maxToRead) {\n      if (this.#pendingRead)\n        return;\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        this.push(null);\n        return;\n      }\n      if (!this.#constructed)\n        this.#internalConstruct(ptr);\n      return this.#internalRead(this.#getRemainingChunk(maxToRead), ptr);\n    }\n    #internalConstruct(ptr) {\n      this.#constructed = !0;\n      const result = start(ptr, this.#highWaterMark);\n      if (typeof result === \"number\" && result > 1)\n        this.#hasResized = !0, this.#highWaterMark = Math.min(this.#highWaterMark, result);\n      if (drainFn) {\n        const drainResult = drainFn(ptr);\n        if ((drainResult\?.byteLength \?\? 0) > 0)\n          this.push(drainResult);\n      }\n    }\n    #getRemainingChunk(maxToRead = this.#highWaterMark) {\n      var chunk = this.#remainingChunk;\n      if (chunk\?.byteLength \?\? 0 < MIN_BUFFER_SIZE) {\n        var size = maxToRead > MIN_BUFFER_SIZE \? maxToRead : MIN_BUFFER_SIZE;\n        this.#remainingChunk = chunk = new Buffer(size);\n      }\n      return chunk;\n    }\n    #handleResult(result, view, isClosed) {\n      if (typeof result === \"number\") {\n        if (result >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleNumberResult(this, result, view, isClosed);\n      } else if (typeof result === \"boolean\")\n        return process.nextTick(() => {\n          this.push(null);\n        }), view\?.byteLength \?\? 0 > 0 \? view : void 0;\n      else if (ArrayBuffer.isView(result)) {\n        if (result.byteLength >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleArrayBufferViewResult(this, result, view, isClosed);\n      } else\n        throw new Error(\"Invalid result from pull\");\n    }\n    #internalRead(view, ptr) {\n      closer[0] = !1;\n      var result = pull(ptr, view, closer);\n      if (@isPromise(result))\n        return this.#pendingRead = !0, result.then((result2) => {\n          this.#pendingRead = !1, this.#remainingChunk = this.#handleResult(result2, view, closer[0]);\n        }, (reason) => {\n          errorOrDestroy(this, reason);\n        });\n      else\n        this.#remainingChunk = this.#handleResult(result, view, closer[0]);\n    }\n    _destroy(error, callback) {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        callback(error);\n        return;\n      }\n      if (finalizer.unregister(this.#unregisterToken), this.#bunNativePtr = 0, updateRef)\n        updateRef(ptr, !1);\n      cancel(ptr, error), callback(error);\n    }\n    ref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount++ === 0)\n        updateRef(ptr, !0);\n    }\n    unref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount-- === 1)\n        updateRef(ptr, !1);\n    }\n  };\n  if (!updateRef)\n    NativeReadable.prototype.ref = void 0, NativeReadable.prototype.unref = void 0;\n  return NativeReadable;\n}, getNativeReadableStreamPrototype = function(nativeType, Readable) {\n  return nativeReadableStreamPrototypes[nativeType] ||= createNativeStreamReadable(nativeType, Readable);\n}, getNativeReadableStream = function(Readable, stream, options) {\n  if (!(stream && typeof stream === \"object\" && stream instanceof ReadableStream))\n    return;\n  const native = @direct(stream);\n  if (!native)\n    return;\n  const { stream: ptr, data: type } = native;\n  return new (getNativeReadableStreamPrototype(type, Readable))(ptr, options);\n}, EE = globalThis[globalThis.Symbol.for('Bun.lazy')](\"events\"), StringDecoder = @requireNativeModule(\"string_decoder\").StringDecoder, __getOwnPropNames = Object.getOwnPropertyNames, __commonJS = (cb, mod) => function __require2() {\n  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n}, runOnNextTick = process.nextTick;\nvar ArrayIsArray = Array.isArray, require_primordials = __commonJS({\n  \"node_modules/readable-stream/lib/ours/primordials.js\"(exports, module) {\n    module.exports = {\n      ArrayIsArray(self) {\n        return Array.isArray(self);\n      },\n      ArrayPrototypeIncludes(self, el) {\n        return self.includes(el);\n      },\n      ArrayPrototypeIndexOf(self, el) {\n        return self.indexOf(el);\n      },\n      ArrayPrototypeJoin(self, sep) {\n        return self.join(sep);\n      },\n      ArrayPrototypeMap(self, fn) {\n        return self.map(fn);\n      },\n      ArrayPrototypePop(self, el) {\n        return self.pop(el);\n      },\n      ArrayPrototypePush(self, el) {\n        return self.push(el);\n      },\n      ArrayPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      Error,\n      FunctionPrototypeCall(fn, thisArgs, ...args) {\n        return fn.call(thisArgs, ...args);\n      },\n      FunctionPrototypeSymbolHasInstance(self, instance) {\n        return Function.prototype[Symbol.hasInstance].call(self, instance);\n      },\n      MathFloor: Math.floor,\n      Number,\n      NumberIsInteger: Number.isInteger,\n      NumberIsNaN: Number.isNaN,\n      NumberMAX_SAFE_INTEGER: Number.MAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER: Number.MIN_SAFE_INTEGER,\n      NumberParseInt: Number.parseInt,\n      ObjectDefineProperties(self, props) {\n        return Object.defineProperties(self, props);\n      },\n      ObjectDefineProperty(self, name, prop) {\n        return Object.defineProperty(self, name, prop);\n      },\n      ObjectGetOwnPropertyDescriptor(self, name) {\n        return Object.getOwnPropertyDescriptor(self, name);\n      },\n      ObjectKeys(obj) {\n        return Object.keys(obj);\n      },\n      ObjectSetPrototypeOf(target, proto) {\n        return Object.setPrototypeOf(target, proto);\n      },\n      Promise,\n      PromisePrototypeCatch(self, fn) {\n        return self.catch(fn);\n      },\n      PromisePrototypeThen(self, thenFn, catchFn) {\n        return self.then(thenFn, catchFn);\n      },\n      PromiseReject(err) {\n        return Promise.reject(err);\n      },\n      ReflectApply: Reflect.apply,\n      RegExpPrototypeTest(self, value) {\n        return self.test(value);\n      },\n      SafeSet: Set,\n      String,\n      StringPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      StringPrototypeToLowerCase(self) {\n        return self.toLowerCase();\n      },\n      StringPrototypeToUpperCase(self) {\n        return self.toUpperCase();\n      },\n      StringPrototypeTrim(self) {\n        return self.trim();\n      },\n      Symbol,\n      SymbolAsyncIterator: Symbol.asyncIterator,\n      SymbolHasInstance: Symbol.hasInstance,\n      SymbolIterator: Symbol.iterator,\n      TypedArrayPrototypeSet(self, buf, len) {\n        return self.set(buf, len);\n      },\n      Uint8Array\n    };\n  }\n}), require_util = __commonJS({\n  \"node_modules/readable-stream/lib/ours/util.js\"(exports, module) {\n    var AsyncFunction = Object.getPrototypeOf(async function() {\n    }).constructor, isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    }, AggregateError = class extends Error {\n      constructor(errors) {\n        if (!Array.isArray(errors))\n          @throwTypeError(`Expected input to be an Array, got ${typeof errors}`);\n        let message = \"\";\n        for (let i = 0;i < errors.length; i++)\n          message += `    ${errors[i].stack}\n`;\n        super(message);\n        this.name = \"AggregateError\", this.errors = errors;\n      }\n    };\n    module.exports = {\n      AggregateError,\n      once(callback) {\n        let called = !1;\n        return function(...args) {\n          if (called)\n            return;\n          called = !0, callback.apply(this, args);\n        };\n      },\n      createDeferredPromise: function() {\n        let resolve, reject;\n        return {\n          promise: new Promise((res, rej) => {\n            resolve = res, reject = rej;\n          }),\n          resolve,\n          reject\n        };\n      },\n      promisify(fn) {\n        return new Promise((resolve, reject) => {\n          fn((err, ...args) => {\n            if (err)\n              return reject(err);\n            return resolve(...args);\n          });\n        });\n      },\n      debuglog() {\n        return function() {\n        };\n      },\n      format(format, ...args) {\n        return format.replace(/%([sdifj])/g, function(...[_unused, type]) {\n          const replacement = args.shift();\n          if (type === \"f\")\n            return replacement.toFixed(6);\n          else if (type === \"j\")\n            return JSON.stringify(replacement);\n          else if (type === \"s\" && typeof replacement === \"object\")\n            return `${replacement.constructor !== Object \? replacement.constructor.name : \"\"} {}`.trim();\n          else\n            return replacement.toString();\n        });\n      },\n      inspect(value) {\n        switch (typeof value) {\n          case \"string\":\n            if (value.includes(\"'\")) {\n              if (!value.includes('\"'))\n                return `\"${value}\"`;\n              else if (!value.includes(\"`\") && !value.includes(\"${\"))\n                return `\\`${value}\\``;\n            }\n            return `'${value}'`;\n          case \"number\":\n            if (isNaN(value))\n              return \"NaN\";\n            else if (Object.is(value, -0))\n              return String(value);\n            return value;\n          case \"bigint\":\n            return `${String(value)}n`;\n          case \"boolean\":\n          case \"undefined\":\n            return String(value);\n          case \"object\":\n            return \"{}\";\n        }\n      },\n      types: {\n        isAsyncFunction(fn) {\n          return fn instanceof AsyncFunction;\n        },\n        isArrayBufferView(arr) {\n          return ArrayBuffer.isView(arr);\n        }\n      },\n      isBlob\n    }, module.exports.promisify.custom = Symbol.for(\"nodejs.util.promisify.custom\");\n  }\n}), require_errors = __commonJS({\n  \"node_modules/readable-stream/lib/ours/errors.js\"(exports, module) {\n    var { format, inspect, AggregateError: CustomAggregateError } = require_util(), AggregateError = globalThis.AggregateError || CustomAggregateError, kIsNodeError = Symbol(\"kIsNodeError\"), kTypes = [\"string\", \"function\", \"number\", \"object\", \"Function\", \"Object\", \"boolean\", \"bigint\", \"symbol\"], classRegExp = /^([A-Z][a-z0-9]*)+$/, nodeInternalPrefix = \"__node_internal_\", codes = {};\n    function assert(value, message) {\n      if (!value)\n        throw new codes.ERR_INTERNAL_ASSERTION(message);\n    }\n    function addNumericalSeparator(val) {\n      let res = \"\", i = val.length;\n      const start = val[0] === \"-\" \? 1 : 0;\n      for (;i >= start + 4; i -= 3)\n        res = `_${val.slice(i - 3, i)}${res}`;\n      return `${val.slice(0, i)}${res}`;\n    }\n    function getMessage(key, msg, args) {\n      if (typeof msg === \"function\")\n        return assert(msg.length <= args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${msg.length}).`), msg(...args);\n      const expectedLength = (msg.match(/%[dfijoOs]/g) || []).length;\n      if (assert(expectedLength === args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${expectedLength}).`), args.length === 0)\n        return msg;\n      return format(msg, ...args);\n    }\n    function E(code, message, Base) {\n      if (!Base)\n        Base = Error;\n\n      class NodeError extends Base {\n        constructor(...args) {\n          super(getMessage(code, message, args));\n        }\n        toString() {\n          return `${this.name} [${code}]: ${this.message}`;\n        }\n      }\n      Object.defineProperties(NodeError.prototype, {\n        name: {\n          value: Base.name,\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        },\n        toString: {\n          value() {\n            return `${this.name} [${code}]: ${this.message}`;\n          },\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        }\n      }), NodeError.prototype.code = code, NodeError.prototype[kIsNodeError] = !0, codes[code] = NodeError;\n    }\n    function hideStackFrames(fn) {\n      const hidden = nodeInternalPrefix + fn.name;\n      return Object.defineProperty(fn, \"name\", {\n        value: hidden\n      }), fn;\n    }\n    function aggregateTwoErrors(innerError, outerError) {\n      if (innerError && outerError && innerError !== outerError) {\n        if (Array.isArray(outerError.errors))\n          return outerError.errors.push(innerError), outerError;\n        const err = new AggregateError([outerError, innerError], outerError.message);\n        return err.code = outerError.code, err;\n      }\n      return innerError || outerError;\n    }\n    var AbortError2 = class extends Error {\n      constructor(message = \"The operation was aborted\", options = void 0) {\n        if (options !== void 0 && typeof options !== \"object\")\n          throw new codes.ERR_INVALID_ARG_TYPE(\"options\", \"Object\", options);\n        super(message, options);\n        this.code = \"ABORT_ERR\", this.name = \"AbortError\";\n      }\n    };\n    E(\"ERR_ASSERTION\", \"%s\", Error), E(\"ERR_INVALID_ARG_TYPE\", (name, expected, actual) => {\n      if (assert(typeof name === \"string\", \"'name' must be a string\"), !Array.isArray(expected))\n        expected = [expected];\n      let msg = \"The \";\n      if (name.endsWith(\" argument\"))\n        msg += `${name} `;\n      else\n        msg += `\"${name}\" ${name.includes(\".\") \? \"property\" : \"argument\"} `;\n      msg += \"must be \";\n      const types = [], instances = [], other = [];\n      for (let value of expected)\n        if (assert(typeof value === \"string\", \"All expected entries have to be of type string\"), kTypes.includes(value))\n          types.push(value.toLowerCase());\n        else if (classRegExp.test(value))\n          instances.push(value);\n        else\n          assert(value !== \"object\", 'The value \"object\" should be written as \"Object\"'), other.push(value);\n      if (instances.length > 0) {\n        const pos = types.indexOf(\"object\");\n        if (pos !== -1)\n          types.splice(types, pos, 1), instances.push(\"Object\");\n      }\n      if (types.length > 0) {\n        switch (types.length) {\n          case 1:\n            msg += `of type ${types[0]}`;\n            break;\n          case 2:\n            msg += `one of type ${types[0]} or ${types[1]}`;\n            break;\n          default: {\n            const last = types.pop();\n            msg += `one of type ${types.join(\", \")}, or ${last}`;\n          }\n        }\n        if (instances.length > 0 || other.length > 0)\n          msg += \" or \";\n      }\n      if (instances.length > 0) {\n        switch (instances.length) {\n          case 1:\n            msg += `an instance of ${instances[0]}`;\n            break;\n          case 2:\n            msg += `an instance of ${instances[0]} or ${instances[1]}`;\n            break;\n          default: {\n            const last = instances.pop();\n            msg += `an instance of ${instances.join(\", \")}, or ${last}`;\n          }\n        }\n        if (other.length > 0)\n          msg += \" or \";\n      }\n      switch (other.length) {\n        case 0:\n          break;\n        case 1:\n          if (other[0].toLowerCase() !== other[0])\n            msg += \"an \";\n          msg += `${other[0]}`;\n          break;\n        case 2:\n          msg += `one of ${other[0]} or ${other[1]}`;\n          break;\n        default: {\n          const last = other.pop();\n          msg += `one of ${other.join(\", \")}, or ${last}`;\n        }\n      }\n      if (actual == null)\n        msg += `. Received ${actual}`;\n      else if (typeof actual === \"function\" && actual.name)\n        msg += `. Received function ${actual.name}`;\n      else if (typeof actual === \"object\") {\n        var _actual$constructor;\n        if ((_actual$constructor = actual.constructor) !== null && _actual$constructor !== void 0 && _actual$constructor.name)\n          msg += `. Received an instance of ${actual.constructor.name}`;\n        else {\n          const inspected = inspect(actual, {\n            depth: -1\n          });\n          msg += `. Received ${inspected}`;\n        }\n      } else {\n        let inspected = inspect(actual, {\n          colors: !1\n        });\n        if (inspected.length > 25)\n          inspected = `${inspected.slice(0, 25)}...`;\n        msg += `. Received type ${typeof actual} (${inspected})`;\n      }\n      return msg;\n    }, TypeError), E(\"ERR_INVALID_ARG_VALUE\", (name, value, reason = \"is invalid\") => {\n      let inspected = inspect(value);\n      if (inspected.length > 128)\n        inspected = inspected.slice(0, 128) + \"...\";\n      return `The ${name.includes(\".\") \? \"property\" : \"argument\"} '${name}' ${reason}. Received ${inspected}`;\n    }, TypeError), E(\"ERR_INVALID_RETURN_VALUE\", (input, name, value) => {\n      var _value$constructor;\n      const type = value !== null && value !== void 0 && (_value$constructor = value.constructor) !== null && _value$constructor !== void 0 && _value$constructor.name \? `instance of ${value.constructor.name}` : `type ${typeof value}`;\n      return `Expected ${input} to be returned from the \"${name}\" function but got ${type}.`;\n    }, TypeError), E(\"ERR_MISSING_ARGS\", (...args) => {\n      assert(args.length > 0, \"At least one arg needs to be specified\");\n      let msg;\n      const len = args.length;\n      switch (args = (Array.isArray(args) \? args : [args]).map((a) => `\"${a}\"`).join(\" or \"), len) {\n        case 1:\n          msg += `The ${args[0]} argument`;\n          break;\n        case 2:\n          msg += `The ${args[0]} and ${args[1]} arguments`;\n          break;\n        default:\n          {\n            const last = args.pop();\n            msg += `The ${args.join(\", \")}, and ${last} arguments`;\n          }\n          break;\n      }\n      return `${msg} must be specified`;\n    }, TypeError), E(\"ERR_OUT_OF_RANGE\", (str, range, input) => {\n      assert(range, 'Missing \"range\" argument');\n      let received;\n      if (Number.isInteger(input) && Math.abs(input) > 4294967296)\n        received = addNumericalSeparator(String(input));\n      else if (typeof input === \"bigint\") {\n        if (received = String(input), input > 2n ** 32n || input < -(2n ** 32n))\n          received = addNumericalSeparator(received);\n        received += \"n\";\n      } else\n        received = inspect(input);\n      return `The value of \"${str}\" is out of range. It must be ${range}. Received ${received}`;\n    }, RangeError), E(\"ERR_MULTIPLE_CALLBACK\", \"Callback called multiple times\", Error), E(\"ERR_METHOD_NOT_IMPLEMENTED\", \"The %s method is not implemented\", Error), E(\"ERR_STREAM_ALREADY_FINISHED\", \"Cannot call %s after a stream was finished\", Error), E(\"ERR_STREAM_CANNOT_PIPE\", \"Cannot pipe, not readable\", Error), E(\"ERR_STREAM_DESTROYED\", \"Cannot call %s after a stream was destroyed\", Error), E(\"ERR_STREAM_NULL_VALUES\", \"May not write null values to stream\", TypeError), E(\"ERR_STREAM_PREMATURE_CLOSE\", \"Premature close\", Error), E(\"ERR_STREAM_PUSH_AFTER_EOF\", \"stream.push() after EOF\", Error), E(\"ERR_STREAM_UNSHIFT_AFTER_END_EVENT\", \"stream.unshift() after end event\", Error), E(\"ERR_STREAM_WRITE_AFTER_END\", \"write after end\", Error), E(\"ERR_UNKNOWN_ENCODING\", \"Unknown encoding: %s\", TypeError), module.exports = {\n      AbortError: AbortError2,\n      aggregateTwoErrors: hideStackFrames(aggregateTwoErrors),\n      hideStackFrames,\n      codes\n    };\n  }\n}), require_validators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/validators.js\"(exports, module) {\n    var {\n      ArrayIsArray: ArrayIsArray2,\n      ArrayPrototypeIncludes,\n      ArrayPrototypeJoin,\n      ArrayPrototypeMap,\n      NumberIsInteger,\n      NumberMAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER,\n      NumberParseInt,\n      RegExpPrototypeTest,\n      String: String2,\n      StringPrototypeToUpperCase,\n      StringPrototypeTrim\n    } = require_primordials(), {\n      hideStackFrames,\n      codes: { ERR_SOCKET_BAD_PORT, ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_OUT_OF_RANGE, ERR_UNKNOWN_SIGNAL }\n    } = require_errors(), { normalizeEncoding } = require_util(), { isAsyncFunction, isArrayBufferView } = require_util().types, signals = {};\n    function isInt32(value) {\n      return value === (value | 0);\n    }\n    function isUint32(value) {\n      return value === value >>> 0;\n    }\n    var octalReg = /^[0-7]+$/, modeDesc = \"must be a 32-bit unsigned integer or an octal string\";\n    function parseFileMode(value, name, def) {\n      if (typeof value === \"undefined\")\n        value = def;\n      if (typeof value === \"string\") {\n        if (!RegExpPrototypeTest(octalReg, value))\n          throw new ERR_INVALID_ARG_VALUE2(name, value, modeDesc);\n        value = NumberParseInt(value, 8);\n      }\n      return validateInt32(value, name, 0, 4294967295), value;\n    }\n    var validateInteger = hideStackFrames((value, name, min = NumberMIN_SAFE_INTEGER, max = NumberMAX_SAFE_INTEGER) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!NumberIsInteger(value))\n        throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateInt32 = hideStackFrames((value, name, min = -2147483648, max = 2147483647) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isInt32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n      }\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateUint32 = hideStackFrames((value, name, positive) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isUint32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${positive \? 1 : 0} && < 4294967296`, value);\n      }\n      if (positive && value === 0)\n        throw new ERR_OUT_OF_RANGE(name, \">= 1 && < 4294967296\", value);\n    });\n    function validateString(value, name) {\n      if (typeof value !== \"string\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"string\", value);\n    }\n    function validateNumber(value, name) {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n    }\n    var validateOneOf = hideStackFrames((value, name, oneOf) => {\n      if (!ArrayPrototypeIncludes(oneOf, value)) {\n        const reason = \"must be one of: \" + ArrayPrototypeJoin(ArrayPrototypeMap(oneOf, (v) => typeof v === \"string\" \? `'${v}'` : String2(v)), \", \");\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateBoolean2(value, name) {\n      if (typeof value !== \"boolean\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"boolean\", value);\n    }\n    var validateObject = hideStackFrames((value, name, options) => {\n      const useDefaultOptions = options == null, allowArray = useDefaultOptions \? !1 : options.allowArray, allowFunction = useDefaultOptions \? !1 : options.allowFunction;\n      if (!(useDefaultOptions \? !1 : options.nullable) && value === null || !allowArray && ArrayIsArray2(value) || typeof value !== \"object\" && (!allowFunction || typeof value !== \"function\"))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Object\", value);\n    }), validateArray = hideStackFrames((value, name, minLength = 0) => {\n      if (!ArrayIsArray2(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Array\", value);\n      if (value.length < minLength) {\n        const reason = `must be longer than ${minLength}`;\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateSignalName(signal, name = \"signal\") {\n      if (validateString(signal, name), signals[signal] === void 0) {\n        if (signals[StringPrototypeToUpperCase(signal)] !== void 0)\n          throw new ERR_UNKNOWN_SIGNAL(signal + \" (signals must use all capital letters)\");\n        throw new ERR_UNKNOWN_SIGNAL(signal);\n      }\n    }\n    var validateBuffer = hideStackFrames((buffer, name = \"buffer\") => {\n      if (!isArrayBufferView(buffer))\n        throw new ERR_INVALID_ARG_TYPE2(name, [\"Buffer\", \"TypedArray\", \"DataView\"], buffer);\n    });\n    function validateEncoding(data, encoding) {\n      const normalizedEncoding = normalizeEncoding(encoding), length = data.length;\n      if (normalizedEncoding === \"hex\" && length % 2 !== 0)\n        throw new ERR_INVALID_ARG_VALUE2(\"encoding\", encoding, `is invalid for data of length ${length}`);\n    }\n    function validatePort(port, name = \"Port\", allowZero = !0) {\n      if (typeof port !== \"number\" && typeof port !== \"string\" || typeof port === \"string\" && StringPrototypeTrim(port).length === 0 || +port !== +port >>> 0 || port > 65535 || port === 0 && !allowZero)\n        throw new ERR_SOCKET_BAD_PORT(name, port, allowZero);\n      return port | 0;\n    }\n    var validateAbortSignal = hideStackFrames((signal, name) => {\n      if (signal !== void 0 && (signal === null || typeof signal !== \"object\" || !(\"aborted\" in signal)))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    }), validateFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validatePlainFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\" || isAsyncFunction(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validateUndefined = hideStackFrames((value, name) => {\n      if (value !== void 0)\n        throw new ERR_INVALID_ARG_TYPE2(name, \"undefined\", value);\n    });\n    module.exports = {\n      isInt32,\n      isUint32,\n      parseFileMode,\n      validateArray,\n      validateBoolean: validateBoolean2,\n      validateBuffer,\n      validateEncoding,\n      validateFunction,\n      validateInt32,\n      validateInteger,\n      validateNumber,\n      validateObject,\n      validateOneOf,\n      validatePlainFunction,\n      validatePort,\n      validateSignalName,\n      validateString,\n      validateUint32,\n      validateUndefined,\n      validateAbortSignal\n    };\n  }\n}), require_utils = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/utils.js\"(exports, module) {\n    var { Symbol: Symbol2, SymbolAsyncIterator, SymbolIterator } = require_primordials(), kDestroyed = Symbol2(\"kDestroyed\"), kIsErrored = Symbol2(\"kIsErrored\"), kIsReadable = Symbol2(\"kIsReadable\"), kIsDisturbed = Symbol2(\"kIsDisturbed\");\n    function isReadableNodeStream(obj, strict = !1) {\n      var _obj$_readableState;\n      return !!(obj && typeof obj.pipe === \"function\" && typeof obj.on === \"function\" && (!strict || typeof obj.pause === \"function\" && typeof obj.resume === \"function\") && (!obj._writableState || ((_obj$_readableState = obj._readableState) === null || _obj$_readableState === void 0 \? void 0 : _obj$_readableState.readable) !== !1) && (!obj._writableState || obj._readableState));\n    }\n    function isWritableNodeStream(obj) {\n      var _obj$_writableState;\n      return !!(obj && typeof obj.write === \"function\" && typeof obj.on === \"function\" && (!obj._readableState || ((_obj$_writableState = obj._writableState) === null || _obj$_writableState === void 0 \? void 0 : _obj$_writableState.writable) !== !1));\n    }\n    function isDuplexNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\" && obj._readableState && typeof obj.on === \"function\" && typeof obj.write === \"function\");\n    }\n    function isNodeStream(obj) {\n      return obj && (obj._readableState || obj._writableState || typeof obj.write === \"function\" && typeof obj.on === \"function\" || typeof obj.pipe === \"function\" && typeof obj.on === \"function\");\n    }\n    function isIterable(obj, isAsync) {\n      if (obj == null)\n        return !1;\n      if (isAsync === !0)\n        return typeof obj[SymbolAsyncIterator] === \"function\";\n      if (isAsync === !1)\n        return typeof obj[SymbolIterator] === \"function\";\n      return typeof obj[SymbolAsyncIterator] === \"function\" || typeof obj[SymbolIterator] === \"function\";\n    }\n    function isDestroyed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !!(stream.destroyed || stream[kDestroyed] || state !== null && state !== void 0 && state.destroyed);\n    }\n    function isWritableEnded(stream) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableEnded === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.ended) !== \"boolean\")\n        return null;\n      return wState.ended;\n    }\n    function isWritableFinished(stream, strict) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableFinished === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.finished) !== \"boolean\")\n        return null;\n      return !!(wState.finished || strict === !1 && wState.ended === !0 && wState.length === 0);\n    }\n    function isReadableEnded(stream) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      if (stream.readableEnded === !0)\n        return !0;\n      const rState = stream._readableState;\n      if (!rState || rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.ended) !== \"boolean\")\n        return null;\n      return rState.ended;\n    }\n    function isReadableFinished(stream, strict) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      const rState = stream._readableState;\n      if (rState !== null && rState !== void 0 && rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.endEmitted) !== \"boolean\")\n        return null;\n      return !!(rState.endEmitted || strict === !1 && rState.ended === !0 && rState.length === 0);\n    }\n    function isReadable(stream) {\n      if (stream && stream[kIsReadable] != null)\n        return stream[kIsReadable];\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.readable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isReadableNodeStream(stream) && stream.readable && !isReadableFinished(stream);\n    }\n    function isWritable(stream) {\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.writable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isWritableNodeStream(stream) && stream.writable && !isWritableEnded(stream);\n    }\n    function isFinished(stream, opts) {\n      if (!isNodeStream(stream))\n        return null;\n      if (isDestroyed(stream))\n        return !0;\n      if ((opts === null || opts === void 0 \? void 0 : opts.readable) !== !1 && isReadable(stream))\n        return !1;\n      if ((opts === null || opts === void 0 \? void 0 : opts.writable) !== !1 && isWritable(stream))\n        return !1;\n      return !0;\n    }\n    function isWritableErrored(stream) {\n      var _stream$_writableStat, _stream$_writableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.writableErrored)\n        return stream.writableErrored;\n      return (_stream$_writableStat = (_stream$_writableStat2 = stream._writableState) === null || _stream$_writableStat2 === void 0 \? void 0 : _stream$_writableStat2.errored) !== null && _stream$_writableStat !== void 0 \? _stream$_writableStat : null;\n    }\n    function isReadableErrored(stream) {\n      var _stream$_readableStat, _stream$_readableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.readableErrored)\n        return stream.readableErrored;\n      return (_stream$_readableStat = (_stream$_readableStat2 = stream._readableState) === null || _stream$_readableStat2 === void 0 \? void 0 : _stream$_readableStat2.errored) !== null && _stream$_readableStat !== void 0 \? _stream$_readableStat : null;\n    }\n    function isClosed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      if (typeof stream.closed === \"boolean\")\n        return stream.closed;\n      const { _writableState: wState, _readableState: rState } = stream;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.closed) === \"boolean\" || typeof (rState === null || rState === void 0 \? void 0 : rState.closed) === \"boolean\")\n        return (wState === null || wState === void 0 \? void 0 : wState.closed) || (rState === null || rState === void 0 \? void 0 : rState.closed);\n      if (typeof stream._closed === \"boolean\" && isOutgoingMessage(stream))\n        return stream._closed;\n      return null;\n    }\n    function isOutgoingMessage(stream) {\n      return typeof stream._closed === \"boolean\" && typeof stream._defaultKeepAlive === \"boolean\" && typeof stream._removedConnection === \"boolean\" && typeof stream._removedContLen === \"boolean\";\n    }\n    function isServerResponse(stream) {\n      return typeof stream._sent100 === \"boolean\" && isOutgoingMessage(stream);\n    }\n    function isServerRequest(stream) {\n      var _stream$req;\n      return typeof stream._consuming === \"boolean\" && typeof stream._dumped === \"boolean\" && ((_stream$req = stream.req) === null || _stream$req === void 0 \? void 0 : _stream$req.upgradeOrConnect) === void 0;\n    }\n    function willEmitClose(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !state && isServerResponse(stream) || !!(state && state.autoDestroy && state.emitClose && state.closed === !1);\n    }\n    function isDisturbed(stream) {\n      var _stream$kIsDisturbed;\n      return !!(stream && ((_stream$kIsDisturbed = stream[kIsDisturbed]) !== null && _stream$kIsDisturbed !== void 0 \? _stream$kIsDisturbed : stream.readableDidRead || stream.readableAborted));\n    }\n    function isErrored(stream) {\n      var _ref, _ref2, _ref3, _ref4, _ref5, _stream$kIsErrored, _stream$_readableStat3, _stream$_writableStat3, _stream$_readableStat4, _stream$_writableStat4;\n      return !!(stream && ((_ref = (_ref2 = (_ref3 = (_ref4 = (_ref5 = (_stream$kIsErrored = stream[kIsErrored]) !== null && _stream$kIsErrored !== void 0 \? _stream$kIsErrored : stream.readableErrored) !== null && _ref5 !== void 0 \? _ref5 : stream.writableErrored) !== null && _ref4 !== void 0 \? _ref4 : (_stream$_readableStat3 = stream._readableState) === null || _stream$_readableStat3 === void 0 \? void 0 : _stream$_readableStat3.errorEmitted) !== null && _ref3 !== void 0 \? _ref3 : (_stream$_writableStat3 = stream._writableState) === null || _stream$_writableStat3 === void 0 \? void 0 : _stream$_writableStat3.errorEmitted) !== null && _ref2 !== void 0 \? _ref2 : (_stream$_readableStat4 = stream._readableState) === null || _stream$_readableStat4 === void 0 \? void 0 : _stream$_readableStat4.errored) !== null && _ref !== void 0 \? _ref : (_stream$_writableStat4 = stream._writableState) === null || _stream$_writableStat4 === void 0 \? void 0 : _stream$_writableStat4.errored));\n    }\n    module.exports = {\n      kDestroyed,\n      isDisturbed,\n      kIsDisturbed,\n      isErrored,\n      kIsErrored,\n      isReadable,\n      kIsReadable,\n      isClosed,\n      isDestroyed,\n      isDuplexNodeStream,\n      isFinished,\n      isIterable,\n      isReadableNodeStream,\n      isReadableEnded,\n      isReadableFinished,\n      isReadableErrored,\n      isNodeStream,\n      isWritable,\n      isWritableNodeStream,\n      isWritableEnded,\n      isWritableFinished,\n      isWritableErrored,\n      isServerRequest,\n      isServerResponse,\n      willEmitClose\n    };\n  }\n}), require_end_of_stream = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/end-of-stream.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_PREMATURE_CLOSE } = codes, { once } = require_util(), { validateAbortSignal, validateFunction, validateObject } = require_validators(), { Promise: Promise2 } = require_primordials(), {\n      isClosed,\n      isReadable,\n      isReadableNodeStream,\n      isReadableFinished,\n      isReadableErrored,\n      isWritable,\n      isWritableNodeStream,\n      isWritableFinished,\n      isWritableErrored,\n      isNodeStream,\n      willEmitClose: _willEmitClose\n    } = require_utils();\n    function isRequest(stream) {\n      return stream.setHeader && typeof stream.abort === \"function\";\n    }\n    var nop = () => {\n    };\n    function eos(stream, options, callback) {\n      var _options$readable, _options$writable;\n      if (arguments.length === 2)\n        callback = options, options = {};\n      else if (options == null)\n        options = {};\n      else\n        validateObject(options, \"options\");\n      validateFunction(callback, \"callback\"), validateAbortSignal(options.signal, \"options.signal\"), callback = once(callback);\n      const readable = (_options$readable = options.readable) !== null && _options$readable !== void 0 \? _options$readable : isReadableNodeStream(stream), writable = (_options$writable = options.writable) !== null && _options$writable !== void 0 \? _options$writable : isWritableNodeStream(stream);\n      if (!isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"Stream\", stream);\n      const { _writableState: wState, _readableState: rState } = stream, onlegacyfinish = () => {\n        if (!stream.writable)\n          onfinish();\n      };\n      let willEmitClose = _willEmitClose(stream) && isReadableNodeStream(stream) === readable && isWritableNodeStream(stream) === writable, writableFinished = isWritableFinished(stream, !1);\n      const onfinish = () => {\n        if (writableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.readable || readable))\n          return;\n        if (!readable || readableFinished)\n          callback.call(stream);\n      };\n      let readableFinished = isReadableFinished(stream, !1);\n      const onend = () => {\n        if (readableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.writable || writable))\n          return;\n        if (!writable || writableFinished)\n          callback.call(stream);\n      }, onerror = (err) => {\n        callback.call(stream, err);\n      };\n      let closed = isClosed(stream);\n      const onclose = () => {\n        closed = !0;\n        const errored = isWritableErrored(stream) || isReadableErrored(stream);\n        if (errored && typeof errored !== \"boolean\")\n          return callback.call(stream, errored);\n        if (readable && !readableFinished && isReadableNodeStream(stream, !0)) {\n          if (!isReadableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        if (writable && !writableFinished) {\n          if (!isWritableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        callback.call(stream);\n      }, onrequest = () => {\n        stream.req.on(\"finish\", onfinish);\n      };\n      if (isRequest(stream)) {\n        if (stream.on(\"complete\", onfinish), !willEmitClose)\n          stream.on(\"abort\", onclose);\n        if (stream.req)\n          onrequest();\n        else\n          stream.on(\"request\", onrequest);\n      } else if (writable && !wState)\n        stream.on(\"end\", onlegacyfinish), stream.on(\"close\", onlegacyfinish);\n      if (!willEmitClose && typeof stream.aborted === \"boolean\")\n        stream.on(\"aborted\", onclose);\n      if (stream.on(\"end\", onend), stream.on(\"finish\", onfinish), options.error !== !1)\n        stream.on(\"error\", onerror);\n      if (stream.on(\"close\", onclose), closed)\n        runOnNextTick(onclose);\n      else if (wState !== null && wState !== void 0 && wState.errorEmitted || rState !== null && rState !== void 0 && rState.errorEmitted) {\n        if (!willEmitClose)\n          runOnNextTick(onclose);\n      } else if (!readable && (!willEmitClose || isReadable(stream)) && (writableFinished || isWritable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (!writable && (!willEmitClose || isWritable(stream)) && (readableFinished || isReadable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (rState && stream.req && stream.aborted)\n        runOnNextTick(onclose);\n      const cleanup = () => {\n        if (callback = nop, stream.removeListener(\"aborted\", onclose), stream.removeListener(\"complete\", onfinish), stream.removeListener(\"abort\", onclose), stream.removeListener(\"request\", onrequest), stream.req)\n          stream.req.removeListener(\"finish\", onfinish);\n        stream.removeListener(\"end\", onlegacyfinish), stream.removeListener(\"close\", onlegacyfinish), stream.removeListener(\"finish\", onfinish), stream.removeListener(\"end\", onend), stream.removeListener(\"error\", onerror), stream.removeListener(\"close\", onclose);\n      };\n      if (options.signal && !closed) {\n        const abort = () => {\n          const endCallback = callback;\n          cleanup(), endCallback.call(stream, new AbortError2(void 0, {\n            cause: options.signal.reason\n          }));\n        };\n        if (options.signal.aborted)\n          runOnNextTick(abort);\n        else {\n          const originalCallback = callback;\n          callback = once((...args) => {\n            options.signal.removeEventListener(\"abort\", abort), originalCallback.apply(stream, args);\n          }), options.signal.addEventListener(\"abort\", abort);\n        }\n      }\n      return cleanup;\n    }\n    function finished(stream, opts) {\n      return new Promise2((resolve, reject) => {\n        eos(stream, opts, (err) => {\n          if (err)\n            reject(err);\n          else\n            resolve();\n        });\n      });\n    }\n    module.exports = eos, module.exports.finished = finished;\n  }\n}), require_operators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/operators.js\"(exports, module) {\n    var {\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_MISSING_ARGS, ERR_OUT_OF_RANGE },\n      AbortError: AbortError2\n    } = require_errors(), { validateAbortSignal, validateInteger, validateObject } = require_validators(), kWeakHandler = require_primordials().Symbol(\"kWeak\"), { finished } = require_end_of_stream(), {\n      ArrayPrototypePush,\n      MathFloor,\n      Number: Number2,\n      NumberIsNaN,\n      Promise: Promise2,\n      PromiseReject,\n      PromisePrototypeCatch,\n      Symbol: Symbol2\n    } = require_primordials(), kEmpty = Symbol2(\"kEmpty\"), kEof = Symbol2(\"kEof\");\n    function map(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let concurrency = 1;\n      if ((options === null || options === void 0 \? void 0 : options.concurrency) != null)\n        concurrency = MathFloor(options.concurrency);\n      return validateInteger(concurrency, \"concurrency\", 1), async function* map2() {\n        var _options$signal, _options$signal2;\n        const ac = new AbortController, stream = this, queue = [], signal = ac.signal, signalOpt = {\n          signal\n        }, abort = () => ac.abort();\n        if (options !== null && options !== void 0 && (_options$signal = options.signal) !== null && _options$signal !== void 0 && _options$signal.aborted)\n          abort();\n        options === null || options === void 0 || (_options$signal2 = options.signal) === null || _options$signal2 === void 0 || _options$signal2.addEventListener(\"abort\", abort);\n        let next, resume, done = !1;\n        function onDone() {\n          done = !0;\n        }\n        async function pump() {\n          try {\n            for await (let val of stream) {\n              var _val;\n              if (done)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              try {\n                val = fn(val, signalOpt);\n              } catch (err) {\n                val = PromiseReject(err);\n              }\n              if (val === kEmpty)\n                continue;\n              if (typeof ((_val = val) === null || _val === void 0 \? void 0 : _val.catch) === \"function\")\n                val.catch(onDone);\n              if (queue.push(val), next)\n                next(), next = null;\n              if (!done && queue.length && queue.length >= concurrency)\n                await new Promise2((resolve) => {\n                  resume = resolve;\n                });\n            }\n            queue.push(kEof);\n          } catch (err) {\n            const val = PromiseReject(err);\n            PromisePrototypeCatch(val, onDone), queue.push(val);\n          } finally {\n            var _options$signal3;\n            if (done = !0, next)\n              next(), next = null;\n            options === null || options === void 0 || (_options$signal3 = options.signal) === null || _options$signal3 === void 0 || _options$signal3.removeEventListener(\"abort\", abort);\n          }\n        }\n        pump();\n        try {\n          while (!0) {\n            while (queue.length > 0) {\n              const val = await queue[0];\n              if (val === kEof)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              if (val !== kEmpty)\n                yield val;\n              if (queue.shift(), resume)\n                resume(), resume = null;\n            }\n            await new Promise2((resolve) => {\n              next = resolve;\n            });\n          }\n        } finally {\n          if (ac.abort(), done = !0, resume)\n            resume(), resume = null;\n        }\n      }.call(this);\n    }\n    function asIndexedPairs(options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return async function* asIndexedPairs2() {\n        let index = 0;\n        for await (let val of this) {\n          var _options$signal4;\n          if (options !== null && options !== void 0 && (_options$signal4 = options.signal) !== null && _options$signal4 !== void 0 && _options$signal4.aborted)\n            throw new AbortError2({\n              cause: options.signal.reason\n            });\n          yield [index++, val];\n        }\n      }.call(this);\n    }\n    async function some(fn, options = void 0) {\n      for await (let unused of filter.call(this, fn, options))\n        return !0;\n      return !1;\n    }\n    async function every(fn, options = void 0) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      return !await some.call(this, async (...args) => {\n        return !await fn(...args);\n      }, options);\n    }\n    async function find(fn, options) {\n      for await (let result of filter.call(this, fn, options))\n        return result;\n      return;\n    }\n    async function forEach(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function forEachFn(value, options2) {\n        return await fn(value, options2), kEmpty;\n      }\n      for await (let unused of map.call(this, forEachFn, options))\n        ;\n    }\n    function filter(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function filterFn(value, options2) {\n        if (await fn(value, options2))\n          return value;\n        return kEmpty;\n      }\n      return map.call(this, filterFn, options);\n    }\n    var ReduceAwareErrMissingArgs = class extends ERR_MISSING_ARGS {\n      constructor() {\n        super(\"reduce\");\n        this.message = \"Reduce of an empty stream requires an initial value\";\n      }\n    };\n    async function reduce(reducer, initialValue, options) {\n      var _options$signal5;\n      if (typeof reducer !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"reducer\", [\"Function\", \"AsyncFunction\"], reducer);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let hasInitialValue = arguments.length > 1;\n      if (options !== null && options !== void 0 && (_options$signal5 = options.signal) !== null && _options$signal5 !== void 0 && _options$signal5.aborted) {\n        const err = new AbortError2(void 0, {\n          cause: options.signal.reason\n        });\n        throw this.once(\"error\", () => {\n        }), await finished(this.destroy(err)), err;\n      }\n      const ac = new AbortController, signal = ac.signal;\n      if (options !== null && options !== void 0 && options.signal) {\n        const opts = {\n          once: !0,\n          [kWeakHandler]: this\n        };\n        options.signal.addEventListener(\"abort\", () => ac.abort(), opts);\n      }\n      let gotAnyItemFromStream = !1;\n      try {\n        for await (let value of this) {\n          var _options$signal6;\n          if (gotAnyItemFromStream = !0, options !== null && options !== void 0 && (_options$signal6 = options.signal) !== null && _options$signal6 !== void 0 && _options$signal6.aborted)\n            throw new AbortError2;\n          if (!hasInitialValue)\n            initialValue = value, hasInitialValue = !0;\n          else\n            initialValue = await reducer(initialValue, value, {\n              signal\n            });\n        }\n        if (!gotAnyItemFromStream && !hasInitialValue)\n          throw new ReduceAwareErrMissingArgs;\n      } finally {\n        ac.abort();\n      }\n      return initialValue;\n    }\n    async function toArray(options) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      const result = [];\n      for await (let val of this) {\n        var _options$signal7;\n        if (options !== null && options !== void 0 && (_options$signal7 = options.signal) !== null && _options$signal7 !== void 0 && _options$signal7.aborted)\n          throw new AbortError2(void 0, {\n            cause: options.signal.reason\n          });\n        ArrayPrototypePush(result, val);\n      }\n      return result;\n    }\n    function flatMap(fn, options) {\n      const values = map.call(this, fn, options);\n      return async function* flatMap2() {\n        for await (let val of values)\n          yield* val;\n      }.call(this);\n    }\n    function toIntegerOrInfinity(number) {\n      if (number = Number2(number), NumberIsNaN(number))\n        return 0;\n      if (number < 0)\n        throw new ERR_OUT_OF_RANGE(\"number\", \">= 0\", number);\n      return number;\n    }\n    function drop(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* drop2() {\n        var _options$signal8;\n        if (options !== null && options !== void 0 && (_options$signal8 = options.signal) !== null && _options$signal8 !== void 0 && _options$signal8.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal9;\n          if (options !== null && options !== void 0 && (_options$signal9 = options.signal) !== null && _options$signal9 !== void 0 && _options$signal9.aborted)\n            throw new AbortError2;\n          if (number-- <= 0)\n            yield val;\n        }\n      }.call(this);\n    }\n    function take(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* take2() {\n        var _options$signal10;\n        if (options !== null && options !== void 0 && (_options$signal10 = options.signal) !== null && _options$signal10 !== void 0 && _options$signal10.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal11;\n          if (options !== null && options !== void 0 && (_options$signal11 = options.signal) !== null && _options$signal11 !== void 0 && _options$signal11.aborted)\n            throw new AbortError2;\n          if (number-- > 0)\n            yield val;\n          else\n            return;\n        }\n      }.call(this);\n    }\n    module.exports.streamReturningOperators = {\n      asIndexedPairs,\n      drop,\n      filter,\n      flatMap,\n      map,\n      take\n    }, module.exports.promiseReturningOperators = {\n      every,\n      forEach,\n      reduce,\n      toArray,\n      some,\n      find\n    };\n  }\n}), require_destroy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/destroy.js\"(exports, module) {\n    var {\n      aggregateTwoErrors,\n      codes: { ERR_MULTIPLE_CALLBACK },\n      AbortError: AbortError2\n    } = require_errors(), { Symbol: Symbol2 } = require_primordials(), { kDestroyed, isDestroyed, isFinished, isServerRequest } = require_utils(), kDestroy = \"#kDestroy\", kConstruct = \"#kConstruct\";\n    function checkError(err, w, r) {\n      if (err) {\n        if (err.stack, w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n      }\n    }\n    function destroy2(err, cb) {\n      const r = this._readableState, w = this._writableState, s = w || r;\n      if (w && w.destroyed || r && r.destroyed) {\n        if (typeof cb === \"function\")\n          cb();\n        return this;\n      }\n      if (checkError(err, w, r), w)\n        w.destroyed = !0;\n      if (r)\n        r.destroyed = !0;\n      if (!s.constructed)\n        this.once(kDestroy, (er) => {\n          _destroy(this, aggregateTwoErrors(er, err), cb);\n        });\n      else\n        _destroy(this, err, cb);\n      return this;\n    }\n    function _destroy(self, err, cb) {\n      let called = !1;\n      function onDestroy(err2) {\n        if (called)\n          return;\n        called = !0;\n        const { _readableState: r, _writableState: w } = self;\n        if (checkError(err2, w, r), w)\n          w.closed = !0;\n        if (r)\n          r.closed = !0;\n        if (typeof cb === \"function\")\n          cb(err2);\n        if (err2)\n          runOnNextTick(emitErrorCloseNT, self, err2);\n        else\n          runOnNextTick(emitCloseNT, self);\n      }\n      try {\n        self._destroy(err || null, onDestroy);\n      } catch (err2) {\n        onDestroy(err2);\n      }\n    }\n    function emitErrorCloseNT(self, err) {\n      emitErrorNT(self, err), emitCloseNT(self);\n    }\n    function emitCloseNT(self) {\n      const { _readableState: r, _writableState: w } = self;\n      if (w)\n        w.closeEmitted = !0;\n      if (r)\n        r.closeEmitted = !0;\n      if (w && w.emitClose || r && r.emitClose)\n        self.emit(\"close\");\n    }\n    function emitErrorNT(self, err) {\n      const r = self\?._readableState, w = self\?._writableState;\n      if (w\?.errorEmitted || r\?.errorEmitted)\n        return;\n      if (w)\n        w.errorEmitted = !0;\n      if (r)\n        r.errorEmitted = !0;\n      self\?.emit\?.(\"error\", err);\n    }\n    function undestroy() {\n      const r = this._readableState, w = this._writableState;\n      if (r)\n        r.constructed = !0, r.closed = !1, r.closeEmitted = !1, r.destroyed = !1, r.errored = null, r.errorEmitted = !1, r.reading = !1, r.ended = r.readable === !1, r.endEmitted = r.readable === !1;\n      if (w)\n        w.constructed = !0, w.destroyed = !1, w.closed = !1, w.closeEmitted = !1, w.errored = null, w.errorEmitted = !1, w.finalCalled = !1, w.prefinished = !1, w.ended = w.writable === !1, w.ending = w.writable === !1, w.finished = w.writable === !1;\n    }\n    function errorOrDestroy2(stream, err, sync) {\n      const r = stream\?._readableState, w = stream\?._writableState;\n      if (w && w.destroyed || r && r.destroyed)\n        return this;\n      if (r && r.autoDestroy || w && w.autoDestroy)\n        stream.destroy(err);\n      else if (err) {\n        if (Error.captureStackTrace(err), w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n        if (sync)\n          runOnNextTick(emitErrorNT, stream, err);\n        else\n          emitErrorNT(stream, err);\n      }\n    }\n    function construct(stream, cb) {\n      if (typeof stream._construct !== \"function\")\n        return;\n      const { _readableState: r, _writableState: w } = stream;\n      if (r)\n        r.constructed = !1;\n      if (w)\n        w.constructed = !1;\n      if (stream.once(kConstruct, cb), stream.listenerCount(kConstruct) > 1)\n        return;\n      runOnNextTick(constructNT, stream);\n    }\n    function constructNT(stream) {\n      let called = !1;\n      function onConstruct(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : new ERR_MULTIPLE_CALLBACK);\n          return;\n        }\n        called = !0;\n        const { _readableState: r, _writableState: w } = stream, s = w || r;\n        if (r)\n          r.constructed = !0;\n        if (w)\n          w.constructed = !0;\n        if (s.destroyed)\n          stream.emit(kDestroy, err);\n        else if (err)\n          errorOrDestroy2(stream, err, !0);\n        else\n          runOnNextTick(emitConstructNT, stream);\n      }\n      try {\n        stream._construct(onConstruct);\n      } catch (err) {\n        onConstruct(err);\n      }\n    }\n    function emitConstructNT(stream) {\n      stream.emit(kConstruct);\n    }\n    function isRequest(stream) {\n      return stream && stream.setHeader && typeof stream.abort === \"function\";\n    }\n    function emitCloseLegacy(stream) {\n      stream.emit(\"close\");\n    }\n    function emitErrorCloseLegacy(stream, err) {\n      stream.emit(\"error\", err), runOnNextTick(emitCloseLegacy, stream);\n    }\n    function destroyer(stream, err) {\n      if (!stream || isDestroyed(stream))\n        return;\n      if (!err && !isFinished(stream))\n        err = new AbortError2;\n      if (isServerRequest(stream))\n        stream.socket = null, stream.destroy(err);\n      else if (isRequest(stream))\n        stream.abort();\n      else if (isRequest(stream.req))\n        stream.req.abort();\n      else if (typeof stream.destroy === \"function\")\n        stream.destroy(err);\n      else if (typeof stream.close === \"function\")\n        stream.close();\n      else if (err)\n        runOnNextTick(emitErrorCloseLegacy, stream);\n      else\n        runOnNextTick(emitCloseLegacy, stream);\n      if (!stream.destroyed)\n        stream[kDestroyed] = !0;\n    }\n    module.exports = {\n      construct,\n      destroyer,\n      destroy: destroy2,\n      undestroy,\n      errorOrDestroy: errorOrDestroy2\n    };\n  }\n}), require_legacy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/legacy.js\"(exports, module) {\n    var { ArrayIsArray: ArrayIsArray2, ObjectSetPrototypeOf } = require_primordials();\n    function Stream(options) {\n      if (!(this instanceof Stream))\n        return new Stream(options);\n      EE.call(this, options);\n    }\n    Stream.prototype = {}, ObjectSetPrototypeOf(Stream.prototype, EE.prototype), ObjectSetPrototypeOf(Stream, EE), Stream.prototype.pipe = function(dest, options) {\n      const source = this;\n      function ondata(chunk) {\n        if (dest.writable && dest.write(chunk) === !1 && source.pause)\n          source.pause();\n      }\n      source.on(\"data\", ondata);\n      function ondrain() {\n        if (source.readable && source.resume)\n          source.resume();\n      }\n      if (dest.on(\"drain\", ondrain), !dest._isStdio && (!options || options.end !== !1))\n        source.on(\"end\", onend), source.on(\"close\", onclose);\n      let didOnEnd = !1;\n      function onend() {\n        if (didOnEnd)\n          return;\n        didOnEnd = !0, dest.end();\n      }\n      function onclose() {\n        if (didOnEnd)\n          return;\n        if (didOnEnd = !0, typeof dest.destroy === \"function\")\n          dest.destroy();\n      }\n      function onerror(er) {\n        if (cleanup(), EE.listenerCount(this, \"error\") === 0)\n          this.emit(\"error\", er);\n      }\n      prependListener(source, \"error\", onerror), prependListener(dest, \"error\", onerror);\n      function cleanup() {\n        source.removeListener(\"data\", ondata), dest.removeListener(\"drain\", ondrain), source.removeListener(\"end\", onend), source.removeListener(\"close\", onclose), source.removeListener(\"error\", onerror), dest.removeListener(\"error\", onerror), source.removeListener(\"end\", cleanup), source.removeListener(\"close\", cleanup), dest.removeListener(\"close\", cleanup);\n      }\n      return source.on(\"end\", cleanup), source.on(\"close\", cleanup), dest.on(\"close\", cleanup), dest.emit(\"pipe\", source), dest;\n    };\n    function prependListener(emitter, event, fn) {\n      if (typeof emitter.prependListener === \"function\")\n        return emitter.prependListener(event, fn);\n      if (!emitter._events || !emitter._events[event])\n        emitter.on(event, fn);\n      else if (ArrayIsArray2(emitter._events[event]))\n        emitter._events[event].unshift(fn);\n      else\n        emitter._events[event] = [fn, emitter._events[event]];\n    }\n    module.exports = {\n      Stream,\n      prependListener\n    };\n  }\n}), require_add_abort_signal = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/add-abort-signal.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), eos = require_end_of_stream(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2 } = codes, validateAbortSignal = (signal, name) => {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    };\n    function isNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\");\n    }\n    module.exports.addAbortSignal = function addAbortSignal(signal, stream) {\n      if (validateAbortSignal(signal, \"signal\"), !isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"stream.Stream\", stream);\n      return module.exports.addAbortSignalNoValidate(signal, stream);\n    }, module.exports.addAbortSignalNoValidate = function(signal, stream) {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        return stream;\n      const onAbort = () => {\n        stream.destroy(new AbortError2(void 0, {\n          cause: signal.reason\n        }));\n      };\n      if (signal.aborted)\n        onAbort();\n      else\n        signal.addEventListener(\"abort\", onAbort), eos(stream, () => signal.removeEventListener(\"abort\", onAbort));\n      return stream;\n    };\n  }\n}), require_state = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/state.js\"(exports, module) {\n    var { MathFloor, NumberIsInteger } = require_primordials(), { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2 } = require_errors().codes;\n    function highWaterMarkFrom(options, isDuplex, duplexKey) {\n      return options.highWaterMark != null \? options.highWaterMark : isDuplex \? options[duplexKey] : null;\n    }\n    function getDefaultHighWaterMark(objectMode) {\n      return objectMode \? 16 : 16384;\n    }\n    function getHighWaterMark(state, options, duplexKey, isDuplex) {\n      const hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n      if (hwm != null) {\n        if (!NumberIsInteger(hwm) || hwm < 0) {\n          const name = isDuplex \? `options.${duplexKey}` : \"options.highWaterMark\";\n          throw new ERR_INVALID_ARG_VALUE2(name, hwm);\n        }\n        return MathFloor(hwm);\n      }\n      return getDefaultHighWaterMark(state.objectMode);\n    }\n    module.exports = {\n      getHighWaterMark,\n      getDefaultHighWaterMark\n    };\n  }\n}), require_from = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/from.js\"(exports, module) {\n    var { PromisePrototypeThen, SymbolAsyncIterator, SymbolIterator } = require_primordials(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_NULL_VALUES } = require_errors().codes;\n    function from(Readable, iterable, opts) {\n      let iterator;\n      if (typeof iterable === \"string\" || iterable instanceof Buffer)\n        return new Readable({\n          objectMode: !0,\n          ...opts,\n          read() {\n            this.push(iterable), this.push(null);\n          }\n        });\n      let isAsync;\n      if (iterable && iterable[SymbolAsyncIterator])\n        isAsync = !0, iterator = iterable[SymbolAsyncIterator]();\n      else if (iterable && iterable[SymbolIterator])\n        isAsync = !1, iterator = iterable[SymbolIterator]();\n      else\n        throw new ERR_INVALID_ARG_TYPE2(\"iterable\", [\"Iterable\"], iterable);\n      const readable = new Readable({\n        objectMode: !0,\n        highWaterMark: 1,\n        ...opts\n      });\n      let reading = !1;\n      readable._read = function() {\n        if (!reading)\n          reading = !0, next();\n      }, readable._destroy = function(error, cb) {\n        PromisePrototypeThen(close(error), () => runOnNextTick(cb, error), (e) => runOnNextTick(cb, e || error));\n      };\n      async function close(error) {\n        const hadError = error !== void 0 && error !== null, hasThrow = typeof iterator.throw === \"function\";\n        if (hadError && hasThrow) {\n          const { value, done } = await iterator.throw(error);\n          if (await value, done)\n            return;\n        }\n        if (typeof iterator.return === \"function\") {\n          const { value } = await iterator.return();\n          await value;\n        }\n      }\n      async function next() {\n        for (;; ) {\n          try {\n            const { value, done } = isAsync \? await iterator.next() : iterator.next();\n            if (done)\n              readable.push(null);\n            else {\n              const res = value && typeof value.then === \"function\" \? await value : value;\n              if (res === null)\n                throw reading = !1, new ERR_STREAM_NULL_VALUES;\n              else if (readable.push(res))\n                continue;\n              else\n                reading = !1;\n            }\n          } catch (err) {\n            readable.destroy(err);\n          }\n          break;\n        }\n      }\n      return readable;\n    }\n    module.exports = from;\n  }\n}), _ReadableFromWeb, _ReadableFromWebForUndici, require_readable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/readable.js\"(exports, module) {\n    var {\n      ArrayPrototypeIndexOf,\n      NumberIsInteger,\n      NumberIsNaN,\n      NumberParseInt,\n      ObjectDefineProperties,\n      ObjectKeys,\n      ObjectSetPrototypeOf,\n      Promise: Promise2,\n      SafeSet,\n      SymbolAsyncIterator,\n      Symbol: Symbol2\n    } = require_primordials(), ReadableState = globalThis[globalThis.Symbol.for('Bun.lazy')](\"bun:stream\").ReadableState, { Stream, prependListener } = require_legacy();\n    function Readable(options) {\n      if (!(this instanceof Readable))\n        return new Readable(options);\n      const isDuplex = this instanceof require_duplex();\n      if (this._readableState = new ReadableState(options, this, isDuplex), options) {\n        const { read, destroy: destroy2, construct, signal } = options;\n        if (typeof read === \"function\")\n          this._read = read;\n        if (typeof destroy2 === \"function\")\n          this._destroy = destroy2;\n        if (typeof construct === \"function\")\n          this._construct = construct;\n        if (signal && !isDuplex)\n          addAbortSignal(signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        if (this._readableState.needReadable)\n          maybeReadMore(this, this._readableState);\n      });\n    }\n    Readable.prototype = {}, ObjectSetPrototypeOf(Readable.prototype, Stream.prototype), ObjectSetPrototypeOf(Readable, Stream), Readable.prototype.on = function(ev, fn) {\n      const res = Stream.prototype.on.call(this, ev, fn), state = this._readableState;\n      if (ev === \"data\") {\n        if (state.readableListening = this.listenerCount(\"readable\") > 0, state.flowing !== !1)\n          this.resume();\n      } else if (ev === \"readable\") {\n        if (!state.endEmitted && !state.readableListening) {\n          if (state.readableListening = state.needReadable = !0, state.flowing = !1, state.emittedReadable = !1, state.length)\n            emitReadable(this, state);\n          else if (!state.reading)\n            runOnNextTick(nReadingNextTick, this);\n        } else if (state.endEmitted)\n          ;\n      }\n      return res;\n    };\n\n    class ReadableFromWeb extends Readable {\n      #reader;\n      #closed;\n      #pendingChunks;\n      #stream;\n      constructor(options, stream) {\n        const { objectMode, highWaterMark, encoding, signal } = options;\n        super({\n          objectMode,\n          highWaterMark,\n          encoding,\n          signal\n        });\n        this.#pendingChunks = [], this.#reader = void 0, this.#stream = stream, this.#closed = !1;\n      }\n      #drainPending() {\n        var pendingChunks = this.#pendingChunks, pendingChunksI = 0, pendingChunksCount = pendingChunks.length;\n        for (;pendingChunksI < pendingChunksCount; pendingChunksI++) {\n          const chunk = pendingChunks[pendingChunksI];\n          if (pendingChunks[pendingChunksI] = void 0, !this.push(chunk, void 0))\n            return this.#pendingChunks = pendingChunks.slice(pendingChunksI + 1), !0;\n        }\n        if (pendingChunksCount > 0)\n          this.#pendingChunks = [];\n        return !1;\n      }\n      #handleDone(reader) {\n        reader.releaseLock(), this.#reader = void 0, this.#closed = !0, this.push(null);\n        return;\n      }\n      async _read() {\n        var stream = this.#stream, reader = this.#reader;\n        if (stream)\n          reader = this.#reader = stream.getReader(), this.#stream = void 0;\n        else if (this.#drainPending())\n          return;\n        var deferredError;\n        try {\n          do {\n            var done = !1, value;\n            const firstResult = reader.readMany();\n            if (@isPromise(firstResult)) {\n              if ({ done, value } = await firstResult, this.#closed) {\n                this.#pendingChunks.push(...value);\n                return;\n              }\n            } else\n              ({ done, value } = firstResult);\n            if (done) {\n              this.#handleDone(reader);\n              return;\n            }\n            if (!this.push(value[0])) {\n              this.#pendingChunks = value.slice(1);\n              return;\n            }\n            for (let i = 1, count = value.length;i < count; i++)\n              if (!this.push(value[i])) {\n                this.#pendingChunks = value.slice(i + 1);\n                return;\n              }\n          } while (!this.#closed);\n        } catch (e) {\n          deferredError = e;\n        } finally {\n          if (deferredError)\n            throw deferredError;\n        }\n      }\n      _destroy(error, callback) {\n        if (!this.#closed) {\n          var reader = this.#reader;\n          if (reader)\n            this.#reader = void 0, reader.cancel(error).finally(() => {\n              this.#closed = !0, callback(error);\n            });\n          return;\n        }\n        try {\n          callback(error);\n        } catch (error2) {\n          globalThis.reportError(error2);\n        }\n      }\n    }\n    _ReadableFromWebForUndici = ReadableFromWeb;\n    function newStreamReadableFromReadableStream(readableStream, options = {}) {\n      if (!isReadableStream(readableStream))\n        throw new ERR_INVALID_ARG_TYPE2(\"readableStream\", \"ReadableStream\", readableStream);\n      validateObject(options, \"options\");\n      const {\n        highWaterMark,\n        encoding,\n        objectMode = !1,\n        signal\n      } = options;\n      if (encoding !== void 0 && !Buffer.isEncoding(encoding))\n        throw new ERR_INVALID_ARG_VALUE(encoding, \"options.encoding\");\n      return validateBoolean(objectMode, \"options.objectMode\"), getNativeReadableStream(Readable, readableStream, options) || new ReadableFromWeb({\n        highWaterMark,\n        encoding,\n        objectMode,\n        signal\n      }, readableStream);\n    }\n    module.exports = Readable, _ReadableFromWeb = newStreamReadableFromReadableStream;\n    var { addAbortSignal } = require_add_abort_signal(), eos = require_end_of_stream();\n    const { maybeReadMore: _maybeReadMore, resume, emitReadable: _emitReadable, onEofChunk } = globalThis[globalThis.Symbol.for('Bun.lazy')](\"bun:stream\");\n    function maybeReadMore(stream, state) {\n      process.nextTick(_maybeReadMore, stream, state);\n    }\n    function emitReadable(stream, state) {\n      _emitReadable(stream, state);\n    }\n    var destroyImpl = require_destroy(), {\n      aggregateTwoErrors,\n      codes: {\n        ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n        ERR_METHOD_NOT_IMPLEMENTED,\n        ERR_OUT_OF_RANGE,\n        ERR_STREAM_PUSH_AFTER_EOF,\n        ERR_STREAM_UNSHIFT_AFTER_END_EVENT\n      }\n    } = require_errors(), { validateObject } = require_validators(), from = require_from(), nop = () => {\n    }, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    Readable.prototype.destroy = destroyImpl.destroy, Readable.prototype._undestroy = destroyImpl.undestroy, Readable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Readable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    }, Readable.prototype.push = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !1);\n    }, Readable.prototype.unshift = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !0);\n    };\n    function readableAddChunk(stream, chunk, encoding, addToFront) {\n      const state = stream._readableState;\n      let err;\n      if (!state.objectMode) {\n        if (typeof chunk === \"string\") {\n          if (encoding = encoding || state.defaultEncoding, state.encoding !== encoding)\n            if (addToFront && state.encoding)\n              chunk = Buffer.from(chunk, encoding).toString(state.encoding);\n            else\n              chunk = Buffer.from(chunk, encoding), encoding = \"\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"\";\n        else if (Stream._isUint8Array(chunk)) {\n          if (addToFront || !state.decoder)\n            chunk = Stream._uint8ArrayToBuffer(chunk);\n          encoding = \"\";\n        } else if (chunk != null)\n          err = new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      }\n      if (err)\n        errorOrDestroy2(stream, err);\n      else if (chunk === null)\n        state.reading = !1, onEofChunk(stream, state);\n      else if (state.objectMode || chunk && chunk.length > 0)\n        if (addToFront)\n          if (state.endEmitted)\n            errorOrDestroy2(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT);\n          else if (state.destroyed || state.errored)\n            return !1;\n          else\n            addChunk(stream, state, chunk, !0);\n        else if (state.ended)\n          errorOrDestroy2(stream, new ERR_STREAM_PUSH_AFTER_EOF);\n        else if (state.destroyed || state.errored)\n          return !1;\n        else if (state.reading = !1, state.decoder && !encoding)\n          if (chunk = state.decoder.write(chunk), state.objectMode || chunk.length !== 0)\n            addChunk(stream, state, chunk, !1);\n          else\n            maybeReadMore(stream, state);\n        else\n          addChunk(stream, state, chunk, !1);\n      else if (!addToFront)\n        state.reading = !1, maybeReadMore(stream, state);\n      return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n    }\n    function addChunk(stream, state, chunk, addToFront) {\n      if (state.flowing && state.length === 0 && !state.sync && stream.listenerCount(\"data\") > 0) {\n        if (state.multiAwaitDrain)\n          state.awaitDrainWriters.clear();\n        else\n          state.awaitDrainWriters = null;\n        state.dataEmitted = !0, stream.emit(\"data\", chunk);\n      } else {\n        if (state.length += state.objectMode \? 1 : chunk.length, addToFront)\n          state.buffer.unshift(chunk);\n        else\n          state.buffer.push(chunk);\n        if (state.needReadable)\n          emitReadable(stream, state);\n      }\n      maybeReadMore(stream, state);\n    }\n    Readable.prototype.isPaused = function() {\n      const state = this._readableState;\n      return state.paused === !0 || state.flowing === !1;\n    }, Readable.prototype.setEncoding = function(enc) {\n      const decoder = new StringDecoder(enc);\n      this._readableState.decoder = decoder, this._readableState.encoding = this._readableState.decoder.encoding;\n      const buffer = this._readableState.buffer;\n      let content = \"\";\n      for (let i = buffer.length;i > 0; i--)\n        content += decoder.write(buffer.shift());\n      if (content !== \"\")\n        buffer.push(content);\n      return this._readableState.length = content.length, this;\n    };\n    var MAX_HWM = 1073741824;\n    function computeNewHighWaterMark(n) {\n      if (n > MAX_HWM)\n        throw new ERR_OUT_OF_RANGE(\"size\", \"<= 1GiB\", n);\n      else\n        n--, n |= n >>> 1, n |= n >>> 2, n |= n >>> 4, n |= n >>> 8, n |= n >>> 16, n++;\n      return n;\n    }\n    function howMuchToRead(n, state) {\n      if (n <= 0 || state.length === 0 && state.ended)\n        return 0;\n      if (state.objectMode)\n        return 1;\n      if (NumberIsNaN(n)) {\n        if (state.flowing && state.length)\n          return state.buffer.first().length;\n        return state.length;\n      }\n      if (n <= state.length)\n        return n;\n      return state.ended \? state.length : 0;\n    }\n    Readable.prototype.read = function(n) {\n      if (!NumberIsInteger(n))\n        n = NumberParseInt(n, 10);\n      const state = this._readableState, nOrig = n;\n      if (n > state.highWaterMark)\n        state.highWaterMark = computeNewHighWaterMark(n);\n      if (n !== 0)\n        state.emittedReadable = !1;\n      if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 \? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n        if (state.length === 0 && state.ended)\n          endReadable(this);\n        else\n          emitReadable(this, state);\n        return null;\n      }\n      if (n = howMuchToRead(n, state), n === 0 && state.ended) {\n        if (state.length === 0)\n          endReadable(this);\n        return null;\n      }\n      let doRead = state.needReadable;\n      if (state.length === 0 || state.length - n < state.highWaterMark)\n        doRead = !0;\n      if (state.ended || state.reading || state.destroyed || state.errored || !state.constructed)\n        doRead = !1;\n      else if (doRead) {\n        if (state.reading = !0, state.sync = !0, state.length === 0)\n          state.needReadable = !0;\n        try {\n          var result = this._read(state.highWaterMark);\n          if (@isPromise(result)) {\n            const peeked = Bun.peek(result);\n            if (peeked !== result)\n              result = peeked;\n          }\n          if (@isPromise(result) && result\?.then && @isCallable(result.then))\n            result.then(nop, function(err) {\n              errorOrDestroy2(this, err);\n            });\n        } catch (err) {\n          errorOrDestroy2(this, err);\n        }\n        if (state.sync = !1, !state.reading)\n          n = howMuchToRead(nOrig, state);\n      }\n      let ret;\n      if (n > 0)\n        ret = fromList(n, state);\n      else\n        ret = null;\n      if (ret === null)\n        state.needReadable = state.length <= state.highWaterMark, n = 0;\n      else if (state.length -= n, state.multiAwaitDrain)\n        state.awaitDrainWriters.clear();\n      else\n        state.awaitDrainWriters = null;\n      if (state.length === 0) {\n        if (!state.ended)\n          state.needReadable = !0;\n        if (nOrig !== n && state.ended)\n          endReadable(this);\n      }\n      if (ret !== null && !state.errorEmitted && !state.closeEmitted)\n        state.dataEmitted = !0, this.emit(\"data\", ret);\n      return ret;\n    }, Readable.prototype._read = function(n) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_read()\");\n    }, Readable.prototype.pipe = function(dest, pipeOpts) {\n      const src = this, state = this._readableState;\n      if (state.pipes.length === 1) {\n        if (!state.multiAwaitDrain)\n          state.multiAwaitDrain = !0, state.awaitDrainWriters = new SafeSet(state.awaitDrainWriters \? [state.awaitDrainWriters] : []);\n      }\n      state.pipes.push(dest);\n      const endFn = (!pipeOpts || pipeOpts.end !== !1) && dest !== process.stdout && dest !== process.stderr \? onend : unpipe;\n      if (state.endEmitted)\n        runOnNextTick(endFn);\n      else\n        src.once(\"end\", endFn);\n      dest.on(\"unpipe\", onunpipe);\n      function onunpipe(readable, unpipeInfo) {\n        if (readable === src) {\n          if (unpipeInfo && unpipeInfo.hasUnpiped === !1)\n            unpipeInfo.hasUnpiped = !0, cleanup();\n        }\n      }\n      function onend() {\n        dest.end();\n      }\n      let ondrain, cleanedUp = !1;\n      function cleanup() {\n        if (dest.removeListener(\"close\", onclose), dest.removeListener(\"finish\", onfinish), ondrain)\n          dest.removeListener(\"drain\", ondrain);\n        if (dest.removeListener(\"error\", onerror), dest.removeListener(\"unpipe\", onunpipe), src.removeListener(\"end\", onend), src.removeListener(\"end\", unpipe), src.removeListener(\"data\", ondata), cleanedUp = !0, ondrain && state.awaitDrainWriters && (!dest._writableState || dest._writableState.needDrain))\n          ondrain();\n      }\n      function pause() {\n        if (!cleanedUp) {\n          if (state.pipes.length === 1 && state.pipes[0] === dest)\n            state.awaitDrainWriters = dest, state.multiAwaitDrain = !1;\n          else if (state.pipes.length > 1 && state.pipes.includes(dest))\n            state.awaitDrainWriters.add(dest);\n          src.pause();\n        }\n        if (!ondrain)\n          ondrain = pipeOnDrain(src, dest), dest.on(\"drain\", ondrain);\n      }\n      src.on(\"data\", ondata);\n      function ondata(chunk) {\n        if (dest.write(chunk) === !1)\n          pause();\n      }\n      function onerror(er) {\n        if (unpipe(), dest.removeListener(\"error\", onerror), dest.listenerCount(\"error\") === 0) {\n          const s = dest._writableState || dest._readableState;\n          if (s && !s.errorEmitted)\n            errorOrDestroy2(dest, er);\n          else\n            dest.emit(\"error\", er);\n        }\n      }\n      prependListener(dest, \"error\", onerror);\n      function onclose() {\n        dest.removeListener(\"finish\", onfinish), unpipe();\n      }\n      dest.once(\"close\", onclose);\n      function onfinish() {\n        dest.removeListener(\"close\", onclose), unpipe();\n      }\n      dest.once(\"finish\", onfinish);\n      function unpipe() {\n        src.unpipe(dest);\n      }\n      if (dest.emit(\"pipe\", src), dest.writableNeedDrain === !0) {\n        if (state.flowing)\n          pause();\n      } else if (!state.flowing)\n        src.resume();\n      return dest;\n    };\n    function pipeOnDrain(src, dest) {\n      return function pipeOnDrainFunctionResult() {\n        const state = src._readableState;\n        if (state.awaitDrainWriters === dest)\n          state.awaitDrainWriters = null;\n        else if (state.multiAwaitDrain)\n          state.awaitDrainWriters.delete(dest);\n        if ((!state.awaitDrainWriters || state.awaitDrainWriters.size === 0) && src.listenerCount(\"data\"))\n          src.resume();\n      };\n    }\n    Readable.prototype.unpipe = function(dest) {\n      const state = this._readableState, unpipeInfo = {\n        hasUnpiped: !1\n      };\n      if (state.pipes.length === 0)\n        return this;\n      if (!dest) {\n        const dests = state.pipes;\n        state.pipes = [], this.pause();\n        for (let i = 0;i < dests.length; i++)\n          dests[i].emit(\"unpipe\", this, {\n            hasUnpiped: !1\n          });\n        return this;\n      }\n      const index = ArrayPrototypeIndexOf(state.pipes, dest);\n      if (index === -1)\n        return this;\n      if (state.pipes.splice(index, 1), state.pipes.length === 0)\n        this.pause();\n      return dest.emit(\"unpipe\", this, unpipeInfo), this;\n    }, Readable.prototype.addListener = Readable.prototype.on, Readable.prototype.removeListener = function(ev, fn) {\n      const res = Stream.prototype.removeListener.call(this, ev, fn);\n      if (ev === \"readable\")\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    }, Readable.prototype.off = Readable.prototype.removeListener, Readable.prototype.removeAllListeners = function(ev) {\n      const res = Stream.prototype.removeAllListeners.apply(this, arguments);\n      if (ev === \"readable\" || ev === void 0)\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    };\n    function updateReadableListening(self) {\n      const state = self._readableState;\n      if (state.readableListening = self.listenerCount(\"readable\") > 0, state.resumeScheduled && state.paused === !1)\n        state.flowing = !0;\n      else if (self.listenerCount(\"data\") > 0)\n        self.resume();\n      else if (!state.readableListening)\n        state.flowing = null;\n    }\n    function nReadingNextTick(self) {\n      self.read(0);\n    }\n    Readable.prototype.resume = function() {\n      const state = this._readableState;\n      if (!state.flowing)\n        state.flowing = !state.readableListening, resume(this, state);\n      return state.paused = !1, this;\n    }, Readable.prototype.pause = function() {\n      if (this._readableState.flowing !== !1)\n        this._readableState.flowing = !1, this.emit(\"pause\");\n      return this._readableState.paused = !0, this;\n    }, Readable.prototype.wrap = function(stream) {\n      let paused = !1;\n      stream.on(\"data\", (chunk) => {\n        if (!this.push(chunk) && stream.pause)\n          paused = !0, stream.pause();\n      }), stream.on(\"end\", () => {\n        this.push(null);\n      }), stream.on(\"error\", (err) => {\n        errorOrDestroy2(this, err);\n      }), stream.on(\"close\", () => {\n        this.destroy();\n      }), stream.on(\"destroy\", () => {\n        this.destroy();\n      }), this._read = () => {\n        if (paused && stream.resume)\n          paused = !1, stream.resume();\n      };\n      const streamKeys = ObjectKeys(stream);\n      for (let j = 1;j < streamKeys.length; j++) {\n        const i = streamKeys[j];\n        if (this[i] === void 0 && typeof stream[i] === \"function\")\n          this[i] = stream[i].bind(stream);\n      }\n      return this;\n    }, Readable.prototype[SymbolAsyncIterator] = function() {\n      return streamToAsyncIterator(this);\n    }, Readable.prototype.iterator = function(options) {\n      if (options !== void 0)\n        validateObject(options, \"options\");\n      return streamToAsyncIterator(this, options);\n    };\n    function streamToAsyncIterator(stream, options) {\n      if (typeof stream.read !== \"function\")\n        stream = Readable.wrap(stream, {\n          objectMode: !0\n        });\n      const iter = createAsyncIterator(stream, options);\n      return iter.stream = stream, iter;\n    }\n    async function* createAsyncIterator(stream, options) {\n      let callback = nop;\n      function next(resolve) {\n        if (this === stream)\n          callback(), callback = nop;\n        else\n          callback = resolve;\n      }\n      stream.on(\"readable\", next);\n      let error;\n      const cleanup = eos(stream, {\n        writable: !1\n      }, (err) => {\n        error = err \? aggregateTwoErrors(error, err) : null, callback(), callback = nop;\n      });\n      try {\n        while (!0) {\n          const chunk = stream.destroyed \? null : stream.read();\n          if (chunk !== null)\n            yield chunk;\n          else if (error)\n            throw error;\n          else if (error === null)\n            return;\n          else\n            await new Promise2(next);\n        }\n      } catch (err) {\n        throw error = aggregateTwoErrors(error, err), error;\n      } finally {\n        if ((error || (options === null || options === void 0 \? void 0 : options.destroyOnReturn) !== !1) && (error === void 0 || stream._readableState.autoDestroy))\n          destroyImpl.destroyer(stream, null);\n        else\n          stream.off(\"readable\", next), cleanup();\n      }\n    }\n    ObjectDefineProperties(Readable.prototype, {\n      readable: {\n        get() {\n          const r = this._readableState;\n          return !!r && r.readable !== !1 && !r.destroyed && !r.errorEmitted && !r.endEmitted;\n        },\n        set(val) {\n          if (this._readableState)\n            this._readableState.readable = !!val;\n        }\n      },\n      readableDidRead: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.dataEmitted;\n        }\n      },\n      readableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._readableState.readable !== !1 && (this._readableState.destroyed || this._readableState.errored) && !this._readableState.endEmitted);\n        }\n      },\n      readableHighWaterMark: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.highWaterMark;\n        }\n      },\n      readableBuffer: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState && this._readableState.buffer;\n        }\n      },\n      readableFlowing: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.flowing;\n        },\n        set: function(state) {\n          if (this._readableState)\n            this._readableState.flowing = state;\n        }\n      },\n      readableLength: {\n        enumerable: !1,\n        get() {\n          return this._readableState.length;\n        }\n      },\n      readableObjectMode: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.objectMode : !1;\n        }\n      },\n      readableEncoding: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.encoding : null;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.errored : null;\n        }\n      },\n      closed: {\n        get() {\n          return this._readableState \? this._readableState.closed : !1;\n        }\n      },\n      destroyed: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.destroyed : !1;\n        },\n        set(value) {\n          if (!this._readableState)\n            return;\n          this._readableState.destroyed = value;\n        }\n      },\n      readableEnded: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.endEmitted : !1;\n        }\n      }\n    }), Readable._fromList = fromList;\n    function fromList(n, state) {\n      if (state.length === 0)\n        return null;\n      let ret;\n      if (state.objectMode)\n        ret = state.buffer.shift();\n      else if (!n || n >= state.length) {\n        if (state.decoder)\n          ret = state.buffer.join(\"\");\n        else if (state.buffer.length === 1)\n          ret = state.buffer.first();\n        else\n          ret = state.buffer.concat(state.length);\n        state.buffer.clear();\n      } else\n        ret = state.buffer.consume(n, state.decoder);\n      return ret;\n    }\n    function endReadable(stream) {\n      const state = stream._readableState;\n      if (!state.endEmitted)\n        state.ended = !0, runOnNextTick(endReadableNT, state, stream);\n    }\n    function endReadableNT(state, stream) {\n      if (!state.errored && !state.closeEmitted && !state.endEmitted && state.length === 0) {\n        if (state.endEmitted = !0, stream.emit(\"end\"), stream.writable && stream.allowHalfOpen === !1)\n          runOnNextTick(endWritableNT, stream);\n        else if (state.autoDestroy) {\n          const wState = stream._writableState;\n          if (!wState || wState.autoDestroy && (wState.finished || wState.writable === !1))\n            stream.destroy();\n        }\n      }\n    }\n    function endWritableNT(stream) {\n      if (stream.writable && !stream.writableEnded && !stream.destroyed)\n        stream.end();\n    }\n    Readable.from = function(iterable, opts) {\n      return from(Readable, iterable, opts);\n    };\n    var webStreamsAdapters = {\n      newStreamReadableFromReadableStream,\n      newReadableStreamFromStreamReadable(streamReadable, options = {}) {\n        if (typeof streamReadable\?._readableState !== \"object\")\n          throw new ERR_INVALID_ARG_TYPE2(\"streamReadable\", \"stream.Readable\", streamReadable);\n        var { isDestroyed, isReadable } = require_utils();\n        if (isDestroyed(streamReadable) || !isReadable(streamReadable)) {\n          const readable = new ReadableStream;\n          return readable.cancel(), readable;\n        }\n        const { readableObjectMode: objectMode, readableHighWaterMark: highWaterMark } = streamReadable, strategy = ((strategy2) => {\n          if (strategy2)\n            return strategy2;\n          if (objectMode)\n            return new CountQueuingStrategy({ highWaterMark });\n          return { highWaterMark };\n        })(options\?.strategy);\n        let controller;\n        function onData(chunk) {\n          if (controller.enqueue(chunk), controller.desiredSize <= 0)\n            streamReadable.pause();\n        }\n        streamReadable.pause();\n        const cleanup = eos(streamReadable, (error) => {\n          if (error\?.code === \"ERR_STREAM_PREMATURE_CLOSE\")\n            error = new AbortError(void 0, { cause: error });\n          if (cleanup(), streamReadable.on(\"error\", () => {\n          }), error)\n            return controller.error(error);\n          controller.close();\n        });\n        return streamReadable.on(\"data\", onData), new ReadableStream({\n          start(c) {\n            controller = c;\n          },\n          pull() {\n            streamReadable.resume();\n          },\n          cancel(reason) {\n            destroy(streamReadable, reason);\n          }\n        }, strategy);\n      }\n    };\n    Readable.fromWeb = function(readableStream, options) {\n      return webStreamsAdapters.newStreamReadableFromReadableStream(readableStream, options);\n    }, Readable.toWeb = function(streamReadable, options) {\n      return webStreamsAdapters.newReadableStreamFromStreamReadable(streamReadable, options);\n    }, Readable.wrap = function(src, options) {\n      var _ref, _src$readableObjectMo;\n      return new Readable({\n        objectMode: (_ref = (_src$readableObjectMo = src.readableObjectMode) !== null && _src$readableObjectMo !== void 0 \? _src$readableObjectMo : src.objectMode) !== null && _ref !== void 0 \? _ref : !0,\n        ...options,\n        destroy(err, callback) {\n          destroyImpl.destroyer(src, err), callback(err);\n        }\n      }).wrap(src);\n    };\n  }\n}), require_writable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/writable.js\"(exports, module) {\n    var {\n      ArrayPrototypeSlice,\n      Error: Error2,\n      FunctionPrototypeSymbolHasInstance,\n      ObjectDefineProperty,\n      ObjectDefineProperties,\n      ObjectSetPrototypeOf,\n      StringPrototypeToLowerCase,\n      Symbol: Symbol2,\n      SymbolHasInstance\n    } = require_primordials(), Stream = require_legacy().Stream, destroyImpl = require_destroy(), { addAbortSignal } = require_add_abort_signal(), { getHighWaterMark, getDefaultHighWaterMark } = require_state(), {\n      ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n      ERR_METHOD_NOT_IMPLEMENTED,\n      ERR_MULTIPLE_CALLBACK,\n      ERR_STREAM_CANNOT_PIPE,\n      ERR_STREAM_DESTROYED,\n      ERR_STREAM_ALREADY_FINISHED,\n      ERR_STREAM_NULL_VALUES,\n      ERR_STREAM_WRITE_AFTER_END,\n      ERR_UNKNOWN_ENCODING\n    } = require_errors().codes, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    function Writable(options = {}) {\n      const isDuplex = this instanceof require_duplex();\n      if (!isDuplex && !FunctionPrototypeSymbolHasInstance(Writable, this))\n        return new Writable(options);\n      if (this._writableState = new WritableState(options, this, isDuplex), options) {\n        if (typeof options.write === \"function\")\n          this._write = options.write;\n        if (typeof options.writev === \"function\")\n          this._writev = options.writev;\n        if (typeof options.destroy === \"function\")\n          this._destroy = options.destroy;\n        if (typeof options.final === \"function\")\n          this._final = options.final;\n        if (typeof options.construct === \"function\")\n          this._construct = options.construct;\n        if (options.signal)\n          addAbortSignal(options.signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        const state = this._writableState;\n        if (!state.writing)\n          clearBuffer(this, state);\n        finishMaybe(this, state);\n      });\n    }\n    Writable.prototype = {}, ObjectSetPrototypeOf(Writable.prototype, Stream.prototype), ObjectSetPrototypeOf(Writable, Stream), module.exports = Writable;\n    function nop() {\n    }\n    var kOnFinished = Symbol2(\"kOnFinished\");\n    function WritableState(options, stream, isDuplex) {\n      if (typeof isDuplex !== \"boolean\")\n        isDuplex = stream instanceof require_duplex();\n      if (this.objectMode = !!(options && options.objectMode), isDuplex)\n        this.objectMode = this.objectMode || !!(options && options.writableObjectMode);\n      this.highWaterMark = options \? getHighWaterMark(this, options, \"writableHighWaterMark\", isDuplex) : getDefaultHighWaterMark(!1), this.finalCalled = !1, this.needDrain = !1, this.ending = !1, this.ended = !1, this.finished = !1, this.destroyed = !1;\n      const noDecode = !!(options && options.decodeStrings === !1);\n      this.decodeStrings = !noDecode, this.defaultEncoding = options && options.defaultEncoding || \"utf8\", this.length = 0, this.writing = !1, this.corked = 0, this.sync = !0, this.bufferProcessing = !1, this.onwrite = onwrite.bind(void 0, stream), this.writecb = null, this.writelen = 0, this.afterWriteTickInfo = null, resetBuffer(this), this.pendingcb = 0, this.constructed = !0, this.prefinished = !1, this.errorEmitted = !1, this.emitClose = !options || options.emitClose !== !1, this.autoDestroy = !options || options.autoDestroy !== !1, this.errored = null, this.closed = !1, this.closeEmitted = !1, this[kOnFinished] = [];\n    }\n    WritableState.prototype = {};\n    function resetBuffer(state) {\n      state.buffered = [], state.bufferedIndex = 0, state.allBuffers = !0, state.allNoop = !0;\n    }\n    WritableState.prototype.getBuffer = function getBuffer() {\n      return ArrayPrototypeSlice(this.buffered, this.bufferedIndex);\n    }, ObjectDefineProperty(WritableState.prototype, \"bufferedRequestCount\", {\n      get() {\n        return this.buffered.length - this.bufferedIndex;\n      }\n    }), ObjectDefineProperty(Writable, SymbolHasInstance, {\n      value: function(object) {\n        if (FunctionPrototypeSymbolHasInstance(this, object))\n          return !0;\n        if (this !== Writable)\n          return !1;\n        return object && object._writableState instanceof WritableState;\n      }\n    }), Writable.prototype.pipe = function() {\n      errorOrDestroy2(this, new ERR_STREAM_CANNOT_PIPE);\n    };\n    function _write(stream, chunk, encoding, cb) {\n      const state = stream._writableState;\n      if (typeof encoding === \"function\")\n        cb = encoding, encoding = state.defaultEncoding;\n      else {\n        if (!encoding)\n          encoding = state.defaultEncoding;\n        else if (encoding !== \"buffer\" && !Buffer.isEncoding(encoding))\n          throw new ERR_UNKNOWN_ENCODING(encoding);\n        if (typeof cb !== \"function\")\n          cb = nop;\n      }\n      if (chunk === null)\n        throw new ERR_STREAM_NULL_VALUES;\n      else if (!state.objectMode)\n        if (typeof chunk === \"string\") {\n          if (state.decodeStrings !== !1)\n            chunk = Buffer.from(chunk, encoding), encoding = \"buffer\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"buffer\";\n        else if (Stream._isUint8Array(chunk))\n          chunk = Stream._uint8ArrayToBuffer(chunk), encoding = \"buffer\";\n        else\n          throw new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      let err;\n      if (state.ending)\n        err = new ERR_STREAM_WRITE_AFTER_END;\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"write\");\n      if (err)\n        return runOnNextTick(cb, err), errorOrDestroy2(stream, err, !0), err;\n      return state.pendingcb++, writeOrBuffer(stream, state, chunk, encoding, cb);\n    }\n    Writable.prototype.write = function(chunk, encoding, cb) {\n      return _write(this, chunk, encoding, cb) === !0;\n    }, Writable.prototype.cork = function() {\n      this._writableState.corked++;\n    }, Writable.prototype.uncork = function() {\n      const state = this._writableState;\n      if (state.corked) {\n        if (state.corked--, !state.writing)\n          clearBuffer(this, state);\n      }\n    }, Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n      if (typeof encoding === \"string\")\n        encoding = StringPrototypeToLowerCase(encoding);\n      if (!Buffer.isEncoding(encoding))\n        throw new ERR_UNKNOWN_ENCODING(encoding);\n      return this._writableState.defaultEncoding = encoding, this;\n    };\n    function writeOrBuffer(stream, state, chunk, encoding, callback) {\n      const len = state.objectMode \? 1 : chunk.length;\n      state.length += len;\n      const ret = state.length < state.highWaterMark;\n      if (!ret)\n        state.needDrain = !0;\n      if (state.writing || state.corked || state.errored || !state.constructed) {\n        if (state.buffered.push({\n          chunk,\n          encoding,\n          callback\n        }), state.allBuffers && encoding !== \"buffer\")\n          state.allBuffers = !1;\n        if (state.allNoop && callback !== nop)\n          state.allNoop = !1;\n      } else\n        state.writelen = len, state.writecb = callback, state.writing = !0, state.sync = !0, stream._write(chunk, encoding, state.onwrite), state.sync = !1;\n      return ret && !state.errored && !state.destroyed;\n    }\n    function doWrite(stream, state, writev, len, chunk, encoding, cb) {\n      if (state.writelen = len, state.writecb = cb, state.writing = !0, state.sync = !0, state.destroyed)\n        state.onwrite(new ERR_STREAM_DESTROYED(\"write\"));\n      else if (writev)\n        stream._writev(chunk, state.onwrite);\n      else\n        stream._write(chunk, encoding, state.onwrite);\n      state.sync = !1;\n    }\n    function onwriteError(stream, state, er, cb) {\n      --state.pendingcb, cb(er), errorBuffer(state), errorOrDestroy2(stream, er);\n    }\n    function onwrite(stream, er) {\n      const state = stream._writableState, sync = state.sync, cb = state.writecb;\n      if (typeof cb !== \"function\") {\n        errorOrDestroy2(stream, new ERR_MULTIPLE_CALLBACK);\n        return;\n      }\n      if (state.writing = !1, state.writecb = null, state.length -= state.writelen, state.writelen = 0, er) {\n        if (Error.captureStackTrace(er), !state.errored)\n          state.errored = er;\n        if (stream._readableState && !stream._readableState.errored)\n          stream._readableState.errored = er;\n        if (sync)\n          runOnNextTick(onwriteError, stream, state, er, cb);\n        else\n          onwriteError(stream, state, er, cb);\n      } else {\n        if (state.buffered.length > state.bufferedIndex)\n          clearBuffer(stream, state);\n        if (sync)\n          if (state.afterWriteTickInfo !== null && state.afterWriteTickInfo.cb === cb)\n            state.afterWriteTickInfo.count++;\n          else\n            state.afterWriteTickInfo = {\n              count: 1,\n              cb,\n              stream,\n              state\n            }, runOnNextTick(afterWriteTick, state.afterWriteTickInfo);\n        else\n          afterWrite(stream, state, 1, cb);\n      }\n    }\n    function afterWriteTick({ stream, state, count, cb }) {\n      return state.afterWriteTickInfo = null, afterWrite(stream, state, count, cb);\n    }\n    function afterWrite(stream, state, count, cb) {\n      if (!state.ending && !stream.destroyed && state.length === 0 && state.needDrain)\n        state.needDrain = !1, stream.emit(\"drain\");\n      while (count-- > 0)\n        state.pendingcb--, cb();\n      if (state.destroyed)\n        errorBuffer(state);\n      finishMaybe(stream, state);\n    }\n    function errorBuffer(state) {\n      if (state.writing)\n        return;\n      for (let n = state.bufferedIndex;n < state.buffered.length; ++n) {\n        var _state$errored;\n        const { chunk, callback } = state.buffered[n], len = state.objectMode \? 1 : chunk.length;\n        state.length -= len, callback((_state$errored = state.errored) !== null && _state$errored !== void 0 \? _state$errored : new ERR_STREAM_DESTROYED(\"write\"));\n      }\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++) {\n        var _state$errored2;\n        onfinishCallbacks[i]((_state$errored2 = state.errored) !== null && _state$errored2 !== void 0 \? _state$errored2 : new ERR_STREAM_DESTROYED(\"end\"));\n      }\n      resetBuffer(state);\n    }\n    function clearBuffer(stream, state) {\n      if (state.corked || state.bufferProcessing || state.destroyed || !state.constructed)\n        return;\n      const { buffered, bufferedIndex, objectMode } = state, bufferedLength = buffered.length - bufferedIndex;\n      if (!bufferedLength)\n        return;\n      let i = bufferedIndex;\n      if (state.bufferProcessing = !0, bufferedLength > 1 && stream._writev) {\n        state.pendingcb -= bufferedLength - 1;\n        const callback = state.allNoop \? nop : (err) => {\n          for (let n = i;n < buffered.length; ++n)\n            buffered[n].callback(err);\n        }, chunks = state.allNoop && i === 0 \? buffered : ArrayPrototypeSlice(buffered, i);\n        chunks.allBuffers = state.allBuffers, doWrite(stream, state, !0, state.length, chunks, \"\", callback), resetBuffer(state);\n      } else {\n        do {\n          const { chunk, encoding, callback } = buffered[i];\n          buffered[i++] = null;\n          const len = objectMode \? 1 : chunk.length;\n          doWrite(stream, state, !1, len, chunk, encoding, callback);\n        } while (i < buffered.length && !state.writing);\n        if (i === buffered.length)\n          resetBuffer(state);\n        else if (i > 256)\n          buffered.splice(0, i), state.bufferedIndex = 0;\n        else\n          state.bufferedIndex = i;\n      }\n      state.bufferProcessing = !1;\n    }\n    Writable.prototype._write = function(chunk, encoding, cb) {\n      if (this._writev)\n        this._writev([\n          {\n            chunk,\n            encoding\n          }\n        ], cb);\n      else\n        throw new ERR_METHOD_NOT_IMPLEMENTED(\"_write()\");\n    }, Writable.prototype._writev = null, Writable.prototype.end = function(chunk, encoding, cb, native = !1) {\n      const state = this._writableState;\n      if (typeof chunk === \"function\")\n        cb = chunk, chunk = null, encoding = null;\n      else if (typeof encoding === \"function\")\n        cb = encoding, encoding = null;\n      let err;\n      if (chunk !== null && chunk !== void 0) {\n        let ret;\n        if (!native)\n          ret = _write(this, chunk, encoding);\n        else\n          ret = this.write(chunk, encoding);\n        if (ret instanceof Error2)\n          err = ret;\n      }\n      if (state.corked)\n        state.corked = 1, this.uncork();\n      if (err)\n        this.emit(\"error\", err);\n      else if (!state.errored && !state.ending)\n        state.ending = !0, finishMaybe(this, state, !0), state.ended = !0;\n      else if (state.finished)\n        err = new ERR_STREAM_ALREADY_FINISHED(\"end\");\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"end\");\n      if (typeof cb === \"function\")\n        if (err || state.finished)\n          runOnNextTick(cb, err);\n        else\n          state[kOnFinished].push(cb);\n      return this;\n    };\n    function needFinish(state, tag) {\n      var needFinish2 = state.ending && !state.destroyed && state.constructed && state.length === 0 && !state.errored && state.buffered.length === 0 && !state.finished && !state.writing && !state.errorEmitted && !state.closeEmitted;\n      return needFinish2;\n    }\n    function callFinal(stream, state) {\n      let called = !1;\n      function onFinish(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : ERR_MULTIPLE_CALLBACK());\n          return;\n        }\n        if (called = !0, state.pendingcb--, err) {\n          const onfinishCallbacks = state[kOnFinished].splice(0);\n          for (let i = 0;i < onfinishCallbacks.length; i++)\n            onfinishCallbacks[i](err);\n          errorOrDestroy2(stream, err, state.sync);\n        } else if (needFinish(state))\n          state.prefinished = !0, stream.emit(\"prefinish\"), state.pendingcb++, runOnNextTick(finish, stream, state);\n      }\n      state.sync = !0, state.pendingcb++;\n      try {\n        stream._final(onFinish);\n      } catch (err) {\n        onFinish(err);\n      }\n      state.sync = !1;\n    }\n    function prefinish(stream, state) {\n      if (!state.prefinished && !state.finalCalled)\n        if (typeof stream._final === \"function\" && !state.destroyed)\n          state.finalCalled = !0, callFinal(stream, state);\n        else\n          state.prefinished = !0, stream.emit(\"prefinish\");\n    }\n    function finishMaybe(stream, state, sync) {\n      if (!needFinish(state, stream.__id))\n        return;\n      if (prefinish(stream, state), state.pendingcb === 0) {\n        if (sync)\n          state.pendingcb++, runOnNextTick((stream2, state2) => {\n            if (needFinish(state2))\n              finish(stream2, state2);\n            else\n              state2.pendingcb--;\n          }, stream, state);\n        else if (needFinish(state))\n          state.pendingcb++, finish(stream, state);\n      }\n    }\n    function finish(stream, state) {\n      state.pendingcb--, state.finished = !0;\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++)\n        onfinishCallbacks[i]();\n      if (stream.emit(\"finish\"), state.autoDestroy) {\n        const rState = stream._readableState;\n        if (!rState || rState.autoDestroy && (rState.endEmitted || rState.readable === !1))\n          stream.destroy();\n      }\n    }\n    ObjectDefineProperties(Writable.prototype, {\n      closed: {\n        get() {\n          return this._writableState \? this._writableState.closed : !1;\n        }\n      },\n      destroyed: {\n        get() {\n          return this._writableState \? this._writableState.destroyed : !1;\n        },\n        set(value) {\n          if (this._writableState)\n            this._writableState.destroyed = value;\n        }\n      },\n      writable: {\n        get() {\n          const w = this._writableState;\n          return !!w && w.writable !== !1 && !w.destroyed && !w.errored && !w.ending && !w.ended;\n        },\n        set(val) {\n          if (this._writableState)\n            this._writableState.writable = !!val;\n        }\n      },\n      writableFinished: {\n        get() {\n          return this._writableState \? this._writableState.finished : !1;\n        }\n      },\n      writableObjectMode: {\n        get() {\n          return this._writableState \? this._writableState.objectMode : !1;\n        }\n      },\n      writableBuffer: {\n        get() {\n          return this._writableState && this._writableState.getBuffer();\n        }\n      },\n      writableEnded: {\n        get() {\n          return this._writableState \? this._writableState.ending : !1;\n        }\n      },\n      writableNeedDrain: {\n        get() {\n          const wState = this._writableState;\n          if (!wState)\n            return !1;\n          return !wState.destroyed && !wState.ending && wState.needDrain;\n        }\n      },\n      writableHighWaterMark: {\n        get() {\n          return this._writableState && this._writableState.highWaterMark;\n        }\n      },\n      writableCorked: {\n        get() {\n          return this._writableState \? this._writableState.corked : 0;\n        }\n      },\n      writableLength: {\n        get() {\n          return this._writableState && this._writableState.length;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._writableState \? this._writableState.errored : null;\n        }\n      },\n      writableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._writableState.writable !== !1 && (this._writableState.destroyed || this._writableState.errored) && !this._writableState.finished);\n        }\n      }\n    });\n    var destroy2 = destroyImpl.destroy;\n    Writable.prototype.destroy = function(err, cb) {\n      const state = this._writableState;\n      if (!state.destroyed && (state.bufferedIndex < state.buffered.length || state[kOnFinished].length))\n        runOnNextTick(errorBuffer, state);\n      return destroy2.call(this, err, cb), this;\n    }, Writable.prototype._undestroy = destroyImpl.undestroy, Writable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Writable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    };\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Writable.fromWeb = function(writableStream, options) {\n      return lazyWebStreams().newStreamWritableFromWritableStream(writableStream, options);\n    }, Writable.toWeb = function(streamWritable) {\n      return lazyWebStreams().newWritableStreamFromStreamWritable(streamWritable);\n    };\n  }\n}), require_duplexify = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplexify.js\"(exports, module) {\n    var {\n      isReadable,\n      isWritable,\n      isIterable,\n      isNodeStream,\n      isReadableNodeStream,\n      isWritableNodeStream,\n      isDuplexNodeStream\n    } = require_utils(), eos = require_end_of_stream(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE }\n    } = require_errors(), { destroyer } = require_destroy(), Duplex = require_duplex(), Readable = require_readable(), { createDeferredPromise } = require_util(), from = require_from(), isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    }, { FunctionPrototypeCall } = require_primordials();\n\n    class Duplexify extends Duplex {\n      constructor(options) {\n        super(options);\n        if ((options === null || options === void 0 \? void 0 : options.readable) === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if ((options === null || options === void 0 \? void 0 : options.writable) === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      }\n    }\n    module.exports = function duplexify(body, name) {\n      if (isDuplexNodeStream(body))\n        return body;\n      if (isReadableNodeStream(body))\n        return _duplexify({\n          readable: body\n        });\n      if (isWritableNodeStream(body))\n        return _duplexify({\n          writable: body\n        });\n      if (isNodeStream(body))\n        return _duplexify({\n          writable: !1,\n          readable: !1\n        });\n      if (typeof body === \"function\") {\n        const { value, write, final, destroy: destroy2 } = fromAsyncGen(body);\n        if (isIterable(value))\n          return from(Duplexify, value, {\n            objectMode: !0,\n            write,\n            final,\n            destroy: destroy2\n          });\n        const then2 = value === null || value === void 0 \? void 0 : value.then;\n        if (typeof then2 === \"function\") {\n          let d;\n          const promise = FunctionPrototypeCall(then2, value, (val) => {\n            if (val != null)\n              throw new ERR_INVALID_RETURN_VALUE(\"nully\", \"body\", val);\n          }, (err) => {\n            destroyer(d, err);\n          });\n          return d = new Duplexify({\n            objectMode: !0,\n            readable: !1,\n            write,\n            final(cb) {\n              final(async () => {\n                try {\n                  await promise, runOnNextTick(cb, null);\n                } catch (err) {\n                  runOnNextTick(cb, err);\n                }\n              });\n            },\n            destroy: destroy2\n          });\n        }\n        throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or AsyncFunction\", name, value);\n      }\n      if (isBlob(body))\n        return duplexify(body.arrayBuffer());\n      if (isIterable(body))\n        return from(Duplexify, body, {\n          objectMode: !0,\n          writable: !1\n        });\n      if (typeof (body === null || body === void 0 \? void 0 : body.writable) === \"object\" || typeof (body === null || body === void 0 \? void 0 : body.readable) === \"object\") {\n        const readable = body !== null && body !== void 0 && body.readable \? isReadableNodeStream(body === null || body === void 0 \? void 0 : body.readable) \? body === null || body === void 0 \? void 0 : body.readable : duplexify(body.readable) : void 0, writable = body !== null && body !== void 0 && body.writable \? isWritableNodeStream(body === null || body === void 0 \? void 0 : body.writable) \? body === null || body === void 0 \? void 0 : body.writable : duplexify(body.writable) : void 0;\n        return _duplexify({\n          readable,\n          writable\n        });\n      }\n      const then = body === null || body === void 0 \? void 0 : body.then;\n      if (typeof then === \"function\") {\n        let d;\n        return FunctionPrototypeCall(then, body, (val) => {\n          if (val != null)\n            d.push(val);\n          d.push(null);\n        }, (err) => {\n          destroyer(d, err);\n        }), d = new Duplexify({\n          objectMode: !0,\n          writable: !1,\n          read() {\n          }\n        });\n      }\n      throw new ERR_INVALID_ARG_TYPE2(name, [\n        \"Blob\",\n        \"ReadableStream\",\n        \"WritableStream\",\n        \"Stream\",\n        \"Iterable\",\n        \"AsyncIterable\",\n        \"Function\",\n        \"{ readable, writable } pair\",\n        \"Promise\"\n      ], body);\n    };\n    function fromAsyncGen(fn) {\n      let { promise, resolve } = createDeferredPromise();\n      const ac = new AbortController, signal = ac.signal;\n      return {\n        value: fn(async function* () {\n          while (!0) {\n            const _promise = promise;\n            promise = null;\n            const { chunk, done, cb } = await _promise;\n            if (runOnNextTick(cb), done)\n              return;\n            if (signal.aborted)\n              throw new AbortError2(void 0, {\n                cause: signal.reason\n              });\n            ({ promise, resolve } = createDeferredPromise()), yield chunk;\n          }\n        }(), {\n          signal\n        }),\n        write(chunk, encoding, cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            chunk,\n            done: !1,\n            cb\n          });\n        },\n        final(cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            done: !0,\n            cb\n          });\n        },\n        destroy(err, cb) {\n          ac.abort(), cb(err);\n        }\n      };\n    }\n    function _duplexify(pair) {\n      const r = pair.readable && typeof pair.readable.read !== \"function\" \? Readable.wrap(pair.readable) : pair.readable, w = pair.writable;\n      let readable = !!isReadable(r), writable = !!isWritable(w), ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      if (d = new Duplexify({\n        readableObjectMode: !!(r !== null && r !== void 0 && r.readableObjectMode),\n        writableObjectMode: !!(w !== null && w !== void 0 && w.writableObjectMode),\n        readable,\n        writable\n      }), writable)\n        eos(w, (err) => {\n          if (writable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), d._write = function(chunk, encoding, callback) {\n          if (w.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          w.end(), onfinish = callback;\n        }, w.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), w.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        eos(r, (err) => {\n          if (readable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), r.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), r.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = r.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(w, err), destroyer(r, err);\n      }, d;\n    }\n  }\n}), require_duplex = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplex.js\"(exports, module) {\n    var { ObjectDefineProperties, ObjectGetOwnPropertyDescriptor, ObjectKeys, ObjectSetPrototypeOf } = require_primordials(), Readable = require_readable();\n    function Duplex(options) {\n      if (!(this instanceof Duplex))\n        return new Duplex(options);\n      if (Readable.call(this, options), Writable.call(this, options), options) {\n        if (this.allowHalfOpen = options.allowHalfOpen !== !1, options.readable === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if (options.writable === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      } else\n        this.allowHalfOpen = !0;\n    }\n    Duplex.prototype = {}, module.exports = Duplex, ObjectSetPrototypeOf(Duplex.prototype, Readable.prototype), ObjectSetPrototypeOf(Duplex, Readable);\n    for (var method in Writable.prototype)\n      if (!Duplex.prototype[method])\n        Duplex.prototype[method] = Writable.prototype[method];\n    ObjectDefineProperties(Duplex.prototype, {\n      writable: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writable\"),\n      writableHighWaterMark: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableHighWaterMark\"),\n      writableObjectMode: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableObjectMode\"),\n      writableBuffer: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableBuffer\"),\n      writableLength: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableLength\"),\n      writableFinished: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableFinished\"),\n      writableCorked: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableCorked\"),\n      writableEnded: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableEnded\"),\n      writableNeedDrain: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableNeedDrain\"),\n      destroyed: {\n        get() {\n          if (this._readableState === void 0 || this._writableState === void 0)\n            return !1;\n          return this._readableState.destroyed && this._writableState.destroyed;\n        },\n        set(value) {\n          if (this._readableState && this._writableState)\n            this._readableState.destroyed = value, this._writableState.destroyed = value;\n        }\n      }\n    });\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Duplex.fromWeb = function(pair, options) {\n      return lazyWebStreams().newStreamDuplexFromReadableWritablePair(pair, options);\n    }, Duplex.toWeb = function(duplex) {\n      return lazyWebStreams().newReadableWritablePairFromDuplex(duplex);\n    };\n    var duplexify;\n    Duplex.from = function(body) {\n      if (!duplexify)\n        duplexify = require_duplexify();\n      return duplexify(body, \"body\");\n    };\n  }\n}), require_transform = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/transform.js\"(exports, module) {\n    var { ObjectSetPrototypeOf, Symbol: Symbol2 } = require_primordials(), { ERR_METHOD_NOT_IMPLEMENTED } = require_errors().codes, Duplex = require_duplex();\n    function Transform(options) {\n      if (!(this instanceof Transform))\n        return new Transform(options);\n      if (Duplex.call(this, options), this._readableState.sync = !1, this[kCallback] = null, options) {\n        if (typeof options.transform === \"function\")\n          this._transform = options.transform;\n        if (typeof options.flush === \"function\")\n          this._flush = options.flush;\n      }\n      this.on(\"prefinish\", prefinish.bind(this));\n    }\n    Transform.prototype = {}, ObjectSetPrototypeOf(Transform.prototype, Duplex.prototype), ObjectSetPrototypeOf(Transform, Duplex), module.exports = Transform;\n    var kCallback = Symbol2(\"kCallback\");\n    function final(cb) {\n      if (typeof this._flush === \"function\" && !this.destroyed)\n        this._flush((er, data) => {\n          if (er) {\n            if (cb)\n              cb(er);\n            else\n              this.destroy(er);\n            return;\n          }\n          if (data != null)\n            this.push(data);\n          if (this.push(null), cb)\n            cb();\n        });\n      else if (this.push(null), cb)\n        cb();\n    }\n    function prefinish() {\n      if (this._final !== final)\n        final.call(this);\n    }\n    Transform.prototype._final = final, Transform.prototype._transform = function(chunk, encoding, callback) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_transform()\");\n    }, Transform.prototype._write = function(chunk, encoding, callback) {\n      const rState = this._readableState, wState = this._writableState, length = rState.length;\n      this._transform(chunk, encoding, (err, val) => {\n        if (err) {\n          callback(err);\n          return;\n        }\n        if (val != null)\n          this.push(val);\n        if (wState.ended || length === rState.length || rState.length < rState.highWaterMark || rState.highWaterMark === 0 || rState.length === 0)\n          callback();\n        else\n          this[kCallback] = callback;\n      });\n    }, Transform.prototype._read = function() {\n      if (this[kCallback]) {\n        const callback = this[kCallback];\n        this[kCallback] = null, callback();\n      }\n    };\n  }\n}), require_passthrough = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/passthrough.js\"(exports, module) {\n    var { ObjectSetPrototypeOf } = require_primordials(), Transform = require_transform();\n    function PassThrough(options) {\n      if (!(this instanceof PassThrough))\n        return new PassThrough(options);\n      Transform.call(this, options);\n    }\n    PassThrough.prototype = {}, ObjectSetPrototypeOf(PassThrough.prototype, Transform.prototype), ObjectSetPrototypeOf(PassThrough, Transform), PassThrough.prototype._transform = function(chunk, encoding, cb) {\n      cb(null, chunk);\n    }, module.exports = PassThrough;\n  }\n}), require_pipeline = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/pipeline.js\"(exports, module) {\n    var { ArrayIsArray: ArrayIsArray2, Promise: Promise2, SymbolAsyncIterator } = require_primordials(), eos = require_end_of_stream(), { once } = require_util(), destroyImpl = require_destroy(), Duplex = require_duplex(), {\n      aggregateTwoErrors,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE, ERR_MISSING_ARGS, ERR_STREAM_DESTROYED },\n      AbortError: AbortError2\n    } = require_errors(), { validateFunction, validateAbortSignal } = require_validators(), { isIterable, isReadable, isReadableNodeStream, isNodeStream } = require_utils(), PassThrough, Readable;\n    function destroyer(stream, reading, writing) {\n      let finished = !1;\n      stream.on(\"close\", () => {\n        finished = !0;\n      });\n      const cleanup = eos(stream, {\n        readable: reading,\n        writable: writing\n      }, (err) => {\n        finished = !err;\n      });\n      return {\n        destroy: (err) => {\n          if (finished)\n            return;\n          finished = !0, destroyImpl.destroyer(stream, err || new ERR_STREAM_DESTROYED(\"pipe\"));\n        },\n        cleanup\n      };\n    }\n    function popCallback(streams) {\n      return validateFunction(streams[streams.length - 1], \"streams[stream.length - 1]\"), streams.pop();\n    }\n    function makeAsyncIterable(val) {\n      if (isIterable(val))\n        return val;\n      else if (isReadableNodeStream(val))\n        return fromReadable(val);\n      throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], val);\n    }\n    async function* fromReadable(val) {\n      if (!Readable)\n        Readable = require_readable();\n      yield* Readable.prototype[SymbolAsyncIterator].call(val);\n    }\n    async function pump(iterable, writable, finish, { end }) {\n      let error, onresolve = null;\n      const resume = (err) => {\n        if (err)\n          error = err;\n        if (onresolve) {\n          const callback = onresolve;\n          onresolve = null, callback();\n        }\n      }, wait = () => new Promise2((resolve, reject) => {\n        if (error)\n          reject(error);\n        else\n          onresolve = () => {\n            if (error)\n              reject(error);\n            else\n              resolve();\n          };\n      });\n      writable.on(\"drain\", resume);\n      const cleanup = eos(writable, {\n        readable: !1\n      }, resume);\n      try {\n        if (writable.writableNeedDrain)\n          await wait();\n        for await (let chunk of iterable)\n          if (!writable.write(chunk))\n            await wait();\n        if (end)\n          writable.end();\n        await wait(), finish();\n      } catch (err) {\n        finish(error !== err \? aggregateTwoErrors(error, err) : err);\n      } finally {\n        cleanup(), writable.off(\"drain\", resume);\n      }\n    }\n    function pipeline(...streams) {\n      return pipelineImpl(streams, once(popCallback(streams)));\n    }\n    function pipelineImpl(streams, callback, opts) {\n      if (streams.length === 1 && ArrayIsArray2(streams[0]))\n        streams = streams[0];\n      if (streams.length < 2)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      const ac = new AbortController, signal = ac.signal, outerSignal = opts === null || opts === void 0 \? void 0 : opts.signal, lastStreamCleanup = [];\n      validateAbortSignal(outerSignal, \"options.signal\");\n      function abort() {\n        finishImpl(new AbortError2);\n      }\n      outerSignal === null || outerSignal === void 0 || outerSignal.addEventListener(\"abort\", abort);\n      let error, value;\n      const destroys = [];\n      let finishCount = 0;\n      function finish(err) {\n        finishImpl(err, --finishCount === 0);\n      }\n      function finishImpl(err, final) {\n        if (err && (!error || error.code === \"ERR_STREAM_PREMATURE_CLOSE\"))\n          error = err;\n        if (!error && !final)\n          return;\n        while (destroys.length)\n          destroys.shift()(error);\n        if (outerSignal === null || outerSignal === void 0 || outerSignal.removeEventListener(\"abort\", abort), ac.abort(), final) {\n          if (!error)\n            lastStreamCleanup.forEach((fn) => fn());\n          runOnNextTick(callback, error, value);\n        }\n      }\n      let ret;\n      for (let i = 0;i < streams.length; i++) {\n        const stream = streams[i], reading = i < streams.length - 1, writing = i > 0, end = reading || (opts === null || opts === void 0 \? void 0 : opts.end) !== !1, isLastStream = i === streams.length - 1;\n        if (isNodeStream(stream)) {\n          let onError = function(err) {\n            if (err && err.name !== \"AbortError\" && err.code !== \"ERR_STREAM_PREMATURE_CLOSE\")\n              finish(err);\n          };\n          if (end) {\n            const { destroy: destroy2, cleanup } = destroyer(stream, reading, writing);\n            if (destroys.push(destroy2), isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n          if (stream.on(\"error\", onError), isReadable(stream) && isLastStream)\n            lastStreamCleanup.push(() => {\n              stream.removeListener(\"error\", onError);\n            });\n        }\n        if (i === 0)\n          if (typeof stream === \"function\") {\n            if (ret = stream({\n              signal\n            }), !isIterable(ret))\n              throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or Stream\", \"source\", ret);\n          } else if (isIterable(stream) || isReadableNodeStream(stream))\n            ret = stream;\n          else\n            ret = Duplex.from(stream);\n        else if (typeof stream === \"function\")\n          if (ret = makeAsyncIterable(ret), ret = stream(ret, {\n            signal\n          }), reading) {\n            if (!isIterable(ret, !0))\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable\", `transform[${i - 1}]`, ret);\n          } else {\n            var _ret;\n            if (!PassThrough)\n              PassThrough = require_passthrough();\n            const pt = new PassThrough({\n              objectMode: !0\n            }), then = (_ret = ret) === null || _ret === void 0 \? void 0 : _ret.then;\n            if (typeof then === \"function\")\n              finishCount++, then.call(ret, (val) => {\n                if (value = val, val != null)\n                  pt.write(val);\n                if (end)\n                  pt.end();\n                runOnNextTick(finish);\n              }, (err) => {\n                pt.destroy(err), runOnNextTick(finish, err);\n              });\n            else if (isIterable(ret, !0))\n              finishCount++, pump(ret, pt, finish, {\n                end\n              });\n            else\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable or Promise\", \"destination\", ret);\n            ret = pt;\n            const { destroy: destroy2, cleanup } = destroyer(ret, !1, !0);\n            if (destroys.push(destroy2), isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n        else if (isNodeStream(stream)) {\n          if (isReadableNodeStream(ret)) {\n            finishCount += 2;\n            const cleanup = pipe(ret, stream, finish, {\n              end\n            });\n            if (isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          } else if (isIterable(ret))\n            finishCount++, pump(ret, stream, finish, {\n              end\n            });\n          else\n            throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], ret);\n          ret = stream;\n        } else\n          ret = Duplex.from(stream);\n      }\n      if (signal !== null && signal !== void 0 && signal.aborted || outerSignal !== null && outerSignal !== void 0 && outerSignal.aborted)\n        runOnNextTick(abort);\n      return ret;\n    }\n    function pipe(src, dst, finish, { end }) {\n      if (src.pipe(dst, {\n        end\n      }), end)\n        src.once(\"end\", () => dst.end());\n      else\n        finish();\n      return eos(src, {\n        readable: !0,\n        writable: !1\n      }, (err) => {\n        const rState = src._readableState;\n        if (err && err.code === \"ERR_STREAM_PREMATURE_CLOSE\" && rState && rState.ended && !rState.errored && !rState.errorEmitted)\n          src.once(\"end\", finish).once(\"error\", finish);\n        else\n          finish(err);\n      }), eos(dst, {\n        readable: !1,\n        writable: !0\n      }, finish);\n    }\n    module.exports = {\n      pipelineImpl,\n      pipeline\n    };\n  }\n}), require_compose = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/compose.js\"(exports, module) {\n    var { pipeline } = require_pipeline(), Duplex = require_duplex(), { destroyer } = require_destroy(), { isNodeStream, isReadable, isWritable } = require_utils(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_MISSING_ARGS }\n    } = require_errors();\n    module.exports = function compose(...streams) {\n      if (streams.length === 0)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      if (streams.length === 1)\n        return Duplex.from(streams[0]);\n      const orgStreams = [...streams];\n      if (typeof streams[0] === \"function\")\n        streams[0] = Duplex.from(streams[0]);\n      if (typeof streams[streams.length - 1] === \"function\") {\n        const idx = streams.length - 1;\n        streams[idx] = Duplex.from(streams[idx]);\n      }\n      for (let n = 0;n < streams.length; ++n) {\n        if (!isNodeStream(streams[n]))\n          continue;\n        if (n < streams.length - 1 && !isReadable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be readable\");\n        if (n > 0 && !isWritable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be writable\");\n      }\n      let ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      const head = streams[0], tail = pipeline(streams, onfinished), writable = !!isWritable(head), readable = !!isReadable(tail);\n      if (d = new Duplex({\n        writableObjectMode: !!(head !== null && head !== void 0 && head.writableObjectMode),\n        readableObjectMode: !!(tail !== null && tail !== void 0 && tail.writableObjectMode),\n        writable,\n        readable\n      }), writable)\n        d._write = function(chunk, encoding, callback) {\n          if (head.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          head.end(), onfinish = callback;\n        }, head.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), tail.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        tail.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), tail.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = tail.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(tail, err);\n      }, d;\n    };\n  }\n}), require_promises = __commonJS({\n  \"node_modules/readable-stream/lib/stream/promises.js\"(exports, module) {\n    var { ArrayPrototypePop, Promise: Promise2 } = require_primordials(), { isIterable, isNodeStream } = require_utils(), { pipelineImpl: pl } = require_pipeline(), { finished } = require_end_of_stream();\n    function pipeline(...streams) {\n      return new Promise2((resolve, reject) => {\n        let signal, end;\n        const lastArg = streams[streams.length - 1];\n        if (lastArg && typeof lastArg === \"object\" && !isNodeStream(lastArg) && !isIterable(lastArg)) {\n          const options = ArrayPrototypePop(streams);\n          signal = options.signal, end = options.end;\n        }\n        pl(streams, (err, value) => {\n          if (err)\n            reject(err);\n          else\n            resolve(value);\n        }, {\n          signal,\n          end\n        });\n      });\n    }\n    module.exports = {\n      finished,\n      pipeline\n    };\n  }\n}), require_stream = __commonJS({\n  \"node_modules/readable-stream/lib/stream.js\"(exports, module) {\n    var { ObjectDefineProperty, ObjectKeys, ReflectApply } = require_primordials(), {\n      promisify: { custom: customPromisify }\n    } = require_util(), { streamReturningOperators, promiseReturningOperators } = require_operators(), {\n      codes: { ERR_ILLEGAL_CONSTRUCTOR }\n    } = require_errors(), compose = require_compose(), { pipeline } = require_pipeline(), { destroyer } = require_destroy(), eos = require_end_of_stream(), promises = require_promises(), utils = require_utils(), Stream = module.exports = require_legacy().Stream;\n    Stream.isDisturbed = utils.isDisturbed, Stream.isErrored = utils.isErrored, Stream.isWritable = utils.isWritable, Stream.isReadable = utils.isReadable, Stream.Readable = require_readable();\n    for (let key of ObjectKeys(streamReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return Stream.Readable.from(ReflectApply(op, this, args));\n      };\n      const op = streamReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    for (let key of ObjectKeys(promiseReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return ReflectApply(op, this, args);\n      };\n      const op = promiseReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    Stream.Writable = require_writable(), Stream.Duplex = require_duplex(), Stream.Transform = require_transform(), Stream.PassThrough = require_passthrough(), Stream.pipeline = pipeline;\n    var { addAbortSignal } = require_add_abort_signal();\n    Stream.addAbortSignal = addAbortSignal, Stream.finished = eos, Stream.destroy = destroyer, Stream.compose = compose, ObjectDefineProperty(Stream, \"promises\", {\n      configurable: !0,\n      enumerable: !0,\n      get() {\n        return promises;\n      }\n    }), ObjectDefineProperty(pipeline, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.pipeline;\n      }\n    }), ObjectDefineProperty(eos, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.finished;\n      }\n    }), Stream.Stream = Stream, Stream._isUint8Array = function isUint8Array(value) {\n      return value instanceof Uint8Array;\n    }, Stream._uint8ArrayToBuffer = function _uint8ArrayToBuffer(chunk) {\n      return new Buffer(chunk.buffer, chunk.byteOffset, chunk.byteLength);\n    };\n  }\n}), nativeReadableStreamPrototypes = {\n  0: void 0,\n  1: void 0,\n  2: void 0,\n  3: void 0,\n  4: void 0,\n  5: void 0\n}, Writable = require_writable(), NativeWritable = class NativeWritable2 extends Writable {\n  #pathOrFdOrSink;\n  #fileSink;\n  #native = !0;\n  _construct;\n  _destroy;\n  _final;\n  constructor(pathOrFdOrSink, options = {}) {\n    super(options);\n    this._construct = this.#internalConstruct, this._destroy = this.#internalDestroy, this._final = this.#internalFinal, this.#pathOrFdOrSink = pathOrFdOrSink;\n  }\n  #internalConstruct(cb) {\n    if (this._writableState.constructed = !0, this.constructed = !0, typeof cb === \"function\")\n      cb();\n    process.nextTick(() => {\n      this.emit(\"open\", this.fd), this.emit(\"ready\");\n    });\n  }\n  #lazyConstruct() {\n    if (typeof this.#pathOrFdOrSink === \"object\")\n      if (typeof this.#pathOrFdOrSink.write === \"function\")\n        this.#fileSink = this.#pathOrFdOrSink;\n      else\n        throw new Error(\"Invalid FileSink\");\n    else\n      this.#fileSink = Bun.file(this.#pathOrFdOrSink).writer();\n  }\n  write(chunk, encoding, cb, native = this.#native) {\n    if (!native)\n      return this.#native = !1, super.write(chunk, encoding, cb);\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    var fileSink = this.#fileSink, result = fileSink.write(chunk);\n    if (@isPromise(result))\n      return result.then(() => {\n        this.emit(\"drain\"), fileSink.flush(!0);\n      }), !1;\n    if (fileSink.flush(!0), cb)\n      cb(null, chunk.byteLength);\n    return !0;\n  }\n  end(chunk, encoding, cb, native = this.#native) {\n    return super.end(chunk, encoding, cb, native);\n  }\n  #internalDestroy(error, cb) {\n    const w = this._writableState, r = this._readableState;\n    if (w)\n      w.destroyed = !0, w.closeEmitted = !0;\n    if (r)\n      r.destroyed = !0, r.closeEmitted = !0;\n    if (typeof cb === \"function\")\n      cb(error);\n    if (w\?.closeEmitted || r\?.closeEmitted)\n      this.emit(\"close\");\n  }\n  #internalFinal(cb) {\n    if (this.#fileSink)\n      this.#fileSink.end();\n    if (cb)\n      cb();\n  }\n  ref() {\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    this.#fileSink.ref();\n  }\n  unref() {\n    if (!this.#fileSink)\n      return;\n    this.#fileSink.unref();\n  }\n}, exports = require_stream(), promises = require_promises();\nexports._getNativeReadableStreamPrototype = getNativeReadableStreamPrototype;\nexports.NativeWritable = NativeWritable;\nObject.defineProperty(exports, \"promises\", {\n  configurable: !0,\n  enumerable: !0,\n  get() {\n    return promises;\n  }\n});\nexports[Symbol.for(\"::bunternal::\")] = { _ReadableFromWeb, _ReadableFromWebForUndici };\nexports.eos = require_end_of_stream();\nexports.EventEmitter = EE;\nreturn exports})\n"_s;  //  // @@ -395,7 +395,7 @@ static constexpr ASCIILiteral NodeStreamConsumersCode = "(function (){\"use stri  //  // -static constexpr ASCIILiteral NodeStreamCode = "(function (){\"use strict\";// src/js/out/tmp/node/stream.ts\nvar isReadableStream = function(value) {\n  return typeof value === \"object\" && value !== null && value instanceof ReadableStream;\n}, validateBoolean = function(value, name) {\n  if (typeof value !== \"boolean\")\n    throw new ERR_INVALID_ARG_TYPE(name, \"boolean\", value);\n}, highWaterMarkFrom = function(options, isDuplex, duplexKey) {\n  return options.highWaterMark != null \? options.highWaterMark : isDuplex \? options[duplexKey] : null;\n}, getDefaultHighWaterMark = function(objectMode) {\n  return objectMode \? 16 : 16384;\n}, getHighWaterMark = function(state, options, duplexKey, isDuplex) {\n  const hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n  if (hwm != null) {\n    if (!Number.isInteger(hwm) || hwm < 0) {\n      const name = isDuplex \? `options.${duplexKey}` : \"options.highWaterMark\";\n      throw new ERR_INVALID_ARG_VALUE(name, hwm);\n    }\n    return Math.floor(hwm);\n  }\n  return getDefaultHighWaterMark(state.objectMode);\n}, ReadableState = function(options, stream, isDuplex) {\n  if (typeof isDuplex !== \"boolean\")\n    isDuplex = stream instanceof Duplex;\n  if (this.objectMode = !!(options && options.objectMode), isDuplex)\n    this.objectMode = this.objectMode || !!(options && options.readableObjectMode);\n  if (this.highWaterMark = options \? getHighWaterMark(this, options, \"readableHighWaterMark\", isDuplex) : getDefaultHighWaterMark(!1), this.buffer = new BufferList, this.length = 0, this.pipes = [], this.flowing = null, this.ended = !1, this.endEmitted = !1, this.reading = !1, this.constructed = !0, this.sync = !0, this.needReadable = !1, this.emittedReadable = !1, this.readableListening = !1, this.resumeScheduled = !1, this.errorEmitted = !1, this.emitClose = !options || options.emitClose !== !1, this.autoDestroy = !options || options.autoDestroy !== !1, this.destroyed = !1, this.errored = null, this.closed = !1, this.closeEmitted = !1, this.defaultEncoding = options && options.defaultEncoding || \"utf8\", this.awaitDrainWriters = null, this.multiAwaitDrain = !1, this.readingMore = !1, this.dataEmitted = !1, this.decoder = null, this.encoding = null, options && options.encoding)\n    this.decoder = new StringDecoder(options.encoding), this.encoding = options.encoding;\n};\nvar ERR_INVALID_ARG_TYPE = function(name, type, value) {\n  return new Error(`The argument '${name}' is invalid. Received '${value}' for type '${type}'`);\n}, ERR_INVALID_ARG_VALUE = function(name, value, reason) {\n  return new Error(`The value '${value}' is invalid for argument '${name}'. Reason: ${reason}`);\n}, createNativeStreamReadable = function(nativeType, Readable) {\n  var [pull, start, cancel, setClose, deinit, updateRef, drainFn] = globalThis[globalThis.Symbol.for('Bun.lazy')](nativeType), closer = [!1], handleNumberResult = function(nativeReadable, result, view, isClosed) {\n    if (result > 0) {\n      const slice = view.subarray(0, result), remainder = view.subarray(result);\n      if (slice.byteLength > 0)\n        nativeReadable.push(slice);\n      if (isClosed)\n        nativeReadable.push(null);\n      return remainder.byteLength > 0 \? remainder : void 0;\n    }\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, handleArrayBufferViewResult = function(nativeReadable, result, view, isClosed) {\n    if (result.byteLength > 0)\n      nativeReadable.push(result);\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, DYNAMICALLY_ADJUST_CHUNK_SIZE = process.env.BUN_DISABLE_DYNAMIC_CHUNK_SIZE !== \"1\";\n  const finalizer = new FinalizationRegistry((ptr) => ptr && deinit(ptr)), MIN_BUFFER_SIZE = 512;\n  var NativeReadable = class NativeReadable2 extends Readable {\n    #bunNativePtr;\n    #refCount = 1;\n    #constructed = !1;\n    #remainingChunk = void 0;\n    #highWaterMark;\n    #pendingRead = !1;\n    #hasResized = !DYNAMICALLY_ADJUST_CHUNK_SIZE;\n    #unregisterToken;\n    constructor(ptr, options = {}) {\n      super(options);\n      if (typeof options.highWaterMark === \"number\")\n        this.#highWaterMark = options.highWaterMark;\n      else\n        this.#highWaterMark = 262144;\n      this.#bunNativePtr = ptr, this.#constructed = !1, this.#remainingChunk = void 0, this.#pendingRead = !1, this.#unregisterToken = {}, finalizer.register(this, this.#bunNativePtr, this.#unregisterToken);\n    }\n    _read(maxToRead) {\n      if (this.#pendingRead)\n        return;\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        this.push(null);\n        return;\n      }\n      if (!this.#constructed)\n        this.#internalConstruct(ptr);\n      return this.#internalRead(this.#getRemainingChunk(maxToRead), ptr);\n    }\n    #internalConstruct(ptr) {\n      this.#constructed = !0;\n      const result = start(ptr, this.#highWaterMark);\n      if (typeof result === \"number\" && result > 1)\n        this.#hasResized = !0, this.#highWaterMark = Math.min(this.#highWaterMark, result);\n      if (drainFn) {\n        const drainResult = drainFn(ptr);\n        if ((drainResult\?.byteLength \?\? 0) > 0)\n          this.push(drainResult);\n      }\n    }\n    #getRemainingChunk(maxToRead = this.#highWaterMark) {\n      var chunk = this.#remainingChunk;\n      if (chunk\?.byteLength \?\? 0 < MIN_BUFFER_SIZE) {\n        var size = maxToRead > MIN_BUFFER_SIZE \? maxToRead : MIN_BUFFER_SIZE;\n        this.#remainingChunk = chunk = new Buffer(size);\n      }\n      return chunk;\n    }\n    #handleResult(result, view, isClosed) {\n      if (typeof result === \"number\") {\n        if (result >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleNumberResult(this, result, view, isClosed);\n      } else if (typeof result === \"boolean\")\n        return process.nextTick(() => {\n          this.push(null);\n        }), view\?.byteLength \?\? 0 > 0 \? view : void 0;\n      else if (ArrayBuffer.isView(result)) {\n        if (result.byteLength >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleArrayBufferViewResult(this, result, view, isClosed);\n      } else\n        throw new Error(\"Invalid result from pull\");\n    }\n    #internalRead(view, ptr) {\n      closer[0] = !1;\n      var result = pull(ptr, view, closer);\n      if (@isPromise(result))\n        return this.#pendingRead = !0, result.then((result2) => {\n          this.#pendingRead = !1, this.#remainingChunk = this.#handleResult(result2, view, closer[0]);\n        }, (reason) => {\n          errorOrDestroy(this, reason);\n        });\n      else\n        this.#remainingChunk = this.#handleResult(result, view, closer[0]);\n    }\n    _destroy(error, callback) {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        callback(error);\n        return;\n      }\n      if (finalizer.unregister(this.#unregisterToken), this.#bunNativePtr = 0, updateRef)\n        updateRef(ptr, !1);\n      cancel(ptr, error), callback(error);\n    }\n    ref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount++ === 0)\n        updateRef(ptr, !0);\n    }\n    unref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount-- === 1)\n        updateRef(ptr, !1);\n    }\n  };\n  if (!updateRef)\n    NativeReadable.prototype.ref = void 0, NativeReadable.prototype.unref = void 0;\n  return NativeReadable;\n}, getNativeReadableStreamPrototype = function(nativeType, Readable) {\n  return nativeReadableStreamPrototypes[nativeType] ||= createNativeStreamReadable(nativeType, Readable);\n}, getNativeReadableStream = function(Readable, stream, options) {\n  if (!(stream && typeof stream === \"object\" && stream instanceof ReadableStream))\n    return;\n  const native = @direct(stream);\n  if (!native)\n    return;\n  const { stream: ptr, data: type } = native;\n  return new (getNativeReadableStreamPrototype(type, Readable))(ptr, options);\n}, EE = @getInternalField(@internalModuleRegistry, 18) || @createInternalModuleById(18), StringDecoder = @requireNativeModule(\"string_decoder\").StringDecoder, __getOwnPropNames = Object.getOwnPropertyNames, __commonJS = (cb, mod) => function __require2() {\n  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n}, runOnNextTick = process.nextTick;\n\nclass BufferList {\n  constructor() {\n    this.head = null, this.tail = null, this.length = 0;\n  }\n  push(v) {\n    const entry = {\n      data: v,\n      next: null\n    };\n    if (this.length > 0)\n      this.tail.next = entry;\n    else\n      this.head = entry;\n    this.tail = entry, ++this.length;\n  }\n  unshift(v) {\n    const entry = {\n      data: v,\n      next: this.head\n    };\n    if (this.length === 0)\n      this.tail = entry;\n    this.head = entry, ++this.length;\n  }\n  shift() {\n    if (this.length === 0)\n      return;\n    const ret = this.head.data;\n    if (this.length === 1)\n      this.head = this.tail = null;\n    else\n      this.head = this.head.next;\n    return --this.length, ret;\n  }\n  clear() {\n    this.head = this.tail = null, this.length = 0;\n  }\n  join(s) {\n    if (this.length === 0)\n      return \"\";\n    let p = this.head, ret = \"\" + p.data;\n    while ((p = p.next) !== null)\n      ret += s + p.data;\n    return ret;\n  }\n  concat(n) {\n    if (this.length === 0)\n      return Buffer.alloc(0);\n    const ret = Buffer.allocUnsafe(n >>> 0);\n    let p = this.head, i = 0;\n    while (p)\n      ret.set(p.data, i), i += p.data.length, p = p.next;\n    return ret;\n  }\n  consume(n, hasStrings) {\n    const data = this.head.data;\n    if (n < data.length) {\n      const slice = data.slice(0, n);\n      return this.head.data = data.slice(n), slice;\n    }\n    if (n === data.length)\n      return this.shift();\n    return hasStrings \? this._getString(n) : this._getBuffer(n);\n  }\n  first() {\n    return this.head.data;\n  }\n  *[Symbol.iterator]() {\n    for (let p = this.head;p; p = p.next)\n      yield p.data;\n  }\n  _getString(n) {\n    let ret = \"\", p = this.head, c = 0;\n    do {\n      const str = p.data;\n      if (n > str.length)\n        ret += str, n -= str.length;\n      else {\n        if (n === str.length)\n          if (ret += str, ++c, p.next)\n            this.head = p.next;\n          else\n            this.head = this.tail = null;\n        else\n          ret += str.slice(0, n), this.head = p, p.data = str.slice(n);\n        break;\n      }\n      ++c;\n    } while ((p = p.next) !== null);\n    return this.length -= c, ret;\n  }\n  _getBuffer(n) {\n    const ret = Buffer.allocUnsafe(n), retLen = n;\n    let p = this.head, c = 0;\n    do {\n      const buf = p.data;\n      if (n > buf.length)\n        ret.set(buf, retLen - n), n -= buf.length;\n      else {\n        if (n === buf.length)\n          if (ret.set(buf, retLen - n), ++c, p.next)\n            this.head = p.next;\n          else\n            this.head = this.tail = null;\n        else\n          ret.set(new Uint8Array(buf.buffer, buf.byteOffset, n), retLen - n), this.head = p, p.data = buf.slice(n);\n        break;\n      }\n      ++c;\n    } while ((p = p.next) !== null);\n    return this.length -= c, ret;\n  }\n  [Symbol.for(\"nodejs.util.inspect.custom\")](_, options) {\n    return inspect(this, {\n      ...options,\n      depth: 0,\n      customInspect: !1\n    });\n  }\n}\nvar require_primordials = __commonJS({\n  \"node_modules/readable-stream/lib/ours/primordials.js\"(exports, module) {\n    module.exports = {\n      ArrayIsArray(self) {\n        return @isArray(self);\n      },\n      ArrayPrototypeIncludes(self, el) {\n        return self.includes(el);\n      },\n      ArrayPrototypeIndexOf(self, el) {\n        return self.indexOf(el);\n      },\n      ArrayPrototypeJoin(self, sep) {\n        return self.join(sep);\n      },\n      ArrayPrototypeMap(self, fn) {\n        return self.map(fn);\n      },\n      ArrayPrototypePop(self, el) {\n        return self.pop(el);\n      },\n      ArrayPrototypePush(self, el) {\n        return self.push(el);\n      },\n      ArrayPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      Error,\n      FunctionPrototypeCall(fn, thisArgs, ...args) {\n        return fn.call(thisArgs, ...args);\n      },\n      FunctionPrototypeSymbolHasInstance(self, instance) {\n        return Function.prototype[Symbol.hasInstance].call(self, instance);\n      },\n      MathFloor: Math.floor,\n      Number,\n      NumberIsInteger: Number.isInteger,\n      NumberIsNaN: Number.isNaN,\n      NumberMAX_SAFE_INTEGER: Number.MAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER: Number.MIN_SAFE_INTEGER,\n      NumberParseInt: Number.parseInt,\n      ObjectDefineProperties(self, props) {\n        return Object.defineProperties(self, props);\n      },\n      ObjectDefineProperty(self, name, prop) {\n        return Object.defineProperty(self, name, prop);\n      },\n      ObjectGetOwnPropertyDescriptor(self, name) {\n        return Object.getOwnPropertyDescriptor(self, name);\n      },\n      ObjectKeys(obj) {\n        return Object.keys(obj);\n      },\n      ObjectSetPrototypeOf(target, proto) {\n        return Object.setPrototypeOf(target, proto);\n      },\n      Promise,\n      PromisePrototypeCatch(self, fn) {\n        return self.catch(fn);\n      },\n      PromisePrototypeThen(self, thenFn, catchFn) {\n        return self.then(thenFn, catchFn);\n      },\n      PromiseReject(err) {\n        return Promise.reject(err);\n      },\n      ReflectApply: Reflect.apply,\n      RegExpPrototypeTest(self, value) {\n        return self.test(value);\n      },\n      SafeSet: Set,\n      String,\n      StringPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      StringPrototypeToLowerCase(self) {\n        return self.toLowerCase();\n      },\n      StringPrototypeToUpperCase(self) {\n        return self.toUpperCase();\n      },\n      StringPrototypeTrim(self) {\n        return self.trim();\n      },\n      Symbol,\n      SymbolAsyncIterator: Symbol.asyncIterator,\n      SymbolHasInstance: Symbol.hasInstance,\n      SymbolIterator: Symbol.iterator,\n      Uint8Array\n    };\n  }\n}), require_util = __commonJS({\n  \"node_modules/readable-stream/lib/ours/util.js\"(exports, module) {\n    var AsyncFunction = Object.getPrototypeOf(async function() {\n    }).constructor, isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    };\n    module.exports = {\n      AggregateError,\n      once(callback) {\n        let called = !1;\n        return function(...args) {\n          if (called)\n            return;\n          called = !0, callback.apply(this, args);\n        };\n      },\n      createDeferredPromise: function() {\n        let resolve, reject;\n        return {\n          promise: new Promise((res, rej) => {\n            resolve = res, reject = rej;\n          }),\n          resolve,\n          reject\n        };\n      },\n      promisify(fn) {\n        return new Promise((resolve, reject) => {\n          fn((err, ...args) => {\n            if (err)\n              return reject(err);\n            return resolve(...args);\n          });\n        });\n      },\n      debuglog() {\n        return function() {\n        };\n      },\n      format(format, ...args) {\n        return format.replace(/%([sdifj])/g, function(...[_unused, type]) {\n          const replacement = args.shift();\n          if (type === \"f\")\n            return replacement.toFixed(6);\n          else if (type === \"j\")\n            return JSON.stringify(replacement);\n          else if (type === \"s\" && typeof replacement === \"object\")\n            return `${replacement.constructor !== Object \? replacement.constructor.name : \"\"} {}`.trim();\n          else\n            return replacement.toString();\n        });\n      },\n      inspect(value) {\n        switch (typeof value) {\n          case \"string\":\n            if (value.includes(\"'\")) {\n              if (!value.includes('\"'))\n                return `\"${value}\"`;\n              else if (!value.includes(\"`\") && !value.includes(\"${\"))\n                return `\\`${value}\\``;\n            }\n            return `'${value}'`;\n          case \"number\":\n            if (isNaN(value))\n              return \"NaN\";\n            else if (Object.is(value, -0))\n              return String(value);\n            return value;\n          case \"bigint\":\n            return `${String(value)}n`;\n          case \"boolean\":\n          case \"undefined\":\n            return String(value);\n          case \"object\":\n            return \"{}\";\n        }\n      },\n      types: {\n        isAsyncFunction(fn) {\n          return fn instanceof AsyncFunction;\n        },\n        isArrayBufferView(arr) {\n          return ArrayBuffer.isView(arr);\n        }\n      },\n      isBlob\n    }, module.exports.promisify.custom = Symbol.for(\"nodejs.util.promisify.custom\");\n  }\n}), require_errors = __commonJS({\n  \"node_modules/readable-stream/lib/ours/errors.js\"(exports, module) {\n    var { format, inspect: inspect2 } = require_util(), AggregateError2 = globalThis.AggregateError, kIsNodeError = Symbol(\"kIsNodeError\"), kTypes = [\"string\", \"function\", \"number\", \"object\", \"Function\", \"Object\", \"boolean\", \"bigint\", \"symbol\"], classRegExp = /^([A-Z][a-z0-9]*)+$/, nodeInternalPrefix = \"__node_internal_\", codes = {};\n    function assert(value, message) {\n      if (!value)\n        throw new codes.ERR_INTERNAL_ASSERTION(message);\n    }\n    function addNumericalSeparator(val) {\n      let res = \"\", i = val.length;\n      const start = val[0] === \"-\" \? 1 : 0;\n      for (;i >= start + 4; i -= 3)\n        res = `_${val.slice(i - 3, i)}${res}`;\n      return `${val.slice(0, i)}${res}`;\n    }\n    function getMessage(key, msg, args) {\n      if (typeof msg === \"function\")\n        return assert(msg.length <= args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${msg.length}).`), msg(...args);\n      const expectedLength = (msg.match(/%[dfijoOs]/g) || []).length;\n      if (assert(expectedLength === args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${expectedLength}).`), args.length === 0)\n        return msg;\n      return format(msg, ...args);\n    }\n    function E(code, message, Base) {\n      if (!Base)\n        Base = Error;\n\n      class NodeError extends Base {\n        constructor(...args) {\n          super(getMessage(code, message, args));\n        }\n        toString() {\n          return `${this.name} [${code}]: ${this.message}`;\n        }\n      }\n      Object.defineProperties(NodeError.prototype, {\n        name: {\n          value: Base.name,\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        },\n        toString: {\n          value() {\n            return `${this.name} [${code}]: ${this.message}`;\n          },\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        }\n      }), NodeError.prototype.code = code, NodeError.prototype[kIsNodeError] = !0, codes[code] = NodeError;\n    }\n    function hideStackFrames(fn) {\n      const hidden = nodeInternalPrefix + fn.name;\n      return Object.defineProperty(fn, \"name\", {\n        value: hidden\n      }), fn;\n    }\n    function aggregateTwoErrors(innerError, outerError) {\n      if (innerError && outerError && innerError !== outerError) {\n        if (Array.isArray(outerError.errors))\n          return outerError.errors.push(innerError), outerError;\n        const err = new AggregateError2([outerError, innerError], outerError.message);\n        return err.code = outerError.code, err;\n      }\n      return innerError || outerError;\n    }\n    var AbortError2 = class extends Error {\n      constructor(message = \"The operation was aborted\", options = void 0) {\n        if (options !== void 0 && typeof options !== \"object\")\n          throw new codes.ERR_INVALID_ARG_TYPE(\"options\", \"Object\", options);\n        super(message, options);\n        this.code = \"ABORT_ERR\", this.name = \"AbortError\";\n      }\n    };\n    E(\"ERR_ASSERTION\", \"%s\", Error), E(\"ERR_INVALID_ARG_TYPE\", (name, expected, actual) => {\n      if (assert(typeof name === \"string\", \"'name' must be a string\"), !Array.isArray(expected))\n        expected = [expected];\n      let msg = \"The \";\n      if (name.endsWith(\" argument\"))\n        msg += `${name} `;\n      else\n        msg += `\"${name}\" ${name.includes(\".\") \? \"property\" : \"argument\"} `;\n      msg += \"must be \";\n      const types = [], instances = [], other = [];\n      for (let value of expected)\n        if (assert(typeof value === \"string\", \"All expected entries have to be of type string\"), kTypes.includes(value))\n          types.push(value.toLowerCase());\n        else if (classRegExp.test(value))\n          instances.push(value);\n        else\n          assert(value !== \"object\", 'The value \"object\" should be written as \"Object\"'), other.push(value);\n      if (instances.length > 0) {\n        const pos = types.indexOf(\"object\");\n        if (pos !== -1)\n          types.splice(types, pos, 1), instances.push(\"Object\");\n      }\n      if (types.length > 0) {\n        switch (types.length) {\n          case 1:\n            msg += `of type ${types[0]}`;\n            break;\n          case 2:\n            msg += `one of type ${types[0]} or ${types[1]}`;\n            break;\n          default: {\n            const last = types.pop();\n            msg += `one of type ${types.join(\", \")}, or ${last}`;\n          }\n        }\n        if (instances.length > 0 || other.length > 0)\n          msg += \" or \";\n      }\n      if (instances.length > 0) {\n        switch (instances.length) {\n          case 1:\n            msg += `an instance of ${instances[0]}`;\n            break;\n          case 2:\n            msg += `an instance of ${instances[0]} or ${instances[1]}`;\n            break;\n          default: {\n            const last = instances.pop();\n            msg += `an instance of ${instances.join(\", \")}, or ${last}`;\n          }\n        }\n        if (other.length > 0)\n          msg += \" or \";\n      }\n      switch (other.length) {\n        case 0:\n          break;\n        case 1:\n          if (other[0].toLowerCase() !== other[0])\n            msg += \"an \";\n          msg += `${other[0]}`;\n          break;\n        case 2:\n          msg += `one of ${other[0]} or ${other[1]}`;\n          break;\n        default: {\n          const last = other.pop();\n          msg += `one of ${other.join(\", \")}, or ${last}`;\n        }\n      }\n      if (actual == null)\n        msg += `. Received ${actual}`;\n      else if (typeof actual === \"function\" && actual.name)\n        msg += `. Received function ${actual.name}`;\n      else if (typeof actual === \"object\") {\n        var _actual$constructor;\n        if ((_actual$constructor = actual.constructor) !== null && _actual$constructor !== void 0 && _actual$constructor.name)\n          msg += `. Received an instance of ${actual.constructor.name}`;\n        else {\n          const inspected = inspect2(actual, {\n            depth: -1\n          });\n          msg += `. Received ${inspected}`;\n        }\n      } else {\n        let inspected = inspect2(actual, {\n          colors: !1\n        });\n        if (inspected.length > 25)\n          inspected = `${inspected.slice(0, 25)}...`;\n        msg += `. Received type ${typeof actual} (${inspected})`;\n      }\n      return msg;\n    }, TypeError), E(\"ERR_INVALID_ARG_VALUE\", (name, value, reason = \"is invalid\") => {\n      let inspected = inspect2(value);\n      if (inspected.length > 128)\n        inspected = inspected.slice(0, 128) + \"...\";\n      return `The ${name.includes(\".\") \? \"property\" : \"argument\"} '${name}' ${reason}. Received ${inspected}`;\n    }, TypeError), E(\"ERR_INVALID_RETURN_VALUE\", (input, name, value) => {\n      var _value$constructor;\n      const type = value !== null && value !== void 0 && (_value$constructor = value.constructor) !== null && _value$constructor !== void 0 && _value$constructor.name \? `instance of ${value.constructor.name}` : `type ${typeof value}`;\n      return `Expected ${input} to be returned from the \"${name}\" function but got ${type}.`;\n    }, TypeError), E(\"ERR_MISSING_ARGS\", (...args) => {\n      assert(args.length > 0, \"At least one arg needs to be specified\");\n      let msg;\n      const len = args.length;\n      switch (args = (Array.isArray(args) \? args : [args]).map((a) => `\"${a}\"`).join(\" or \"), len) {\n        case 1:\n          msg += `The ${args[0]} argument`;\n          break;\n        case 2:\n          msg += `The ${args[0]} and ${args[1]} arguments`;\n          break;\n        default:\n          {\n            const last = args.pop();\n            msg += `The ${args.join(\", \")}, and ${last} arguments`;\n          }\n          break;\n      }\n      return `${msg} must be specified`;\n    }, TypeError), E(\"ERR_OUT_OF_RANGE\", (str, range, input) => {\n      assert(range, 'Missing \"range\" argument');\n      let received;\n      if (Number.isInteger(input) && Math.abs(input) > 4294967296)\n        received = addNumericalSeparator(String(input));\n      else if (typeof input === \"bigint\") {\n        if (received = String(input), input > 2n ** 32n || input < -(2n ** 32n))\n          received = addNumericalSeparator(received);\n        received += \"n\";\n      } else\n        received = inspect2(input);\n      return `The value of \"${str}\" is out of range. It must be ${range}. Received ${received}`;\n    }, RangeError), E(\"ERR_MULTIPLE_CALLBACK\", \"Callback called multiple times\", Error), E(\"ERR_METHOD_NOT_IMPLEMENTED\", \"The %s method is not implemented\", Error), E(\"ERR_STREAM_ALREADY_FINISHED\", \"Cannot call %s after a stream was finished\", Error), E(\"ERR_STREAM_CANNOT_PIPE\", \"Cannot pipe, not readable\", Error), E(\"ERR_STREAM_DESTROYED\", \"Cannot call %s after a stream was destroyed\", Error), E(\"ERR_STREAM_NULL_VALUES\", \"May not write null values to stream\", TypeError), E(\"ERR_STREAM_PREMATURE_CLOSE\", \"Premature close\", Error), E(\"ERR_STREAM_PUSH_AFTER_EOF\", \"stream.push() after EOF\", Error), E(\"ERR_STREAM_UNSHIFT_AFTER_END_EVENT\", \"stream.unshift() after end event\", Error), E(\"ERR_STREAM_WRITE_AFTER_END\", \"write after end\", Error), E(\"ERR_UNKNOWN_ENCODING\", \"Unknown encoding: %s\", TypeError), module.exports = {\n      AbortError: AbortError2,\n      aggregateTwoErrors: hideStackFrames(aggregateTwoErrors),\n      hideStackFrames,\n      codes\n    };\n  }\n}), require_validators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/validators.js\"(exports, module) {\n    var {\n      ArrayIsArray,\n      ArrayPrototypeIncludes,\n      ArrayPrototypeJoin,\n      ArrayPrototypeMap,\n      NumberIsInteger,\n      NumberMAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER,\n      NumberParseInt,\n      RegExpPrototypeTest,\n      String: String2,\n      StringPrototypeToUpperCase,\n      StringPrototypeTrim\n    } = require_primordials(), {\n      hideStackFrames,\n      codes: { ERR_SOCKET_BAD_PORT, ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_OUT_OF_RANGE, ERR_UNKNOWN_SIGNAL }\n    } = require_errors(), { normalizeEncoding } = require_util(), { isAsyncFunction, isArrayBufferView } = require_util().types, signals = {};\n    function isInt32(value) {\n      return value === (value | 0);\n    }\n    function isUint32(value) {\n      return value === value >>> 0;\n    }\n    var octalReg = /^[0-7]+$/, modeDesc = \"must be a 32-bit unsigned integer or an octal string\";\n    function parseFileMode(value, name, def) {\n      if (typeof value === \"undefined\")\n        value = def;\n      if (typeof value === \"string\") {\n        if (!RegExpPrototypeTest(octalReg, value))\n          throw new ERR_INVALID_ARG_VALUE2(name, value, modeDesc);\n        value = NumberParseInt(value, 8);\n      }\n      return validateInt32(value, name, 0, 4294967295), value;\n    }\n    var validateInteger = hideStackFrames((value, name, min = NumberMIN_SAFE_INTEGER, max = NumberMAX_SAFE_INTEGER) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!NumberIsInteger(value))\n        throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateInt32 = hideStackFrames((value, name, min = -2147483648, max = 2147483647) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isInt32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n      }\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateUint32 = hideStackFrames((value, name, positive) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isUint32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${positive \? 1 : 0} && < 4294967296`, value);\n      }\n      if (positive && value === 0)\n        throw new ERR_OUT_OF_RANGE(name, \">= 1 && < 4294967296\", value);\n    });\n    function validateString(value, name) {\n      if (typeof value !== \"string\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"string\", value);\n    }\n    function validateNumber(value, name) {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n    }\n    var validateOneOf = hideStackFrames((value, name, oneOf) => {\n      if (!ArrayPrototypeIncludes(oneOf, value)) {\n        const reason = \"must be one of: \" + ArrayPrototypeJoin(ArrayPrototypeMap(oneOf, (v) => typeof v === \"string\" \? `'${v}'` : String2(v)), \", \");\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateBoolean2(value, name) {\n      if (typeof value !== \"boolean\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"boolean\", value);\n    }\n    var validateObject = hideStackFrames((value, name, options) => {\n      const useDefaultOptions = options == null, allowArray = useDefaultOptions \? !1 : options.allowArray, allowFunction = useDefaultOptions \? !1 : options.allowFunction;\n      if (!(useDefaultOptions \? !1 : options.nullable) && value === null || !allowArray && ArrayIsArray(value) || typeof value !== \"object\" && (!allowFunction || typeof value !== \"function\"))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Object\", value);\n    }), validateArray = hideStackFrames((value, name, minLength = 0) => {\n      if (!ArrayIsArray(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Array\", value);\n      if (value.length < minLength) {\n        const reason = `must be longer than ${minLength}`;\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateSignalName(signal, name = \"signal\") {\n      if (validateString(signal, name), signals[signal] === void 0) {\n        if (signals[StringPrototypeToUpperCase(signal)] !== void 0)\n          throw new ERR_UNKNOWN_SIGNAL(signal + \" (signals must use all capital letters)\");\n        throw new ERR_UNKNOWN_SIGNAL(signal);\n      }\n    }\n    var validateBuffer = hideStackFrames((buffer, name = \"buffer\") => {\n      if (!isArrayBufferView(buffer))\n        throw new ERR_INVALID_ARG_TYPE2(name, [\"Buffer\", \"TypedArray\", \"DataView\"], buffer);\n    });\n    function validateEncoding(data, encoding) {\n      const normalizedEncoding = normalizeEncoding(encoding), length = data.length;\n      if (normalizedEncoding === \"hex\" && length % 2 !== 0)\n        throw new ERR_INVALID_ARG_VALUE2(\"encoding\", encoding, `is invalid for data of length ${length}`);\n    }\n    function validatePort(port, name = \"Port\", allowZero = !0) {\n      if (typeof port !== \"number\" && typeof port !== \"string\" || typeof port === \"string\" && StringPrototypeTrim(port).length === 0 || +port !== +port >>> 0 || port > 65535 || port === 0 && !allowZero)\n        throw new ERR_SOCKET_BAD_PORT(name, port, allowZero);\n      return port | 0;\n    }\n    var validateAbortSignal = hideStackFrames((signal, name) => {\n      if (signal !== void 0 && (signal === null || typeof signal !== \"object\" || !(\"aborted\" in signal)))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    }), validateFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validatePlainFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\" || isAsyncFunction(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validateUndefined = hideStackFrames((value, name) => {\n      if (value !== void 0)\n        throw new ERR_INVALID_ARG_TYPE2(name, \"undefined\", value);\n    });\n    module.exports = {\n      isInt32,\n      isUint32,\n      parseFileMode,\n      validateArray,\n      validateBoolean: validateBoolean2,\n      validateBuffer,\n      validateEncoding,\n      validateFunction,\n      validateInt32,\n      validateInteger,\n      validateNumber,\n      validateObject,\n      validateOneOf,\n      validatePlainFunction,\n      validatePort,\n      validateSignalName,\n      validateString,\n      validateUint32,\n      validateUndefined,\n      validateAbortSignal\n    };\n  }\n}), require_utils = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/utils.js\"(exports, module) {\n    var { Symbol: Symbol2, SymbolAsyncIterator, SymbolIterator } = require_primordials(), kDestroyed = Symbol2(\"kDestroyed\"), kIsErrored = Symbol2(\"kIsErrored\"), kIsReadable = Symbol2(\"kIsReadable\"), kIsDisturbed = Symbol2(\"kIsDisturbed\");\n    function isReadableNodeStream(obj, strict = !1) {\n      var _obj$_readableState;\n      return !!(obj && typeof obj.pipe === \"function\" && typeof obj.on === \"function\" && (!strict || typeof obj.pause === \"function\" && typeof obj.resume === \"function\") && (!obj._writableState || ((_obj$_readableState = obj._readableState) === null || _obj$_readableState === void 0 \? void 0 : _obj$_readableState.readable) !== !1) && (!obj._writableState || obj._readableState));\n    }\n    function isWritableNodeStream(obj) {\n      var _obj$_writableState;\n      return !!(obj && typeof obj.write === \"function\" && typeof obj.on === \"function\" && (!obj._readableState || ((_obj$_writableState = obj._writableState) === null || _obj$_writableState === void 0 \? void 0 : _obj$_writableState.writable) !== !1));\n    }\n    function isDuplexNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\" && obj._readableState && typeof obj.on === \"function\" && typeof obj.write === \"function\");\n    }\n    function isNodeStream(obj) {\n      return obj && (obj._readableState || obj._writableState || typeof obj.write === \"function\" && typeof obj.on === \"function\" || typeof obj.pipe === \"function\" && typeof obj.on === \"function\");\n    }\n    function isIterable(obj, isAsync) {\n      if (obj == null)\n        return !1;\n      if (isAsync === !0)\n        return typeof obj[SymbolAsyncIterator] === \"function\";\n      if (isAsync === !1)\n        return typeof obj[SymbolIterator] === \"function\";\n      return typeof obj[SymbolAsyncIterator] === \"function\" || typeof obj[SymbolIterator] === \"function\";\n    }\n    function isDestroyed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !!(stream.destroyed || stream[kDestroyed] || state !== null && state !== void 0 && state.destroyed);\n    }\n    function isWritableEnded(stream) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableEnded === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.ended) !== \"boolean\")\n        return null;\n      return wState.ended;\n    }\n    function isWritableFinished(stream, strict) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableFinished === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.finished) !== \"boolean\")\n        return null;\n      return !!(wState.finished || strict === !1 && wState.ended === !0 && wState.length === 0);\n    }\n    function isReadableEnded(stream) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      if (stream.readableEnded === !0)\n        return !0;\n      const rState = stream._readableState;\n      if (!rState || rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.ended) !== \"boolean\")\n        return null;\n      return rState.ended;\n    }\n    function isReadableFinished(stream, strict) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      const rState = stream._readableState;\n      if (rState !== null && rState !== void 0 && rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.endEmitted) !== \"boolean\")\n        return null;\n      return !!(rState.endEmitted || strict === !1 && rState.ended === !0 && rState.length === 0);\n    }\n    function isReadable(stream) {\n      if (stream && stream[kIsReadable] != null)\n        return stream[kIsReadable];\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.readable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isReadableNodeStream(stream) && stream.readable && !isReadableFinished(stream);\n    }\n    function isWritable(stream) {\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.writable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isWritableNodeStream(stream) && stream.writable && !isWritableEnded(stream);\n    }\n    function isFinished(stream, opts) {\n      if (!isNodeStream(stream))\n        return null;\n      if (isDestroyed(stream))\n        return !0;\n      if ((opts === null || opts === void 0 \? void 0 : opts.readable) !== !1 && isReadable(stream))\n        return !1;\n      if ((opts === null || opts === void 0 \? void 0 : opts.writable) !== !1 && isWritable(stream))\n        return !1;\n      return !0;\n    }\n    function isWritableErrored(stream) {\n      var _stream$_writableStat, _stream$_writableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.writableErrored)\n        return stream.writableErrored;\n      return (_stream$_writableStat = (_stream$_writableStat2 = stream._writableState) === null || _stream$_writableStat2 === void 0 \? void 0 : _stream$_writableStat2.errored) !== null && _stream$_writableStat !== void 0 \? _stream$_writableStat : null;\n    }\n    function isReadableErrored(stream) {\n      var _stream$_readableStat, _stream$_readableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.readableErrored)\n        return stream.readableErrored;\n      return (_stream$_readableStat = (_stream$_readableStat2 = stream._readableState) === null || _stream$_readableStat2 === void 0 \? void 0 : _stream$_readableStat2.errored) !== null && _stream$_readableStat !== void 0 \? _stream$_readableStat : null;\n    }\n    function isClosed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      if (typeof stream.closed === \"boolean\")\n        return stream.closed;\n      const { _writableState: wState, _readableState: rState } = stream;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.closed) === \"boolean\" || typeof (rState === null || rState === void 0 \? void 0 : rState.closed) === \"boolean\")\n        return (wState === null || wState === void 0 \? void 0 : wState.closed) || (rState === null || rState === void 0 \? void 0 : rState.closed);\n      if (typeof stream._closed === \"boolean\" && isOutgoingMessage(stream))\n        return stream._closed;\n      return null;\n    }\n    function isOutgoingMessage(stream) {\n      return typeof stream._closed === \"boolean\" && typeof stream._defaultKeepAlive === \"boolean\" && typeof stream._removedConnection === \"boolean\" && typeof stream._removedContLen === \"boolean\";\n    }\n    function isServerResponse(stream) {\n      return typeof stream._sent100 === \"boolean\" && isOutgoingMessage(stream);\n    }\n    function isServerRequest(stream) {\n      var _stream$req;\n      return typeof stream._consuming === \"boolean\" && typeof stream._dumped === \"boolean\" && ((_stream$req = stream.req) === null || _stream$req === void 0 \? void 0 : _stream$req.upgradeOrConnect) === void 0;\n    }\n    function willEmitClose(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !state && isServerResponse(stream) || !!(state && state.autoDestroy && state.emitClose && state.closed === !1);\n    }\n    function isDisturbed(stream) {\n      var _stream$kIsDisturbed;\n      return !!(stream && ((_stream$kIsDisturbed = stream[kIsDisturbed]) !== null && _stream$kIsDisturbed !== void 0 \? _stream$kIsDisturbed : stream.readableDidRead || stream.readableAborted));\n    }\n    function isErrored(stream) {\n      var _ref, _ref2, _ref3, _ref4, _ref5, _stream$kIsErrored, _stream$_readableStat3, _stream$_writableStat3, _stream$_readableStat4, _stream$_writableStat4;\n      return !!(stream && ((_ref = (_ref2 = (_ref3 = (_ref4 = (_ref5 = (_stream$kIsErrored = stream[kIsErrored]) !== null && _stream$kIsErrored !== void 0 \? _stream$kIsErrored : stream.readableErrored) !== null && _ref5 !== void 0 \? _ref5 : stream.writableErrored) !== null && _ref4 !== void 0 \? _ref4 : (_stream$_readableStat3 = stream._readableState) === null || _stream$_readableStat3 === void 0 \? void 0 : _stream$_readableStat3.errorEmitted) !== null && _ref3 !== void 0 \? _ref3 : (_stream$_writableStat3 = stream._writableState) === null || _stream$_writableStat3 === void 0 \? void 0 : _stream$_writableStat3.errorEmitted) !== null && _ref2 !== void 0 \? _ref2 : (_stream$_readableStat4 = stream._readableState) === null || _stream$_readableStat4 === void 0 \? void 0 : _stream$_readableStat4.errored) !== null && _ref !== void 0 \? _ref : (_stream$_writableStat4 = stream._writableState) === null || _stream$_writableStat4 === void 0 \? void 0 : _stream$_writableStat4.errored));\n    }\n    module.exports = {\n      kDestroyed,\n      isDisturbed,\n      kIsDisturbed,\n      isErrored,\n      kIsErrored,\n      isReadable,\n      kIsReadable,\n      isClosed,\n      isDestroyed,\n      isDuplexNodeStream,\n      isFinished,\n      isIterable,\n      isReadableNodeStream,\n      isReadableEnded,\n      isReadableFinished,\n      isReadableErrored,\n      isNodeStream,\n      isWritable,\n      isWritableNodeStream,\n      isWritableEnded,\n      isWritableFinished,\n      isWritableErrored,\n      isServerRequest,\n      isServerResponse,\n      willEmitClose\n    };\n  }\n}), require_end_of_stream = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/end-of-stream.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_PREMATURE_CLOSE } = codes, { once } = require_util(), { validateAbortSignal, validateFunction, validateObject } = require_validators(), { Promise: Promise2 } = require_primordials(), {\n      isClosed,\n      isReadable,\n      isReadableNodeStream,\n      isReadableFinished,\n      isReadableErrored,\n      isWritable,\n      isWritableNodeStream,\n      isWritableFinished,\n      isWritableErrored,\n      isNodeStream,\n      willEmitClose: _willEmitClose\n    } = require_utils();\n    function isRequest(stream) {\n      return stream.setHeader && typeof stream.abort === \"function\";\n    }\n    var nop = () => {\n    };\n    function eos(stream, options, callback) {\n      var _options$readable, _options$writable;\n      if (arguments.length === 2)\n        callback = options, options = {};\n      else if (options == null)\n        options = {};\n      else\n        validateObject(options, \"options\");\n      validateFunction(callback, \"callback\"), validateAbortSignal(options.signal, \"options.signal\"), callback = once(callback);\n      const readable = (_options$readable = options.readable) !== null && _options$readable !== void 0 \? _options$readable : isReadableNodeStream(stream), writable = (_options$writable = options.writable) !== null && _options$writable !== void 0 \? _options$writable : isWritableNodeStream(stream);\n      if (!isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"Stream\", stream);\n      const { _writableState: wState, _readableState: rState } = stream, onlegacyfinish = () => {\n        if (!stream.writable)\n          onfinish();\n      };\n      let willEmitClose = _willEmitClose(stream) && isReadableNodeStream(stream) === readable && isWritableNodeStream(stream) === writable, writableFinished = isWritableFinished(stream, !1);\n      const onfinish = () => {\n        if (writableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.readable || readable))\n          return;\n        if (!readable || readableFinished)\n          callback.call(stream);\n      };\n      let readableFinished = isReadableFinished(stream, !1);\n      const onend = () => {\n        if (readableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.writable || writable))\n          return;\n        if (!writable || writableFinished)\n          callback.call(stream);\n      }, onerror = (err) => {\n        callback.call(stream, err);\n      };\n      let closed = isClosed(stream);\n      const onclose = () => {\n        closed = !0;\n        const errored = isWritableErrored(stream) || isReadableErrored(stream);\n        if (errored && typeof errored !== \"boolean\")\n          return callback.call(stream, errored);\n        if (readable && !readableFinished && isReadableNodeStream(stream, !0)) {\n          if (!isReadableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        if (writable && !writableFinished) {\n          if (!isWritableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        callback.call(stream);\n      }, onrequest = () => {\n        stream.req.on(\"finish\", onfinish);\n      };\n      if (isRequest(stream)) {\n        if (stream.on(\"complete\", onfinish), !willEmitClose)\n          stream.on(\"abort\", onclose);\n        if (stream.req)\n          onrequest();\n        else\n          stream.on(\"request\", onrequest);\n      } else if (writable && !wState)\n        stream.on(\"end\", onlegacyfinish), stream.on(\"close\", onlegacyfinish);\n      if (!willEmitClose && typeof stream.aborted === \"boolean\")\n        stream.on(\"aborted\", onclose);\n      if (stream.on(\"end\", onend), stream.on(\"finish\", onfinish), options.error !== !1)\n        stream.on(\"error\", onerror);\n      if (stream.on(\"close\", onclose), closed)\n        runOnNextTick(onclose);\n      else if (wState !== null && wState !== void 0 && wState.errorEmitted || rState !== null && rState !== void 0 && rState.errorEmitted) {\n        if (!willEmitClose)\n          runOnNextTick(onclose);\n      } else if (!readable && (!willEmitClose || isReadable(stream)) && (writableFinished || isWritable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (!writable && (!willEmitClose || isWritable(stream)) && (readableFinished || isReadable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (rState && stream.req && stream.aborted)\n        runOnNextTick(onclose);\n      const cleanup = () => {\n        if (callback = nop, stream.removeListener(\"aborted\", onclose), stream.removeListener(\"complete\", onfinish), stream.removeListener(\"abort\", onclose), stream.removeListener(\"request\", onrequest), stream.req)\n          stream.req.removeListener(\"finish\", onfinish);\n        stream.removeListener(\"end\", onlegacyfinish), stream.removeListener(\"close\", onlegacyfinish), stream.removeListener(\"finish\", onfinish), stream.removeListener(\"end\", onend), stream.removeListener(\"error\", onerror), stream.removeListener(\"close\", onclose);\n      };\n      if (options.signal && !closed) {\n        const abort = () => {\n          const endCallback = callback;\n          cleanup(), endCallback.call(stream, new AbortError2(void 0, {\n            cause: options.signal.reason\n          }));\n        };\n        if (options.signal.aborted)\n          runOnNextTick(abort);\n        else {\n          const originalCallback = callback;\n          callback = once((...args) => {\n            options.signal.removeEventListener(\"abort\", abort), originalCallback.apply(stream, args);\n          }), options.signal.addEventListener(\"abort\", abort);\n        }\n      }\n      return cleanup;\n    }\n    function finished(stream, opts) {\n      return new Promise2((resolve, reject) => {\n        eos(stream, opts, (err) => {\n          if (err)\n            reject(err);\n          else\n            resolve();\n        });\n      });\n    }\n    module.exports = eos, module.exports.finished = finished;\n  }\n}), require_operators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/operators.js\"(exports, module) {\n    var {\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_MISSING_ARGS, ERR_OUT_OF_RANGE },\n      AbortError: AbortError2\n    } = require_errors(), { validateAbortSignal, validateInteger, validateObject } = require_validators(), kWeakHandler = require_primordials().Symbol(\"kWeak\"), { finished } = require_end_of_stream(), {\n      ArrayPrototypePush,\n      MathFloor,\n      Number: Number2,\n      NumberIsNaN,\n      Promise: Promise2,\n      PromiseReject,\n      PromisePrototypeCatch,\n      Symbol: Symbol2\n    } = require_primordials(), kEmpty = Symbol2(\"kEmpty\"), kEof = Symbol2(\"kEof\");\n    function map(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let concurrency = 1;\n      if ((options === null || options === void 0 \? void 0 : options.concurrency) != null)\n        concurrency = MathFloor(options.concurrency);\n      return validateInteger(concurrency, \"concurrency\", 1), async function* map2() {\n        var _options$signal, _options$signal2;\n        const ac = new AbortController, stream = this, queue = [], signal = ac.signal, signalOpt = {\n          signal\n        }, abort = () => ac.abort();\n        if (options !== null && options !== void 0 && (_options$signal = options.signal) !== null && _options$signal !== void 0 && _options$signal.aborted)\n          abort();\n        options === null || options === void 0 || (_options$signal2 = options.signal) === null || _options$signal2 === void 0 || _options$signal2.addEventListener(\"abort\", abort);\n        let next, resume, done = !1;\n        function onDone() {\n          done = !0;\n        }\n        async function pump() {\n          try {\n            for await (let val of stream) {\n              var _val;\n              if (done)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              try {\n                val = fn(val, signalOpt);\n              } catch (err) {\n                val = PromiseReject(err);\n              }\n              if (val === kEmpty)\n                continue;\n              if (typeof ((_val = val) === null || _val === void 0 \? void 0 : _val.catch) === \"function\")\n                val.catch(onDone);\n              if (queue.push(val), next)\n                next(), next = null;\n              if (!done && queue.length && queue.length >= concurrency)\n                await new Promise2((resolve) => {\n                  resume = resolve;\n                });\n            }\n            queue.push(kEof);\n          } catch (err) {\n            const val = PromiseReject(err);\n            PromisePrototypeCatch(val, onDone), queue.push(val);\n          } finally {\n            var _options$signal3;\n            if (done = !0, next)\n              next(), next = null;\n            options === null || options === void 0 || (_options$signal3 = options.signal) === null || _options$signal3 === void 0 || _options$signal3.removeEventListener(\"abort\", abort);\n          }\n        }\n        pump();\n        try {\n          while (!0) {\n            while (queue.length > 0) {\n              const val = await queue[0];\n              if (val === kEof)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              if (val !== kEmpty)\n                yield val;\n              if (queue.shift(), resume)\n                resume(), resume = null;\n            }\n            await new Promise2((resolve) => {\n              next = resolve;\n            });\n          }\n        } finally {\n          if (ac.abort(), done = !0, resume)\n            resume(), resume = null;\n        }\n      }.call(this);\n    }\n    function asIndexedPairs(options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return async function* asIndexedPairs2() {\n        let index = 0;\n        for await (let val of this) {\n          var _options$signal4;\n          if (options !== null && options !== void 0 && (_options$signal4 = options.signal) !== null && _options$signal4 !== void 0 && _options$signal4.aborted)\n            throw new AbortError2({\n              cause: options.signal.reason\n            });\n          yield [index++, val];\n        }\n      }.call(this);\n    }\n    async function some(fn, options = void 0) {\n      for await (let unused of filter.call(this, fn, options))\n        return !0;\n      return !1;\n    }\n    async function every(fn, options = void 0) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      return !await some.call(this, async (...args) => {\n        return !await fn(...args);\n      }, options);\n    }\n    async function find(fn, options) {\n      for await (let result of filter.call(this, fn, options))\n        return result;\n      return;\n    }\n    async function forEach(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function forEachFn(value, options2) {\n        return await fn(value, options2), kEmpty;\n      }\n      for await (let unused of map.call(this, forEachFn, options))\n        ;\n    }\n    function filter(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function filterFn(value, options2) {\n        if (await fn(value, options2))\n          return value;\n        return kEmpty;\n      }\n      return map.call(this, filterFn, options);\n    }\n    var ReduceAwareErrMissingArgs = class extends ERR_MISSING_ARGS {\n      constructor() {\n        super(\"reduce\");\n        this.message = \"Reduce of an empty stream requires an initial value\";\n      }\n    };\n    async function reduce(reducer, initialValue, options) {\n      var _options$signal5;\n      if (typeof reducer !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"reducer\", [\"Function\", \"AsyncFunction\"], reducer);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let hasInitialValue = arguments.length > 1;\n      if (options !== null && options !== void 0 && (_options$signal5 = options.signal) !== null && _options$signal5 !== void 0 && _options$signal5.aborted) {\n        const err = new AbortError2(void 0, {\n          cause: options.signal.reason\n        });\n        throw this.once(\"error\", () => {\n        }), await finished(this.destroy(err)), err;\n      }\n      const ac = new AbortController, signal = ac.signal;\n      if (options !== null && options !== void 0 && options.signal) {\n        const opts = {\n          once: !0,\n          [kWeakHandler]: this\n        };\n        options.signal.addEventListener(\"abort\", () => ac.abort(), opts);\n      }\n      let gotAnyItemFromStream = !1;\n      try {\n        for await (let value of this) {\n          var _options$signal6;\n          if (gotAnyItemFromStream = !0, options !== null && options !== void 0 && (_options$signal6 = options.signal) !== null && _options$signal6 !== void 0 && _options$signal6.aborted)\n            throw new AbortError2;\n          if (!hasInitialValue)\n            initialValue = value, hasInitialValue = !0;\n          else\n            initialValue = await reducer(initialValue, value, {\n              signal\n            });\n        }\n        if (!gotAnyItemFromStream && !hasInitialValue)\n          throw new ReduceAwareErrMissingArgs;\n      } finally {\n        ac.abort();\n      }\n      return initialValue;\n    }\n    async function toArray(options) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      const result = [];\n      for await (let val of this) {\n        var _options$signal7;\n        if (options !== null && options !== void 0 && (_options$signal7 = options.signal) !== null && _options$signal7 !== void 0 && _options$signal7.aborted)\n          throw new AbortError2(void 0, {\n            cause: options.signal.reason\n          });\n        ArrayPrototypePush(result, val);\n      }\n      return result;\n    }\n    function flatMap(fn, options) {\n      const values = map.call(this, fn, options);\n      return async function* flatMap2() {\n        for await (let val of values)\n          yield* val;\n      }.call(this);\n    }\n    function toIntegerOrInfinity(number) {\n      if (number = Number2(number), NumberIsNaN(number))\n        return 0;\n      if (number < 0)\n        throw new ERR_OUT_OF_RANGE(\"number\", \">= 0\", number);\n      return number;\n    }\n    function drop(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* drop2() {\n        var _options$signal8;\n        if (options !== null && options !== void 0 && (_options$signal8 = options.signal) !== null && _options$signal8 !== void 0 && _options$signal8.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal9;\n          if (options !== null && options !== void 0 && (_options$signal9 = options.signal) !== null && _options$signal9 !== void 0 && _options$signal9.aborted)\n            throw new AbortError2;\n          if (number-- <= 0)\n            yield val;\n        }\n      }.call(this);\n    }\n    function take(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* take2() {\n        var _options$signal10;\n        if (options !== null && options !== void 0 && (_options$signal10 = options.signal) !== null && _options$signal10 !== void 0 && _options$signal10.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal11;\n          if (options !== null && options !== void 0 && (_options$signal11 = options.signal) !== null && _options$signal11 !== void 0 && _options$signal11.aborted)\n            throw new AbortError2;\n          if (number-- > 0)\n            yield val;\n          else\n            return;\n        }\n      }.call(this);\n    }\n    module.exports.streamReturningOperators = {\n      asIndexedPairs,\n      drop,\n      filter,\n      flatMap,\n      map,\n      take\n    }, module.exports.promiseReturningOperators = {\n      every,\n      forEach,\n      reduce,\n      toArray,\n      some,\n      find\n    };\n  }\n}), require_destroy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/destroy.js\"(exports, module) {\n    var {\n      aggregateTwoErrors,\n      codes: { ERR_MULTIPLE_CALLBACK },\n      AbortError: AbortError2\n    } = require_errors(), { Symbol: Symbol2 } = require_primordials(), { kDestroyed, isDestroyed, isFinished, isServerRequest } = require_utils(), kDestroy = \"#kDestroy\", kConstruct = \"#kConstruct\";\n    function checkError(err, w, r) {\n      if (err) {\n        if (err.stack, w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n      }\n    }\n    function destroy2(err, cb) {\n      const r = this._readableState, w = this._writableState, s = w || r;\n      if (w && w.destroyed || r && r.destroyed) {\n        if (typeof cb === \"function\")\n          cb();\n        return this;\n      }\n      if (checkError(err, w, r), w)\n        w.destroyed = !0;\n      if (r)\n        r.destroyed = !0;\n      if (!s.constructed)\n        this.once(kDestroy, (er) => {\n          _destroy(this, aggregateTwoErrors(er, err), cb);\n        });\n      else\n        _destroy(this, err, cb);\n      return this;\n    }\n    function _destroy(self, err, cb) {\n      let called = !1;\n      function onDestroy(err2) {\n        if (called)\n          return;\n        called = !0;\n        const { _readableState: r, _writableState: w } = self;\n        if (checkError(err2, w, r), w)\n          w.closed = !0;\n        if (r)\n          r.closed = !0;\n        if (typeof cb === \"function\")\n          cb(err2);\n        if (err2)\n          runOnNextTick(emitErrorCloseNT, self, err2);\n        else\n          runOnNextTick(emitCloseNT, self);\n      }\n      try {\n        self._destroy(err || null, onDestroy);\n      } catch (err2) {\n        onDestroy(err2);\n      }\n    }\n    function emitErrorCloseNT(self, err) {\n      emitErrorNT(self, err), emitCloseNT(self);\n    }\n    function emitCloseNT(self) {\n      const { _readableState: r, _writableState: w } = self;\n      if (w)\n        w.closeEmitted = !0;\n      if (r)\n        r.closeEmitted = !0;\n      if (w && w.emitClose || r && r.emitClose)\n        self.emit(\"close\");\n    }\n    function emitErrorNT(self, err) {\n      const r = self\?._readableState, w = self\?._writableState;\n      if (w\?.errorEmitted || r\?.errorEmitted)\n        return;\n      if (w)\n        w.errorEmitted = !0;\n      if (r)\n        r.errorEmitted = !0;\n      self\?.emit\?.(\"error\", err);\n    }\n    function undestroy() {\n      const r = this._readableState, w = this._writableState;\n      if (r)\n        r.constructed = !0, r.closed = !1, r.closeEmitted = !1, r.destroyed = !1, r.errored = null, r.errorEmitted = !1, r.reading = !1, r.ended = r.readable === !1, r.endEmitted = r.readable === !1;\n      if (w)\n        w.constructed = !0, w.destroyed = !1, w.closed = !1, w.closeEmitted = !1, w.errored = null, w.errorEmitted = !1, w.finalCalled = !1, w.prefinished = !1, w.ended = w.writable === !1, w.ending = w.writable === !1, w.finished = w.writable === !1;\n    }\n    function errorOrDestroy2(stream, err, sync) {\n      const r = stream\?._readableState, w = stream\?._writableState;\n      if (w && w.destroyed || r && r.destroyed)\n        return this;\n      if (r && r.autoDestroy || w && w.autoDestroy)\n        stream.destroy(err);\n      else if (err) {\n        if (Error.captureStackTrace(err), w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n        if (sync)\n          runOnNextTick(emitErrorNT, stream, err);\n        else\n          emitErrorNT(stream, err);\n      }\n    }\n    function construct(stream, cb) {\n      if (typeof stream._construct !== \"function\")\n        return;\n      const { _readableState: r, _writableState: w } = stream;\n      if (r)\n        r.constructed = !1;\n      if (w)\n        w.constructed = !1;\n      if (stream.once(kConstruct, cb), stream.listenerCount(kConstruct) > 1)\n        return;\n      runOnNextTick(constructNT, stream);\n    }\n    function constructNT(stream) {\n      let called = !1;\n      function onConstruct(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : new ERR_MULTIPLE_CALLBACK);\n          return;\n        }\n        called = !0;\n        const { _readableState: r, _writableState: w } = stream, s = w || r;\n        if (r)\n          r.constructed = !0;\n        if (w)\n          w.constructed = !0;\n        if (s.destroyed)\n          stream.emit(kDestroy, err);\n        else if (err)\n          errorOrDestroy2(stream, err, !0);\n        else\n          runOnNextTick(emitConstructNT, stream);\n      }\n      try {\n        stream._construct(onConstruct);\n      } catch (err) {\n        onConstruct(err);\n      }\n    }\n    function emitConstructNT(stream) {\n      stream.emit(kConstruct);\n    }\n    function isRequest(stream) {\n      return stream && stream.setHeader && typeof stream.abort === \"function\";\n    }\n    function emitCloseLegacy(stream) {\n      stream.emit(\"close\");\n    }\n    function emitErrorCloseLegacy(stream, err) {\n      stream.emit(\"error\", err), runOnNextTick(emitCloseLegacy, stream);\n    }\n    function destroyer(stream, err) {\n      if (!stream || isDestroyed(stream))\n        return;\n      if (!err && !isFinished(stream))\n        err = new AbortError2;\n      if (isServerRequest(stream))\n        stream.socket = null, stream.destroy(err);\n      else if (isRequest(stream))\n        stream.abort();\n      else if (isRequest(stream.req))\n        stream.req.abort();\n      else if (typeof stream.destroy === \"function\")\n        stream.destroy(err);\n      else if (typeof stream.close === \"function\")\n        stream.close();\n      else if (err)\n        runOnNextTick(emitErrorCloseLegacy, stream);\n      else\n        runOnNextTick(emitCloseLegacy, stream);\n      if (!stream.destroyed)\n        stream[kDestroyed] = !0;\n    }\n    module.exports = {\n      construct,\n      destroyer,\n      destroy: destroy2,\n      undestroy,\n      errorOrDestroy: errorOrDestroy2\n    };\n  }\n}), require_legacy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/legacy.js\"(exports, module) {\n    var { ArrayIsArray, ObjectSetPrototypeOf } = require_primordials();\n    function Stream(options) {\n      if (!(this instanceof Stream))\n        return new Stream(options);\n      EE.call(this, options);\n    }\n    Stream.prototype = {}, ObjectSetPrototypeOf(Stream.prototype, EE.prototype), ObjectSetPrototypeOf(Stream, EE), Stream.prototype.pipe = function(dest, options) {\n      const source = this;\n      function ondata(chunk) {\n        if (dest.writable && dest.write(chunk) === !1 && source.pause)\n          source.pause();\n      }\n      source.on(\"data\", ondata);\n      function ondrain() {\n        if (source.readable && source.resume)\n          source.resume();\n      }\n      if (dest.on(\"drain\", ondrain), !dest._isStdio && (!options || options.end !== !1))\n        source.on(\"end\", onend), source.on(\"close\", onclose);\n      let didOnEnd = !1;\n      function onend() {\n        if (didOnEnd)\n          return;\n        didOnEnd = !0, dest.end();\n      }\n      function onclose() {\n        if (didOnEnd)\n          return;\n        if (didOnEnd = !0, typeof dest.destroy === \"function\")\n          dest.destroy();\n      }\n      function onerror(er) {\n        if (cleanup(), EE.listenerCount(this, \"error\") === 0)\n          this.emit(\"error\", er);\n      }\n      prependListener(source, \"error\", onerror), prependListener(dest, \"error\", onerror);\n      function cleanup() {\n        source.removeListener(\"data\", ondata), dest.removeListener(\"drain\", ondrain), source.removeListener(\"end\", onend), source.removeListener(\"close\", onclose), source.removeListener(\"error\", onerror), dest.removeListener(\"error\", onerror), source.removeListener(\"end\", cleanup), source.removeListener(\"close\", cleanup), dest.removeListener(\"close\", cleanup);\n      }\n      return source.on(\"end\", cleanup), source.on(\"close\", cleanup), dest.on(\"close\", cleanup), dest.emit(\"pipe\", source), dest;\n    };\n    function prependListener(emitter, event, fn) {\n      if (typeof emitter.prependListener === \"function\")\n        return emitter.prependListener(event, fn);\n      if (!emitter._events || !emitter._events[event])\n        emitter.on(event, fn);\n      else if (ArrayIsArray(emitter._events[event]))\n        emitter._events[event].unshift(fn);\n      else\n        emitter._events[event] = [fn, emitter._events[event]];\n    }\n    module.exports = {\n      Stream,\n      prependListener\n    };\n  }\n}), require_add_abort_signal = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/add-abort-signal.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), eos = require_end_of_stream(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2 } = codes, validateAbortSignal = (signal, name) => {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    };\n    function isNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\");\n    }\n    module.exports.addAbortSignal = function addAbortSignal(signal, stream) {\n      if (validateAbortSignal(signal, \"signal\"), !isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"stream.Stream\", stream);\n      return module.exports.addAbortSignalNoValidate(signal, stream);\n    }, module.exports.addAbortSignalNoValidate = function(signal, stream) {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        return stream;\n      const onAbort = () => {\n        stream.destroy(new AbortError2(void 0, {\n          cause: signal.reason\n        }));\n      };\n      if (signal.aborted)\n        onAbort();\n      else\n        signal.addEventListener(\"abort\", onAbort), eos(stream, () => signal.removeEventListener(\"abort\", onAbort));\n      return stream;\n    };\n  }\n}), require_state = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/state.js\"(exports, module) {\n    var { MathFloor, NumberIsInteger } = require_primordials(), { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2 } = require_errors().codes;\n    function highWaterMarkFrom2(options, isDuplex, duplexKey) {\n      return options.highWaterMark != null \? options.highWaterMark : isDuplex \? options[duplexKey] : null;\n    }\n    function getDefaultHighWaterMark2(objectMode) {\n      return objectMode \? 16 : 16384;\n    }\n    function getHighWaterMark2(state, options, duplexKey, isDuplex) {\n      const hwm = highWaterMarkFrom2(options, isDuplex, duplexKey);\n      if (hwm != null) {\n        if (!NumberIsInteger(hwm) || hwm < 0) {\n          const name = isDuplex \? `options.${duplexKey}` : \"options.highWaterMark\";\n          throw new ERR_INVALID_ARG_VALUE2(name, hwm);\n        }\n        return MathFloor(hwm);\n      }\n      return getDefaultHighWaterMark2(state.objectMode);\n    }\n    module.exports = {\n      getHighWaterMark: getHighWaterMark2,\n      getDefaultHighWaterMark: getDefaultHighWaterMark2\n    };\n  }\n}), require_from = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/from.js\"(exports, module) {\n    var { PromisePrototypeThen, SymbolAsyncIterator, SymbolIterator } = require_primordials(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_NULL_VALUES } = require_errors().codes;\n    function from(Readable, iterable, opts) {\n      let iterator;\n      if (typeof iterable === \"string\" || iterable instanceof Buffer)\n        return new Readable({\n          objectMode: !0,\n          ...opts,\n          read() {\n            this.push(iterable), this.push(null);\n          }\n        });\n      let isAsync;\n      if (iterable && iterable[SymbolAsyncIterator])\n        isAsync = !0, iterator = iterable[SymbolAsyncIterator]();\n      else if (iterable && iterable[SymbolIterator])\n        isAsync = !1, iterator = iterable[SymbolIterator]();\n      else\n        throw new ERR_INVALID_ARG_TYPE2(\"iterable\", [\"Iterable\"], iterable);\n      const readable = new Readable({\n        objectMode: !0,\n        highWaterMark: 1,\n        ...opts\n      });\n      let reading = !1;\n      readable._read = function() {\n        if (!reading)\n          reading = !0, next();\n      }, readable._destroy = function(error, cb) {\n        PromisePrototypeThen(close(error), () => runOnNextTick(cb, error), (e) => runOnNextTick(cb, e || error));\n      };\n      async function close(error) {\n        const hadError = error !== void 0 && error !== null, hasThrow = typeof iterator.throw === \"function\";\n        if (hadError && hasThrow) {\n          const { value, done } = await iterator.throw(error);\n          if (await value, done)\n            return;\n        }\n        if (typeof iterator.return === \"function\") {\n          const { value } = await iterator.return();\n          await value;\n        }\n      }\n      async function next() {\n        for (;; ) {\n          try {\n            const { value, done } = isAsync \? await iterator.next() : iterator.next();\n            if (done)\n              readable.push(null);\n            else {\n              const res = value && typeof value.then === \"function\" \? await value : value;\n              if (res === null)\n                throw reading = !1, new ERR_STREAM_NULL_VALUES;\n              else if (readable.push(res))\n                continue;\n              else\n                reading = !1;\n            }\n          } catch (err) {\n            readable.destroy(err);\n          }\n          break;\n        }\n      }\n      return readable;\n    }\n    module.exports = from;\n  }\n}), _ReadableFromWeb, _ReadableFromWebForUndici, require_readable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/readable.js\"(exports, module) {\n    var {\n      ArrayPrototypeIndexOf,\n      NumberIsInteger,\n      NumberIsNaN,\n      NumberParseInt,\n      ObjectDefineProperties,\n      ObjectKeys,\n      ObjectSetPrototypeOf,\n      Promise: Promise2,\n      SafeSet,\n      SymbolAsyncIterator,\n      Symbol: Symbol2\n    } = require_primordials(), { Stream, prependListener } = require_legacy();\n    function Readable(options) {\n      if (!(this instanceof Readable))\n        return new Readable(options);\n      const isDuplex = this instanceof require_duplex();\n      if (this._readableState = new ReadableState(options, this, isDuplex), options) {\n        const { read, destroy: destroy2, construct, signal } = options;\n        if (typeof read === \"function\")\n          this._read = read;\n        if (typeof destroy2 === \"function\")\n          this._destroy = destroy2;\n        if (typeof construct === \"function\")\n          this._construct = construct;\n        if (signal && !isDuplex)\n          addAbortSignal(signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        if (this._readableState.needReadable)\n          maybeReadMore(this, this._readableState);\n      });\n    }\n    Readable.prototype = {}, ObjectSetPrototypeOf(Readable.prototype, Stream.prototype), ObjectSetPrototypeOf(Readable, Stream), Readable.prototype.on = function(ev, fn) {\n      const res = Stream.prototype.on.call(this, ev, fn), state = this._readableState;\n      if (ev === \"data\") {\n        if (state.readableListening = this.listenerCount(\"readable\") > 0, state.flowing !== !1)\n          this.resume();\n      } else if (ev === \"readable\") {\n        if (!state.endEmitted && !state.readableListening) {\n          if (state.readableListening = state.needReadable = !0, state.flowing = !1, state.emittedReadable = !1, state.length)\n            emitReadable(this, state);\n          else if (!state.reading)\n            runOnNextTick(nReadingNextTick, this);\n        } else if (state.endEmitted)\n          ;\n      }\n      return res;\n    };\n\n    class ReadableFromWeb extends Readable {\n      #reader;\n      #closed;\n      #pendingChunks;\n      #stream;\n      constructor(options, stream) {\n        const { objectMode, highWaterMark, encoding, signal } = options;\n        super({\n          objectMode,\n          highWaterMark,\n          encoding,\n          signal\n        });\n        this.#pendingChunks = [], this.#reader = void 0, this.#stream = stream, this.#closed = !1;\n      }\n      #drainPending() {\n        var pendingChunks = this.#pendingChunks, pendingChunksI = 0, pendingChunksCount = pendingChunks.length;\n        for (;pendingChunksI < pendingChunksCount; pendingChunksI++) {\n          const chunk = pendingChunks[pendingChunksI];\n          if (pendingChunks[pendingChunksI] = void 0, !this.push(chunk, void 0))\n            return this.#pendingChunks = pendingChunks.slice(pendingChunksI + 1), !0;\n        }\n        if (pendingChunksCount > 0)\n          this.#pendingChunks = [];\n        return !1;\n      }\n      #handleDone(reader) {\n        reader.releaseLock(), this.#reader = void 0, this.#closed = !0, this.push(null);\n        return;\n      }\n      async _read() {\n        var stream = this.#stream, reader = this.#reader;\n        if (stream)\n          reader = this.#reader = stream.getReader(), this.#stream = void 0;\n        else if (this.#drainPending())\n          return;\n        var deferredError;\n        try {\n          do {\n            var done = !1, value;\n            const firstResult = reader.readMany();\n            if (@isPromise(firstResult)) {\n              if ({ done, value } = await firstResult, this.#closed) {\n                this.#pendingChunks.push(...value);\n                return;\n              }\n            } else\n              ({ done, value } = firstResult);\n            if (done) {\n              this.#handleDone(reader);\n              return;\n            }\n            if (!this.push(value[0])) {\n              this.#pendingChunks = value.slice(1);\n              return;\n            }\n            for (let i = 1, count = value.length;i < count; i++)\n              if (!this.push(value[i])) {\n                this.#pendingChunks = value.slice(i + 1);\n                return;\n              }\n          } while (!this.#closed);\n        } catch (e) {\n          deferredError = e;\n        } finally {\n          if (deferredError)\n            throw deferredError;\n        }\n      }\n      _destroy(error, callback) {\n        if (!this.#closed) {\n          var reader = this.#reader;\n          if (reader)\n            this.#reader = void 0, reader.cancel(error).finally(() => {\n              this.#closed = !0, callback(error);\n            });\n          return;\n        }\n        try {\n          callback(error);\n        } catch (error2) {\n          globalThis.reportError(error2);\n        }\n      }\n    }\n    _ReadableFromWebForUndici = ReadableFromWeb;\n    function newStreamReadableFromReadableStream(readableStream, options = {}) {\n      if (!isReadableStream(readableStream))\n        throw new ERR_INVALID_ARG_TYPE2(\"readableStream\", \"ReadableStream\", readableStream);\n      validateObject(options, \"options\");\n      const {\n        highWaterMark,\n        encoding,\n        objectMode = !1,\n        signal\n      } = options;\n      if (encoding !== void 0 && !Buffer.isEncoding(encoding))\n        throw new ERR_INVALID_ARG_VALUE(encoding, \"options.encoding\");\n      return validateBoolean(objectMode, \"options.objectMode\"), getNativeReadableStream(Readable, readableStream, options) || new ReadableFromWeb({\n        highWaterMark,\n        encoding,\n        objectMode,\n        signal\n      }, readableStream);\n    }\n    module.exports = Readable, _ReadableFromWeb = newStreamReadableFromReadableStream;\n    var { addAbortSignal } = require_add_abort_signal(), eos = require_end_of_stream();\n    function maybeReadMore(stream, state) {\n      if (!state.readingMore && state.constructed)\n        state.readingMore = !0, process.nextTick(maybeReadMore_, stream, state);\n    }\n    function maybeReadMore_(stream, state) {\n      while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) {\n        const len = state.length;\n        if (stream.read(0), len === state.length)\n          break;\n      }\n      state.readingMore = !1;\n    }\n    function emitReadable(stream) {\n      const state = stream._readableState;\n      if (state.needReadable = !1, !state.emittedReadable)\n        state.emittedReadable = !0, process.nextTick(emitReadable_, stream);\n    }\n    function emitReadable_(stream) {\n      const state = stream._readableState;\n      if (!state.destroyed && !state.errored && (state.length || state.ended))\n        stream.emit(\"readable\"), state.emittedReadable = !1;\n      state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark, flow(stream);\n    }\n    function flow(stream) {\n      const state = stream._readableState;\n      while (state.flowing && stream.read() !== null)\n        ;\n    }\n    function onEofChunk(stream, state) {\n      if (state.ended)\n        return;\n      if (state.decoder) {\n        const chunk = state.decoder.end();\n        if (chunk && chunk.length)\n          state.buffer.push(chunk), state.length += state.objectMode \? 1 : chunk.length;\n      }\n      if (state.ended = !0, state.sync)\n        emitReadable(stream);\n      else\n        state.needReadable = !1, state.emittedReadable = !0, emitReadable_(stream);\n    }\n    function resume(stream, state) {\n      if (!state.resumeScheduled)\n        state.resumeScheduled = !0, process.nextTick(resume_, stream, state);\n    }\n    function resume_(stream, state) {\n      if (!state.reading)\n        stream.read(0);\n      if (state.resumeScheduled = !1, stream.emit(\"resume\"), flow(stream), state.flowing && !state.reading)\n        stream.read(0);\n    }\n    var destroyImpl = require_destroy(), {\n      aggregateTwoErrors,\n      codes: {\n        ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n        ERR_METHOD_NOT_IMPLEMENTED,\n        ERR_OUT_OF_RANGE,\n        ERR_STREAM_PUSH_AFTER_EOF,\n        ERR_STREAM_UNSHIFT_AFTER_END_EVENT\n      }\n    } = require_errors(), { validateObject } = require_validators(), from = require_from(), nop = () => {\n    }, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    Readable.prototype.destroy = destroyImpl.destroy, Readable.prototype._undestroy = destroyImpl.undestroy, Readable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Readable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    }, Readable.prototype.push = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !1);\n    }, Readable.prototype.unshift = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !0);\n    };\n    function readableAddChunk(stream, chunk, encoding, addToFront) {\n      const state = stream._readableState;\n      let err;\n      if (!state.objectMode) {\n        if (typeof chunk === \"string\") {\n          if (encoding = encoding || state.defaultEncoding, state.encoding !== encoding)\n            if (addToFront && state.encoding)\n              chunk = Buffer.from(chunk, encoding).toString(state.encoding);\n            else\n              chunk = Buffer.from(chunk, encoding), encoding = \"\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"\";\n        else if (Stream._isUint8Array(chunk)) {\n          if (addToFront || !state.decoder)\n            chunk = Stream._uint8ArrayToBuffer(chunk);\n          encoding = \"\";\n        } else if (chunk != null)\n          err = new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      }\n      if (err)\n        errorOrDestroy2(stream, err);\n      else if (chunk === null)\n        state.reading = !1, onEofChunk(stream, state);\n      else if (state.objectMode || chunk && chunk.length > 0)\n        if (addToFront)\n          if (state.endEmitted)\n            errorOrDestroy2(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT);\n          else if (state.destroyed || state.errored)\n            return !1;\n          else\n            addChunk(stream, state, chunk, !0);\n        else if (state.ended)\n          errorOrDestroy2(stream, new ERR_STREAM_PUSH_AFTER_EOF);\n        else if (state.destroyed || state.errored)\n          return !1;\n        else if (state.reading = !1, state.decoder && !encoding)\n          if (chunk = state.decoder.write(chunk), state.objectMode || chunk.length !== 0)\n            addChunk(stream, state, chunk, !1);\n          else\n            maybeReadMore(stream, state);\n        else\n          addChunk(stream, state, chunk, !1);\n      else if (!addToFront)\n        state.reading = !1, maybeReadMore(stream, state);\n      return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n    }\n    function addChunk(stream, state, chunk, addToFront) {\n      if (state.flowing && state.length === 0 && !state.sync && stream.listenerCount(\"data\") > 0) {\n        if (state.multiAwaitDrain)\n          state.awaitDrainWriters.clear();\n        else\n          state.awaitDrainWriters = null;\n        state.dataEmitted = !0, stream.emit(\"data\", chunk);\n      } else {\n        if (state.length += state.objectMode \? 1 : chunk.length, addToFront)\n          state.buffer.unshift(chunk);\n        else\n          state.buffer.push(chunk);\n        if (state.needReadable)\n          emitReadable(stream, state);\n      }\n      maybeReadMore(stream, state);\n    }\n    Readable.prototype.isPaused = function() {\n      const state = this._readableState;\n      return state.paused === !0 || state.flowing === !1;\n    }, Readable.prototype.setEncoding = function(enc) {\n      const decoder = new StringDecoder(enc);\n      this._readableState.decoder = decoder, this._readableState.encoding = this._readableState.decoder.encoding;\n      const buffer = this._readableState.buffer;\n      let content = \"\";\n      for (let i = buffer.length;i > 0; i--)\n        content += decoder.write(buffer.shift());\n      if (content !== \"\")\n        buffer.push(content);\n      return this._readableState.length = content.length, this;\n    };\n    var MAX_HWM = 1073741824;\n    function computeNewHighWaterMark(n) {\n      if (n > MAX_HWM)\n        throw new ERR_OUT_OF_RANGE(\"size\", \"<= 1GiB\", n);\n      else\n        n--, n |= n >>> 1, n |= n >>> 2, n |= n >>> 4, n |= n >>> 8, n |= n >>> 16, n++;\n      return n;\n    }\n    function howMuchToRead(n, state) {\n      if (n <= 0 || state.length === 0 && state.ended)\n        return 0;\n      if (state.objectMode)\n        return 1;\n      if (NumberIsNaN(n)) {\n        if (state.flowing && state.length)\n          return state.buffer.first().length;\n        return state.length;\n      }\n      if (n <= state.length)\n        return n;\n      return state.ended \? state.length : 0;\n    }\n    Readable.prototype.read = function(n) {\n      if (!NumberIsInteger(n))\n        n = NumberParseInt(n, 10);\n      const state = this._readableState, nOrig = n;\n      if (n > state.highWaterMark)\n        state.highWaterMark = computeNewHighWaterMark(n);\n      if (n !== 0)\n        state.emittedReadable = !1;\n      if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 \? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n        if (state.length === 0 && state.ended)\n          endReadable(this);\n        else\n          emitReadable(this, state);\n        return null;\n      }\n      if (n = howMuchToRead(n, state), n === 0 && state.ended) {\n        if (state.length === 0)\n          endReadable(this);\n        return null;\n      }\n      let doRead = state.needReadable;\n      if (state.length === 0 || state.length - n < state.highWaterMark)\n        doRead = !0;\n      if (state.ended || state.reading || state.destroyed || state.errored || !state.constructed)\n        doRead = !1;\n      else if (doRead) {\n        if (state.reading = !0, state.sync = !0, state.length === 0)\n          state.needReadable = !0;\n        try {\n          var result = this._read(state.highWaterMark);\n          if (@isPromise(result)) {\n            const peeked = Bun.peek(result);\n            if (peeked !== result)\n              result = peeked;\n          }\n          if (@isPromise(result) && result\?.then && @isCallable(result.then))\n            result.then(nop, function(err) {\n              errorOrDestroy2(this, err);\n            });\n        } catch (err) {\n          errorOrDestroy2(this, err);\n        }\n        if (state.sync = !1, !state.reading)\n          n = howMuchToRead(nOrig, state);\n      }\n      let ret;\n      if (n > 0)\n        ret = fromList(n, state);\n      else\n        ret = null;\n      if (ret === null)\n        state.needReadable = state.length <= state.highWaterMark, n = 0;\n      else if (state.length -= n, state.multiAwaitDrain)\n        state.awaitDrainWriters.clear();\n      else\n        state.awaitDrainWriters = null;\n      if (state.length === 0) {\n        if (!state.ended)\n          state.needReadable = !0;\n        if (nOrig !== n && state.ended)\n          endReadable(this);\n      }\n      if (ret !== null && !state.errorEmitted && !state.closeEmitted)\n        state.dataEmitted = !0, this.emit(\"data\", ret);\n      return ret;\n    }, Readable.prototype._read = function(n) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_read()\");\n    }, Readable.prototype.pipe = function(dest, pipeOpts) {\n      const src = this, state = this._readableState;\n      if (state.pipes.length === 1) {\n        if (!state.multiAwaitDrain)\n          state.multiAwaitDrain = !0, state.awaitDrainWriters = new SafeSet(state.awaitDrainWriters \? [state.awaitDrainWriters] : []);\n      }\n      state.pipes.push(dest);\n      const endFn = (!pipeOpts || pipeOpts.end !== !1) && dest !== process.stdout && dest !== process.stderr \? onend : unpipe;\n      if (state.endEmitted)\n        runOnNextTick(endFn);\n      else\n        src.once(\"end\", endFn);\n      dest.on(\"unpipe\", onunpipe);\n      function onunpipe(readable, unpipeInfo) {\n        if (readable === src) {\n          if (unpipeInfo && unpipeInfo.hasUnpiped === !1)\n            unpipeInfo.hasUnpiped = !0, cleanup();\n        }\n      }\n      function onend() {\n        dest.end();\n      }\n      let ondrain, cleanedUp = !1;\n      function cleanup() {\n        if (dest.removeListener(\"close\", onclose), dest.removeListener(\"finish\", onfinish), ondrain)\n          dest.removeListener(\"drain\", ondrain);\n        if (dest.removeListener(\"error\", onerror), dest.removeListener(\"unpipe\", onunpipe), src.removeListener(\"end\", onend), src.removeListener(\"end\", unpipe), src.removeListener(\"data\", ondata), cleanedUp = !0, ondrain && state.awaitDrainWriters && (!dest._writableState || dest._writableState.needDrain))\n          ondrain();\n      }\n      function pause() {\n        if (!cleanedUp) {\n          if (state.pipes.length === 1 && state.pipes[0] === dest)\n            state.awaitDrainWriters = dest, state.multiAwaitDrain = !1;\n          else if (state.pipes.length > 1 && state.pipes.includes(dest))\n            state.awaitDrainWriters.add(dest);\n          src.pause();\n        }\n        if (!ondrain)\n          ondrain = pipeOnDrain(src, dest), dest.on(\"drain\", ondrain);\n      }\n      src.on(\"data\", ondata);\n      function ondata(chunk) {\n        if (dest.write(chunk) === !1)\n          pause();\n      }\n      function onerror(er) {\n        if (unpipe(), dest.removeListener(\"error\", onerror), dest.listenerCount(\"error\") === 0) {\n          const s = dest._writableState || dest._readableState;\n          if (s && !s.errorEmitted)\n            errorOrDestroy2(dest, er);\n          else\n            dest.emit(\"error\", er);\n        }\n      }\n      prependListener(dest, \"error\", onerror);\n      function onclose() {\n        dest.removeListener(\"finish\", onfinish), unpipe();\n      }\n      dest.once(\"close\", onclose);\n      function onfinish() {\n        dest.removeListener(\"close\", onclose), unpipe();\n      }\n      dest.once(\"finish\", onfinish);\n      function unpipe() {\n        src.unpipe(dest);\n      }\n      if (dest.emit(\"pipe\", src), dest.writableNeedDrain === !0) {\n        if (state.flowing)\n          pause();\n      } else if (!state.flowing)\n        src.resume();\n      return dest;\n    };\n    function pipeOnDrain(src, dest) {\n      return function pipeOnDrainFunctionResult() {\n        const state = src._readableState;\n        if (state.awaitDrainWriters === dest)\n          state.awaitDrainWriters = null;\n        else if (state.multiAwaitDrain)\n          state.awaitDrainWriters.delete(dest);\n        if ((!state.awaitDrainWriters || state.awaitDrainWriters.size === 0) && src.listenerCount(\"data\"))\n          src.resume();\n      };\n    }\n    Readable.prototype.unpipe = function(dest) {\n      const state = this._readableState, unpipeInfo = {\n        hasUnpiped: !1\n      };\n      if (state.pipes.length === 0)\n        return this;\n      if (!dest) {\n        const dests = state.pipes;\n        state.pipes = [], this.pause();\n        for (let i = 0;i < dests.length; i++)\n          dests[i].emit(\"unpipe\", this, {\n            hasUnpiped: !1\n          });\n        return this;\n      }\n      const index = ArrayPrototypeIndexOf(state.pipes, dest);\n      if (index === -1)\n        return this;\n      if (state.pipes.splice(index, 1), state.pipes.length === 0)\n        this.pause();\n      return dest.emit(\"unpipe\", this, unpipeInfo), this;\n    }, Readable.prototype.addListener = Readable.prototype.on, Readable.prototype.removeListener = function(ev, fn) {\n      const res = Stream.prototype.removeListener.call(this, ev, fn);\n      if (ev === \"readable\")\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    }, Readable.prototype.off = Readable.prototype.removeListener, Readable.prototype.removeAllListeners = function(ev) {\n      const res = Stream.prototype.removeAllListeners.apply(this, arguments);\n      if (ev === \"readable\" || ev === void 0)\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    };\n    function updateReadableListening(self) {\n      const state = self._readableState;\n      if (state.readableListening = self.listenerCount(\"readable\") > 0, state.resumeScheduled && state.paused === !1)\n        state.flowing = !0;\n      else if (self.listenerCount(\"data\") > 0)\n        self.resume();\n      else if (!state.readableListening)\n        state.flowing = null;\n    }\n    function nReadingNextTick(self) {\n      self.read(0);\n    }\n    Readable.prototype.resume = function() {\n      const state = this._readableState;\n      if (!state.flowing)\n        state.flowing = !state.readableListening, resume(this, state);\n      return state.paused = !1, this;\n    }, Readable.prototype.pause = function() {\n      if (this._readableState.flowing !== !1)\n        this._readableState.flowing = !1, this.emit(\"pause\");\n      return this._readableState.paused = !0, this;\n    }, Readable.prototype.wrap = function(stream) {\n      let paused = !1;\n      stream.on(\"data\", (chunk) => {\n        if (!this.push(chunk) && stream.pause)\n          paused = !0, stream.pause();\n      }), stream.on(\"end\", () => {\n        this.push(null);\n      }), stream.on(\"error\", (err) => {\n        errorOrDestroy2(this, err);\n      }), stream.on(\"close\", () => {\n        this.destroy();\n      }), stream.on(\"destroy\", () => {\n        this.destroy();\n      }), this._read = () => {\n        if (paused && stream.resume)\n          paused = !1, stream.resume();\n      };\n      const streamKeys = ObjectKeys(stream);\n      for (let j = 1;j < streamKeys.length; j++) {\n        const i = streamKeys[j];\n        if (this[i] === void 0 && typeof stream[i] === \"function\")\n          this[i] = stream[i].bind(stream);\n      }\n      return this;\n    }, Readable.prototype[SymbolAsyncIterator] = function() {\n      return streamToAsyncIterator(this);\n    }, Readable.prototype.iterator = function(options) {\n      if (options !== void 0)\n        validateObject(options, \"options\");\n      return streamToAsyncIterator(this, options);\n    };\n    function streamToAsyncIterator(stream, options) {\n      if (typeof stream.read !== \"function\")\n        stream = Readable.wrap(stream, {\n          objectMode: !0\n        });\n      const iter = createAsyncIterator(stream, options);\n      return iter.stream = stream, iter;\n    }\n    async function* createAsyncIterator(stream, options) {\n      let callback = nop;\n      function next(resolve) {\n        if (this === stream)\n          callback(), callback = nop;\n        else\n          callback = resolve;\n      }\n      stream.on(\"readable\", next);\n      let error;\n      const cleanup = eos(stream, {\n        writable: !1\n      }, (err) => {\n        error = err \? aggregateTwoErrors(error, err) : null, callback(), callback = nop;\n      });\n      try {\n        while (!0) {\n          const chunk = stream.destroyed \? null : stream.read();\n          if (chunk !== null)\n            yield chunk;\n          else if (error)\n            throw error;\n          else if (error === null)\n            return;\n          else\n            await new Promise2(next);\n        }\n      } catch (err) {\n        throw error = aggregateTwoErrors(error, err), error;\n      } finally {\n        if ((error || (options === null || options === void 0 \? void 0 : options.destroyOnReturn) !== !1) && (error === void 0 || stream._readableState.autoDestroy))\n          destroyImpl.destroyer(stream, null);\n        else\n          stream.off(\"readable\", next), cleanup();\n      }\n    }\n    ObjectDefineProperties(Readable.prototype, {\n      readable: {\n        get() {\n          const r = this._readableState;\n          return !!r && r.readable !== !1 && !r.destroyed && !r.errorEmitted && !r.endEmitted;\n        },\n        set(val) {\n          if (this._readableState)\n            this._readableState.readable = !!val;\n        }\n      },\n      readableDidRead: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.dataEmitted;\n        }\n      },\n      readableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._readableState.readable !== !1 && (this._readableState.destroyed || this._readableState.errored) && !this._readableState.endEmitted);\n        }\n      },\n      readableHighWaterMark: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.highWaterMark;\n        }\n      },\n      readableBuffer: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState && this._readableState.buffer;\n        }\n      },\n      readableFlowing: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.flowing;\n        },\n        set: function(state) {\n          if (this._readableState)\n            this._readableState.flowing = state;\n        }\n      },\n      readableLength: {\n        enumerable: !1,\n        get() {\n          return this._readableState.length;\n        }\n      },\n      readableObjectMode: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.objectMode : !1;\n        }\n      },\n      readableEncoding: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.encoding : null;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.errored : null;\n        }\n      },\n      closed: {\n        get() {\n          return this._readableState \? this._readableState.closed : !1;\n        }\n      },\n      destroyed: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.destroyed : !1;\n        },\n        set(value) {\n          if (!this._readableState)\n            return;\n          this._readableState.destroyed = value;\n        }\n      },\n      readableEnded: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.endEmitted : !1;\n        }\n      }\n    }), Readable._fromList = fromList;\n    function fromList(n, state) {\n      if (state.length === 0)\n        return null;\n      let ret;\n      if (state.objectMode)\n        ret = state.buffer.shift();\n      else if (!n || n >= state.length) {\n        if (state.decoder)\n          ret = state.buffer.join(\"\");\n        else if (state.buffer.length === 1)\n          ret = state.buffer.first();\n        else\n          ret = state.buffer.concat(state.length);\n        state.buffer.clear();\n      } else\n        ret = state.buffer.consume(n, state.decoder);\n      return ret;\n    }\n    function endReadable(stream) {\n      const state = stream._readableState;\n      if (!state.endEmitted)\n        state.ended = !0, runOnNextTick(endReadableNT, state, stream);\n    }\n    function endReadableNT(state, stream) {\n      if (!state.errored && !state.closeEmitted && !state.endEmitted && state.length === 0) {\n        if (state.endEmitted = !0, stream.emit(\"end\"), stream.writable && stream.allowHalfOpen === !1)\n          runOnNextTick(endWritableNT, stream);\n        else if (state.autoDestroy) {\n          const wState = stream._writableState;\n          if (!wState || wState.autoDestroy && (wState.finished || wState.writable === !1))\n            stream.destroy();\n        }\n      }\n    }\n    function endWritableNT(stream) {\n      if (stream.writable && !stream.writableEnded && !stream.destroyed)\n        stream.end();\n    }\n    Readable.from = function(iterable, opts) {\n      return from(Readable, iterable, opts);\n    };\n    var webStreamsAdapters = {\n      newStreamReadableFromReadableStream,\n      newReadableStreamFromStreamReadable(streamReadable, options = {}) {\n        if (typeof streamReadable\?._readableState !== \"object\")\n          throw new ERR_INVALID_ARG_TYPE2(\"streamReadable\", \"stream.Readable\", streamReadable);\n        var { isDestroyed, isReadable } = require_utils();\n        if (isDestroyed(streamReadable) || !isReadable(streamReadable)) {\n          const readable = new ReadableStream;\n          return readable.cancel(), readable;\n        }\n        const { readableObjectMode: objectMode, readableHighWaterMark: highWaterMark } = streamReadable, strategy = ((strategy2) => {\n          if (strategy2)\n            return strategy2;\n          if (objectMode)\n            return new CountQueuingStrategy({ highWaterMark });\n          return { highWaterMark };\n        })(options\?.strategy);\n        let controller;\n        function onData(chunk) {\n          if (controller.enqueue(chunk), controller.desiredSize <= 0)\n            streamReadable.pause();\n        }\n        streamReadable.pause();\n        const cleanup = eos(streamReadable, (error) => {\n          if (error\?.code === \"ERR_STREAM_PREMATURE_CLOSE\")\n            error = new AbortError(void 0, { cause: error });\n          if (cleanup(), streamReadable.on(\"error\", () => {\n          }), error)\n            return controller.error(error);\n          controller.close();\n        });\n        return streamReadable.on(\"data\", onData), new ReadableStream({\n          start(c) {\n            controller = c;\n          },\n          pull() {\n            streamReadable.resume();\n          },\n          cancel(reason) {\n            destroy(streamReadable, reason);\n          }\n        }, strategy);\n      }\n    };\n    Readable.fromWeb = function(readableStream, options) {\n      return webStreamsAdapters.newStreamReadableFromReadableStream(readableStream, options);\n    }, Readable.toWeb = function(streamReadable, options) {\n      return webStreamsAdapters.newReadableStreamFromStreamReadable(streamReadable, options);\n    }, Readable.wrap = function(src, options) {\n      var _ref, _src$readableObjectMo;\n      return new Readable({\n        objectMode: (_ref = (_src$readableObjectMo = src.readableObjectMode) !== null && _src$readableObjectMo !== void 0 \? _src$readableObjectMo : src.objectMode) !== null && _ref !== void 0 \? _ref : !0,\n        ...options,\n        destroy(err, callback) {\n          destroyImpl.destroyer(src, err), callback(err);\n        }\n      }).wrap(src);\n    };\n  }\n}), require_writable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/writable.js\"(exports, module) {\n    var {\n      ArrayPrototypeSlice,\n      Error: Error2,\n      FunctionPrototypeSymbolHasInstance,\n      ObjectDefineProperty,\n      ObjectDefineProperties,\n      ObjectSetPrototypeOf,\n      StringPrototypeToLowerCase,\n      Symbol: Symbol2,\n      SymbolHasInstance\n    } = require_primordials(), Stream = require_legacy().Stream, destroyImpl = require_destroy(), { addAbortSignal } = require_add_abort_signal(), { getHighWaterMark: getHighWaterMark2, getDefaultHighWaterMark: getDefaultHighWaterMark2 } = require_state(), {\n      ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n      ERR_METHOD_NOT_IMPLEMENTED,\n      ERR_MULTIPLE_CALLBACK,\n      ERR_STREAM_CANNOT_PIPE,\n      ERR_STREAM_DESTROYED,\n      ERR_STREAM_ALREADY_FINISHED,\n      ERR_STREAM_NULL_VALUES,\n      ERR_STREAM_WRITE_AFTER_END,\n      ERR_UNKNOWN_ENCODING\n    } = require_errors().codes, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    function Writable(options = {}) {\n      const isDuplex = this instanceof require_duplex();\n      if (!isDuplex && !FunctionPrototypeSymbolHasInstance(Writable, this))\n        return new Writable(options);\n      if (this._writableState = new WritableState(options, this, isDuplex), options) {\n        if (typeof options.write === \"function\")\n          this._write = options.write;\n        if (typeof options.writev === \"function\")\n          this._writev = options.writev;\n        if (typeof options.destroy === \"function\")\n          this._destroy = options.destroy;\n        if (typeof options.final === \"function\")\n          this._final = options.final;\n        if (typeof options.construct === \"function\")\n          this._construct = options.construct;\n        if (options.signal)\n          addAbortSignal(options.signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        const state = this._writableState;\n        if (!state.writing)\n          clearBuffer(this, state);\n        finishMaybe(this, state);\n      });\n    }\n    Writable.prototype = {}, ObjectSetPrototypeOf(Writable.prototype, Stream.prototype), ObjectSetPrototypeOf(Writable, Stream), module.exports = Writable;\n    function nop() {\n    }\n    var kOnFinished = Symbol2(\"kOnFinished\");\n    function WritableState(options, stream, isDuplex) {\n      if (typeof isDuplex !== \"boolean\")\n        isDuplex = stream instanceof require_duplex();\n      if (this.objectMode = !!(options && options.objectMode), isDuplex)\n        this.objectMode = this.objectMode || !!(options && options.writableObjectMode);\n      this.highWaterMark = options \? getHighWaterMark2(this, options, \"writableHighWaterMark\", isDuplex) : getDefaultHighWaterMark2(!1), this.finalCalled = !1, this.needDrain = !1, this.ending = !1, this.ended = !1, this.finished = !1, this.destroyed = !1;\n      const noDecode = !!(options && options.decodeStrings === !1);\n      this.decodeStrings = !noDecode, this.defaultEncoding = options && options.defaultEncoding || \"utf8\", this.length = 0, this.writing = !1, this.corked = 0, this.sync = !0, this.bufferProcessing = !1, this.onwrite = onwrite.bind(void 0, stream), this.writecb = null, this.writelen = 0, this.afterWriteTickInfo = null, resetBuffer(this), this.pendingcb = 0, this.constructed = !0, this.prefinished = !1, this.errorEmitted = !1, this.emitClose = !options || options.emitClose !== !1, this.autoDestroy = !options || options.autoDestroy !== !1, this.errored = null, this.closed = !1, this.closeEmitted = !1, this[kOnFinished] = [];\n    }\n    WritableState.prototype = {};\n    function resetBuffer(state) {\n      state.buffered = [], state.bufferedIndex = 0, state.allBuffers = !0, state.allNoop = !0;\n    }\n    WritableState.prototype.getBuffer = function getBuffer() {\n      return ArrayPrototypeSlice(this.buffered, this.bufferedIndex);\n    }, ObjectDefineProperty(WritableState.prototype, \"bufferedRequestCount\", {\n      get() {\n        return this.buffered.length - this.bufferedIndex;\n      }\n    }), ObjectDefineProperty(Writable, SymbolHasInstance, {\n      value: function(object) {\n        if (FunctionPrototypeSymbolHasInstance(this, object))\n          return !0;\n        if (this !== Writable)\n          return !1;\n        return object && object._writableState instanceof WritableState;\n      }\n    }), Writable.prototype.pipe = function() {\n      errorOrDestroy2(this, new ERR_STREAM_CANNOT_PIPE);\n    };\n    function _write(stream, chunk, encoding, cb) {\n      const state = stream._writableState;\n      if (typeof encoding === \"function\")\n        cb = encoding, encoding = state.defaultEncoding;\n      else {\n        if (!encoding)\n          encoding = state.defaultEncoding;\n        else if (encoding !== \"buffer\" && !Buffer.isEncoding(encoding))\n          throw new ERR_UNKNOWN_ENCODING(encoding);\n        if (typeof cb !== \"function\")\n          cb = nop;\n      }\n      if (chunk === null)\n        throw new ERR_STREAM_NULL_VALUES;\n      else if (!state.objectMode)\n        if (typeof chunk === \"string\") {\n          if (state.decodeStrings !== !1)\n            chunk = Buffer.from(chunk, encoding), encoding = \"buffer\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"buffer\";\n        else if (Stream._isUint8Array(chunk))\n          chunk = Stream._uint8ArrayToBuffer(chunk), encoding = \"buffer\";\n        else\n          throw new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      let err;\n      if (state.ending)\n        err = new ERR_STREAM_WRITE_AFTER_END;\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"write\");\n      if (err)\n        return runOnNextTick(cb, err), errorOrDestroy2(stream, err, !0), err;\n      return state.pendingcb++, writeOrBuffer(stream, state, chunk, encoding, cb);\n    }\n    Writable.prototype.write = function(chunk, encoding, cb) {\n      return _write(this, chunk, encoding, cb) === !0;\n    }, Writable.prototype.cork = function() {\n      this._writableState.corked++;\n    }, Writable.prototype.uncork = function() {\n      const state = this._writableState;\n      if (state.corked) {\n        if (state.corked--, !state.writing)\n          clearBuffer(this, state);\n      }\n    }, Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n      if (typeof encoding === \"string\")\n        encoding = StringPrototypeToLowerCase(encoding);\n      if (!Buffer.isEncoding(encoding))\n        throw new ERR_UNKNOWN_ENCODING(encoding);\n      return this._writableState.defaultEncoding = encoding, this;\n    };\n    function writeOrBuffer(stream, state, chunk, encoding, callback) {\n      const len = state.objectMode \? 1 : chunk.length;\n      state.length += len;\n      const ret = state.length < state.highWaterMark;\n      if (!ret)\n        state.needDrain = !0;\n      if (state.writing || state.corked || state.errored || !state.constructed) {\n        if (state.buffered.push({\n          chunk,\n          encoding,\n          callback\n        }), state.allBuffers && encoding !== \"buffer\")\n          state.allBuffers = !1;\n        if (state.allNoop && callback !== nop)\n          state.allNoop = !1;\n      } else\n        state.writelen = len, state.writecb = callback, state.writing = !0, state.sync = !0, stream._write(chunk, encoding, state.onwrite), state.sync = !1;\n      return ret && !state.errored && !state.destroyed;\n    }\n    function doWrite(stream, state, writev, len, chunk, encoding, cb) {\n      if (state.writelen = len, state.writecb = cb, state.writing = !0, state.sync = !0, state.destroyed)\n        state.onwrite(new ERR_STREAM_DESTROYED(\"write\"));\n      else if (writev)\n        stream._writev(chunk, state.onwrite);\n      else\n        stream._write(chunk, encoding, state.onwrite);\n      state.sync = !1;\n    }\n    function onwriteError(stream, state, er, cb) {\n      --state.pendingcb, cb(er), errorBuffer(state), errorOrDestroy2(stream, er);\n    }\n    function onwrite(stream, er) {\n      const state = stream._writableState, sync = state.sync, cb = state.writecb;\n      if (typeof cb !== \"function\") {\n        errorOrDestroy2(stream, new ERR_MULTIPLE_CALLBACK);\n        return;\n      }\n      if (state.writing = !1, state.writecb = null, state.length -= state.writelen, state.writelen = 0, er) {\n        if (Error.captureStackTrace(er), !state.errored)\n          state.errored = er;\n        if (stream._readableState && !stream._readableState.errored)\n          stream._readableState.errored = er;\n        if (sync)\n          runOnNextTick(onwriteError, stream, state, er, cb);\n        else\n          onwriteError(stream, state, er, cb);\n      } else {\n        if (state.buffered.length > state.bufferedIndex)\n          clearBuffer(stream, state);\n        if (sync)\n          if (state.afterWriteTickInfo !== null && state.afterWriteTickInfo.cb === cb)\n            state.afterWriteTickInfo.count++;\n          else\n            state.afterWriteTickInfo = {\n              count: 1,\n              cb,\n              stream,\n              state\n            }, runOnNextTick(afterWriteTick, state.afterWriteTickInfo);\n        else\n          afterWrite(stream, state, 1, cb);\n      }\n    }\n    function afterWriteTick({ stream, state, count, cb }) {\n      return state.afterWriteTickInfo = null, afterWrite(stream, state, count, cb);\n    }\n    function afterWrite(stream, state, count, cb) {\n      if (!state.ending && !stream.destroyed && state.length === 0 && state.needDrain)\n        state.needDrain = !1, stream.emit(\"drain\");\n      while (count-- > 0)\n        state.pendingcb--, cb();\n      if (state.destroyed)\n        errorBuffer(state);\n      finishMaybe(stream, state);\n    }\n    function errorBuffer(state) {\n      if (state.writing)\n        return;\n      for (let n = state.bufferedIndex;n < state.buffered.length; ++n) {\n        var _state$errored;\n        const { chunk, callback } = state.buffered[n], len = state.objectMode \? 1 : chunk.length;\n        state.length -= len, callback((_state$errored = state.errored) !== null && _state$errored !== void 0 \? _state$errored : new ERR_STREAM_DESTROYED(\"write\"));\n      }\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++) {\n        var _state$errored2;\n        onfinishCallbacks[i]((_state$errored2 = state.errored) !== null && _state$errored2 !== void 0 \? _state$errored2 : new ERR_STREAM_DESTROYED(\"end\"));\n      }\n      resetBuffer(state);\n    }\n    function clearBuffer(stream, state) {\n      if (state.corked || state.bufferProcessing || state.destroyed || !state.constructed)\n        return;\n      const { buffered, bufferedIndex, objectMode } = state, bufferedLength = buffered.length - bufferedIndex;\n      if (!bufferedLength)\n        return;\n      let i = bufferedIndex;\n      if (state.bufferProcessing = !0, bufferedLength > 1 && stream._writev) {\n        state.pendingcb -= bufferedLength - 1;\n        const callback = state.allNoop \? nop : (err) => {\n          for (let n = i;n < buffered.length; ++n)\n            buffered[n].callback(err);\n        }, chunks = state.allNoop && i === 0 \? buffered : ArrayPrototypeSlice(buffered, i);\n        chunks.allBuffers = state.allBuffers, doWrite(stream, state, !0, state.length, chunks, \"\", callback), resetBuffer(state);\n      } else {\n        do {\n          const { chunk, encoding, callback } = buffered[i];\n          buffered[i++] = null;\n          const len = objectMode \? 1 : chunk.length;\n          doWrite(stream, state, !1, len, chunk, encoding, callback);\n        } while (i < buffered.length && !state.writing);\n        if (i === buffered.length)\n          resetBuffer(state);\n        else if (i > 256)\n          buffered.splice(0, i), state.bufferedIndex = 0;\n        else\n          state.bufferedIndex = i;\n      }\n      state.bufferProcessing = !1;\n    }\n    Writable.prototype._write = function(chunk, encoding, cb) {\n      if (this._writev)\n        this._writev([\n          {\n            chunk,\n            encoding\n          }\n        ], cb);\n      else\n        throw new ERR_METHOD_NOT_IMPLEMENTED(\"_write()\");\n    }, Writable.prototype._writev = null, Writable.prototype.end = function(chunk, encoding, cb, native = !1) {\n      const state = this._writableState;\n      if (typeof chunk === \"function\")\n        cb = chunk, chunk = null, encoding = null;\n      else if (typeof encoding === \"function\")\n        cb = encoding, encoding = null;\n      let err;\n      if (chunk !== null && chunk !== void 0) {\n        let ret;\n        if (!native)\n          ret = _write(this, chunk, encoding);\n        else\n          ret = this.write(chunk, encoding);\n        if (ret instanceof Error2)\n          err = ret;\n      }\n      if (state.corked)\n        state.corked = 1, this.uncork();\n      if (err)\n        this.emit(\"error\", err);\n      else if (!state.errored && !state.ending)\n        state.ending = !0, finishMaybe(this, state, !0), state.ended = !0;\n      else if (state.finished)\n        err = new ERR_STREAM_ALREADY_FINISHED(\"end\");\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"end\");\n      if (typeof cb === \"function\")\n        if (err || state.finished)\n          runOnNextTick(cb, err);\n        else\n          state[kOnFinished].push(cb);\n      return this;\n    };\n    function needFinish(state, tag) {\n      var needFinish2 = state.ending && !state.destroyed && state.constructed && state.length === 0 && !state.errored && state.buffered.length === 0 && !state.finished && !state.writing && !state.errorEmitted && !state.closeEmitted;\n      return needFinish2;\n    }\n    function callFinal(stream, state) {\n      let called = !1;\n      function onFinish(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : ERR_MULTIPLE_CALLBACK());\n          return;\n        }\n        if (called = !0, state.pendingcb--, err) {\n          const onfinishCallbacks = state[kOnFinished].splice(0);\n          for (let i = 0;i < onfinishCallbacks.length; i++)\n            onfinishCallbacks[i](err);\n          errorOrDestroy2(stream, err, state.sync);\n        } else if (needFinish(state))\n          state.prefinished = !0, stream.emit(\"prefinish\"), state.pendingcb++, runOnNextTick(finish, stream, state);\n      }\n      state.sync = !0, state.pendingcb++;\n      try {\n        stream._final(onFinish);\n      } catch (err) {\n        onFinish(err);\n      }\n      state.sync = !1;\n    }\n    function prefinish(stream, state) {\n      if (!state.prefinished && !state.finalCalled)\n        if (typeof stream._final === \"function\" && !state.destroyed)\n          state.finalCalled = !0, callFinal(stream, state);\n        else\n          state.prefinished = !0, stream.emit(\"prefinish\");\n    }\n    function finishMaybe(stream, state, sync) {\n      if (!needFinish(state, stream.__id))\n        return;\n      if (prefinish(stream, state), state.pendingcb === 0) {\n        if (sync)\n          state.pendingcb++, runOnNextTick((stream2, state2) => {\n            if (needFinish(state2))\n              finish(stream2, state2);\n            else\n              state2.pendingcb--;\n          }, stream, state);\n        else if (needFinish(state))\n          state.pendingcb++, finish(stream, state);\n      }\n    }\n    function finish(stream, state) {\n      state.pendingcb--, state.finished = !0;\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++)\n        onfinishCallbacks[i]();\n      if (stream.emit(\"finish\"), state.autoDestroy) {\n        const rState = stream._readableState;\n        if (!rState || rState.autoDestroy && (rState.endEmitted || rState.readable === !1))\n          stream.destroy();\n      }\n    }\n    ObjectDefineProperties(Writable.prototype, {\n      closed: {\n        get() {\n          return this._writableState \? this._writableState.closed : !1;\n        }\n      },\n      destroyed: {\n        get() {\n          return this._writableState \? this._writableState.destroyed : !1;\n        },\n        set(value) {\n          if (this._writableState)\n            this._writableState.destroyed = value;\n        }\n      },\n      writable: {\n        get() {\n          const w = this._writableState;\n          return !!w && w.writable !== !1 && !w.destroyed && !w.errored && !w.ending && !w.ended;\n        },\n        set(val) {\n          if (this._writableState)\n            this._writableState.writable = !!val;\n        }\n      },\n      writableFinished: {\n        get() {\n          return this._writableState \? this._writableState.finished : !1;\n        }\n      },\n      writableObjectMode: {\n        get() {\n          return this._writableState \? this._writableState.objectMode : !1;\n        }\n      },\n      writableBuffer: {\n        get() {\n          return this._writableState && this._writableState.getBuffer();\n        }\n      },\n      writableEnded: {\n        get() {\n          return this._writableState \? this._writableState.ending : !1;\n        }\n      },\n      writableNeedDrain: {\n        get() {\n          const wState = this._writableState;\n          if (!wState)\n            return !1;\n          return !wState.destroyed && !wState.ending && wState.needDrain;\n        }\n      },\n      writableHighWaterMark: {\n        get() {\n          return this._writableState && this._writableState.highWaterMark;\n        }\n      },\n      writableCorked: {\n        get() {\n          return this._writableState \? this._writableState.corked : 0;\n        }\n      },\n      writableLength: {\n        get() {\n          return this._writableState && this._writableState.length;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._writableState \? this._writableState.errored : null;\n        }\n      },\n      writableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._writableState.writable !== !1 && (this._writableState.destroyed || this._writableState.errored) && !this._writableState.finished);\n        }\n      }\n    });\n    var destroy2 = destroyImpl.destroy;\n    Writable.prototype.destroy = function(err, cb) {\n      const state = this._writableState;\n      if (!state.destroyed && (state.bufferedIndex < state.buffered.length || state[kOnFinished].length))\n        runOnNextTick(errorBuffer, state);\n      return destroy2.call(this, err, cb), this;\n    }, Writable.prototype._undestroy = destroyImpl.undestroy, Writable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Writable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    };\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Writable.fromWeb = function(writableStream, options) {\n      return lazyWebStreams().newStreamWritableFromWritableStream(writableStream, options);\n    }, Writable.toWeb = function(streamWritable) {\n      return lazyWebStreams().newWritableStreamFromStreamWritable(streamWritable);\n    };\n  }\n}), require_duplexify = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplexify.js\"(exports, module) {\n    var {\n      isReadable,\n      isWritable,\n      isIterable,\n      isNodeStream,\n      isReadableNodeStream,\n      isWritableNodeStream,\n      isDuplexNodeStream\n    } = require_utils(), eos = require_end_of_stream(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE }\n    } = require_errors(), { destroyer } = require_destroy(), Duplex = require_duplex(), Readable = require_readable(), { createDeferredPromise } = require_util(), from = require_from(), isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    }, { FunctionPrototypeCall } = require_primordials();\n\n    class Duplexify extends Duplex {\n      constructor(options) {\n        super(options);\n        if ((options === null || options === void 0 \? void 0 : options.readable) === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if ((options === null || options === void 0 \? void 0 : options.writable) === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      }\n    }\n    module.exports = function duplexify(body, name) {\n      if (isDuplexNodeStream(body))\n        return body;\n      if (isReadableNodeStream(body))\n        return _duplexify({\n          readable: body\n        });\n      if (isWritableNodeStream(body))\n        return _duplexify({\n          writable: body\n        });\n      if (isNodeStream(body))\n        return _duplexify({\n          writable: !1,\n          readable: !1\n        });\n      if (typeof body === \"function\") {\n        const { value, write, final, destroy: destroy2 } = fromAsyncGen(body);\n        if (isIterable(value))\n          return from(Duplexify, value, {\n            objectMode: !0,\n            write,\n            final,\n            destroy: destroy2\n          });\n        const then2 = value === null || value === void 0 \? void 0 : value.then;\n        if (typeof then2 === \"function\") {\n          let d;\n          const promise = FunctionPrototypeCall(then2, value, (val) => {\n            if (val != null)\n              throw new ERR_INVALID_RETURN_VALUE(\"nully\", \"body\", val);\n          }, (err) => {\n            destroyer(d, err);\n          });\n          return d = new Duplexify({\n            objectMode: !0,\n            readable: !1,\n            write,\n            final(cb) {\n              final(async () => {\n                try {\n                  await promise, runOnNextTick(cb, null);\n                } catch (err) {\n                  runOnNextTick(cb, err);\n                }\n              });\n            },\n            destroy: destroy2\n          });\n        }\n        throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or AsyncFunction\", name, value);\n      }\n      if (isBlob(body))\n        return duplexify(body.arrayBuffer());\n      if (isIterable(body))\n        return from(Duplexify, body, {\n          objectMode: !0,\n          writable: !1\n        });\n      if (typeof (body === null || body === void 0 \? void 0 : body.writable) === \"object\" || typeof (body === null || body === void 0 \? void 0 : body.readable) === \"object\") {\n        const readable = body !== null && body !== void 0 && body.readable \? isReadableNodeStream(body === null || body === void 0 \? void 0 : body.readable) \? body === null || body === void 0 \? void 0 : body.readable : duplexify(body.readable) : void 0, writable = body !== null && body !== void 0 && body.writable \? isWritableNodeStream(body === null || body === void 0 \? void 0 : body.writable) \? body === null || body === void 0 \? void 0 : body.writable : duplexify(body.writable) : void 0;\n        return _duplexify({\n          readable,\n          writable\n        });\n      }\n      const then = body === null || body === void 0 \? void 0 : body.then;\n      if (typeof then === \"function\") {\n        let d;\n        return FunctionPrototypeCall(then, body, (val) => {\n          if (val != null)\n            d.push(val);\n          d.push(null);\n        }, (err) => {\n          destroyer(d, err);\n        }), d = new Duplexify({\n          objectMode: !0,\n          writable: !1,\n          read() {\n          }\n        });\n      }\n      throw new ERR_INVALID_ARG_TYPE2(name, [\n        \"Blob\",\n        \"ReadableStream\",\n        \"WritableStream\",\n        \"Stream\",\n        \"Iterable\",\n        \"AsyncIterable\",\n        \"Function\",\n        \"{ readable, writable } pair\",\n        \"Promise\"\n      ], body);\n    };\n    function fromAsyncGen(fn) {\n      let { promise, resolve } = createDeferredPromise();\n      const ac = new AbortController, signal = ac.signal;\n      return {\n        value: fn(async function* () {\n          while (!0) {\n            const _promise = promise;\n            promise = null;\n            const { chunk, done, cb } = await _promise;\n            if (runOnNextTick(cb), done)\n              return;\n            if (signal.aborted)\n              throw new AbortError2(void 0, {\n                cause: signal.reason\n              });\n            ({ promise, resolve } = createDeferredPromise()), yield chunk;\n          }\n        }(), {\n          signal\n        }),\n        write(chunk, encoding, cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            chunk,\n            done: !1,\n            cb\n          });\n        },\n        final(cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            done: !0,\n            cb\n          });\n        },\n        destroy(err, cb) {\n          ac.abort(), cb(err);\n        }\n      };\n    }\n    function _duplexify(pair) {\n      const r = pair.readable && typeof pair.readable.read !== \"function\" \? Readable.wrap(pair.readable) : pair.readable, w = pair.writable;\n      let readable = !!isReadable(r), writable = !!isWritable(w), ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      if (d = new Duplexify({\n        readableObjectMode: !!(r !== null && r !== void 0 && r.readableObjectMode),\n        writableObjectMode: !!(w !== null && w !== void 0 && w.writableObjectMode),\n        readable,\n        writable\n      }), writable)\n        eos(w, (err) => {\n          if (writable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), d._write = function(chunk, encoding, callback) {\n          if (w.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          w.end(), onfinish = callback;\n        }, w.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), w.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        eos(r, (err) => {\n          if (readable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), r.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), r.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = r.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(w, err), destroyer(r, err);\n      }, d;\n    }\n  }\n}), require_duplex = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplex.js\"(exports, module) {\n    var { ObjectDefineProperties, ObjectGetOwnPropertyDescriptor, ObjectKeys, ObjectSetPrototypeOf } = require_primordials(), Readable = require_readable();\n    function Duplex(options) {\n      if (!(this instanceof Duplex))\n        return new Duplex(options);\n      if (Readable.call(this, options), Writable.call(this, options), options) {\n        if (this.allowHalfOpen = options.allowHalfOpen !== !1, options.readable === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if (options.writable === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      } else\n        this.allowHalfOpen = !0;\n    }\n    Duplex.prototype = {}, module.exports = Duplex, ObjectSetPrototypeOf(Duplex.prototype, Readable.prototype), ObjectSetPrototypeOf(Duplex, Readable);\n    for (var method in Writable.prototype)\n      if (!Duplex.prototype[method])\n        Duplex.prototype[method] = Writable.prototype[method];\n    ObjectDefineProperties(Duplex.prototype, {\n      writable: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writable\"),\n      writableHighWaterMark: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableHighWaterMark\"),\n      writableObjectMode: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableObjectMode\"),\n      writableBuffer: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableBuffer\"),\n      writableLength: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableLength\"),\n      writableFinished: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableFinished\"),\n      writableCorked: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableCorked\"),\n      writableEnded: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableEnded\"),\n      writableNeedDrain: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableNeedDrain\"),\n      destroyed: {\n        get() {\n          if (this._readableState === void 0 || this._writableState === void 0)\n            return !1;\n          return this._readableState.destroyed && this._writableState.destroyed;\n        },\n        set(value) {\n          if (this._readableState && this._writableState)\n            this._readableState.destroyed = value, this._writableState.destroyed = value;\n        }\n      }\n    });\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Duplex.fromWeb = function(pair, options) {\n      return lazyWebStreams().newStreamDuplexFromReadableWritablePair(pair, options);\n    }, Duplex.toWeb = function(duplex) {\n      return lazyWebStreams().newReadableWritablePairFromDuplex(duplex);\n    };\n    var duplexify;\n    Duplex.from = function(body) {\n      if (!duplexify)\n        duplexify = require_duplexify();\n      return duplexify(body, \"body\");\n    };\n  }\n}), require_transform = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/transform.js\"(exports, module) {\n    var { ObjectSetPrototypeOf, Symbol: Symbol2 } = require_primordials(), { ERR_METHOD_NOT_IMPLEMENTED } = require_errors().codes, Duplex = require_duplex();\n    function Transform(options) {\n      if (!(this instanceof Transform))\n        return new Transform(options);\n      if (Duplex.call(this, options), this._readableState.sync = !1, this[kCallback] = null, options) {\n        if (typeof options.transform === \"function\")\n          this._transform = options.transform;\n        if (typeof options.flush === \"function\")\n          this._flush = options.flush;\n      }\n      this.on(\"prefinish\", prefinish.bind(this));\n    }\n    Transform.prototype = {}, ObjectSetPrototypeOf(Transform.prototype, Duplex.prototype), ObjectSetPrototypeOf(Transform, Duplex), module.exports = Transform;\n    var kCallback = Symbol2(\"kCallback\");\n    function final(cb) {\n      if (typeof this._flush === \"function\" && !this.destroyed)\n        this._flush((er, data) => {\n          if (er) {\n            if (cb)\n              cb(er);\n            else\n              this.destroy(er);\n            return;\n          }\n          if (data != null)\n            this.push(data);\n          if (this.push(null), cb)\n            cb();\n        });\n      else if (this.push(null), cb)\n        cb();\n    }\n    function prefinish() {\n      if (this._final !== final)\n        final.call(this);\n    }\n    Transform.prototype._final = final, Transform.prototype._transform = function(chunk, encoding, callback) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_transform()\");\n    }, Transform.prototype._write = function(chunk, encoding, callback) {\n      const rState = this._readableState, wState = this._writableState, length = rState.length;\n      this._transform(chunk, encoding, (err, val) => {\n        if (err) {\n          callback(err);\n          return;\n        }\n        if (val != null)\n          this.push(val);\n        if (wState.ended || length === rState.length || rState.length < rState.highWaterMark || rState.highWaterMark === 0 || rState.length === 0)\n          callback();\n        else\n          this[kCallback] = callback;\n      });\n    }, Transform.prototype._read = function() {\n      if (this[kCallback]) {\n        const callback = this[kCallback];\n        this[kCallback] = null, callback();\n      }\n    };\n  }\n}), require_passthrough = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/passthrough.js\"(exports, module) {\n    var { ObjectSetPrototypeOf } = require_primordials(), Transform = require_transform();\n    function PassThrough(options) {\n      if (!(this instanceof PassThrough))\n        return new PassThrough(options);\n      Transform.call(this, options);\n    }\n    PassThrough.prototype = {}, ObjectSetPrototypeOf(PassThrough.prototype, Transform.prototype), ObjectSetPrototypeOf(PassThrough, Transform), PassThrough.prototype._transform = function(chunk, encoding, cb) {\n      cb(null, chunk);\n    }, module.exports = PassThrough;\n  }\n}), require_pipeline = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/pipeline.js\"(exports, module) {\n    var { ArrayIsArray, Promise: Promise2, SymbolAsyncIterator } = require_primordials(), eos = require_end_of_stream(), { once } = require_util(), destroyImpl = require_destroy(), Duplex = require_duplex(), {\n      aggregateTwoErrors,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE, ERR_MISSING_ARGS, ERR_STREAM_DESTROYED },\n      AbortError: AbortError2\n    } = require_errors(), { validateFunction, validateAbortSignal } = require_validators(), { isIterable, isReadable, isReadableNodeStream, isNodeStream } = require_utils(), PassThrough, Readable;\n    function destroyer(stream, reading, writing) {\n      let finished = !1;\n      stream.on(\"close\", () => {\n        finished = !0;\n      });\n      const cleanup = eos(stream, {\n        readable: reading,\n        writable: writing\n      }, (err) => {\n        finished = !err;\n      });\n      return {\n        destroy: (err) => {\n          if (finished)\n            return;\n          finished = !0, destroyImpl.destroyer(stream, err || new ERR_STREAM_DESTROYED(\"pipe\"));\n        },\n        cleanup\n      };\n    }\n    function popCallback(streams) {\n      return validateFunction(streams[streams.length - 1], \"streams[stream.length - 1]\"), streams.pop();\n    }\n    function makeAsyncIterable(val) {\n      if (isIterable(val))\n        return val;\n      else if (isReadableNodeStream(val))\n        return fromReadable(val);\n      throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], val);\n    }\n    async function* fromReadable(val) {\n      if (!Readable)\n        Readable = require_readable();\n      yield* Readable.prototype[SymbolAsyncIterator].call(val);\n    }\n    async function pump(iterable, writable, finish, { end }) {\n      let error, onresolve = null;\n      const resume = (err) => {\n        if (err)\n          error = err;\n        if (onresolve) {\n          const callback = onresolve;\n          onresolve = null, callback();\n        }\n      }, wait = () => new Promise2((resolve, reject) => {\n        if (error)\n          reject(error);\n        else\n          onresolve = () => {\n            if (error)\n              reject(error);\n            else\n              resolve();\n          };\n      });\n      writable.on(\"drain\", resume);\n      const cleanup = eos(writable, {\n        readable: !1\n      }, resume);\n      try {\n        if (writable.writableNeedDrain)\n          await wait();\n        for await (let chunk of iterable)\n          if (!writable.write(chunk))\n            await wait();\n        if (end)\n          writable.end();\n        await wait(), finish();\n      } catch (err) {\n        finish(error !== err \? aggregateTwoErrors(error, err) : err);\n      } finally {\n        cleanup(), writable.off(\"drain\", resume);\n      }\n    }\n    function pipeline(...streams) {\n      return pipelineImpl(streams, once(popCallback(streams)));\n    }\n    function pipelineImpl(streams, callback, opts) {\n      if (streams.length === 1 && ArrayIsArray(streams[0]))\n        streams = streams[0];\n      if (streams.length < 2)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      const ac = new AbortController, signal = ac.signal, outerSignal = opts === null || opts === void 0 \? void 0 : opts.signal, lastStreamCleanup = [];\n      validateAbortSignal(outerSignal, \"options.signal\");\n      function abort() {\n        finishImpl(new AbortError2);\n      }\n      outerSignal === null || outerSignal === void 0 || outerSignal.addEventListener(\"abort\", abort);\n      let error, value;\n      const destroys = [];\n      let finishCount = 0;\n      function finish(err) {\n        finishImpl(err, --finishCount === 0);\n      }\n      function finishImpl(err, final) {\n        if (err && (!error || error.code === \"ERR_STREAM_PREMATURE_CLOSE\"))\n          error = err;\n        if (!error && !final)\n          return;\n        while (destroys.length)\n          destroys.shift()(error);\n        if (outerSignal === null || outerSignal === void 0 || outerSignal.removeEventListener(\"abort\", abort), ac.abort(), final) {\n          if (!error)\n            lastStreamCleanup.forEach((fn) => fn());\n          runOnNextTick(callback, error, value);\n        }\n      }\n      let ret;\n      for (let i = 0;i < streams.length; i++) {\n        const stream = streams[i], reading = i < streams.length - 1, writing = i > 0, end = reading || (opts === null || opts === void 0 \? void 0 : opts.end) !== !1, isLastStream = i === streams.length - 1;\n        if (isNodeStream(stream)) {\n          let onError = function(err) {\n            if (err && err.name !== \"AbortError\" && err.code !== \"ERR_STREAM_PREMATURE_CLOSE\")\n              finish(err);\n          };\n          if (end) {\n            const { destroy: destroy2, cleanup } = destroyer(stream, reading, writing);\n            if (destroys.push(destroy2), isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n          if (stream.on(\"error\", onError), isReadable(stream) && isLastStream)\n            lastStreamCleanup.push(() => {\n              stream.removeListener(\"error\", onError);\n            });\n        }\n        if (i === 0)\n          if (typeof stream === \"function\") {\n            if (ret = stream({\n              signal\n            }), !isIterable(ret))\n              throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or Stream\", \"source\", ret);\n          } else if (isIterable(stream) || isReadableNodeStream(stream))\n            ret = stream;\n          else\n            ret = Duplex.from(stream);\n        else if (typeof stream === \"function\")\n          if (ret = makeAsyncIterable(ret), ret = stream(ret, {\n            signal\n          }), reading) {\n            if (!isIterable(ret, !0))\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable\", `transform[${i - 1}]`, ret);\n          } else {\n            var _ret;\n            if (!PassThrough)\n              PassThrough = require_passthrough();\n            const pt = new PassThrough({\n              objectMode: !0\n            }), then = (_ret = ret) === null || _ret === void 0 \? void 0 : _ret.then;\n            if (typeof then === \"function\")\n              finishCount++, then.call(ret, (val) => {\n                if (value = val, val != null)\n                  pt.write(val);\n                if (end)\n                  pt.end();\n                runOnNextTick(finish);\n              }, (err) => {\n                pt.destroy(err), runOnNextTick(finish, err);\n              });\n            else if (isIterable(ret, !0))\n              finishCount++, pump(ret, pt, finish, {\n                end\n              });\n            else\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable or Promise\", \"destination\", ret);\n            ret = pt;\n            const { destroy: destroy2, cleanup } = destroyer(ret, !1, !0);\n            if (destroys.push(destroy2), isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n        else if (isNodeStream(stream)) {\n          if (isReadableNodeStream(ret)) {\n            finishCount += 2;\n            const cleanup = pipe(ret, stream, finish, {\n              end\n            });\n            if (isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          } else if (isIterable(ret))\n            finishCount++, pump(ret, stream, finish, {\n              end\n            });\n          else\n            throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], ret);\n          ret = stream;\n        } else\n          ret = Duplex.from(stream);\n      }\n      if (signal !== null && signal !== void 0 && signal.aborted || outerSignal !== null && outerSignal !== void 0 && outerSignal.aborted)\n        runOnNextTick(abort);\n      return ret;\n    }\n    function pipe(src, dst, finish, { end }) {\n      if (src.pipe(dst, {\n        end\n      }), end)\n        src.once(\"end\", () => dst.end());\n      else\n        finish();\n      return eos(src, {\n        readable: !0,\n        writable: !1\n      }, (err) => {\n        const rState = src._readableState;\n        if (err && err.code === \"ERR_STREAM_PREMATURE_CLOSE\" && rState && rState.ended && !rState.errored && !rState.errorEmitted)\n          src.once(\"end\", finish).once(\"error\", finish);\n        else\n          finish(err);\n      }), eos(dst, {\n        readable: !1,\n        writable: !0\n      }, finish);\n    }\n    module.exports = {\n      pipelineImpl,\n      pipeline\n    };\n  }\n}), require_compose = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/compose.js\"(exports, module) {\n    var { pipeline } = require_pipeline(), Duplex = require_duplex(), { destroyer } = require_destroy(), { isNodeStream, isReadable, isWritable } = require_utils(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_MISSING_ARGS }\n    } = require_errors();\n    module.exports = function compose(...streams) {\n      if (streams.length === 0)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      if (streams.length === 1)\n        return Duplex.from(streams[0]);\n      const orgStreams = [...streams];\n      if (typeof streams[0] === \"function\")\n        streams[0] = Duplex.from(streams[0]);\n      if (typeof streams[streams.length - 1] === \"function\") {\n        const idx = streams.length - 1;\n        streams[idx] = Duplex.from(streams[idx]);\n      }\n      for (let n = 0;n < streams.length; ++n) {\n        if (!isNodeStream(streams[n]))\n          continue;\n        if (n < streams.length - 1 && !isReadable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be readable\");\n        if (n > 0 && !isWritable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be writable\");\n      }\n      let ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      const head = streams[0], tail = pipeline(streams, onfinished), writable = !!isWritable(head), readable = !!isReadable(tail);\n      if (d = new Duplex({\n        writableObjectMode: !!(head !== null && head !== void 0 && head.writableObjectMode),\n        readableObjectMode: !!(tail !== null && tail !== void 0 && tail.writableObjectMode),\n        writable,\n        readable\n      }), writable)\n        d._write = function(chunk, encoding, callback) {\n          if (head.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          head.end(), onfinish = callback;\n        }, head.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), tail.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        tail.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), tail.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = tail.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(tail, err);\n      }, d;\n    };\n  }\n}), require_promises = __commonJS({\n  \"node_modules/readable-stream/lib/stream/promises.js\"(exports, module) {\n    var { ArrayPrototypePop, Promise: Promise2 } = require_primordials(), { isIterable, isNodeStream } = require_utils(), { pipelineImpl: pl } = require_pipeline(), { finished } = require_end_of_stream();\n    function pipeline(...streams) {\n      return new Promise2((resolve, reject) => {\n        let signal, end;\n        const lastArg = streams[streams.length - 1];\n        if (lastArg && typeof lastArg === \"object\" && !isNodeStream(lastArg) && !isIterable(lastArg)) {\n          const options = ArrayPrototypePop(streams);\n          signal = options.signal, end = options.end;\n        }\n        pl(streams, (err, value) => {\n          if (err)\n            reject(err);\n          else\n            resolve(value);\n        }, {\n          signal,\n          end\n        });\n      });\n    }\n    module.exports = {\n      finished,\n      pipeline\n    };\n  }\n}), require_stream = __commonJS({\n  \"node_modules/readable-stream/lib/stream.js\"(exports, module) {\n    var { ObjectDefineProperty, ObjectKeys, ReflectApply } = require_primordials(), {\n      promisify: { custom: customPromisify }\n    } = require_util(), { streamReturningOperators, promiseReturningOperators } = require_operators(), {\n      codes: { ERR_ILLEGAL_CONSTRUCTOR }\n    } = require_errors(), compose = require_compose(), { pipeline } = require_pipeline(), { destroyer } = require_destroy(), eos = require_end_of_stream(), promises = require_promises(), utils = require_utils(), Stream = module.exports = require_legacy().Stream;\n    Stream.isDisturbed = utils.isDisturbed, Stream.isErrored = utils.isErrored, Stream.isWritable = utils.isWritable, Stream.isReadable = utils.isReadable, Stream.Readable = require_readable();\n    for (let key of ObjectKeys(streamReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return Stream.Readable.from(ReflectApply(op, this, args));\n      };\n      const op = streamReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    for (let key of ObjectKeys(promiseReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return ReflectApply(op, this, args);\n      };\n      const op = promiseReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    Stream.Writable = require_writable(), Stream.Duplex = require_duplex(), Stream.Transform = require_transform(), Stream.PassThrough = require_passthrough(), Stream.pipeline = pipeline;\n    var { addAbortSignal } = require_add_abort_signal();\n    Stream.addAbortSignal = addAbortSignal, Stream.finished = eos, Stream.destroy = destroyer, Stream.compose = compose, ObjectDefineProperty(Stream, \"promises\", {\n      configurable: !0,\n      enumerable: !0,\n      get() {\n        return promises;\n      }\n    }), ObjectDefineProperty(pipeline, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.pipeline;\n      }\n    }), ObjectDefineProperty(eos, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.finished;\n      }\n    }), Stream.Stream = Stream, Stream._isUint8Array = function isUint8Array(value) {\n      return value instanceof Uint8Array;\n    }, Stream._uint8ArrayToBuffer = function _uint8ArrayToBuffer(chunk) {\n      return new Buffer(chunk.buffer, chunk.byteOffset, chunk.byteLength);\n    };\n  }\n}), nativeReadableStreamPrototypes = {\n  0: void 0,\n  1: void 0,\n  2: void 0,\n  3: void 0,\n  4: void 0,\n  5: void 0\n}, Writable = require_writable(), NativeWritable = class NativeWritable2 extends Writable {\n  #pathOrFdOrSink;\n  #fileSink;\n  #native = !0;\n  _construct;\n  _destroy;\n  _final;\n  constructor(pathOrFdOrSink, options = {}) {\n    super(options);\n    this._construct = this.#internalConstruct, this._destroy = this.#internalDestroy, this._final = this.#internalFinal, this.#pathOrFdOrSink = pathOrFdOrSink;\n  }\n  #internalConstruct(cb) {\n    if (this._writableState.constructed = !0, this.constructed = !0, typeof cb === \"function\")\n      cb();\n    process.nextTick(() => {\n      this.emit(\"open\", this.fd), this.emit(\"ready\");\n    });\n  }\n  #lazyConstruct() {\n    if (typeof this.#pathOrFdOrSink === \"object\")\n      if (typeof this.#pathOrFdOrSink.write === \"function\")\n        this.#fileSink = this.#pathOrFdOrSink;\n      else\n        throw new Error(\"Invalid FileSink\");\n    else\n      this.#fileSink = Bun.file(this.#pathOrFdOrSink).writer();\n  }\n  write(chunk, encoding, cb, native = this.#native) {\n    if (!native)\n      return this.#native = !1, super.write(chunk, encoding, cb);\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    var fileSink = this.#fileSink, result = fileSink.write(chunk);\n    if (@isPromise(result))\n      return result.then(() => {\n        this.emit(\"drain\"), fileSink.flush(!0);\n      }), !1;\n    if (fileSink.flush(!0), cb)\n      cb(null, chunk.byteLength);\n    return !0;\n  }\n  end(chunk, encoding, cb, native = this.#native) {\n    return super.end(chunk, encoding, cb, native);\n  }\n  #internalDestroy(error, cb) {\n    const w = this._writableState, r = this._readableState;\n    if (w)\n      w.destroyed = !0, w.closeEmitted = !0;\n    if (r)\n      r.destroyed = !0, r.closeEmitted = !0;\n    if (typeof cb === \"function\")\n      cb(error);\n    if (w\?.closeEmitted || r\?.closeEmitted)\n      this.emit(\"close\");\n  }\n  #internalFinal(cb) {\n    if (this.#fileSink)\n      this.#fileSink.end();\n    if (cb)\n      cb();\n  }\n  ref() {\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    this.#fileSink.ref();\n  }\n  unref() {\n    if (!this.#fileSink)\n      return;\n    this.#fileSink.unref();\n  }\n}, exports = require_stream(), promises = require_promises();\nexports._getNativeReadableStreamPrototype = getNativeReadableStreamPrototype;\nexports.NativeWritable = NativeWritable;\nObject.defineProperty(exports, \"promises\", {\n  configurable: !0,\n  enumerable: !0,\n  get() {\n    return promises;\n  }\n});\nexports[Symbol.for(\"::bunternal::\")] = { _ReadableFromWeb, _ReadableFromWebForUndici };\nexports.eos = require_end_of_stream();\nexports.EventEmitter = EE;\nvar Duplex = exports.Duplex;\nreturn exports})\n"_s; +static constexpr ASCIILiteral NodeStreamCode = "(function (){\"use strict\";// src/js/out/tmp/node/stream.ts\nvar isReadableStream = function(value) {\n  return typeof value === \"object\" && value !== null && value instanceof ReadableStream;\n}, validateBoolean = function(value, name) {\n  if (typeof value !== \"boolean\")\n    throw new ERR_INVALID_ARG_TYPE(name, \"boolean\", value);\n};\nvar ERR_INVALID_ARG_TYPE = function(name, type, value) {\n  return new Error(`The argument '${name}' is invalid. Received '${value}' for type '${type}'`);\n}, ERR_INVALID_ARG_VALUE = function(name, value, reason) {\n  return new Error(`The value '${value}' is invalid for argument '${name}'. Reason: ${reason}`);\n}, createNativeStreamReadable = function(nativeType, Readable) {\n  var [pull, start, cancel, setClose, deinit, updateRef, drainFn] = globalThis[globalThis.Symbol.for('Bun.lazy')](nativeType), closer = [!1], handleNumberResult = function(nativeReadable, result, view, isClosed) {\n    if (result > 0) {\n      const slice = view.subarray(0, result), remainder = view.subarray(result);\n      if (slice.byteLength > 0)\n        nativeReadable.push(slice);\n      if (isClosed)\n        nativeReadable.push(null);\n      return remainder.byteLength > 0 \? remainder : void 0;\n    }\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, handleArrayBufferViewResult = function(nativeReadable, result, view, isClosed) {\n    if (result.byteLength > 0)\n      nativeReadable.push(result);\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, DYNAMICALLY_ADJUST_CHUNK_SIZE = process.env.BUN_DISABLE_DYNAMIC_CHUNK_SIZE !== \"1\";\n  const finalizer = new FinalizationRegistry((ptr) => ptr && deinit(ptr)), MIN_BUFFER_SIZE = 512;\n  var NativeReadable = class NativeReadable2 extends Readable {\n    #bunNativePtr;\n    #refCount = 1;\n    #constructed = !1;\n    #remainingChunk = void 0;\n    #highWaterMark;\n    #pendingRead = !1;\n    #hasResized = !DYNAMICALLY_ADJUST_CHUNK_SIZE;\n    #unregisterToken;\n    constructor(ptr, options = {}) {\n      super(options);\n      if (typeof options.highWaterMark === \"number\")\n        this.#highWaterMark = options.highWaterMark;\n      else\n        this.#highWaterMark = 262144;\n      this.#bunNativePtr = ptr, this.#constructed = !1, this.#remainingChunk = void 0, this.#pendingRead = !1, this.#unregisterToken = {}, finalizer.register(this, this.#bunNativePtr, this.#unregisterToken);\n    }\n    _read(maxToRead) {\n      if (this.#pendingRead)\n        return;\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        this.push(null);\n        return;\n      }\n      if (!this.#constructed)\n        this.#internalConstruct(ptr);\n      return this.#internalRead(this.#getRemainingChunk(maxToRead), ptr);\n    }\n    #internalConstruct(ptr) {\n      this.#constructed = !0;\n      const result = start(ptr, this.#highWaterMark);\n      if (typeof result === \"number\" && result > 1)\n        this.#hasResized = !0, this.#highWaterMark = Math.min(this.#highWaterMark, result);\n      if (drainFn) {\n        const drainResult = drainFn(ptr);\n        if ((drainResult\?.byteLength \?\? 0) > 0)\n          this.push(drainResult);\n      }\n    }\n    #getRemainingChunk(maxToRead = this.#highWaterMark) {\n      var chunk = this.#remainingChunk;\n      if (chunk\?.byteLength \?\? 0 < MIN_BUFFER_SIZE) {\n        var size = maxToRead > MIN_BUFFER_SIZE \? maxToRead : MIN_BUFFER_SIZE;\n        this.#remainingChunk = chunk = new Buffer(size);\n      }\n      return chunk;\n    }\n    #handleResult(result, view, isClosed) {\n      if (typeof result === \"number\") {\n        if (result >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleNumberResult(this, result, view, isClosed);\n      } else if (typeof result === \"boolean\")\n        return process.nextTick(() => {\n          this.push(null);\n        }), view\?.byteLength \?\? 0 > 0 \? view : void 0;\n      else if (ArrayBuffer.isView(result)) {\n        if (result.byteLength >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleArrayBufferViewResult(this, result, view, isClosed);\n      } else\n        throw new Error(\"Invalid result from pull\");\n    }\n    #internalRead(view, ptr) {\n      closer[0] = !1;\n      var result = pull(ptr, view, closer);\n      if (@isPromise(result))\n        return this.#pendingRead = !0, result.then((result2) => {\n          this.#pendingRead = !1, this.#remainingChunk = this.#handleResult(result2, view, closer[0]);\n        }, (reason) => {\n          errorOrDestroy(this, reason);\n        });\n      else\n        this.#remainingChunk = this.#handleResult(result, view, closer[0]);\n    }\n    _destroy(error, callback) {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        callback(error);\n        return;\n      }\n      if (finalizer.unregister(this.#unregisterToken), this.#bunNativePtr = 0, updateRef)\n        updateRef(ptr, !1);\n      cancel(ptr, error), callback(error);\n    }\n    ref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount++ === 0)\n        updateRef(ptr, !0);\n    }\n    unref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount-- === 1)\n        updateRef(ptr, !1);\n    }\n  };\n  if (!updateRef)\n    NativeReadable.prototype.ref = void 0, NativeReadable.prototype.unref = void 0;\n  return NativeReadable;\n}, getNativeReadableStreamPrototype = function(nativeType, Readable) {\n  return nativeReadableStreamPrototypes[nativeType] ||= createNativeStreamReadable(nativeType, Readable);\n}, getNativeReadableStream = function(Readable, stream, options) {\n  if (!(stream && typeof stream === \"object\" && stream instanceof ReadableStream))\n    return;\n  const native = @direct(stream);\n  if (!native)\n    return;\n  const { stream: ptr, data: type } = native;\n  return new (getNativeReadableStreamPrototype(type, Readable))(ptr, options);\n}, EE = globalThis[globalThis.Symbol.for('Bun.lazy')](\"events\"), StringDecoder = @requireNativeModule(\"string_decoder\").StringDecoder, __getOwnPropNames = Object.getOwnPropertyNames, __commonJS = (cb, mod) => function __require2() {\n  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n}, runOnNextTick = process.nextTick;\nvar ArrayIsArray = Array.isArray, require_primordials = __commonJS({\n  \"node_modules/readable-stream/lib/ours/primordials.js\"(exports, module) {\n    module.exports = {\n      ArrayIsArray(self) {\n        return Array.isArray(self);\n      },\n      ArrayPrototypeIncludes(self, el) {\n        return self.includes(el);\n      },\n      ArrayPrototypeIndexOf(self, el) {\n        return self.indexOf(el);\n      },\n      ArrayPrototypeJoin(self, sep) {\n        return self.join(sep);\n      },\n      ArrayPrototypeMap(self, fn) {\n        return self.map(fn);\n      },\n      ArrayPrototypePop(self, el) {\n        return self.pop(el);\n      },\n      ArrayPrototypePush(self, el) {\n        return self.push(el);\n      },\n      ArrayPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      Error,\n      FunctionPrototypeCall(fn, thisArgs, ...args) {\n        return fn.call(thisArgs, ...args);\n      },\n      FunctionPrototypeSymbolHasInstance(self, instance) {\n        return Function.prototype[Symbol.hasInstance].call(self, instance);\n      },\n      MathFloor: Math.floor,\n      Number,\n      NumberIsInteger: Number.isInteger,\n      NumberIsNaN: Number.isNaN,\n      NumberMAX_SAFE_INTEGER: Number.MAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER: Number.MIN_SAFE_INTEGER,\n      NumberParseInt: Number.parseInt,\n      ObjectDefineProperties(self, props) {\n        return Object.defineProperties(self, props);\n      },\n      ObjectDefineProperty(self, name, prop) {\n        return Object.defineProperty(self, name, prop);\n      },\n      ObjectGetOwnPropertyDescriptor(self, name) {\n        return Object.getOwnPropertyDescriptor(self, name);\n      },\n      ObjectKeys(obj) {\n        return Object.keys(obj);\n      },\n      ObjectSetPrototypeOf(target, proto) {\n        return Object.setPrototypeOf(target, proto);\n      },\n      Promise,\n      PromisePrototypeCatch(self, fn) {\n        return self.catch(fn);\n      },\n      PromisePrototypeThen(self, thenFn, catchFn) {\n        return self.then(thenFn, catchFn);\n      },\n      PromiseReject(err) {\n        return Promise.reject(err);\n      },\n      ReflectApply: Reflect.apply,\n      RegExpPrototypeTest(self, value) {\n        return self.test(value);\n      },\n      SafeSet: Set,\n      String,\n      StringPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      StringPrototypeToLowerCase(self) {\n        return self.toLowerCase();\n      },\n      StringPrototypeToUpperCase(self) {\n        return self.toUpperCase();\n      },\n      StringPrototypeTrim(self) {\n        return self.trim();\n      },\n      Symbol,\n      SymbolAsyncIterator: Symbol.asyncIterator,\n      SymbolHasInstance: Symbol.hasInstance,\n      SymbolIterator: Symbol.iterator,\n      TypedArrayPrototypeSet(self, buf, len) {\n        return self.set(buf, len);\n      },\n      Uint8Array\n    };\n  }\n}), require_util = __commonJS({\n  \"node_modules/readable-stream/lib/ours/util.js\"(exports, module) {\n    var AsyncFunction = Object.getPrototypeOf(async function() {\n    }).constructor, isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    }, AggregateError = class extends Error {\n      constructor(errors) {\n        if (!Array.isArray(errors))\n          @throwTypeError(`Expected input to be an Array, got ${typeof errors}`);\n        let message = \"\";\n        for (let i = 0;i < errors.length; i++)\n          message += `    ${errors[i].stack}\n`;\n        super(message);\n        this.name = \"AggregateError\", this.errors = errors;\n      }\n    };\n    module.exports = {\n      AggregateError,\n      once(callback) {\n        let called = !1;\n        return function(...args) {\n          if (called)\n            return;\n          called = !0, callback.apply(this, args);\n        };\n      },\n      createDeferredPromise: function() {\n        let resolve, reject;\n        return {\n          promise: new Promise((res, rej) => {\n            resolve = res, reject = rej;\n          }),\n          resolve,\n          reject\n        };\n      },\n      promisify(fn) {\n        return new Promise((resolve, reject) => {\n          fn((err, ...args) => {\n            if (err)\n              return reject(err);\n            return resolve(...args);\n          });\n        });\n      },\n      debuglog() {\n        return function() {\n        };\n      },\n      format(format, ...args) {\n        return format.replace(/%([sdifj])/g, function(...[_unused, type]) {\n          const replacement = args.shift();\n          if (type === \"f\")\n            return replacement.toFixed(6);\n          else if (type === \"j\")\n            return JSON.stringify(replacement);\n          else if (type === \"s\" && typeof replacement === \"object\")\n            return `${replacement.constructor !== Object \? replacement.constructor.name : \"\"} {}`.trim();\n          else\n            return replacement.toString();\n        });\n      },\n      inspect(value) {\n        switch (typeof value) {\n          case \"string\":\n            if (value.includes(\"'\")) {\n              if (!value.includes('\"'))\n                return `\"${value}\"`;\n              else if (!value.includes(\"`\") && !value.includes(\"${\"))\n                return `\\`${value}\\``;\n            }\n            return `'${value}'`;\n          case \"number\":\n            if (isNaN(value))\n              return \"NaN\";\n            else if (Object.is(value, -0))\n              return String(value);\n            return value;\n          case \"bigint\":\n            return `${String(value)}n`;\n          case \"boolean\":\n          case \"undefined\":\n            return String(value);\n          case \"object\":\n            return \"{}\";\n        }\n      },\n      types: {\n        isAsyncFunction(fn) {\n          return fn instanceof AsyncFunction;\n        },\n        isArrayBufferView(arr) {\n          return ArrayBuffer.isView(arr);\n        }\n      },\n      isBlob\n    }, module.exports.promisify.custom = Symbol.for(\"nodejs.util.promisify.custom\");\n  }\n}), require_errors = __commonJS({\n  \"node_modules/readable-stream/lib/ours/errors.js\"(exports, module) {\n    var { format, inspect, AggregateError: CustomAggregateError } = require_util(), AggregateError = globalThis.AggregateError || CustomAggregateError, kIsNodeError = Symbol(\"kIsNodeError\"), kTypes = [\"string\", \"function\", \"number\", \"object\", \"Function\", \"Object\", \"boolean\", \"bigint\", \"symbol\"], classRegExp = /^([A-Z][a-z0-9]*)+$/, nodeInternalPrefix = \"__node_internal_\", codes = {};\n    function assert(value, message) {\n      if (!value)\n        throw new codes.ERR_INTERNAL_ASSERTION(message);\n    }\n    function addNumericalSeparator(val) {\n      let res = \"\", i = val.length;\n      const start = val[0] === \"-\" \? 1 : 0;\n      for (;i >= start + 4; i -= 3)\n        res = `_${val.slice(i - 3, i)}${res}`;\n      return `${val.slice(0, i)}${res}`;\n    }\n    function getMessage(key, msg, args) {\n      if (typeof msg === \"function\")\n        return assert(msg.length <= args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${msg.length}).`), msg(...args);\n      const expectedLength = (msg.match(/%[dfijoOs]/g) || []).length;\n      if (assert(expectedLength === args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${expectedLength}).`), args.length === 0)\n        return msg;\n      return format(msg, ...args);\n    }\n    function E(code, message, Base) {\n      if (!Base)\n        Base = Error;\n\n      class NodeError extends Base {\n        constructor(...args) {\n          super(getMessage(code, message, args));\n        }\n        toString() {\n          return `${this.name} [${code}]: ${this.message}`;\n        }\n      }\n      Object.defineProperties(NodeError.prototype, {\n        name: {\n          value: Base.name,\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        },\n        toString: {\n          value() {\n            return `${this.name} [${code}]: ${this.message}`;\n          },\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        }\n      }), NodeError.prototype.code = code, NodeError.prototype[kIsNodeError] = !0, codes[code] = NodeError;\n    }\n    function hideStackFrames(fn) {\n      const hidden = nodeInternalPrefix + fn.name;\n      return Object.defineProperty(fn, \"name\", {\n        value: hidden\n      }), fn;\n    }\n    function aggregateTwoErrors(innerError, outerError) {\n      if (innerError && outerError && innerError !== outerError) {\n        if (Array.isArray(outerError.errors))\n          return outerError.errors.push(innerError), outerError;\n        const err = new AggregateError([outerError, innerError], outerError.message);\n        return err.code = outerError.code, err;\n      }\n      return innerError || outerError;\n    }\n    var AbortError2 = class extends Error {\n      constructor(message = \"The operation was aborted\", options = void 0) {\n        if (options !== void 0 && typeof options !== \"object\")\n          throw new codes.ERR_INVALID_ARG_TYPE(\"options\", \"Object\", options);\n        super(message, options);\n        this.code = \"ABORT_ERR\", this.name = \"AbortError\";\n      }\n    };\n    E(\"ERR_ASSERTION\", \"%s\", Error), E(\"ERR_INVALID_ARG_TYPE\", (name, expected, actual) => {\n      if (assert(typeof name === \"string\", \"'name' must be a string\"), !Array.isArray(expected))\n        expected = [expected];\n      let msg = \"The \";\n      if (name.endsWith(\" argument\"))\n        msg += `${name} `;\n      else\n        msg += `\"${name}\" ${name.includes(\".\") \? \"property\" : \"argument\"} `;\n      msg += \"must be \";\n      const types = [], instances = [], other = [];\n      for (let value of expected)\n        if (assert(typeof value === \"string\", \"All expected entries have to be of type string\"), kTypes.includes(value))\n          types.push(value.toLowerCase());\n        else if (classRegExp.test(value))\n          instances.push(value);\n        else\n          assert(value !== \"object\", 'The value \"object\" should be written as \"Object\"'), other.push(value);\n      if (instances.length > 0) {\n        const pos = types.indexOf(\"object\");\n        if (pos !== -1)\n          types.splice(types, pos, 1), instances.push(\"Object\");\n      }\n      if (types.length > 0) {\n        switch (types.length) {\n          case 1:\n            msg += `of type ${types[0]}`;\n            break;\n          case 2:\n            msg += `one of type ${types[0]} or ${types[1]}`;\n            break;\n          default: {\n            const last = types.pop();\n            msg += `one of type ${types.join(\", \")}, or ${last}`;\n          }\n        }\n        if (instances.length > 0 || other.length > 0)\n          msg += \" or \";\n      }\n      if (instances.length > 0) {\n        switch (instances.length) {\n          case 1:\n            msg += `an instance of ${instances[0]}`;\n            break;\n          case 2:\n            msg += `an instance of ${instances[0]} or ${instances[1]}`;\n            break;\n          default: {\n            const last = instances.pop();\n            msg += `an instance of ${instances.join(\", \")}, or ${last}`;\n          }\n        }\n        if (other.length > 0)\n          msg += \" or \";\n      }\n      switch (other.length) {\n        case 0:\n          break;\n        case 1:\n          if (other[0].toLowerCase() !== other[0])\n            msg += \"an \";\n          msg += `${other[0]}`;\n          break;\n        case 2:\n          msg += `one of ${other[0]} or ${other[1]}`;\n          break;\n        default: {\n          const last = other.pop();\n          msg += `one of ${other.join(\", \")}, or ${last}`;\n        }\n      }\n      if (actual == null)\n        msg += `. Received ${actual}`;\n      else if (typeof actual === \"function\" && actual.name)\n        msg += `. Received function ${actual.name}`;\n      else if (typeof actual === \"object\") {\n        var _actual$constructor;\n        if ((_actual$constructor = actual.constructor) !== null && _actual$constructor !== void 0 && _actual$constructor.name)\n          msg += `. Received an instance of ${actual.constructor.name}`;\n        else {\n          const inspected = inspect(actual, {\n            depth: -1\n          });\n          msg += `. Received ${inspected}`;\n        }\n      } else {\n        let inspected = inspect(actual, {\n          colors: !1\n        });\n        if (inspected.length > 25)\n          inspected = `${inspected.slice(0, 25)}...`;\n        msg += `. Received type ${typeof actual} (${inspected})`;\n      }\n      return msg;\n    }, TypeError), E(\"ERR_INVALID_ARG_VALUE\", (name, value, reason = \"is invalid\") => {\n      let inspected = inspect(value);\n      if (inspected.length > 128)\n        inspected = inspected.slice(0, 128) + \"...\";\n      return `The ${name.includes(\".\") \? \"property\" : \"argument\"} '${name}' ${reason}. Received ${inspected}`;\n    }, TypeError), E(\"ERR_INVALID_RETURN_VALUE\", (input, name, value) => {\n      var _value$constructor;\n      const type = value !== null && value !== void 0 && (_value$constructor = value.constructor) !== null && _value$constructor !== void 0 && _value$constructor.name \? `instance of ${value.constructor.name}` : `type ${typeof value}`;\n      return `Expected ${input} to be returned from the \"${name}\" function but got ${type}.`;\n    }, TypeError), E(\"ERR_MISSING_ARGS\", (...args) => {\n      assert(args.length > 0, \"At least one arg needs to be specified\");\n      let msg;\n      const len = args.length;\n      switch (args = (Array.isArray(args) \? args : [args]).map((a) => `\"${a}\"`).join(\" or \"), len) {\n        case 1:\n          msg += `The ${args[0]} argument`;\n          break;\n        case 2:\n          msg += `The ${args[0]} and ${args[1]} arguments`;\n          break;\n        default:\n          {\n            const last = args.pop();\n            msg += `The ${args.join(\", \")}, and ${last} arguments`;\n          }\n          break;\n      }\n      return `${msg} must be specified`;\n    }, TypeError), E(\"ERR_OUT_OF_RANGE\", (str, range, input) => {\n      assert(range, 'Missing \"range\" argument');\n      let received;\n      if (Number.isInteger(input) && Math.abs(input) > 4294967296)\n        received = addNumericalSeparator(String(input));\n      else if (typeof input === \"bigint\") {\n        if (received = String(input), input > 2n ** 32n || input < -(2n ** 32n))\n          received = addNumericalSeparator(received);\n        received += \"n\";\n      } else\n        received = inspect(input);\n      return `The value of \"${str}\" is out of range. It must be ${range}. Received ${received}`;\n    }, RangeError), E(\"ERR_MULTIPLE_CALLBACK\", \"Callback called multiple times\", Error), E(\"ERR_METHOD_NOT_IMPLEMENTED\", \"The %s method is not implemented\", Error), E(\"ERR_STREAM_ALREADY_FINISHED\", \"Cannot call %s after a stream was finished\", Error), E(\"ERR_STREAM_CANNOT_PIPE\", \"Cannot pipe, not readable\", Error), E(\"ERR_STREAM_DESTROYED\", \"Cannot call %s after a stream was destroyed\", Error), E(\"ERR_STREAM_NULL_VALUES\", \"May not write null values to stream\", TypeError), E(\"ERR_STREAM_PREMATURE_CLOSE\", \"Premature close\", Error), E(\"ERR_STREAM_PUSH_AFTER_EOF\", \"stream.push() after EOF\", Error), E(\"ERR_STREAM_UNSHIFT_AFTER_END_EVENT\", \"stream.unshift() after end event\", Error), E(\"ERR_STREAM_WRITE_AFTER_END\", \"write after end\", Error), E(\"ERR_UNKNOWN_ENCODING\", \"Unknown encoding: %s\", TypeError), module.exports = {\n      AbortError: AbortError2,\n      aggregateTwoErrors: hideStackFrames(aggregateTwoErrors),\n      hideStackFrames,\n      codes\n    };\n  }\n}), require_validators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/validators.js\"(exports, module) {\n    var {\n      ArrayIsArray: ArrayIsArray2,\n      ArrayPrototypeIncludes,\n      ArrayPrototypeJoin,\n      ArrayPrototypeMap,\n      NumberIsInteger,\n      NumberMAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER,\n      NumberParseInt,\n      RegExpPrototypeTest,\n      String: String2,\n      StringPrototypeToUpperCase,\n      StringPrototypeTrim\n    } = require_primordials(), {\n      hideStackFrames,\n      codes: { ERR_SOCKET_BAD_PORT, ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_OUT_OF_RANGE, ERR_UNKNOWN_SIGNAL }\n    } = require_errors(), { normalizeEncoding } = require_util(), { isAsyncFunction, isArrayBufferView } = require_util().types, signals = {};\n    function isInt32(value) {\n      return value === (value | 0);\n    }\n    function isUint32(value) {\n      return value === value >>> 0;\n    }\n    var octalReg = /^[0-7]+$/, modeDesc = \"must be a 32-bit unsigned integer or an octal string\";\n    function parseFileMode(value, name, def) {\n      if (typeof value === \"undefined\")\n        value = def;\n      if (typeof value === \"string\") {\n        if (!RegExpPrototypeTest(octalReg, value))\n          throw new ERR_INVALID_ARG_VALUE2(name, value, modeDesc);\n        value = NumberParseInt(value, 8);\n      }\n      return validateInt32(value, name, 0, 4294967295), value;\n    }\n    var validateInteger = hideStackFrames((value, name, min = NumberMIN_SAFE_INTEGER, max = NumberMAX_SAFE_INTEGER) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!NumberIsInteger(value))\n        throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateInt32 = hideStackFrames((value, name, min = -2147483648, max = 2147483647) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isInt32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n      }\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateUint32 = hideStackFrames((value, name, positive) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isUint32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${positive \? 1 : 0} && < 4294967296`, value);\n      }\n      if (positive && value === 0)\n        throw new ERR_OUT_OF_RANGE(name, \">= 1 && < 4294967296\", value);\n    });\n    function validateString(value, name) {\n      if (typeof value !== \"string\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"string\", value);\n    }\n    function validateNumber(value, name) {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n    }\n    var validateOneOf = hideStackFrames((value, name, oneOf) => {\n      if (!ArrayPrototypeIncludes(oneOf, value)) {\n        const reason = \"must be one of: \" + ArrayPrototypeJoin(ArrayPrototypeMap(oneOf, (v) => typeof v === \"string\" \? `'${v}'` : String2(v)), \", \");\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateBoolean2(value, name) {\n      if (typeof value !== \"boolean\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"boolean\", value);\n    }\n    var validateObject = hideStackFrames((value, name, options) => {\n      const useDefaultOptions = options == null, allowArray = useDefaultOptions \? !1 : options.allowArray, allowFunction = useDefaultOptions \? !1 : options.allowFunction;\n      if (!(useDefaultOptions \? !1 : options.nullable) && value === null || !allowArray && ArrayIsArray2(value) || typeof value !== \"object\" && (!allowFunction || typeof value !== \"function\"))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Object\", value);\n    }), validateArray = hideStackFrames((value, name, minLength = 0) => {\n      if (!ArrayIsArray2(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Array\", value);\n      if (value.length < minLength) {\n        const reason = `must be longer than ${minLength}`;\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateSignalName(signal, name = \"signal\") {\n      if (validateString(signal, name), signals[signal] === void 0) {\n        if (signals[StringPrototypeToUpperCase(signal)] !== void 0)\n          throw new ERR_UNKNOWN_SIGNAL(signal + \" (signals must use all capital letters)\");\n        throw new ERR_UNKNOWN_SIGNAL(signal);\n      }\n    }\n    var validateBuffer = hideStackFrames((buffer, name = \"buffer\") => {\n      if (!isArrayBufferView(buffer))\n        throw new ERR_INVALID_ARG_TYPE2(name, [\"Buffer\", \"TypedArray\", \"DataView\"], buffer);\n    });\n    function validateEncoding(data, encoding) {\n      const normalizedEncoding = normalizeEncoding(encoding), length = data.length;\n      if (normalizedEncoding === \"hex\" && length % 2 !== 0)\n        throw new ERR_INVALID_ARG_VALUE2(\"encoding\", encoding, `is invalid for data of length ${length}`);\n    }\n    function validatePort(port, name = \"Port\", allowZero = !0) {\n      if (typeof port !== \"number\" && typeof port !== \"string\" || typeof port === \"string\" && StringPrototypeTrim(port).length === 0 || +port !== +port >>> 0 || port > 65535 || port === 0 && !allowZero)\n        throw new ERR_SOCKET_BAD_PORT(name, port, allowZero);\n      return port | 0;\n    }\n    var validateAbortSignal = hideStackFrames((signal, name) => {\n      if (signal !== void 0 && (signal === null || typeof signal !== \"object\" || !(\"aborted\" in signal)))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    }), validateFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validatePlainFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\" || isAsyncFunction(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validateUndefined = hideStackFrames((value, name) => {\n      if (value !== void 0)\n        throw new ERR_INVALID_ARG_TYPE2(name, \"undefined\", value);\n    });\n    module.exports = {\n      isInt32,\n      isUint32,\n      parseFileMode,\n      validateArray,\n      validateBoolean: validateBoolean2,\n      validateBuffer,\n      validateEncoding,\n      validateFunction,\n      validateInt32,\n      validateInteger,\n      validateNumber,\n      validateObject,\n      validateOneOf,\n      validatePlainFunction,\n      validatePort,\n      validateSignalName,\n      validateString,\n      validateUint32,\n      validateUndefined,\n      validateAbortSignal\n    };\n  }\n}), require_utils = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/utils.js\"(exports, module) {\n    var { Symbol: Symbol2, SymbolAsyncIterator, SymbolIterator } = require_primordials(), kDestroyed = Symbol2(\"kDestroyed\"), kIsErrored = Symbol2(\"kIsErrored\"), kIsReadable = Symbol2(\"kIsReadable\"), kIsDisturbed = Symbol2(\"kIsDisturbed\");\n    function isReadableNodeStream(obj, strict = !1) {\n      var _obj$_readableState;\n      return !!(obj && typeof obj.pipe === \"function\" && typeof obj.on === \"function\" && (!strict || typeof obj.pause === \"function\" && typeof obj.resume === \"function\") && (!obj._writableState || ((_obj$_readableState = obj._readableState) === null || _obj$_readableState === void 0 \? void 0 : _obj$_readableState.readable) !== !1) && (!obj._writableState || obj._readableState));\n    }\n    function isWritableNodeStream(obj) {\n      var _obj$_writableState;\n      return !!(obj && typeof obj.write === \"function\" && typeof obj.on === \"function\" && (!obj._readableState || ((_obj$_writableState = obj._writableState) === null || _obj$_writableState === void 0 \? void 0 : _obj$_writableState.writable) !== !1));\n    }\n    function isDuplexNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\" && obj._readableState && typeof obj.on === \"function\" && typeof obj.write === \"function\");\n    }\n    function isNodeStream(obj) {\n      return obj && (obj._readableState || obj._writableState || typeof obj.write === \"function\" && typeof obj.on === \"function\" || typeof obj.pipe === \"function\" && typeof obj.on === \"function\");\n    }\n    function isIterable(obj, isAsync) {\n      if (obj == null)\n        return !1;\n      if (isAsync === !0)\n        return typeof obj[SymbolAsyncIterator] === \"function\";\n      if (isAsync === !1)\n        return typeof obj[SymbolIterator] === \"function\";\n      return typeof obj[SymbolAsyncIterator] === \"function\" || typeof obj[SymbolIterator] === \"function\";\n    }\n    function isDestroyed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !!(stream.destroyed || stream[kDestroyed] || state !== null && state !== void 0 && state.destroyed);\n    }\n    function isWritableEnded(stream) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableEnded === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.ended) !== \"boolean\")\n        return null;\n      return wState.ended;\n    }\n    function isWritableFinished(stream, strict) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableFinished === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.finished) !== \"boolean\")\n        return null;\n      return !!(wState.finished || strict === !1 && wState.ended === !0 && wState.length === 0);\n    }\n    function isReadableEnded(stream) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      if (stream.readableEnded === !0)\n        return !0;\n      const rState = stream._readableState;\n      if (!rState || rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.ended) !== \"boolean\")\n        return null;\n      return rState.ended;\n    }\n    function isReadableFinished(stream, strict) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      const rState = stream._readableState;\n      if (rState !== null && rState !== void 0 && rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.endEmitted) !== \"boolean\")\n        return null;\n      return !!(rState.endEmitted || strict === !1 && rState.ended === !0 && rState.length === 0);\n    }\n    function isReadable(stream) {\n      if (stream && stream[kIsReadable] != null)\n        return stream[kIsReadable];\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.readable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isReadableNodeStream(stream) && stream.readable && !isReadableFinished(stream);\n    }\n    function isWritable(stream) {\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.writable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isWritableNodeStream(stream) && stream.writable && !isWritableEnded(stream);\n    }\n    function isFinished(stream, opts) {\n      if (!isNodeStream(stream))\n        return null;\n      if (isDestroyed(stream))\n        return !0;\n      if ((opts === null || opts === void 0 \? void 0 : opts.readable) !== !1 && isReadable(stream))\n        return !1;\n      if ((opts === null || opts === void 0 \? void 0 : opts.writable) !== !1 && isWritable(stream))\n        return !1;\n      return !0;\n    }\n    function isWritableErrored(stream) {\n      var _stream$_writableStat, _stream$_writableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.writableErrored)\n        return stream.writableErrored;\n      return (_stream$_writableStat = (_stream$_writableStat2 = stream._writableState) === null || _stream$_writableStat2 === void 0 \? void 0 : _stream$_writableStat2.errored) !== null && _stream$_writableStat !== void 0 \? _stream$_writableStat : null;\n    }\n    function isReadableErrored(stream) {\n      var _stream$_readableStat, _stream$_readableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.readableErrored)\n        return stream.readableErrored;\n      return (_stream$_readableStat = (_stream$_readableStat2 = stream._readableState) === null || _stream$_readableStat2 === void 0 \? void 0 : _stream$_readableStat2.errored) !== null && _stream$_readableStat !== void 0 \? _stream$_readableStat : null;\n    }\n    function isClosed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      if (typeof stream.closed === \"boolean\")\n        return stream.closed;\n      const { _writableState: wState, _readableState: rState } = stream;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.closed) === \"boolean\" || typeof (rState === null || rState === void 0 \? void 0 : rState.closed) === \"boolean\")\n        return (wState === null || wState === void 0 \? void 0 : wState.closed) || (rState === null || rState === void 0 \? void 0 : rState.closed);\n      if (typeof stream._closed === \"boolean\" && isOutgoingMessage(stream))\n        return stream._closed;\n      return null;\n    }\n    function isOutgoingMessage(stream) {\n      return typeof stream._closed === \"boolean\" && typeof stream._defaultKeepAlive === \"boolean\" && typeof stream._removedConnection === \"boolean\" && typeof stream._removedContLen === \"boolean\";\n    }\n    function isServerResponse(stream) {\n      return typeof stream._sent100 === \"boolean\" && isOutgoingMessage(stream);\n    }\n    function isServerRequest(stream) {\n      var _stream$req;\n      return typeof stream._consuming === \"boolean\" && typeof stream._dumped === \"boolean\" && ((_stream$req = stream.req) === null || _stream$req === void 0 \? void 0 : _stream$req.upgradeOrConnect) === void 0;\n    }\n    function willEmitClose(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !state && isServerResponse(stream) || !!(state && state.autoDestroy && state.emitClose && state.closed === !1);\n    }\n    function isDisturbed(stream) {\n      var _stream$kIsDisturbed;\n      return !!(stream && ((_stream$kIsDisturbed = stream[kIsDisturbed]) !== null && _stream$kIsDisturbed !== void 0 \? _stream$kIsDisturbed : stream.readableDidRead || stream.readableAborted));\n    }\n    function isErrored(stream) {\n      var _ref, _ref2, _ref3, _ref4, _ref5, _stream$kIsErrored, _stream$_readableStat3, _stream$_writableStat3, _stream$_readableStat4, _stream$_writableStat4;\n      return !!(stream && ((_ref = (_ref2 = (_ref3 = (_ref4 = (_ref5 = (_stream$kIsErrored = stream[kIsErrored]) !== null && _stream$kIsErrored !== void 0 \? _stream$kIsErrored : stream.readableErrored) !== null && _ref5 !== void 0 \? _ref5 : stream.writableErrored) !== null && _ref4 !== void 0 \? _ref4 : (_stream$_readableStat3 = stream._readableState) === null || _stream$_readableStat3 === void 0 \? void 0 : _stream$_readableStat3.errorEmitted) !== null && _ref3 !== void 0 \? _ref3 : (_stream$_writableStat3 = stream._writableState) === null || _stream$_writableStat3 === void 0 \? void 0 : _stream$_writableStat3.errorEmitted) !== null && _ref2 !== void 0 \? _ref2 : (_stream$_readableStat4 = stream._readableState) === null || _stream$_readableStat4 === void 0 \? void 0 : _stream$_readableStat4.errored) !== null && _ref !== void 0 \? _ref : (_stream$_writableStat4 = stream._writableState) === null || _stream$_writableStat4 === void 0 \? void 0 : _stream$_writableStat4.errored));\n    }\n    module.exports = {\n      kDestroyed,\n      isDisturbed,\n      kIsDisturbed,\n      isErrored,\n      kIsErrored,\n      isReadable,\n      kIsReadable,\n      isClosed,\n      isDestroyed,\n      isDuplexNodeStream,\n      isFinished,\n      isIterable,\n      isReadableNodeStream,\n      isReadableEnded,\n      isReadableFinished,\n      isReadableErrored,\n      isNodeStream,\n      isWritable,\n      isWritableNodeStream,\n      isWritableEnded,\n      isWritableFinished,\n      isWritableErrored,\n      isServerRequest,\n      isServerResponse,\n      willEmitClose\n    };\n  }\n}), require_end_of_stream = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/end-of-stream.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_PREMATURE_CLOSE } = codes, { once } = require_util(), { validateAbortSignal, validateFunction, validateObject } = require_validators(), { Promise: Promise2 } = require_primordials(), {\n      isClosed,\n      isReadable,\n      isReadableNodeStream,\n      isReadableFinished,\n      isReadableErrored,\n      isWritable,\n      isWritableNodeStream,\n      isWritableFinished,\n      isWritableErrored,\n      isNodeStream,\n      willEmitClose: _willEmitClose\n    } = require_utils();\n    function isRequest(stream) {\n      return stream.setHeader && typeof stream.abort === \"function\";\n    }\n    var nop = () => {\n    };\n    function eos(stream, options, callback) {\n      var _options$readable, _options$writable;\n      if (arguments.length === 2)\n        callback = options, options = {};\n      else if (options == null)\n        options = {};\n      else\n        validateObject(options, \"options\");\n      validateFunction(callback, \"callback\"), validateAbortSignal(options.signal, \"options.signal\"), callback = once(callback);\n      const readable = (_options$readable = options.readable) !== null && _options$readable !== void 0 \? _options$readable : isReadableNodeStream(stream), writable = (_options$writable = options.writable) !== null && _options$writable !== void 0 \? _options$writable : isWritableNodeStream(stream);\n      if (!isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"Stream\", stream);\n      const { _writableState: wState, _readableState: rState } = stream, onlegacyfinish = () => {\n        if (!stream.writable)\n          onfinish();\n      };\n      let willEmitClose = _willEmitClose(stream) && isReadableNodeStream(stream) === readable && isWritableNodeStream(stream) === writable, writableFinished = isWritableFinished(stream, !1);\n      const onfinish = () => {\n        if (writableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.readable || readable))\n          return;\n        if (!readable || readableFinished)\n          callback.call(stream);\n      };\n      let readableFinished = isReadableFinished(stream, !1);\n      const onend = () => {\n        if (readableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.writable || writable))\n          return;\n        if (!writable || writableFinished)\n          callback.call(stream);\n      }, onerror = (err) => {\n        callback.call(stream, err);\n      };\n      let closed = isClosed(stream);\n      const onclose = () => {\n        closed = !0;\n        const errored = isWritableErrored(stream) || isReadableErrored(stream);\n        if (errored && typeof errored !== \"boolean\")\n          return callback.call(stream, errored);\n        if (readable && !readableFinished && isReadableNodeStream(stream, !0)) {\n          if (!isReadableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        if (writable && !writableFinished) {\n          if (!isWritableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        callback.call(stream);\n      }, onrequest = () => {\n        stream.req.on(\"finish\", onfinish);\n      };\n      if (isRequest(stream)) {\n        if (stream.on(\"complete\", onfinish), !willEmitClose)\n          stream.on(\"abort\", onclose);\n        if (stream.req)\n          onrequest();\n        else\n          stream.on(\"request\", onrequest);\n      } else if (writable && !wState)\n        stream.on(\"end\", onlegacyfinish), stream.on(\"close\", onlegacyfinish);\n      if (!willEmitClose && typeof stream.aborted === \"boolean\")\n        stream.on(\"aborted\", onclose);\n      if (stream.on(\"end\", onend), stream.on(\"finish\", onfinish), options.error !== !1)\n        stream.on(\"error\", onerror);\n      if (stream.on(\"close\", onclose), closed)\n        runOnNextTick(onclose);\n      else if (wState !== null && wState !== void 0 && wState.errorEmitted || rState !== null && rState !== void 0 && rState.errorEmitted) {\n        if (!willEmitClose)\n          runOnNextTick(onclose);\n      } else if (!readable && (!willEmitClose || isReadable(stream)) && (writableFinished || isWritable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (!writable && (!willEmitClose || isWritable(stream)) && (readableFinished || isReadable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (rState && stream.req && stream.aborted)\n        runOnNextTick(onclose);\n      const cleanup = () => {\n        if (callback = nop, stream.removeListener(\"aborted\", onclose), stream.removeListener(\"complete\", onfinish), stream.removeListener(\"abort\", onclose), stream.removeListener(\"request\", onrequest), stream.req)\n          stream.req.removeListener(\"finish\", onfinish);\n        stream.removeListener(\"end\", onlegacyfinish), stream.removeListener(\"close\", onlegacyfinish), stream.removeListener(\"finish\", onfinish), stream.removeListener(\"end\", onend), stream.removeListener(\"error\", onerror), stream.removeListener(\"close\", onclose);\n      };\n      if (options.signal && !closed) {\n        const abort = () => {\n          const endCallback = callback;\n          cleanup(), endCallback.call(stream, new AbortError2(void 0, {\n            cause: options.signal.reason\n          }));\n        };\n        if (options.signal.aborted)\n          runOnNextTick(abort);\n        else {\n          const originalCallback = callback;\n          callback = once((...args) => {\n            options.signal.removeEventListener(\"abort\", abort), originalCallback.apply(stream, args);\n          }), options.signal.addEventListener(\"abort\", abort);\n        }\n      }\n      return cleanup;\n    }\n    function finished(stream, opts) {\n      return new Promise2((resolve, reject) => {\n        eos(stream, opts, (err) => {\n          if (err)\n            reject(err);\n          else\n            resolve();\n        });\n      });\n    }\n    module.exports = eos, module.exports.finished = finished;\n  }\n}), require_operators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/operators.js\"(exports, module) {\n    var {\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_MISSING_ARGS, ERR_OUT_OF_RANGE },\n      AbortError: AbortError2\n    } = require_errors(), { validateAbortSignal, validateInteger, validateObject } = require_validators(), kWeakHandler = require_primordials().Symbol(\"kWeak\"), { finished } = require_end_of_stream(), {\n      ArrayPrototypePush,\n      MathFloor,\n      Number: Number2,\n      NumberIsNaN,\n      Promise: Promise2,\n      PromiseReject,\n      PromisePrototypeCatch,\n      Symbol: Symbol2\n    } = require_primordials(), kEmpty = Symbol2(\"kEmpty\"), kEof = Symbol2(\"kEof\");\n    function map(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let concurrency = 1;\n      if ((options === null || options === void 0 \? void 0 : options.concurrency) != null)\n        concurrency = MathFloor(options.concurrency);\n      return validateInteger(concurrency, \"concurrency\", 1), async function* map2() {\n        var _options$signal, _options$signal2;\n        const ac = new AbortController, stream = this, queue = [], signal = ac.signal, signalOpt = {\n          signal\n        }, abort = () => ac.abort();\n        if (options !== null && options !== void 0 && (_options$signal = options.signal) !== null && _options$signal !== void 0 && _options$signal.aborted)\n          abort();\n        options === null || options === void 0 || (_options$signal2 = options.signal) === null || _options$signal2 === void 0 || _options$signal2.addEventListener(\"abort\", abort);\n        let next, resume, done = !1;\n        function onDone() {\n          done = !0;\n        }\n        async function pump() {\n          try {\n            for await (let val of stream) {\n              var _val;\n              if (done)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              try {\n                val = fn(val, signalOpt);\n              } catch (err) {\n                val = PromiseReject(err);\n              }\n              if (val === kEmpty)\n                continue;\n              if (typeof ((_val = val) === null || _val === void 0 \? void 0 : _val.catch) === \"function\")\n                val.catch(onDone);\n              if (queue.push(val), next)\n                next(), next = null;\n              if (!done && queue.length && queue.length >= concurrency)\n                await new Promise2((resolve) => {\n                  resume = resolve;\n                });\n            }\n            queue.push(kEof);\n          } catch (err) {\n            const val = PromiseReject(err);\n            PromisePrototypeCatch(val, onDone), queue.push(val);\n          } finally {\n            var _options$signal3;\n            if (done = !0, next)\n              next(), next = null;\n            options === null || options === void 0 || (_options$signal3 = options.signal) === null || _options$signal3 === void 0 || _options$signal3.removeEventListener(\"abort\", abort);\n          }\n        }\n        pump();\n        try {\n          while (!0) {\n            while (queue.length > 0) {\n              const val = await queue[0];\n              if (val === kEof)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              if (val !== kEmpty)\n                yield val;\n              if (queue.shift(), resume)\n                resume(), resume = null;\n            }\n            await new Promise2((resolve) => {\n              next = resolve;\n            });\n          }\n        } finally {\n          if (ac.abort(), done = !0, resume)\n            resume(), resume = null;\n        }\n      }.call(this);\n    }\n    function asIndexedPairs(options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return async function* asIndexedPairs2() {\n        let index = 0;\n        for await (let val of this) {\n          var _options$signal4;\n          if (options !== null && options !== void 0 && (_options$signal4 = options.signal) !== null && _options$signal4 !== void 0 && _options$signal4.aborted)\n            throw new AbortError2({\n              cause: options.signal.reason\n            });\n          yield [index++, val];\n        }\n      }.call(this);\n    }\n    async function some(fn, options = void 0) {\n      for await (let unused of filter.call(this, fn, options))\n        return !0;\n      return !1;\n    }\n    async function every(fn, options = void 0) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      return !await some.call(this, async (...args) => {\n        return !await fn(...args);\n      }, options);\n    }\n    async function find(fn, options) {\n      for await (let result of filter.call(this, fn, options))\n        return result;\n      return;\n    }\n    async function forEach(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function forEachFn(value, options2) {\n        return await fn(value, options2), kEmpty;\n      }\n      for await (let unused of map.call(this, forEachFn, options))\n        ;\n    }\n    function filter(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function filterFn(value, options2) {\n        if (await fn(value, options2))\n          return value;\n        return kEmpty;\n      }\n      return map.call(this, filterFn, options);\n    }\n    var ReduceAwareErrMissingArgs = class extends ERR_MISSING_ARGS {\n      constructor() {\n        super(\"reduce\");\n        this.message = \"Reduce of an empty stream requires an initial value\";\n      }\n    };\n    async function reduce(reducer, initialValue, options) {\n      var _options$signal5;\n      if (typeof reducer !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"reducer\", [\"Function\", \"AsyncFunction\"], reducer);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let hasInitialValue = arguments.length > 1;\n      if (options !== null && options !== void 0 && (_options$signal5 = options.signal) !== null && _options$signal5 !== void 0 && _options$signal5.aborted) {\n        const err = new AbortError2(void 0, {\n          cause: options.signal.reason\n        });\n        throw this.once(\"error\", () => {\n        }), await finished(this.destroy(err)), err;\n      }\n      const ac = new AbortController, signal = ac.signal;\n      if (options !== null && options !== void 0 && options.signal) {\n        const opts = {\n          once: !0,\n          [kWeakHandler]: this\n        };\n        options.signal.addEventListener(\"abort\", () => ac.abort(), opts);\n      }\n      let gotAnyItemFromStream = !1;\n      try {\n        for await (let value of this) {\n          var _options$signal6;\n          if (gotAnyItemFromStream = !0, options !== null && options !== void 0 && (_options$signal6 = options.signal) !== null && _options$signal6 !== void 0 && _options$signal6.aborted)\n            throw new AbortError2;\n          if (!hasInitialValue)\n            initialValue = value, hasInitialValue = !0;\n          else\n            initialValue = await reducer(initialValue, value, {\n              signal\n            });\n        }\n        if (!gotAnyItemFromStream && !hasInitialValue)\n          throw new ReduceAwareErrMissingArgs;\n      } finally {\n        ac.abort();\n      }\n      return initialValue;\n    }\n    async function toArray(options) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      const result = [];\n      for await (let val of this) {\n        var _options$signal7;\n        if (options !== null && options !== void 0 && (_options$signal7 = options.signal) !== null && _options$signal7 !== void 0 && _options$signal7.aborted)\n          throw new AbortError2(void 0, {\n            cause: options.signal.reason\n          });\n        ArrayPrototypePush(result, val);\n      }\n      return result;\n    }\n    function flatMap(fn, options) {\n      const values = map.call(this, fn, options);\n      return async function* flatMap2() {\n        for await (let val of values)\n          yield* val;\n      }.call(this);\n    }\n    function toIntegerOrInfinity(number) {\n      if (number = Number2(number), NumberIsNaN(number))\n        return 0;\n      if (number < 0)\n        throw new ERR_OUT_OF_RANGE(\"number\", \">= 0\", number);\n      return number;\n    }\n    function drop(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* drop2() {\n        var _options$signal8;\n        if (options !== null && options !== void 0 && (_options$signal8 = options.signal) !== null && _options$signal8 !== void 0 && _options$signal8.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal9;\n          if (options !== null && options !== void 0 && (_options$signal9 = options.signal) !== null && _options$signal9 !== void 0 && _options$signal9.aborted)\n            throw new AbortError2;\n          if (number-- <= 0)\n            yield val;\n        }\n      }.call(this);\n    }\n    function take(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* take2() {\n        var _options$signal10;\n        if (options !== null && options !== void 0 && (_options$signal10 = options.signal) !== null && _options$signal10 !== void 0 && _options$signal10.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal11;\n          if (options !== null && options !== void 0 && (_options$signal11 = options.signal) !== null && _options$signal11 !== void 0 && _options$signal11.aborted)\n            throw new AbortError2;\n          if (number-- > 0)\n            yield val;\n          else\n            return;\n        }\n      }.call(this);\n    }\n    module.exports.streamReturningOperators = {\n      asIndexedPairs,\n      drop,\n      filter,\n      flatMap,\n      map,\n      take\n    }, module.exports.promiseReturningOperators = {\n      every,\n      forEach,\n      reduce,\n      toArray,\n      some,\n      find\n    };\n  }\n}), require_destroy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/destroy.js\"(exports, module) {\n    var {\n      aggregateTwoErrors,\n      codes: { ERR_MULTIPLE_CALLBACK },\n      AbortError: AbortError2\n    } = require_errors(), { Symbol: Symbol2 } = require_primordials(), { kDestroyed, isDestroyed, isFinished, isServerRequest } = require_utils(), kDestroy = \"#kDestroy\", kConstruct = \"#kConstruct\";\n    function checkError(err, w, r) {\n      if (err) {\n        if (err.stack, w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n      }\n    }\n    function destroy2(err, cb) {\n      const r = this._readableState, w = this._writableState, s = w || r;\n      if (w && w.destroyed || r && r.destroyed) {\n        if (typeof cb === \"function\")\n          cb();\n        return this;\n      }\n      if (checkError(err, w, r), w)\n        w.destroyed = !0;\n      if (r)\n        r.destroyed = !0;\n      if (!s.constructed)\n        this.once(kDestroy, (er) => {\n          _destroy(this, aggregateTwoErrors(er, err), cb);\n        });\n      else\n        _destroy(this, err, cb);\n      return this;\n    }\n    function _destroy(self, err, cb) {\n      let called = !1;\n      function onDestroy(err2) {\n        if (called)\n          return;\n        called = !0;\n        const { _readableState: r, _writableState: w } = self;\n        if (checkError(err2, w, r), w)\n          w.closed = !0;\n        if (r)\n          r.closed = !0;\n        if (typeof cb === \"function\")\n          cb(err2);\n        if (err2)\n          runOnNextTick(emitErrorCloseNT, self, err2);\n        else\n          runOnNextTick(emitCloseNT, self);\n      }\n      try {\n        self._destroy(err || null, onDestroy);\n      } catch (err2) {\n        onDestroy(err2);\n      }\n    }\n    function emitErrorCloseNT(self, err) {\n      emitErrorNT(self, err), emitCloseNT(self);\n    }\n    function emitCloseNT(self) {\n      const { _readableState: r, _writableState: w } = self;\n      if (w)\n        w.closeEmitted = !0;\n      if (r)\n        r.closeEmitted = !0;\n      if (w && w.emitClose || r && r.emitClose)\n        self.emit(\"close\");\n    }\n    function emitErrorNT(self, err) {\n      const r = self\?._readableState, w = self\?._writableState;\n      if (w\?.errorEmitted || r\?.errorEmitted)\n        return;\n      if (w)\n        w.errorEmitted = !0;\n      if (r)\n        r.errorEmitted = !0;\n      self\?.emit\?.(\"error\", err);\n    }\n    function undestroy() {\n      const r = this._readableState, w = this._writableState;\n      if (r)\n        r.constructed = !0, r.closed = !1, r.closeEmitted = !1, r.destroyed = !1, r.errored = null, r.errorEmitted = !1, r.reading = !1, r.ended = r.readable === !1, r.endEmitted = r.readable === !1;\n      if (w)\n        w.constructed = !0, w.destroyed = !1, w.closed = !1, w.closeEmitted = !1, w.errored = null, w.errorEmitted = !1, w.finalCalled = !1, w.prefinished = !1, w.ended = w.writable === !1, w.ending = w.writable === !1, w.finished = w.writable === !1;\n    }\n    function errorOrDestroy2(stream, err, sync) {\n      const r = stream\?._readableState, w = stream\?._writableState;\n      if (w && w.destroyed || r && r.destroyed)\n        return this;\n      if (r && r.autoDestroy || w && w.autoDestroy)\n        stream.destroy(err);\n      else if (err) {\n        if (Error.captureStackTrace(err), w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n        if (sync)\n          runOnNextTick(emitErrorNT, stream, err);\n        else\n          emitErrorNT(stream, err);\n      }\n    }\n    function construct(stream, cb) {\n      if (typeof stream._construct !== \"function\")\n        return;\n      const { _readableState: r, _writableState: w } = stream;\n      if (r)\n        r.constructed = !1;\n      if (w)\n        w.constructed = !1;\n      if (stream.once(kConstruct, cb), stream.listenerCount(kConstruct) > 1)\n        return;\n      runOnNextTick(constructNT, stream);\n    }\n    function constructNT(stream) {\n      let called = !1;\n      function onConstruct(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : new ERR_MULTIPLE_CALLBACK);\n          return;\n        }\n        called = !0;\n        const { _readableState: r, _writableState: w } = stream, s = w || r;\n        if (r)\n          r.constructed = !0;\n        if (w)\n          w.constructed = !0;\n        if (s.destroyed)\n          stream.emit(kDestroy, err);\n        else if (err)\n          errorOrDestroy2(stream, err, !0);\n        else\n          runOnNextTick(emitConstructNT, stream);\n      }\n      try {\n        stream._construct(onConstruct);\n      } catch (err) {\n        onConstruct(err);\n      }\n    }\n    function emitConstructNT(stream) {\n      stream.emit(kConstruct);\n    }\n    function isRequest(stream) {\n      return stream && stream.setHeader && typeof stream.abort === \"function\";\n    }\n    function emitCloseLegacy(stream) {\n      stream.emit(\"close\");\n    }\n    function emitErrorCloseLegacy(stream, err) {\n      stream.emit(\"error\", err), runOnNextTick(emitCloseLegacy, stream);\n    }\n    function destroyer(stream, err) {\n      if (!stream || isDestroyed(stream))\n        return;\n      if (!err && !isFinished(stream))\n        err = new AbortError2;\n      if (isServerRequest(stream))\n        stream.socket = null, stream.destroy(err);\n      else if (isRequest(stream))\n        stream.abort();\n      else if (isRequest(stream.req))\n        stream.req.abort();\n      else if (typeof stream.destroy === \"function\")\n        stream.destroy(err);\n      else if (typeof stream.close === \"function\")\n        stream.close();\n      else if (err)\n        runOnNextTick(emitErrorCloseLegacy, stream);\n      else\n        runOnNextTick(emitCloseLegacy, stream);\n      if (!stream.destroyed)\n        stream[kDestroyed] = !0;\n    }\n    module.exports = {\n      construct,\n      destroyer,\n      destroy: destroy2,\n      undestroy,\n      errorOrDestroy: errorOrDestroy2\n    };\n  }\n}), require_legacy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/legacy.js\"(exports, module) {\n    var { ArrayIsArray: ArrayIsArray2, ObjectSetPrototypeOf } = require_primordials();\n    function Stream(options) {\n      if (!(this instanceof Stream))\n        return new Stream(options);\n      EE.call(this, options);\n    }\n    Stream.prototype = {}, ObjectSetPrototypeOf(Stream.prototype, EE.prototype), ObjectSetPrototypeOf(Stream, EE), Stream.prototype.pipe = function(dest, options) {\n      const source = this;\n      function ondata(chunk) {\n        if (dest.writable && dest.write(chunk) === !1 && source.pause)\n          source.pause();\n      }\n      source.on(\"data\", ondata);\n      function ondrain() {\n        if (source.readable && source.resume)\n          source.resume();\n      }\n      if (dest.on(\"drain\", ondrain), !dest._isStdio && (!options || options.end !== !1))\n        source.on(\"end\", onend), source.on(\"close\", onclose);\n      let didOnEnd = !1;\n      function onend() {\n        if (didOnEnd)\n          return;\n        didOnEnd = !0, dest.end();\n      }\n      function onclose() {\n        if (didOnEnd)\n          return;\n        if (didOnEnd = !0, typeof dest.destroy === \"function\")\n          dest.destroy();\n      }\n      function onerror(er) {\n        if (cleanup(), EE.listenerCount(this, \"error\") === 0)\n          this.emit(\"error\", er);\n      }\n      prependListener(source, \"error\", onerror), prependListener(dest, \"error\", onerror);\n      function cleanup() {\n        source.removeListener(\"data\", ondata), dest.removeListener(\"drain\", ondrain), source.removeListener(\"end\", onend), source.removeListener(\"close\", onclose), source.removeListener(\"error\", onerror), dest.removeListener(\"error\", onerror), source.removeListener(\"end\", cleanup), source.removeListener(\"close\", cleanup), dest.removeListener(\"close\", cleanup);\n      }\n      return source.on(\"end\", cleanup), source.on(\"close\", cleanup), dest.on(\"close\", cleanup), dest.emit(\"pipe\", source), dest;\n    };\n    function prependListener(emitter, event, fn) {\n      if (typeof emitter.prependListener === \"function\")\n        return emitter.prependListener(event, fn);\n      if (!emitter._events || !emitter._events[event])\n        emitter.on(event, fn);\n      else if (ArrayIsArray2(emitter._events[event]))\n        emitter._events[event].unshift(fn);\n      else\n        emitter._events[event] = [fn, emitter._events[event]];\n    }\n    module.exports = {\n      Stream,\n      prependListener\n    };\n  }\n}), require_add_abort_signal = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/add-abort-signal.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), eos = require_end_of_stream(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2 } = codes, validateAbortSignal = (signal, name) => {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    };\n    function isNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\");\n    }\n    module.exports.addAbortSignal = function addAbortSignal(signal, stream) {\n      if (validateAbortSignal(signal, \"signal\"), !isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"stream.Stream\", stream);\n      return module.exports.addAbortSignalNoValidate(signal, stream);\n    }, module.exports.addAbortSignalNoValidate = function(signal, stream) {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        return stream;\n      const onAbort = () => {\n        stream.destroy(new AbortError2(void 0, {\n          cause: signal.reason\n        }));\n      };\n      if (signal.aborted)\n        onAbort();\n      else\n        signal.addEventListener(\"abort\", onAbort), eos(stream, () => signal.removeEventListener(\"abort\", onAbort));\n      return stream;\n    };\n  }\n}), require_state = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/state.js\"(exports, module) {\n    var { MathFloor, NumberIsInteger } = require_primordials(), { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2 } = require_errors().codes;\n    function highWaterMarkFrom(options, isDuplex, duplexKey) {\n      return options.highWaterMark != null \? options.highWaterMark : isDuplex \? options[duplexKey] : null;\n    }\n    function getDefaultHighWaterMark(objectMode) {\n      return objectMode \? 16 : 16384;\n    }\n    function getHighWaterMark(state, options, duplexKey, isDuplex) {\n      const hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n      if (hwm != null) {\n        if (!NumberIsInteger(hwm) || hwm < 0) {\n          const name = isDuplex \? `options.${duplexKey}` : \"options.highWaterMark\";\n          throw new ERR_INVALID_ARG_VALUE2(name, hwm);\n        }\n        return MathFloor(hwm);\n      }\n      return getDefaultHighWaterMark(state.objectMode);\n    }\n    module.exports = {\n      getHighWaterMark,\n      getDefaultHighWaterMark\n    };\n  }\n}), require_from = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/from.js\"(exports, module) {\n    var { PromisePrototypeThen, SymbolAsyncIterator, SymbolIterator } = require_primordials(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_NULL_VALUES } = require_errors().codes;\n    function from(Readable, iterable, opts) {\n      let iterator;\n      if (typeof iterable === \"string\" || iterable instanceof Buffer)\n        return new Readable({\n          objectMode: !0,\n          ...opts,\n          read() {\n            this.push(iterable), this.push(null);\n          }\n        });\n      let isAsync;\n      if (iterable && iterable[SymbolAsyncIterator])\n        isAsync = !0, iterator = iterable[SymbolAsyncIterator]();\n      else if (iterable && iterable[SymbolIterator])\n        isAsync = !1, iterator = iterable[SymbolIterator]();\n      else\n        throw new ERR_INVALID_ARG_TYPE2(\"iterable\", [\"Iterable\"], iterable);\n      const readable = new Readable({\n        objectMode: !0,\n        highWaterMark: 1,\n        ...opts\n      });\n      let reading = !1;\n      readable._read = function() {\n        if (!reading)\n          reading = !0, next();\n      }, readable._destroy = function(error, cb) {\n        PromisePrototypeThen(close(error), () => runOnNextTick(cb, error), (e) => runOnNextTick(cb, e || error));\n      };\n      async function close(error) {\n        const hadError = error !== void 0 && error !== null, hasThrow = typeof iterator.throw === \"function\";\n        if (hadError && hasThrow) {\n          const { value, done } = await iterator.throw(error);\n          if (await value, done)\n            return;\n        }\n        if (typeof iterator.return === \"function\") {\n          const { value } = await iterator.return();\n          await value;\n        }\n      }\n      async function next() {\n        for (;; ) {\n          try {\n            const { value, done } = isAsync \? await iterator.next() : iterator.next();\n            if (done)\n              readable.push(null);\n            else {\n              const res = value && typeof value.then === \"function\" \? await value : value;\n              if (res === null)\n                throw reading = !1, new ERR_STREAM_NULL_VALUES;\n              else if (readable.push(res))\n                continue;\n              else\n                reading = !1;\n            }\n          } catch (err) {\n            readable.destroy(err);\n          }\n          break;\n        }\n      }\n      return readable;\n    }\n    module.exports = from;\n  }\n}), _ReadableFromWeb, _ReadableFromWebForUndici, require_readable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/readable.js\"(exports, module) {\n    var {\n      ArrayPrototypeIndexOf,\n      NumberIsInteger,\n      NumberIsNaN,\n      NumberParseInt,\n      ObjectDefineProperties,\n      ObjectKeys,\n      ObjectSetPrototypeOf,\n      Promise: Promise2,\n      SafeSet,\n      SymbolAsyncIterator,\n      Symbol: Symbol2\n    } = require_primordials(), ReadableState = globalThis[globalThis.Symbol.for('Bun.lazy')](\"bun:stream\").ReadableState, { Stream, prependListener } = require_legacy();\n    function Readable(options) {\n      if (!(this instanceof Readable))\n        return new Readable(options);\n      const isDuplex = this instanceof require_duplex();\n      if (this._readableState = new ReadableState(options, this, isDuplex), options) {\n        const { read, destroy: destroy2, construct, signal } = options;\n        if (typeof read === \"function\")\n          this._read = read;\n        if (typeof destroy2 === \"function\")\n          this._destroy = destroy2;\n        if (typeof construct === \"function\")\n          this._construct = construct;\n        if (signal && !isDuplex)\n          addAbortSignal(signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        if (this._readableState.needReadable)\n          maybeReadMore(this, this._readableState);\n      });\n    }\n    Readable.prototype = {}, ObjectSetPrototypeOf(Readable.prototype, Stream.prototype), ObjectSetPrototypeOf(Readable, Stream), Readable.prototype.on = function(ev, fn) {\n      const res = Stream.prototype.on.call(this, ev, fn), state = this._readableState;\n      if (ev === \"data\") {\n        if (state.readableListening = this.listenerCount(\"readable\") > 0, state.flowing !== !1)\n          this.resume();\n      } else if (ev === \"readable\") {\n        if (!state.endEmitted && !state.readableListening) {\n          if (state.readableListening = state.needReadable = !0, state.flowing = !1, state.emittedReadable = !1, state.length)\n            emitReadable(this, state);\n          else if (!state.reading)\n            runOnNextTick(nReadingNextTick, this);\n        } else if (state.endEmitted)\n          ;\n      }\n      return res;\n    };\n\n    class ReadableFromWeb extends Readable {\n      #reader;\n      #closed;\n      #pendingChunks;\n      #stream;\n      constructor(options, stream) {\n        const { objectMode, highWaterMark, encoding, signal } = options;\n        super({\n          objectMode,\n          highWaterMark,\n          encoding,\n          signal\n        });\n        this.#pendingChunks = [], this.#reader = void 0, this.#stream = stream, this.#closed = !1;\n      }\n      #drainPending() {\n        var pendingChunks = this.#pendingChunks, pendingChunksI = 0, pendingChunksCount = pendingChunks.length;\n        for (;pendingChunksI < pendingChunksCount; pendingChunksI++) {\n          const chunk = pendingChunks[pendingChunksI];\n          if (pendingChunks[pendingChunksI] = void 0, !this.push(chunk, void 0))\n            return this.#pendingChunks = pendingChunks.slice(pendingChunksI + 1), !0;\n        }\n        if (pendingChunksCount > 0)\n          this.#pendingChunks = [];\n        return !1;\n      }\n      #handleDone(reader) {\n        reader.releaseLock(), this.#reader = void 0, this.#closed = !0, this.push(null);\n        return;\n      }\n      async _read() {\n        var stream = this.#stream, reader = this.#reader;\n        if (stream)\n          reader = this.#reader = stream.getReader(), this.#stream = void 0;\n        else if (this.#drainPending())\n          return;\n        var deferredError;\n        try {\n          do {\n            var done = !1, value;\n            const firstResult = reader.readMany();\n            if (@isPromise(firstResult)) {\n              if ({ done, value } = await firstResult, this.#closed) {\n                this.#pendingChunks.push(...value);\n                return;\n              }\n            } else\n              ({ done, value } = firstResult);\n            if (done) {\n              this.#handleDone(reader);\n              return;\n            }\n            if (!this.push(value[0])) {\n              this.#pendingChunks = value.slice(1);\n              return;\n            }\n            for (let i = 1, count = value.length;i < count; i++)\n              if (!this.push(value[i])) {\n                this.#pendingChunks = value.slice(i + 1);\n                return;\n              }\n          } while (!this.#closed);\n        } catch (e) {\n          deferredError = e;\n        } finally {\n          if (deferredError)\n            throw deferredError;\n        }\n      }\n      _destroy(error, callback) {\n        if (!this.#closed) {\n          var reader = this.#reader;\n          if (reader)\n            this.#reader = void 0, reader.cancel(error).finally(() => {\n              this.#closed = !0, callback(error);\n            });\n          return;\n        }\n        try {\n          callback(error);\n        } catch (error2) {\n          globalThis.reportError(error2);\n        }\n      }\n    }\n    _ReadableFromWebForUndici = ReadableFromWeb;\n    function newStreamReadableFromReadableStream(readableStream, options = {}) {\n      if (!isReadableStream(readableStream))\n        throw new ERR_INVALID_ARG_TYPE2(\"readableStream\", \"ReadableStream\", readableStream);\n      validateObject(options, \"options\");\n      const {\n        highWaterMark,\n        encoding,\n        objectMode = !1,\n        signal\n      } = options;\n      if (encoding !== void 0 && !Buffer.isEncoding(encoding))\n        throw new ERR_INVALID_ARG_VALUE(encoding, \"options.encoding\");\n      return validateBoolean(objectMode, \"options.objectMode\"), getNativeReadableStream(Readable, readableStream, options) || new ReadableFromWeb({\n        highWaterMark,\n        encoding,\n        objectMode,\n        signal\n      }, readableStream);\n    }\n    module.exports = Readable, _ReadableFromWeb = newStreamReadableFromReadableStream;\n    var { addAbortSignal } = require_add_abort_signal(), eos = require_end_of_stream();\n    const { maybeReadMore: _maybeReadMore, resume, emitReadable: _emitReadable, onEofChunk } = globalThis[globalThis.Symbol.for('Bun.lazy')](\"bun:stream\");\n    function maybeReadMore(stream, state) {\n      process.nextTick(_maybeReadMore, stream, state);\n    }\n    function emitReadable(stream, state) {\n      _emitReadable(stream, state);\n    }\n    var destroyImpl = require_destroy(), {\n      aggregateTwoErrors,\n      codes: {\n        ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n        ERR_METHOD_NOT_IMPLEMENTED,\n        ERR_OUT_OF_RANGE,\n        ERR_STREAM_PUSH_AFTER_EOF,\n        ERR_STREAM_UNSHIFT_AFTER_END_EVENT\n      }\n    } = require_errors(), { validateObject } = require_validators(), from = require_from(), nop = () => {\n    }, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    Readable.prototype.destroy = destroyImpl.destroy, Readable.prototype._undestroy = destroyImpl.undestroy, Readable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Readable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    }, Readable.prototype.push = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !1);\n    }, Readable.prototype.unshift = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !0);\n    };\n    function readableAddChunk(stream, chunk, encoding, addToFront) {\n      const state = stream._readableState;\n      let err;\n      if (!state.objectMode) {\n        if (typeof chunk === \"string\") {\n          if (encoding = encoding || state.defaultEncoding, state.encoding !== encoding)\n            if (addToFront && state.encoding)\n              chunk = Buffer.from(chunk, encoding).toString(state.encoding);\n            else\n              chunk = Buffer.from(chunk, encoding), encoding = \"\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"\";\n        else if (Stream._isUint8Array(chunk)) {\n          if (addToFront || !state.decoder)\n            chunk = Stream._uint8ArrayToBuffer(chunk);\n          encoding = \"\";\n        } else if (chunk != null)\n          err = new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      }\n      if (err)\n        errorOrDestroy2(stream, err);\n      else if (chunk === null)\n        state.reading = !1, onEofChunk(stream, state);\n      else if (state.objectMode || chunk && chunk.length > 0)\n        if (addToFront)\n          if (state.endEmitted)\n            errorOrDestroy2(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT);\n          else if (state.destroyed || state.errored)\n            return !1;\n          else\n            addChunk(stream, state, chunk, !0);\n        else if (state.ended)\n          errorOrDestroy2(stream, new ERR_STREAM_PUSH_AFTER_EOF);\n        else if (state.destroyed || state.errored)\n          return !1;\n        else if (state.reading = !1, state.decoder && !encoding)\n          if (chunk = state.decoder.write(chunk), state.objectMode || chunk.length !== 0)\n            addChunk(stream, state, chunk, !1);\n          else\n            maybeReadMore(stream, state);\n        else\n          addChunk(stream, state, chunk, !1);\n      else if (!addToFront)\n        state.reading = !1, maybeReadMore(stream, state);\n      return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n    }\n    function addChunk(stream, state, chunk, addToFront) {\n      if (state.flowing && state.length === 0 && !state.sync && stream.listenerCount(\"data\") > 0) {\n        if (state.multiAwaitDrain)\n          state.awaitDrainWriters.clear();\n        else\n          state.awaitDrainWriters = null;\n        state.dataEmitted = !0, stream.emit(\"data\", chunk);\n      } else {\n        if (state.length += state.objectMode \? 1 : chunk.length, addToFront)\n          state.buffer.unshift(chunk);\n        else\n          state.buffer.push(chunk);\n        if (state.needReadable)\n          emitReadable(stream, state);\n      }\n      maybeReadMore(stream, state);\n    }\n    Readable.prototype.isPaused = function() {\n      const state = this._readableState;\n      return state.paused === !0 || state.flowing === !1;\n    }, Readable.prototype.setEncoding = function(enc) {\n      const decoder = new StringDecoder(enc);\n      this._readableState.decoder = decoder, this._readableState.encoding = this._readableState.decoder.encoding;\n      const buffer = this._readableState.buffer;\n      let content = \"\";\n      for (let i = buffer.length;i > 0; i--)\n        content += decoder.write(buffer.shift());\n      if (content !== \"\")\n        buffer.push(content);\n      return this._readableState.length = content.length, this;\n    };\n    var MAX_HWM = 1073741824;\n    function computeNewHighWaterMark(n) {\n      if (n > MAX_HWM)\n        throw new ERR_OUT_OF_RANGE(\"size\", \"<= 1GiB\", n);\n      else\n        n--, n |= n >>> 1, n |= n >>> 2, n |= n >>> 4, n |= n >>> 8, n |= n >>> 16, n++;\n      return n;\n    }\n    function howMuchToRead(n, state) {\n      if (n <= 0 || state.length === 0 && state.ended)\n        return 0;\n      if (state.objectMode)\n        return 1;\n      if (NumberIsNaN(n)) {\n        if (state.flowing && state.length)\n          return state.buffer.first().length;\n        return state.length;\n      }\n      if (n <= state.length)\n        return n;\n      return state.ended \? state.length : 0;\n    }\n    Readable.prototype.read = function(n) {\n      if (!NumberIsInteger(n))\n        n = NumberParseInt(n, 10);\n      const state = this._readableState, nOrig = n;\n      if (n > state.highWaterMark)\n        state.highWaterMark = computeNewHighWaterMark(n);\n      if (n !== 0)\n        state.emittedReadable = !1;\n      if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 \? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n        if (state.length === 0 && state.ended)\n          endReadable(this);\n        else\n          emitReadable(this, state);\n        return null;\n      }\n      if (n = howMuchToRead(n, state), n === 0 && state.ended) {\n        if (state.length === 0)\n          endReadable(this);\n        return null;\n      }\n      let doRead = state.needReadable;\n      if (state.length === 0 || state.length - n < state.highWaterMark)\n        doRead = !0;\n      if (state.ended || state.reading || state.destroyed || state.errored || !state.constructed)\n        doRead = !1;\n      else if (doRead) {\n        if (state.reading = !0, state.sync = !0, state.length === 0)\n          state.needReadable = !0;\n        try {\n          var result = this._read(state.highWaterMark);\n          if (@isPromise(result)) {\n            const peeked = Bun.peek(result);\n            if (peeked !== result)\n              result = peeked;\n          }\n          if (@isPromise(result) && result\?.then && @isCallable(result.then))\n            result.then(nop, function(err) {\n              errorOrDestroy2(this, err);\n            });\n        } catch (err) {\n          errorOrDestroy2(this, err);\n        }\n        if (state.sync = !1, !state.reading)\n          n = howMuchToRead(nOrig, state);\n      }\n      let ret;\n      if (n > 0)\n        ret = fromList(n, state);\n      else\n        ret = null;\n      if (ret === null)\n        state.needReadable = state.length <= state.highWaterMark, n = 0;\n      else if (state.length -= n, state.multiAwaitDrain)\n        state.awaitDrainWriters.clear();\n      else\n        state.awaitDrainWriters = null;\n      if (state.length === 0) {\n        if (!state.ended)\n          state.needReadable = !0;\n        if (nOrig !== n && state.ended)\n          endReadable(this);\n      }\n      if (ret !== null && !state.errorEmitted && !state.closeEmitted)\n        state.dataEmitted = !0, this.emit(\"data\", ret);\n      return ret;\n    }, Readable.prototype._read = function(n) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_read()\");\n    }, Readable.prototype.pipe = function(dest, pipeOpts) {\n      const src = this, state = this._readableState;\n      if (state.pipes.length === 1) {\n        if (!state.multiAwaitDrain)\n          state.multiAwaitDrain = !0, state.awaitDrainWriters = new SafeSet(state.awaitDrainWriters \? [state.awaitDrainWriters] : []);\n      }\n      state.pipes.push(dest);\n      const endFn = (!pipeOpts || pipeOpts.end !== !1) && dest !== process.stdout && dest !== process.stderr \? onend : unpipe;\n      if (state.endEmitted)\n        runOnNextTick(endFn);\n      else\n        src.once(\"end\", endFn);\n      dest.on(\"unpipe\", onunpipe);\n      function onunpipe(readable, unpipeInfo) {\n        if (readable === src) {\n          if (unpipeInfo && unpipeInfo.hasUnpiped === !1)\n            unpipeInfo.hasUnpiped = !0, cleanup();\n        }\n      }\n      function onend() {\n        dest.end();\n      }\n      let ondrain, cleanedUp = !1;\n      function cleanup() {\n        if (dest.removeListener(\"close\", onclose), dest.removeListener(\"finish\", onfinish), ondrain)\n          dest.removeListener(\"drain\", ondrain);\n        if (dest.removeListener(\"error\", onerror), dest.removeListener(\"unpipe\", onunpipe), src.removeListener(\"end\", onend), src.removeListener(\"end\", unpipe), src.removeListener(\"data\", ondata), cleanedUp = !0, ondrain && state.awaitDrainWriters && (!dest._writableState || dest._writableState.needDrain))\n          ondrain();\n      }\n      function pause() {\n        if (!cleanedUp) {\n          if (state.pipes.length === 1 && state.pipes[0] === dest)\n            state.awaitDrainWriters = dest, state.multiAwaitDrain = !1;\n          else if (state.pipes.length > 1 && state.pipes.includes(dest))\n            state.awaitDrainWriters.add(dest);\n          src.pause();\n        }\n        if (!ondrain)\n          ondrain = pipeOnDrain(src, dest), dest.on(\"drain\", ondrain);\n      }\n      src.on(\"data\", ondata);\n      function ondata(chunk) {\n        if (dest.write(chunk) === !1)\n          pause();\n      }\n      function onerror(er) {\n        if (unpipe(), dest.removeListener(\"error\", onerror), dest.listenerCount(\"error\") === 0) {\n          const s = dest._writableState || dest._readableState;\n          if (s && !s.errorEmitted)\n            errorOrDestroy2(dest, er);\n          else\n            dest.emit(\"error\", er);\n        }\n      }\n      prependListener(dest, \"error\", onerror);\n      function onclose() {\n        dest.removeListener(\"finish\", onfinish), unpipe();\n      }\n      dest.once(\"close\", onclose);\n      function onfinish() {\n        dest.removeListener(\"close\", onclose), unpipe();\n      }\n      dest.once(\"finish\", onfinish);\n      function unpipe() {\n        src.unpipe(dest);\n      }\n      if (dest.emit(\"pipe\", src), dest.writableNeedDrain === !0) {\n        if (state.flowing)\n          pause();\n      } else if (!state.flowing)\n        src.resume();\n      return dest;\n    };\n    function pipeOnDrain(src, dest) {\n      return function pipeOnDrainFunctionResult() {\n        const state = src._readableState;\n        if (state.awaitDrainWriters === dest)\n          state.awaitDrainWriters = null;\n        else if (state.multiAwaitDrain)\n          state.awaitDrainWriters.delete(dest);\n        if ((!state.awaitDrainWriters || state.awaitDrainWriters.size === 0) && src.listenerCount(\"data\"))\n          src.resume();\n      };\n    }\n    Readable.prototype.unpipe = function(dest) {\n      const state = this._readableState, unpipeInfo = {\n        hasUnpiped: !1\n      };\n      if (state.pipes.length === 0)\n        return this;\n      if (!dest) {\n        const dests = state.pipes;\n        state.pipes = [], this.pause();\n        for (let i = 0;i < dests.length; i++)\n          dests[i].emit(\"unpipe\", this, {\n            hasUnpiped: !1\n          });\n        return this;\n      }\n      const index = ArrayPrototypeIndexOf(state.pipes, dest);\n      if (index === -1)\n        return this;\n      if (state.pipes.splice(index, 1), state.pipes.length === 0)\n        this.pause();\n      return dest.emit(\"unpipe\", this, unpipeInfo), this;\n    }, Readable.prototype.addListener = Readable.prototype.on, Readable.prototype.removeListener = function(ev, fn) {\n      const res = Stream.prototype.removeListener.call(this, ev, fn);\n      if (ev === \"readable\")\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    }, Readable.prototype.off = Readable.prototype.removeListener, Readable.prototype.removeAllListeners = function(ev) {\n      const res = Stream.prototype.removeAllListeners.apply(this, arguments);\n      if (ev === \"readable\" || ev === void 0)\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    };\n    function updateReadableListening(self) {\n      const state = self._readableState;\n      if (state.readableListening = self.listenerCount(\"readable\") > 0, state.resumeScheduled && state.paused === !1)\n        state.flowing = !0;\n      else if (self.listenerCount(\"data\") > 0)\n        self.resume();\n      else if (!state.readableListening)\n        state.flowing = null;\n    }\n    function nReadingNextTick(self) {\n      self.read(0);\n    }\n    Readable.prototype.resume = function() {\n      const state = this._readableState;\n      if (!state.flowing)\n        state.flowing = !state.readableListening, resume(this, state);\n      return state.paused = !1, this;\n    }, Readable.prototype.pause = function() {\n      if (this._readableState.flowing !== !1)\n        this._readableState.flowing = !1, this.emit(\"pause\");\n      return this._readableState.paused = !0, this;\n    }, Readable.prototype.wrap = function(stream) {\n      let paused = !1;\n      stream.on(\"data\", (chunk) => {\n        if (!this.push(chunk) && stream.pause)\n          paused = !0, stream.pause();\n      }), stream.on(\"end\", () => {\n        this.push(null);\n      }), stream.on(\"error\", (err) => {\n        errorOrDestroy2(this, err);\n      }), stream.on(\"close\", () => {\n        this.destroy();\n      }), stream.on(\"destroy\", () => {\n        this.destroy();\n      }), this._read = () => {\n        if (paused && stream.resume)\n          paused = !1, stream.resume();\n      };\n      const streamKeys = ObjectKeys(stream);\n      for (let j = 1;j < streamKeys.length; j++) {\n        const i = streamKeys[j];\n        if (this[i] === void 0 && typeof stream[i] === \"function\")\n          this[i] = stream[i].bind(stream);\n      }\n      return this;\n    }, Readable.prototype[SymbolAsyncIterator] = function() {\n      return streamToAsyncIterator(this);\n    }, Readable.prototype.iterator = function(options) {\n      if (options !== void 0)\n        validateObject(options, \"options\");\n      return streamToAsyncIterator(this, options);\n    };\n    function streamToAsyncIterator(stream, options) {\n      if (typeof stream.read !== \"function\")\n        stream = Readable.wrap(stream, {\n          objectMode: !0\n        });\n      const iter = createAsyncIterator(stream, options);\n      return iter.stream = stream, iter;\n    }\n    async function* createAsyncIterator(stream, options) {\n      let callback = nop;\n      function next(resolve) {\n        if (this === stream)\n          callback(), callback = nop;\n        else\n          callback = resolve;\n      }\n      stream.on(\"readable\", next);\n      let error;\n      const cleanup = eos(stream, {\n        writable: !1\n      }, (err) => {\n        error = err \? aggregateTwoErrors(error, err) : null, callback(), callback = nop;\n      });\n      try {\n        while (!0) {\n          const chunk = stream.destroyed \? null : stream.read();\n          if (chunk !== null)\n            yield chunk;\n          else if (error)\n            throw error;\n          else if (error === null)\n            return;\n          else\n            await new Promise2(next);\n        }\n      } catch (err) {\n        throw error = aggregateTwoErrors(error, err), error;\n      } finally {\n        if ((error || (options === null || options === void 0 \? void 0 : options.destroyOnReturn) !== !1) && (error === void 0 || stream._readableState.autoDestroy))\n          destroyImpl.destroyer(stream, null);\n        else\n          stream.off(\"readable\", next), cleanup();\n      }\n    }\n    ObjectDefineProperties(Readable.prototype, {\n      readable: {\n        get() {\n          const r = this._readableState;\n          return !!r && r.readable !== !1 && !r.destroyed && !r.errorEmitted && !r.endEmitted;\n        },\n        set(val) {\n          if (this._readableState)\n            this._readableState.readable = !!val;\n        }\n      },\n      readableDidRead: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.dataEmitted;\n        }\n      },\n      readableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._readableState.readable !== !1 && (this._readableState.destroyed || this._readableState.errored) && !this._readableState.endEmitted);\n        }\n      },\n      readableHighWaterMark: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.highWaterMark;\n        }\n      },\n      readableBuffer: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState && this._readableState.buffer;\n        }\n      },\n      readableFlowing: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.flowing;\n        },\n        set: function(state) {\n          if (this._readableState)\n            this._readableState.flowing = state;\n        }\n      },\n      readableLength: {\n        enumerable: !1,\n        get() {\n          return this._readableState.length;\n        }\n      },\n      readableObjectMode: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.objectMode : !1;\n        }\n      },\n      readableEncoding: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.encoding : null;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.errored : null;\n        }\n      },\n      closed: {\n        get() {\n          return this._readableState \? this._readableState.closed : !1;\n        }\n      },\n      destroyed: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.destroyed : !1;\n        },\n        set(value) {\n          if (!this._readableState)\n            return;\n          this._readableState.destroyed = value;\n        }\n      },\n      readableEnded: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.endEmitted : !1;\n        }\n      }\n    }), Readable._fromList = fromList;\n    function fromList(n, state) {\n      if (state.length === 0)\n        return null;\n      let ret;\n      if (state.objectMode)\n        ret = state.buffer.shift();\n      else if (!n || n >= state.length) {\n        if (state.decoder)\n          ret = state.buffer.join(\"\");\n        else if (state.buffer.length === 1)\n          ret = state.buffer.first();\n        else\n          ret = state.buffer.concat(state.length);\n        state.buffer.clear();\n      } else\n        ret = state.buffer.consume(n, state.decoder);\n      return ret;\n    }\n    function endReadable(stream) {\n      const state = stream._readableState;\n      if (!state.endEmitted)\n        state.ended = !0, runOnNextTick(endReadableNT, state, stream);\n    }\n    function endReadableNT(state, stream) {\n      if (!state.errored && !state.closeEmitted && !state.endEmitted && state.length === 0) {\n        if (state.endEmitted = !0, stream.emit(\"end\"), stream.writable && stream.allowHalfOpen === !1)\n          runOnNextTick(endWritableNT, stream);\n        else if (state.autoDestroy) {\n          const wState = stream._writableState;\n          if (!wState || wState.autoDestroy && (wState.finished || wState.writable === !1))\n            stream.destroy();\n        }\n      }\n    }\n    function endWritableNT(stream) {\n      if (stream.writable && !stream.writableEnded && !stream.destroyed)\n        stream.end();\n    }\n    Readable.from = function(iterable, opts) {\n      return from(Readable, iterable, opts);\n    };\n    var webStreamsAdapters = {\n      newStreamReadableFromReadableStream,\n      newReadableStreamFromStreamReadable(streamReadable, options = {}) {\n        if (typeof streamReadable\?._readableState !== \"object\")\n          throw new ERR_INVALID_ARG_TYPE2(\"streamReadable\", \"stream.Readable\", streamReadable);\n        var { isDestroyed, isReadable } = require_utils();\n        if (isDestroyed(streamReadable) || !isReadable(streamReadable)) {\n          const readable = new ReadableStream;\n          return readable.cancel(), readable;\n        }\n        const { readableObjectMode: objectMode, readableHighWaterMark: highWaterMark } = streamReadable, strategy = ((strategy2) => {\n          if (strategy2)\n            return strategy2;\n          if (objectMode)\n            return new CountQueuingStrategy({ highWaterMark });\n          return { highWaterMark };\n        })(options\?.strategy);\n        let controller;\n        function onData(chunk) {\n          if (controller.enqueue(chunk), controller.desiredSize <= 0)\n            streamReadable.pause();\n        }\n        streamReadable.pause();\n        const cleanup = eos(streamReadable, (error) => {\n          if (error\?.code === \"ERR_STREAM_PREMATURE_CLOSE\")\n            error = new AbortError(void 0, { cause: error });\n          if (cleanup(), streamReadable.on(\"error\", () => {\n          }), error)\n            return controller.error(error);\n          controller.close();\n        });\n        return streamReadable.on(\"data\", onData), new ReadableStream({\n          start(c) {\n            controller = c;\n          },\n          pull() {\n            streamReadable.resume();\n          },\n          cancel(reason) {\n            destroy(streamReadable, reason);\n          }\n        }, strategy);\n      }\n    };\n    Readable.fromWeb = function(readableStream, options) {\n      return webStreamsAdapters.newStreamReadableFromReadableStream(readableStream, options);\n    }, Readable.toWeb = function(streamReadable, options) {\n      return webStreamsAdapters.newReadableStreamFromStreamReadable(streamReadable, options);\n    }, Readable.wrap = function(src, options) {\n      var _ref, _src$readableObjectMo;\n      return new Readable({\n        objectMode: (_ref = (_src$readableObjectMo = src.readableObjectMode) !== null && _src$readableObjectMo !== void 0 \? _src$readableObjectMo : src.objectMode) !== null && _ref !== void 0 \? _ref : !0,\n        ...options,\n        destroy(err, callback) {\n          destroyImpl.destroyer(src, err), callback(err);\n        }\n      }).wrap(src);\n    };\n  }\n}), require_writable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/writable.js\"(exports, module) {\n    var {\n      ArrayPrototypeSlice,\n      Error: Error2,\n      FunctionPrototypeSymbolHasInstance,\n      ObjectDefineProperty,\n      ObjectDefineProperties,\n      ObjectSetPrototypeOf,\n      StringPrototypeToLowerCase,\n      Symbol: Symbol2,\n      SymbolHasInstance\n    } = require_primordials(), Stream = require_legacy().Stream, destroyImpl = require_destroy(), { addAbortSignal } = require_add_abort_signal(), { getHighWaterMark, getDefaultHighWaterMark } = require_state(), {\n      ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n      ERR_METHOD_NOT_IMPLEMENTED,\n      ERR_MULTIPLE_CALLBACK,\n      ERR_STREAM_CANNOT_PIPE,\n      ERR_STREAM_DESTROYED,\n      ERR_STREAM_ALREADY_FINISHED,\n      ERR_STREAM_NULL_VALUES,\n      ERR_STREAM_WRITE_AFTER_END,\n      ERR_UNKNOWN_ENCODING\n    } = require_errors().codes, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    function Writable(options = {}) {\n      const isDuplex = this instanceof require_duplex();\n      if (!isDuplex && !FunctionPrototypeSymbolHasInstance(Writable, this))\n        return new Writable(options);\n      if (this._writableState = new WritableState(options, this, isDuplex), options) {\n        if (typeof options.write === \"function\")\n          this._write = options.write;\n        if (typeof options.writev === \"function\")\n          this._writev = options.writev;\n        if (typeof options.destroy === \"function\")\n          this._destroy = options.destroy;\n        if (typeof options.final === \"function\")\n          this._final = options.final;\n        if (typeof options.construct === \"function\")\n          this._construct = options.construct;\n        if (options.signal)\n          addAbortSignal(options.signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        const state = this._writableState;\n        if (!state.writing)\n          clearBuffer(this, state);\n        finishMaybe(this, state);\n      });\n    }\n    Writable.prototype = {}, ObjectSetPrototypeOf(Writable.prototype, Stream.prototype), ObjectSetPrototypeOf(Writable, Stream), module.exports = Writable;\n    function nop() {\n    }\n    var kOnFinished = Symbol2(\"kOnFinished\");\n    function WritableState(options, stream, isDuplex) {\n      if (typeof isDuplex !== \"boolean\")\n        isDuplex = stream instanceof require_duplex();\n      if (this.objectMode = !!(options && options.objectMode), isDuplex)\n        this.objectMode = this.objectMode || !!(options && options.writableObjectMode);\n      this.highWaterMark = options \? getHighWaterMark(this, options, \"writableHighWaterMark\", isDuplex) : getDefaultHighWaterMark(!1), this.finalCalled = !1, this.needDrain = !1, this.ending = !1, this.ended = !1, this.finished = !1, this.destroyed = !1;\n      const noDecode = !!(options && options.decodeStrings === !1);\n      this.decodeStrings = !noDecode, this.defaultEncoding = options && options.defaultEncoding || \"utf8\", this.length = 0, this.writing = !1, this.corked = 0, this.sync = !0, this.bufferProcessing = !1, this.onwrite = onwrite.bind(void 0, stream), this.writecb = null, this.writelen = 0, this.afterWriteTickInfo = null, resetBuffer(this), this.pendingcb = 0, this.constructed = !0, this.prefinished = !1, this.errorEmitted = !1, this.emitClose = !options || options.emitClose !== !1, this.autoDestroy = !options || options.autoDestroy !== !1, this.errored = null, this.closed = !1, this.closeEmitted = !1, this[kOnFinished] = [];\n    }\n    WritableState.prototype = {};\n    function resetBuffer(state) {\n      state.buffered = [], state.bufferedIndex = 0, state.allBuffers = !0, state.allNoop = !0;\n    }\n    WritableState.prototype.getBuffer = function getBuffer() {\n      return ArrayPrototypeSlice(this.buffered, this.bufferedIndex);\n    }, ObjectDefineProperty(WritableState.prototype, \"bufferedRequestCount\", {\n      get() {\n        return this.buffered.length - this.bufferedIndex;\n      }\n    }), ObjectDefineProperty(Writable, SymbolHasInstance, {\n      value: function(object) {\n        if (FunctionPrototypeSymbolHasInstance(this, object))\n          return !0;\n        if (this !== Writable)\n          return !1;\n        return object && object._writableState instanceof WritableState;\n      }\n    }), Writable.prototype.pipe = function() {\n      errorOrDestroy2(this, new ERR_STREAM_CANNOT_PIPE);\n    };\n    function _write(stream, chunk, encoding, cb) {\n      const state = stream._writableState;\n      if (typeof encoding === \"function\")\n        cb = encoding, encoding = state.defaultEncoding;\n      else {\n        if (!encoding)\n          encoding = state.defaultEncoding;\n        else if (encoding !== \"buffer\" && !Buffer.isEncoding(encoding))\n          throw new ERR_UNKNOWN_ENCODING(encoding);\n        if (typeof cb !== \"function\")\n          cb = nop;\n      }\n      if (chunk === null)\n        throw new ERR_STREAM_NULL_VALUES;\n      else if (!state.objectMode)\n        if (typeof chunk === \"string\") {\n          if (state.decodeStrings !== !1)\n            chunk = Buffer.from(chunk, encoding), encoding = \"buffer\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"buffer\";\n        else if (Stream._isUint8Array(chunk))\n          chunk = Stream._uint8ArrayToBuffer(chunk), encoding = \"buffer\";\n        else\n          throw new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      let err;\n      if (state.ending)\n        err = new ERR_STREAM_WRITE_AFTER_END;\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"write\");\n      if (err)\n        return runOnNextTick(cb, err), errorOrDestroy2(stream, err, !0), err;\n      return state.pendingcb++, writeOrBuffer(stream, state, chunk, encoding, cb);\n    }\n    Writable.prototype.write = function(chunk, encoding, cb) {\n      return _write(this, chunk, encoding, cb) === !0;\n    }, Writable.prototype.cork = function() {\n      this._writableState.corked++;\n    }, Writable.prototype.uncork = function() {\n      const state = this._writableState;\n      if (state.corked) {\n        if (state.corked--, !state.writing)\n          clearBuffer(this, state);\n      }\n    }, Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n      if (typeof encoding === \"string\")\n        encoding = StringPrototypeToLowerCase(encoding);\n      if (!Buffer.isEncoding(encoding))\n        throw new ERR_UNKNOWN_ENCODING(encoding);\n      return this._writableState.defaultEncoding = encoding, this;\n    };\n    function writeOrBuffer(stream, state, chunk, encoding, callback) {\n      const len = state.objectMode \? 1 : chunk.length;\n      state.length += len;\n      const ret = state.length < state.highWaterMark;\n      if (!ret)\n        state.needDrain = !0;\n      if (state.writing || state.corked || state.errored || !state.constructed) {\n        if (state.buffered.push({\n          chunk,\n          encoding,\n          callback\n        }), state.allBuffers && encoding !== \"buffer\")\n          state.allBuffers = !1;\n        if (state.allNoop && callback !== nop)\n          state.allNoop = !1;\n      } else\n        state.writelen = len, state.writecb = callback, state.writing = !0, state.sync = !0, stream._write(chunk, encoding, state.onwrite), state.sync = !1;\n      return ret && !state.errored && !state.destroyed;\n    }\n    function doWrite(stream, state, writev, len, chunk, encoding, cb) {\n      if (state.writelen = len, state.writecb = cb, state.writing = !0, state.sync = !0, state.destroyed)\n        state.onwrite(new ERR_STREAM_DESTROYED(\"write\"));\n      else if (writev)\n        stream._writev(chunk, state.onwrite);\n      else\n        stream._write(chunk, encoding, state.onwrite);\n      state.sync = !1;\n    }\n    function onwriteError(stream, state, er, cb) {\n      --state.pendingcb, cb(er), errorBuffer(state), errorOrDestroy2(stream, er);\n    }\n    function onwrite(stream, er) {\n      const state = stream._writableState, sync = state.sync, cb = state.writecb;\n      if (typeof cb !== \"function\") {\n        errorOrDestroy2(stream, new ERR_MULTIPLE_CALLBACK);\n        return;\n      }\n      if (state.writing = !1, state.writecb = null, state.length -= state.writelen, state.writelen = 0, er) {\n        if (Error.captureStackTrace(er), !state.errored)\n          state.errored = er;\n        if (stream._readableState && !stream._readableState.errored)\n          stream._readableState.errored = er;\n        if (sync)\n          runOnNextTick(onwriteError, stream, state, er, cb);\n        else\n          onwriteError(stream, state, er, cb);\n      } else {\n        if (state.buffered.length > state.bufferedIndex)\n          clearBuffer(stream, state);\n        if (sync)\n          if (state.afterWriteTickInfo !== null && state.afterWriteTickInfo.cb === cb)\n            state.afterWriteTickInfo.count++;\n          else\n            state.afterWriteTickInfo = {\n              count: 1,\n              cb,\n              stream,\n              state\n            }, runOnNextTick(afterWriteTick, state.afterWriteTickInfo);\n        else\n          afterWrite(stream, state, 1, cb);\n      }\n    }\n    function afterWriteTick({ stream, state, count, cb }) {\n      return state.afterWriteTickInfo = null, afterWrite(stream, state, count, cb);\n    }\n    function afterWrite(stream, state, count, cb) {\n      if (!state.ending && !stream.destroyed && state.length === 0 && state.needDrain)\n        state.needDrain = !1, stream.emit(\"drain\");\n      while (count-- > 0)\n        state.pendingcb--, cb();\n      if (state.destroyed)\n        errorBuffer(state);\n      finishMaybe(stream, state);\n    }\n    function errorBuffer(state) {\n      if (state.writing)\n        return;\n      for (let n = state.bufferedIndex;n < state.buffered.length; ++n) {\n        var _state$errored;\n        const { chunk, callback } = state.buffered[n], len = state.objectMode \? 1 : chunk.length;\n        state.length -= len, callback((_state$errored = state.errored) !== null && _state$errored !== void 0 \? _state$errored : new ERR_STREAM_DESTROYED(\"write\"));\n      }\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++) {\n        var _state$errored2;\n        onfinishCallbacks[i]((_state$errored2 = state.errored) !== null && _state$errored2 !== void 0 \? _state$errored2 : new ERR_STREAM_DESTROYED(\"end\"));\n      }\n      resetBuffer(state);\n    }\n    function clearBuffer(stream, state) {\n      if (state.corked || state.bufferProcessing || state.destroyed || !state.constructed)\n        return;\n      const { buffered, bufferedIndex, objectMode } = state, bufferedLength = buffered.length - bufferedIndex;\n      if (!bufferedLength)\n        return;\n      let i = bufferedIndex;\n      if (state.bufferProcessing = !0, bufferedLength > 1 && stream._writev) {\n        state.pendingcb -= bufferedLength - 1;\n        const callback = state.allNoop \? nop : (err) => {\n          for (let n = i;n < buffered.length; ++n)\n            buffered[n].callback(err);\n        }, chunks = state.allNoop && i === 0 \? buffered : ArrayPrototypeSlice(buffered, i);\n        chunks.allBuffers = state.allBuffers, doWrite(stream, state, !0, state.length, chunks, \"\", callback), resetBuffer(state);\n      } else {\n        do {\n          const { chunk, encoding, callback } = buffered[i];\n          buffered[i++] = null;\n          const len = objectMode \? 1 : chunk.length;\n          doWrite(stream, state, !1, len, chunk, encoding, callback);\n        } while (i < buffered.length && !state.writing);\n        if (i === buffered.length)\n          resetBuffer(state);\n        else if (i > 256)\n          buffered.splice(0, i), state.bufferedIndex = 0;\n        else\n          state.bufferedIndex = i;\n      }\n      state.bufferProcessing = !1;\n    }\n    Writable.prototype._write = function(chunk, encoding, cb) {\n      if (this._writev)\n        this._writev([\n          {\n            chunk,\n            encoding\n          }\n        ], cb);\n      else\n        throw new ERR_METHOD_NOT_IMPLEMENTED(\"_write()\");\n    }, Writable.prototype._writev = null, Writable.prototype.end = function(chunk, encoding, cb, native = !1) {\n      const state = this._writableState;\n      if (typeof chunk === \"function\")\n        cb = chunk, chunk = null, encoding = null;\n      else if (typeof encoding === \"function\")\n        cb = encoding, encoding = null;\n      let err;\n      if (chunk !== null && chunk !== void 0) {\n        let ret;\n        if (!native)\n          ret = _write(this, chunk, encoding);\n        else\n          ret = this.write(chunk, encoding);\n        if (ret instanceof Error2)\n          err = ret;\n      }\n      if (state.corked)\n        state.corked = 1, this.uncork();\n      if (err)\n        this.emit(\"error\", err);\n      else if (!state.errored && !state.ending)\n        state.ending = !0, finishMaybe(this, state, !0), state.ended = !0;\n      else if (state.finished)\n        err = new ERR_STREAM_ALREADY_FINISHED(\"end\");\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"end\");\n      if (typeof cb === \"function\")\n        if (err || state.finished)\n          runOnNextTick(cb, err);\n        else\n          state[kOnFinished].push(cb);\n      return this;\n    };\n    function needFinish(state, tag) {\n      var needFinish2 = state.ending && !state.destroyed && state.constructed && state.length === 0 && !state.errored && state.buffered.length === 0 && !state.finished && !state.writing && !state.errorEmitted && !state.closeEmitted;\n      return needFinish2;\n    }\n    function callFinal(stream, state) {\n      let called = !1;\n      function onFinish(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : ERR_MULTIPLE_CALLBACK());\n          return;\n        }\n        if (called = !0, state.pendingcb--, err) {\n          const onfinishCallbacks = state[kOnFinished].splice(0);\n          for (let i = 0;i < onfinishCallbacks.length; i++)\n            onfinishCallbacks[i](err);\n          errorOrDestroy2(stream, err, state.sync);\n        } else if (needFinish(state))\n          state.prefinished = !0, stream.emit(\"prefinish\"), state.pendingcb++, runOnNextTick(finish, stream, state);\n      }\n      state.sync = !0, state.pendingcb++;\n      try {\n        stream._final(onFinish);\n      } catch (err) {\n        onFinish(err);\n      }\n      state.sync = !1;\n    }\n    function prefinish(stream, state) {\n      if (!state.prefinished && !state.finalCalled)\n        if (typeof stream._final === \"function\" && !state.destroyed)\n          state.finalCalled = !0, callFinal(stream, state);\n        else\n          state.prefinished = !0, stream.emit(\"prefinish\");\n    }\n    function finishMaybe(stream, state, sync) {\n      if (!needFinish(state, stream.__id))\n        return;\n      if (prefinish(stream, state), state.pendingcb === 0) {\n        if (sync)\n          state.pendingcb++, runOnNextTick((stream2, state2) => {\n            if (needFinish(state2))\n              finish(stream2, state2);\n            else\n              state2.pendingcb--;\n          }, stream, state);\n        else if (needFinish(state))\n          state.pendingcb++, finish(stream, state);\n      }\n    }\n    function finish(stream, state) {\n      state.pendingcb--, state.finished = !0;\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++)\n        onfinishCallbacks[i]();\n      if (stream.emit(\"finish\"), state.autoDestroy) {\n        const rState = stream._readableState;\n        if (!rState || rState.autoDestroy && (rState.endEmitted || rState.readable === !1))\n          stream.destroy();\n      }\n    }\n    ObjectDefineProperties(Writable.prototype, {\n      closed: {\n        get() {\n          return this._writableState \? this._writableState.closed : !1;\n        }\n      },\n      destroyed: {\n        get() {\n          return this._writableState \? this._writableState.destroyed : !1;\n        },\n        set(value) {\n          if (this._writableState)\n            this._writableState.destroyed = value;\n        }\n      },\n      writable: {\n        get() {\n          const w = this._writableState;\n          return !!w && w.writable !== !1 && !w.destroyed && !w.errored && !w.ending && !w.ended;\n        },\n        set(val) {\n          if (this._writableState)\n            this._writableState.writable = !!val;\n        }\n      },\n      writableFinished: {\n        get() {\n          return this._writableState \? this._writableState.finished : !1;\n        }\n      },\n      writableObjectMode: {\n        get() {\n          return this._writableState \? this._writableState.objectMode : !1;\n        }\n      },\n      writableBuffer: {\n        get() {\n          return this._writableState && this._writableState.getBuffer();\n        }\n      },\n      writableEnded: {\n        get() {\n          return this._writableState \? this._writableState.ending : !1;\n        }\n      },\n      writableNeedDrain: {\n        get() {\n          const wState = this._writableState;\n          if (!wState)\n            return !1;\n          return !wState.destroyed && !wState.ending && wState.needDrain;\n        }\n      },\n      writableHighWaterMark: {\n        get() {\n          return this._writableState && this._writableState.highWaterMark;\n        }\n      },\n      writableCorked: {\n        get() {\n          return this._writableState \? this._writableState.corked : 0;\n        }\n      },\n      writableLength: {\n        get() {\n          return this._writableState && this._writableState.length;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._writableState \? this._writableState.errored : null;\n        }\n      },\n      writableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._writableState.writable !== !1 && (this._writableState.destroyed || this._writableState.errored) && !this._writableState.finished);\n        }\n      }\n    });\n    var destroy2 = destroyImpl.destroy;\n    Writable.prototype.destroy = function(err, cb) {\n      const state = this._writableState;\n      if (!state.destroyed && (state.bufferedIndex < state.buffered.length || state[kOnFinished].length))\n        runOnNextTick(errorBuffer, state);\n      return destroy2.call(this, err, cb), this;\n    }, Writable.prototype._undestroy = destroyImpl.undestroy, Writable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Writable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    };\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Writable.fromWeb = function(writableStream, options) {\n      return lazyWebStreams().newStreamWritableFromWritableStream(writableStream, options);\n    }, Writable.toWeb = function(streamWritable) {\n      return lazyWebStreams().newWritableStreamFromStreamWritable(streamWritable);\n    };\n  }\n}), require_duplexify = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplexify.js\"(exports, module) {\n    var {\n      isReadable,\n      isWritable,\n      isIterable,\n      isNodeStream,\n      isReadableNodeStream,\n      isWritableNodeStream,\n      isDuplexNodeStream\n    } = require_utils(), eos = require_end_of_stream(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE }\n    } = require_errors(), { destroyer } = require_destroy(), Duplex = require_duplex(), Readable = require_readable(), { createDeferredPromise } = require_util(), from = require_from(), isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    }, { FunctionPrototypeCall } = require_primordials();\n\n    class Duplexify extends Duplex {\n      constructor(options) {\n        super(options);\n        if ((options === null || options === void 0 \? void 0 : options.readable) === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if ((options === null || options === void 0 \? void 0 : options.writable) === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      }\n    }\n    module.exports = function duplexify(body, name) {\n      if (isDuplexNodeStream(body))\n        return body;\n      if (isReadableNodeStream(body))\n        return _duplexify({\n          readable: body\n        });\n      if (isWritableNodeStream(body))\n        return _duplexify({\n          writable: body\n        });\n      if (isNodeStream(body))\n        return _duplexify({\n          writable: !1,\n          readable: !1\n        });\n      if (typeof body === \"function\") {\n        const { value, write, final, destroy: destroy2 } = fromAsyncGen(body);\n        if (isIterable(value))\n          return from(Duplexify, value, {\n            objectMode: !0,\n            write,\n            final,\n            destroy: destroy2\n          });\n        const then2 = value === null || value === void 0 \? void 0 : value.then;\n        if (typeof then2 === \"function\") {\n          let d;\n          const promise = FunctionPrototypeCall(then2, value, (val) => {\n            if (val != null)\n              throw new ERR_INVALID_RETURN_VALUE(\"nully\", \"body\", val);\n          }, (err) => {\n            destroyer(d, err);\n          });\n          return d = new Duplexify({\n            objectMode: !0,\n            readable: !1,\n            write,\n            final(cb) {\n              final(async () => {\n                try {\n                  await promise, runOnNextTick(cb, null);\n                } catch (err) {\n                  runOnNextTick(cb, err);\n                }\n              });\n            },\n            destroy: destroy2\n          });\n        }\n        throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or AsyncFunction\", name, value);\n      }\n      if (isBlob(body))\n        return duplexify(body.arrayBuffer());\n      if (isIterable(body))\n        return from(Duplexify, body, {\n          objectMode: !0,\n          writable: !1\n        });\n      if (typeof (body === null || body === void 0 \? void 0 : body.writable) === \"object\" || typeof (body === null || body === void 0 \? void 0 : body.readable) === \"object\") {\n        const readable = body !== null && body !== void 0 && body.readable \? isReadableNodeStream(body === null || body === void 0 \? void 0 : body.readable) \? body === null || body === void 0 \? void 0 : body.readable : duplexify(body.readable) : void 0, writable = body !== null && body !== void 0 && body.writable \? isWritableNodeStream(body === null || body === void 0 \? void 0 : body.writable) \? body === null || body === void 0 \? void 0 : body.writable : duplexify(body.writable) : void 0;\n        return _duplexify({\n          readable,\n          writable\n        });\n      }\n      const then = body === null || body === void 0 \? void 0 : body.then;\n      if (typeof then === \"function\") {\n        let d;\n        return FunctionPrototypeCall(then, body, (val) => {\n          if (val != null)\n            d.push(val);\n          d.push(null);\n        }, (err) => {\n          destroyer(d, err);\n        }), d = new Duplexify({\n          objectMode: !0,\n          writable: !1,\n          read() {\n          }\n        });\n      }\n      throw new ERR_INVALID_ARG_TYPE2(name, [\n        \"Blob\",\n        \"ReadableStream\",\n        \"WritableStream\",\n        \"Stream\",\n        \"Iterable\",\n        \"AsyncIterable\",\n        \"Function\",\n        \"{ readable, writable } pair\",\n        \"Promise\"\n      ], body);\n    };\n    function fromAsyncGen(fn) {\n      let { promise, resolve } = createDeferredPromise();\n      const ac = new AbortController, signal = ac.signal;\n      return {\n        value: fn(async function* () {\n          while (!0) {\n            const _promise = promise;\n            promise = null;\n            const { chunk, done, cb } = await _promise;\n            if (runOnNextTick(cb), done)\n              return;\n            if (signal.aborted)\n              throw new AbortError2(void 0, {\n                cause: signal.reason\n              });\n            ({ promise, resolve } = createDeferredPromise()), yield chunk;\n          }\n        }(), {\n          signal\n        }),\n        write(chunk, encoding, cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            chunk,\n            done: !1,\n            cb\n          });\n        },\n        final(cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            done: !0,\n            cb\n          });\n        },\n        destroy(err, cb) {\n          ac.abort(), cb(err);\n        }\n      };\n    }\n    function _duplexify(pair) {\n      const r = pair.readable && typeof pair.readable.read !== \"function\" \? Readable.wrap(pair.readable) : pair.readable, w = pair.writable;\n      let readable = !!isReadable(r), writable = !!isWritable(w), ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      if (d = new Duplexify({\n        readableObjectMode: !!(r !== null && r !== void 0 && r.readableObjectMode),\n        writableObjectMode: !!(w !== null && w !== void 0 && w.writableObjectMode),\n        readable,\n        writable\n      }), writable)\n        eos(w, (err) => {\n          if (writable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), d._write = function(chunk, encoding, callback) {\n          if (w.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          w.end(), onfinish = callback;\n        }, w.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), w.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        eos(r, (err) => {\n          if (readable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), r.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), r.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = r.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(w, err), destroyer(r, err);\n      }, d;\n    }\n  }\n}), require_duplex = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplex.js\"(exports, module) {\n    var { ObjectDefineProperties, ObjectGetOwnPropertyDescriptor, ObjectKeys, ObjectSetPrototypeOf } = require_primordials(), Readable = require_readable();\n    function Duplex(options) {\n      if (!(this instanceof Duplex))\n        return new Duplex(options);\n      if (Readable.call(this, options), Writable.call(this, options), options) {\n        if (this.allowHalfOpen = options.allowHalfOpen !== !1, options.readable === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if (options.writable === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      } else\n        this.allowHalfOpen = !0;\n    }\n    Duplex.prototype = {}, module.exports = Duplex, ObjectSetPrototypeOf(Duplex.prototype, Readable.prototype), ObjectSetPrototypeOf(Duplex, Readable);\n    for (var method in Writable.prototype)\n      if (!Duplex.prototype[method])\n        Duplex.prototype[method] = Writable.prototype[method];\n    ObjectDefineProperties(Duplex.prototype, {\n      writable: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writable\"),\n      writableHighWaterMark: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableHighWaterMark\"),\n      writableObjectMode: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableObjectMode\"),\n      writableBuffer: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableBuffer\"),\n      writableLength: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableLength\"),\n      writableFinished: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableFinished\"),\n      writableCorked: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableCorked\"),\n      writableEnded: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableEnded\"),\n      writableNeedDrain: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableNeedDrain\"),\n      destroyed: {\n        get() {\n          if (this._readableState === void 0 || this._writableState === void 0)\n            return !1;\n          return this._readableState.destroyed && this._writableState.destroyed;\n        },\n        set(value) {\n          if (this._readableState && this._writableState)\n            this._readableState.destroyed = value, this._writableState.destroyed = value;\n        }\n      }\n    });\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Duplex.fromWeb = function(pair, options) {\n      return lazyWebStreams().newStreamDuplexFromReadableWritablePair(pair, options);\n    }, Duplex.toWeb = function(duplex) {\n      return lazyWebStreams().newReadableWritablePairFromDuplex(duplex);\n    };\n    var duplexify;\n    Duplex.from = function(body) {\n      if (!duplexify)\n        duplexify = require_duplexify();\n      return duplexify(body, \"body\");\n    };\n  }\n}), require_transform = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/transform.js\"(exports, module) {\n    var { ObjectSetPrototypeOf, Symbol: Symbol2 } = require_primordials(), { ERR_METHOD_NOT_IMPLEMENTED } = require_errors().codes, Duplex = require_duplex();\n    function Transform(options) {\n      if (!(this instanceof Transform))\n        return new Transform(options);\n      if (Duplex.call(this, options), this._readableState.sync = !1, this[kCallback] = null, options) {\n        if (typeof options.transform === \"function\")\n          this._transform = options.transform;\n        if (typeof options.flush === \"function\")\n          this._flush = options.flush;\n      }\n      this.on(\"prefinish\", prefinish.bind(this));\n    }\n    Transform.prototype = {}, ObjectSetPrototypeOf(Transform.prototype, Duplex.prototype), ObjectSetPrototypeOf(Transform, Duplex), module.exports = Transform;\n    var kCallback = Symbol2(\"kCallback\");\n    function final(cb) {\n      if (typeof this._flush === \"function\" && !this.destroyed)\n        this._flush((er, data) => {\n          if (er) {\n            if (cb)\n              cb(er);\n            else\n              this.destroy(er);\n            return;\n          }\n          if (data != null)\n            this.push(data);\n          if (this.push(null), cb)\n            cb();\n        });\n      else if (this.push(null), cb)\n        cb();\n    }\n    function prefinish() {\n      if (this._final !== final)\n        final.call(this);\n    }\n    Transform.prototype._final = final, Transform.prototype._transform = function(chunk, encoding, callback) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_transform()\");\n    }, Transform.prototype._write = function(chunk, encoding, callback) {\n      const rState = this._readableState, wState = this._writableState, length = rState.length;\n      this._transform(chunk, encoding, (err, val) => {\n        if (err) {\n          callback(err);\n          return;\n        }\n        if (val != null)\n          this.push(val);\n        if (wState.ended || length === rState.length || rState.length < rState.highWaterMark || rState.highWaterMark === 0 || rState.length === 0)\n          callback();\n        else\n          this[kCallback] = callback;\n      });\n    }, Transform.prototype._read = function() {\n      if (this[kCallback]) {\n        const callback = this[kCallback];\n        this[kCallback] = null, callback();\n      }\n    };\n  }\n}), require_passthrough = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/passthrough.js\"(exports, module) {\n    var { ObjectSetPrototypeOf } = require_primordials(), Transform = require_transform();\n    function PassThrough(options) {\n      if (!(this instanceof PassThrough))\n        return new PassThrough(options);\n      Transform.call(this, options);\n    }\n    PassThrough.prototype = {}, ObjectSetPrototypeOf(PassThrough.prototype, Transform.prototype), ObjectSetPrototypeOf(PassThrough, Transform), PassThrough.prototype._transform = function(chunk, encoding, cb) {\n      cb(null, chunk);\n    }, module.exports = PassThrough;\n  }\n}), require_pipeline = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/pipeline.js\"(exports, module) {\n    var { ArrayIsArray: ArrayIsArray2, Promise: Promise2, SymbolAsyncIterator } = require_primordials(), eos = require_end_of_stream(), { once } = require_util(), destroyImpl = require_destroy(), Duplex = require_duplex(), {\n      aggregateTwoErrors,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE, ERR_MISSING_ARGS, ERR_STREAM_DESTROYED },\n      AbortError: AbortError2\n    } = require_errors(), { validateFunction, validateAbortSignal } = require_validators(), { isIterable, isReadable, isReadableNodeStream, isNodeStream } = require_utils(), PassThrough, Readable;\n    function destroyer(stream, reading, writing) {\n      let finished = !1;\n      stream.on(\"close\", () => {\n        finished = !0;\n      });\n      const cleanup = eos(stream, {\n        readable: reading,\n        writable: writing\n      }, (err) => {\n        finished = !err;\n      });\n      return {\n        destroy: (err) => {\n          if (finished)\n            return;\n          finished = !0, destroyImpl.destroyer(stream, err || new ERR_STREAM_DESTROYED(\"pipe\"));\n        },\n        cleanup\n      };\n    }\n    function popCallback(streams) {\n      return validateFunction(streams[streams.length - 1], \"streams[stream.length - 1]\"), streams.pop();\n    }\n    function makeAsyncIterable(val) {\n      if (isIterable(val))\n        return val;\n      else if (isReadableNodeStream(val))\n        return fromReadable(val);\n      throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], val);\n    }\n    async function* fromReadable(val) {\n      if (!Readable)\n        Readable = require_readable();\n      yield* Readable.prototype[SymbolAsyncIterator].call(val);\n    }\n    async function pump(iterable, writable, finish, { end }) {\n      let error, onresolve = null;\n      const resume = (err) => {\n        if (err)\n          error = err;\n        if (onresolve) {\n          const callback = onresolve;\n          onresolve = null, callback();\n        }\n      }, wait = () => new Promise2((resolve, reject) => {\n        if (error)\n          reject(error);\n        else\n          onresolve = () => {\n            if (error)\n              reject(error);\n            else\n              resolve();\n          };\n      });\n      writable.on(\"drain\", resume);\n      const cleanup = eos(writable, {\n        readable: !1\n      }, resume);\n      try {\n        if (writable.writableNeedDrain)\n          await wait();\n        for await (let chunk of iterable)\n          if (!writable.write(chunk))\n            await wait();\n        if (end)\n          writable.end();\n        await wait(), finish();\n      } catch (err) {\n        finish(error !== err \? aggregateTwoErrors(error, err) : err);\n      } finally {\n        cleanup(), writable.off(\"drain\", resume);\n      }\n    }\n    function pipeline(...streams) {\n      return pipelineImpl(streams, once(popCallback(streams)));\n    }\n    function pipelineImpl(streams, callback, opts) {\n      if (streams.length === 1 && ArrayIsArray2(streams[0]))\n        streams = streams[0];\n      if (streams.length < 2)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      const ac = new AbortController, signal = ac.signal, outerSignal = opts === null || opts === void 0 \? void 0 : opts.signal, lastStreamCleanup = [];\n      validateAbortSignal(outerSignal, \"options.signal\");\n      function abort() {\n        finishImpl(new AbortError2);\n      }\n      outerSignal === null || outerSignal === void 0 || outerSignal.addEventListener(\"abort\", abort);\n      let error, value;\n      const destroys = [];\n      let finishCount = 0;\n      function finish(err) {\n        finishImpl(err, --finishCount === 0);\n      }\n      function finishImpl(err, final) {\n        if (err && (!error || error.code === \"ERR_STREAM_PREMATURE_CLOSE\"))\n          error = err;\n        if (!error && !final)\n          return;\n        while (destroys.length)\n          destroys.shift()(error);\n        if (outerSignal === null || outerSignal === void 0 || outerSignal.removeEventListener(\"abort\", abort), ac.abort(), final) {\n          if (!error)\n            lastStreamCleanup.forEach((fn) => fn());\n          runOnNextTick(callback, error, value);\n        }\n      }\n      let ret;\n      for (let i = 0;i < streams.length; i++) {\n        const stream = streams[i], reading = i < streams.length - 1, writing = i > 0, end = reading || (opts === null || opts === void 0 \? void 0 : opts.end) !== !1, isLastStream = i === streams.length - 1;\n        if (isNodeStream(stream)) {\n          let onError = function(err) {\n            if (err && err.name !== \"AbortError\" && err.code !== \"ERR_STREAM_PREMATURE_CLOSE\")\n              finish(err);\n          };\n          if (end) {\n            const { destroy: destroy2, cleanup } = destroyer(stream, reading, writing);\n            if (destroys.push(destroy2), isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n          if (stream.on(\"error\", onError), isReadable(stream) && isLastStream)\n            lastStreamCleanup.push(() => {\n              stream.removeListener(\"error\", onError);\n            });\n        }\n        if (i === 0)\n          if (typeof stream === \"function\") {\n            if (ret = stream({\n              signal\n            }), !isIterable(ret))\n              throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or Stream\", \"source\", ret);\n          } else if (isIterable(stream) || isReadableNodeStream(stream))\n            ret = stream;\n          else\n            ret = Duplex.from(stream);\n        else if (typeof stream === \"function\")\n          if (ret = makeAsyncIterable(ret), ret = stream(ret, {\n            signal\n          }), reading) {\n            if (!isIterable(ret, !0))\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable\", `transform[${i - 1}]`, ret);\n          } else {\n            var _ret;\n            if (!PassThrough)\n              PassThrough = require_passthrough();\n            const pt = new PassThrough({\n              objectMode: !0\n            }), then = (_ret = ret) === null || _ret === void 0 \? void 0 : _ret.then;\n            if (typeof then === \"function\")\n              finishCount++, then.call(ret, (val) => {\n                if (value = val, val != null)\n                  pt.write(val);\n                if (end)\n                  pt.end();\n                runOnNextTick(finish);\n              }, (err) => {\n                pt.destroy(err), runOnNextTick(finish, err);\n              });\n            else if (isIterable(ret, !0))\n              finishCount++, pump(ret, pt, finish, {\n                end\n              });\n            else\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable or Promise\", \"destination\", ret);\n            ret = pt;\n            const { destroy: destroy2, cleanup } = destroyer(ret, !1, !0);\n            if (destroys.push(destroy2), isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n        else if (isNodeStream(stream)) {\n          if (isReadableNodeStream(ret)) {\n            finishCount += 2;\n            const cleanup = pipe(ret, stream, finish, {\n              end\n            });\n            if (isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          } else if (isIterable(ret))\n            finishCount++, pump(ret, stream, finish, {\n              end\n            });\n          else\n            throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], ret);\n          ret = stream;\n        } else\n          ret = Duplex.from(stream);\n      }\n      if (signal !== null && signal !== void 0 && signal.aborted || outerSignal !== null && outerSignal !== void 0 && outerSignal.aborted)\n        runOnNextTick(abort);\n      return ret;\n    }\n    function pipe(src, dst, finish, { end }) {\n      if (src.pipe(dst, {\n        end\n      }), end)\n        src.once(\"end\", () => dst.end());\n      else\n        finish();\n      return eos(src, {\n        readable: !0,\n        writable: !1\n      }, (err) => {\n        const rState = src._readableState;\n        if (err && err.code === \"ERR_STREAM_PREMATURE_CLOSE\" && rState && rState.ended && !rState.errored && !rState.errorEmitted)\n          src.once(\"end\", finish).once(\"error\", finish);\n        else\n          finish(err);\n      }), eos(dst, {\n        readable: !1,\n        writable: !0\n      }, finish);\n    }\n    module.exports = {\n      pipelineImpl,\n      pipeline\n    };\n  }\n}), require_compose = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/compose.js\"(exports, module) {\n    var { pipeline } = require_pipeline(), Duplex = require_duplex(), { destroyer } = require_destroy(), { isNodeStream, isReadable, isWritable } = require_utils(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_MISSING_ARGS }\n    } = require_errors();\n    module.exports = function compose(...streams) {\n      if (streams.length === 0)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      if (streams.length === 1)\n        return Duplex.from(streams[0]);\n      const orgStreams = [...streams];\n      if (typeof streams[0] === \"function\")\n        streams[0] = Duplex.from(streams[0]);\n      if (typeof streams[streams.length - 1] === \"function\") {\n        const idx = streams.length - 1;\n        streams[idx] = Duplex.from(streams[idx]);\n      }\n      for (let n = 0;n < streams.length; ++n) {\n        if (!isNodeStream(streams[n]))\n          continue;\n        if (n < streams.length - 1 && !isReadable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be readable\");\n        if (n > 0 && !isWritable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be writable\");\n      }\n      let ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      const head = streams[0], tail = pipeline(streams, onfinished), writable = !!isWritable(head), readable = !!isReadable(tail);\n      if (d = new Duplex({\n        writableObjectMode: !!(head !== null && head !== void 0 && head.writableObjectMode),\n        readableObjectMode: !!(tail !== null && tail !== void 0 && tail.writableObjectMode),\n        writable,\n        readable\n      }), writable)\n        d._write = function(chunk, encoding, callback) {\n          if (head.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          head.end(), onfinish = callback;\n        }, head.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), tail.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        tail.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), tail.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = tail.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(tail, err);\n      }, d;\n    };\n  }\n}), require_promises = __commonJS({\n  \"node_modules/readable-stream/lib/stream/promises.js\"(exports, module) {\n    var { ArrayPrototypePop, Promise: Promise2 } = require_primordials(), { isIterable, isNodeStream } = require_utils(), { pipelineImpl: pl } = require_pipeline(), { finished } = require_end_of_stream();\n    function pipeline(...streams) {\n      return new Promise2((resolve, reject) => {\n        let signal, end;\n        const lastArg = streams[streams.length - 1];\n        if (lastArg && typeof lastArg === \"object\" && !isNodeStream(lastArg) && !isIterable(lastArg)) {\n          const options = ArrayPrototypePop(streams);\n          signal = options.signal, end = options.end;\n        }\n        pl(streams, (err, value) => {\n          if (err)\n            reject(err);\n          else\n            resolve(value);\n        }, {\n          signal,\n          end\n        });\n      });\n    }\n    module.exports = {\n      finished,\n      pipeline\n    };\n  }\n}), require_stream = __commonJS({\n  \"node_modules/readable-stream/lib/stream.js\"(exports, module) {\n    var { ObjectDefineProperty, ObjectKeys, ReflectApply } = require_primordials(), {\n      promisify: { custom: customPromisify }\n    } = require_util(), { streamReturningOperators, promiseReturningOperators } = require_operators(), {\n      codes: { ERR_ILLEGAL_CONSTRUCTOR }\n    } = require_errors(), compose = require_compose(), { pipeline } = require_pipeline(), { destroyer } = require_destroy(), eos = require_end_of_stream(), promises = require_promises(), utils = require_utils(), Stream = module.exports = require_legacy().Stream;\n    Stream.isDisturbed = utils.isDisturbed, Stream.isErrored = utils.isErrored, Stream.isWritable = utils.isWritable, Stream.isReadable = utils.isReadable, Stream.Readable = require_readable();\n    for (let key of ObjectKeys(streamReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return Stream.Readable.from(ReflectApply(op, this, args));\n      };\n      const op = streamReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    for (let key of ObjectKeys(promiseReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return ReflectApply(op, this, args);\n      };\n      const op = promiseReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    Stream.Writable = require_writable(), Stream.Duplex = require_duplex(), Stream.Transform = require_transform(), Stream.PassThrough = require_passthrough(), Stream.pipeline = pipeline;\n    var { addAbortSignal } = require_add_abort_signal();\n    Stream.addAbortSignal = addAbortSignal, Stream.finished = eos, Stream.destroy = destroyer, Stream.compose = compose, ObjectDefineProperty(Stream, \"promises\", {\n      configurable: !0,\n      enumerable: !0,\n      get() {\n        return promises;\n      }\n    }), ObjectDefineProperty(pipeline, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.pipeline;\n      }\n    }), ObjectDefineProperty(eos, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.finished;\n      }\n    }), Stream.Stream = Stream, Stream._isUint8Array = function isUint8Array(value) {\n      return value instanceof Uint8Array;\n    }, Stream._uint8ArrayToBuffer = function _uint8ArrayToBuffer(chunk) {\n      return new Buffer(chunk.buffer, chunk.byteOffset, chunk.byteLength);\n    };\n  }\n}), nativeReadableStreamPrototypes = {\n  0: void 0,\n  1: void 0,\n  2: void 0,\n  3: void 0,\n  4: void 0,\n  5: void 0\n}, Writable = require_writable(), NativeWritable = class NativeWritable2 extends Writable {\n  #pathOrFdOrSink;\n  #fileSink;\n  #native = !0;\n  _construct;\n  _destroy;\n  _final;\n  constructor(pathOrFdOrSink, options = {}) {\n    super(options);\n    this._construct = this.#internalConstruct, this._destroy = this.#internalDestroy, this._final = this.#internalFinal, this.#pathOrFdOrSink = pathOrFdOrSink;\n  }\n  #internalConstruct(cb) {\n    if (this._writableState.constructed = !0, this.constructed = !0, typeof cb === \"function\")\n      cb();\n    process.nextTick(() => {\n      this.emit(\"open\", this.fd), this.emit(\"ready\");\n    });\n  }\n  #lazyConstruct() {\n    if (typeof this.#pathOrFdOrSink === \"object\")\n      if (typeof this.#pathOrFdOrSink.write === \"function\")\n        this.#fileSink = this.#pathOrFdOrSink;\n      else\n        throw new Error(\"Invalid FileSink\");\n    else\n      this.#fileSink = Bun.file(this.#pathOrFdOrSink).writer();\n  }\n  write(chunk, encoding, cb, native = this.#native) {\n    if (!native)\n      return this.#native = !1, super.write(chunk, encoding, cb);\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    var fileSink = this.#fileSink, result = fileSink.write(chunk);\n    if (@isPromise(result))\n      return result.then(() => {\n        this.emit(\"drain\"), fileSink.flush(!0);\n      }), !1;\n    if (fileSink.flush(!0), cb)\n      cb(null, chunk.byteLength);\n    return !0;\n  }\n  end(chunk, encoding, cb, native = this.#native) {\n    return super.end(chunk, encoding, cb, native);\n  }\n  #internalDestroy(error, cb) {\n    const w = this._writableState, r = this._readableState;\n    if (w)\n      w.destroyed = !0, w.closeEmitted = !0;\n    if (r)\n      r.destroyed = !0, r.closeEmitted = !0;\n    if (typeof cb === \"function\")\n      cb(error);\n    if (w\?.closeEmitted || r\?.closeEmitted)\n      this.emit(\"close\");\n  }\n  #internalFinal(cb) {\n    if (this.#fileSink)\n      this.#fileSink.end();\n    if (cb)\n      cb();\n  }\n  ref() {\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    this.#fileSink.ref();\n  }\n  unref() {\n    if (!this.#fileSink)\n      return;\n    this.#fileSink.unref();\n  }\n}, exports = require_stream(), promises = require_promises();\nexports._getNativeReadableStreamPrototype = getNativeReadableStreamPrototype;\nexports.NativeWritable = NativeWritable;\nObject.defineProperty(exports, \"promises\", {\n  configurable: !0,\n  enumerable: !0,\n  get() {\n    return promises;\n  }\n});\nexports[Symbol.for(\"::bunternal::\")] = { _ReadableFromWeb, _ReadableFromWebForUndici };\nexports.eos = require_end_of_stream();\nexports.EventEmitter = EE;\nreturn exports})\n"_s;  //  // @@ -637,7 +637,7 @@ static constexpr ASCIILiteral NodeStreamConsumersCode = "(function (){\"use stri  //  // -static constexpr ASCIILiteral NodeStreamCode = "(function (){\"use strict\";// src/js/out/tmp/node/stream.ts\nvar isReadableStream = function(value) {\n  return typeof value === \"object\" && value !== null && value instanceof ReadableStream;\n}, validateBoolean = function(value, name) {\n  if (typeof value !== \"boolean\")\n    throw new ERR_INVALID_ARG_TYPE(name, \"boolean\", value);\n}, highWaterMarkFrom = function(options, isDuplex, duplexKey) {\n  return options.highWaterMark != null \? options.highWaterMark : isDuplex \? options[duplexKey] : null;\n}, getDefaultHighWaterMark = function(objectMode) {\n  return objectMode \? 16 : 16384;\n}, getHighWaterMark = function(state, options, duplexKey, isDuplex) {\n  const hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n  if (hwm != null) {\n    if (!Number.isInteger(hwm) || hwm < 0) {\n      const name = isDuplex \? `options.${duplexKey}` : \"options.highWaterMark\";\n      throw new ERR_INVALID_ARG_VALUE(name, hwm);\n    }\n    return Math.floor(hwm);\n  }\n  return getDefaultHighWaterMark(state.objectMode);\n}, ReadableState = function(options, stream, isDuplex) {\n  if (typeof isDuplex !== \"boolean\")\n    isDuplex = stream instanceof Duplex;\n  if (this.objectMode = !!(options && options.objectMode), isDuplex)\n    this.objectMode = this.objectMode || !!(options && options.readableObjectMode);\n  if (this.highWaterMark = options \? getHighWaterMark(this, options, \"readableHighWaterMark\", isDuplex) : getDefaultHighWaterMark(!1), this.buffer = new BufferList, this.length = 0, this.pipes = [], this.flowing = null, this.ended = !1, this.endEmitted = !1, this.reading = !1, this.constructed = !0, this.sync = !0, this.needReadable = !1, this.emittedReadable = !1, this.readableListening = !1, this.resumeScheduled = !1, this.errorEmitted = !1, this.emitClose = !options || options.emitClose !== !1, this.autoDestroy = !options || options.autoDestroy !== !1, this.destroyed = !1, this.errored = null, this.closed = !1, this.closeEmitted = !1, this.defaultEncoding = options && options.defaultEncoding || \"utf8\", this.awaitDrainWriters = null, this.multiAwaitDrain = !1, this.readingMore = !1, this.dataEmitted = !1, this.decoder = null, this.encoding = null, options && options.encoding)\n    this.decoder = new StringDecoder(options.encoding), this.encoding = options.encoding;\n};\nvar ERR_INVALID_ARG_TYPE = function(name, type, value) {\n  return new Error(`The argument '${name}' is invalid. Received '${value}' for type '${type}'`);\n}, ERR_INVALID_ARG_VALUE = function(name, value, reason) {\n  return new Error(`The value '${value}' is invalid for argument '${name}'. Reason: ${reason}`);\n}, createNativeStreamReadable = function(nativeType, Readable) {\n  var [pull, start, cancel, setClose, deinit, updateRef, drainFn] = globalThis[globalThis.Symbol.for('Bun.lazy')](nativeType), closer = [!1], handleNumberResult = function(nativeReadable, result, view, isClosed) {\n    if (result > 0) {\n      const slice = view.subarray(0, result), remainder = view.subarray(result);\n      if (slice.byteLength > 0)\n        nativeReadable.push(slice);\n      if (isClosed)\n        nativeReadable.push(null);\n      return remainder.byteLength > 0 \? remainder : void 0;\n    }\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, handleArrayBufferViewResult = function(nativeReadable, result, view, isClosed) {\n    if (result.byteLength > 0)\n      nativeReadable.push(result);\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, DYNAMICALLY_ADJUST_CHUNK_SIZE = process.env.BUN_DISABLE_DYNAMIC_CHUNK_SIZE !== \"1\";\n  const finalizer = new FinalizationRegistry((ptr) => ptr && deinit(ptr)), MIN_BUFFER_SIZE = 512;\n  var NativeReadable = class NativeReadable2 extends Readable {\n    #bunNativePtr;\n    #refCount = 1;\n    #constructed = !1;\n    #remainingChunk = void 0;\n    #highWaterMark;\n    #pendingRead = !1;\n    #hasResized = !DYNAMICALLY_ADJUST_CHUNK_SIZE;\n    #unregisterToken;\n    constructor(ptr, options = {}) {\n      super(options);\n      if (typeof options.highWaterMark === \"number\")\n        this.#highWaterMark = options.highWaterMark;\n      else\n        this.#highWaterMark = 262144;\n      this.#bunNativePtr = ptr, this.#constructed = !1, this.#remainingChunk = void 0, this.#pendingRead = !1, this.#unregisterToken = {}, finalizer.register(this, this.#bunNativePtr, this.#unregisterToken);\n    }\n    _read(maxToRead) {\n      if (this.#pendingRead)\n        return;\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        this.push(null);\n        return;\n      }\n      if (!this.#constructed)\n        this.#internalConstruct(ptr);\n      return this.#internalRead(this.#getRemainingChunk(maxToRead), ptr);\n    }\n    #internalConstruct(ptr) {\n      this.#constructed = !0;\n      const result = start(ptr, this.#highWaterMark);\n      if (typeof result === \"number\" && result > 1)\n        this.#hasResized = !0, this.#highWaterMark = Math.min(this.#highWaterMark, result);\n      if (drainFn) {\n        const drainResult = drainFn(ptr);\n        if ((drainResult\?.byteLength \?\? 0) > 0)\n          this.push(drainResult);\n      }\n    }\n    #getRemainingChunk(maxToRead = this.#highWaterMark) {\n      var chunk = this.#remainingChunk;\n      if (chunk\?.byteLength \?\? 0 < MIN_BUFFER_SIZE) {\n        var size = maxToRead > MIN_BUFFER_SIZE \? maxToRead : MIN_BUFFER_SIZE;\n        this.#remainingChunk = chunk = new Buffer(size);\n      }\n      return chunk;\n    }\n    #handleResult(result, view, isClosed) {\n      if (typeof result === \"number\") {\n        if (result >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleNumberResult(this, result, view, isClosed);\n      } else if (typeof result === \"boolean\")\n        return process.nextTick(() => {\n          this.push(null);\n        }), view\?.byteLength \?\? 0 > 0 \? view : void 0;\n      else if (ArrayBuffer.isView(result)) {\n        if (result.byteLength >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleArrayBufferViewResult(this, result, view, isClosed);\n      } else\n        throw new Error(\"Invalid result from pull\");\n    }\n    #internalRead(view, ptr) {\n      closer[0] = !1;\n      var result = pull(ptr, view, closer);\n      if (@isPromise(result))\n        return this.#pendingRead = !0, result.then((result2) => {\n          this.#pendingRead = !1, this.#remainingChunk = this.#handleResult(result2, view, closer[0]);\n        }, (reason) => {\n          errorOrDestroy(this, reason);\n        });\n      else\n        this.#remainingChunk = this.#handleResult(result, view, closer[0]);\n    }\n    _destroy(error, callback) {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        callback(error);\n        return;\n      }\n      if (finalizer.unregister(this.#unregisterToken), this.#bunNativePtr = 0, updateRef)\n        updateRef(ptr, !1);\n      cancel(ptr, error), callback(error);\n    }\n    ref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount++ === 0)\n        updateRef(ptr, !0);\n    }\n    unref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount-- === 1)\n        updateRef(ptr, !1);\n    }\n  };\n  if (!updateRef)\n    NativeReadable.prototype.ref = void 0, NativeReadable.prototype.unref = void 0;\n  return NativeReadable;\n}, getNativeReadableStreamPrototype = function(nativeType, Readable) {\n  return nativeReadableStreamPrototypes[nativeType] ||= createNativeStreamReadable(nativeType, Readable);\n}, getNativeReadableStream = function(Readable, stream, options) {\n  if (!(stream && typeof stream === \"object\" && stream instanceof ReadableStream))\n    return;\n  const native = @direct(stream);\n  if (!native)\n    return;\n  const { stream: ptr, data: type } = native;\n  return new (getNativeReadableStreamPrototype(type, Readable))(ptr, options);\n}, EE = @getInternalField(@internalModuleRegistry, 18) || @createInternalModuleById(18), StringDecoder = @requireNativeModule(\"string_decoder\").StringDecoder, __getOwnPropNames = Object.getOwnPropertyNames, __commonJS = (cb, mod) => function __require2() {\n  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n}, runOnNextTick = process.nextTick;\n\nclass BufferList {\n  constructor() {\n    this.head = null, this.tail = null, this.length = 0;\n  }\n  push(v) {\n    const entry = {\n      data: v,\n      next: null\n    };\n    if (this.length > 0)\n      this.tail.next = entry;\n    else\n      this.head = entry;\n    this.tail = entry, ++this.length;\n  }\n  unshift(v) {\n    const entry = {\n      data: v,\n      next: this.head\n    };\n    if (this.length === 0)\n      this.tail = entry;\n    this.head = entry, ++this.length;\n  }\n  shift() {\n    if (this.length === 0)\n      return;\n    const ret = this.head.data;\n    if (this.length === 1)\n      this.head = this.tail = null;\n    else\n      this.head = this.head.next;\n    return --this.length, ret;\n  }\n  clear() {\n    this.head = this.tail = null, this.length = 0;\n  }\n  join(s) {\n    if (this.length === 0)\n      return \"\";\n    let p = this.head, ret = \"\" + p.data;\n    while ((p = p.next) !== null)\n      ret += s + p.data;\n    return ret;\n  }\n  concat(n) {\n    if (this.length === 0)\n      return Buffer.alloc(0);\n    const ret = Buffer.allocUnsafe(n >>> 0);\n    let p = this.head, i = 0;\n    while (p)\n      ret.set(p.data, i), i += p.data.length, p = p.next;\n    return ret;\n  }\n  consume(n, hasStrings) {\n    const data = this.head.data;\n    if (n < data.length) {\n      const slice = data.slice(0, n);\n      return this.head.data = data.slice(n), slice;\n    }\n    if (n === data.length)\n      return this.shift();\n    return hasStrings \? this._getString(n) : this._getBuffer(n);\n  }\n  first() {\n    return this.head.data;\n  }\n  *[Symbol.iterator]() {\n    for (let p = this.head;p; p = p.next)\n      yield p.data;\n  }\n  _getString(n) {\n    let ret = \"\", p = this.head, c = 0;\n    do {\n      const str = p.data;\n      if (n > str.length)\n        ret += str, n -= str.length;\n      else {\n        if (n === str.length)\n          if (ret += str, ++c, p.next)\n            this.head = p.next;\n          else\n            this.head = this.tail = null;\n        else\n          ret += str.slice(0, n), this.head = p, p.data = str.slice(n);\n        break;\n      }\n      ++c;\n    } while ((p = p.next) !== null);\n    return this.length -= c, ret;\n  }\n  _getBuffer(n) {\n    const ret = Buffer.allocUnsafe(n), retLen = n;\n    let p = this.head, c = 0;\n    do {\n      const buf = p.data;\n      if (n > buf.length)\n        ret.set(buf, retLen - n), n -= buf.length;\n      else {\n        if (n === buf.length)\n          if (ret.set(buf, retLen - n), ++c, p.next)\n            this.head = p.next;\n          else\n            this.head = this.tail = null;\n        else\n          ret.set(new Uint8Array(buf.buffer, buf.byteOffset, n), retLen - n), this.head = p, p.data = buf.slice(n);\n        break;\n      }\n      ++c;\n    } while ((p = p.next) !== null);\n    return this.length -= c, ret;\n  }\n  [Symbol.for(\"nodejs.util.inspect.custom\")](_, options) {\n    return inspect(this, {\n      ...options,\n      depth: 0,\n      customInspect: !1\n    });\n  }\n}\nvar require_primordials = __commonJS({\n  \"node_modules/readable-stream/lib/ours/primordials.js\"(exports, module) {\n    module.exports = {\n      ArrayIsArray(self) {\n        return @isArray(self);\n      },\n      ArrayPrototypeIncludes(self, el) {\n        return self.includes(el);\n      },\n      ArrayPrototypeIndexOf(self, el) {\n        return self.indexOf(el);\n      },\n      ArrayPrototypeJoin(self, sep) {\n        return self.join(sep);\n      },\n      ArrayPrototypeMap(self, fn) {\n        return self.map(fn);\n      },\n      ArrayPrototypePop(self, el) {\n        return self.pop(el);\n      },\n      ArrayPrototypePush(self, el) {\n        return self.push(el);\n      },\n      ArrayPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      Error,\n      FunctionPrototypeCall(fn, thisArgs, ...args) {\n        return fn.call(thisArgs, ...args);\n      },\n      FunctionPrototypeSymbolHasInstance(self, instance) {\n        return Function.prototype[Symbol.hasInstance].call(self, instance);\n      },\n      MathFloor: Math.floor,\n      Number,\n      NumberIsInteger: Number.isInteger,\n      NumberIsNaN: Number.isNaN,\n      NumberMAX_SAFE_INTEGER: Number.MAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER: Number.MIN_SAFE_INTEGER,\n      NumberParseInt: Number.parseInt,\n      ObjectDefineProperties(self, props) {\n        return Object.defineProperties(self, props);\n      },\n      ObjectDefineProperty(self, name, prop) {\n        return Object.defineProperty(self, name, prop);\n      },\n      ObjectGetOwnPropertyDescriptor(self, name) {\n        return Object.getOwnPropertyDescriptor(self, name);\n      },\n      ObjectKeys(obj) {\n        return Object.keys(obj);\n      },\n      ObjectSetPrototypeOf(target, proto) {\n        return Object.setPrototypeOf(target, proto);\n      },\n      Promise,\n      PromisePrototypeCatch(self, fn) {\n        return self.catch(fn);\n      },\n      PromisePrototypeThen(self, thenFn, catchFn) {\n        return self.then(thenFn, catchFn);\n      },\n      PromiseReject(err) {\n        return Promise.reject(err);\n      },\n      ReflectApply: Reflect.apply,\n      RegExpPrototypeTest(self, value) {\n        return self.test(value);\n      },\n      SafeSet: Set,\n      String,\n      StringPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      StringPrototypeToLowerCase(self) {\n        return self.toLowerCase();\n      },\n      StringPrototypeToUpperCase(self) {\n        return self.toUpperCase();\n      },\n      StringPrototypeTrim(self) {\n        return self.trim();\n      },\n      Symbol,\n      SymbolAsyncIterator: Symbol.asyncIterator,\n      SymbolHasInstance: Symbol.hasInstance,\n      SymbolIterator: Symbol.iterator,\n      Uint8Array\n    };\n  }\n}), require_util = __commonJS({\n  \"node_modules/readable-stream/lib/ours/util.js\"(exports, module) {\n    var AsyncFunction = Object.getPrototypeOf(async function() {\n    }).constructor, isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    };\n    module.exports = {\n      AggregateError,\n      once(callback) {\n        let called = !1;\n        return function(...args) {\n          if (called)\n            return;\n          called = !0, callback.apply(this, args);\n        };\n      },\n      createDeferredPromise: function() {\n        let resolve, reject;\n        return {\n          promise: new Promise((res, rej) => {\n            resolve = res, reject = rej;\n          }),\n          resolve,\n          reject\n        };\n      },\n      promisify(fn) {\n        return new Promise((resolve, reject) => {\n          fn((err, ...args) => {\n            if (err)\n              return reject(err);\n            return resolve(...args);\n          });\n        });\n      },\n      debuglog() {\n        return function() {\n        };\n      },\n      format(format, ...args) {\n        return format.replace(/%([sdifj])/g, function(...[_unused, type]) {\n          const replacement = args.shift();\n          if (type === \"f\")\n            return replacement.toFixed(6);\n          else if (type === \"j\")\n            return JSON.stringify(replacement);\n          else if (type === \"s\" && typeof replacement === \"object\")\n            return `${replacement.constructor !== Object \? replacement.constructor.name : \"\"} {}`.trim();\n          else\n            return replacement.toString();\n        });\n      },\n      inspect(value) {\n        switch (typeof value) {\n          case \"string\":\n            if (value.includes(\"'\")) {\n              if (!value.includes('\"'))\n                return `\"${value}\"`;\n              else if (!value.includes(\"`\") && !value.includes(\"${\"))\n                return `\\`${value}\\``;\n            }\n            return `'${value}'`;\n          case \"number\":\n            if (isNaN(value))\n              return \"NaN\";\n            else if (Object.is(value, -0))\n              return String(value);\n            return value;\n          case \"bigint\":\n            return `${String(value)}n`;\n          case \"boolean\":\n          case \"undefined\":\n            return String(value);\n          case \"object\":\n            return \"{}\";\n        }\n      },\n      types: {\n        isAsyncFunction(fn) {\n          return fn instanceof AsyncFunction;\n        },\n        isArrayBufferView(arr) {\n          return ArrayBuffer.isView(arr);\n        }\n      },\n      isBlob\n    }, module.exports.promisify.custom = Symbol.for(\"nodejs.util.promisify.custom\");\n  }\n}), require_errors = __commonJS({\n  \"node_modules/readable-stream/lib/ours/errors.js\"(exports, module) {\n    var { format, inspect: inspect2 } = require_util(), AggregateError2 = globalThis.AggregateError, kIsNodeError = Symbol(\"kIsNodeError\"), kTypes = [\"string\", \"function\", \"number\", \"object\", \"Function\", \"Object\", \"boolean\", \"bigint\", \"symbol\"], classRegExp = /^([A-Z][a-z0-9]*)+$/, nodeInternalPrefix = \"__node_internal_\", codes = {};\n    function assert(value, message) {\n      if (!value)\n        throw new codes.ERR_INTERNAL_ASSERTION(message);\n    }\n    function addNumericalSeparator(val) {\n      let res = \"\", i = val.length;\n      const start = val[0] === \"-\" \? 1 : 0;\n      for (;i >= start + 4; i -= 3)\n        res = `_${val.slice(i - 3, i)}${res}`;\n      return `${val.slice(0, i)}${res}`;\n    }\n    function getMessage(key, msg, args) {\n      if (typeof msg === \"function\")\n        return assert(msg.length <= args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${msg.length}).`), msg(...args);\n      const expectedLength = (msg.match(/%[dfijoOs]/g) || []).length;\n      if (assert(expectedLength === args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${expectedLength}).`), args.length === 0)\n        return msg;\n      return format(msg, ...args);\n    }\n    function E(code, message, Base) {\n      if (!Base)\n        Base = Error;\n\n      class NodeError extends Base {\n        constructor(...args) {\n          super(getMessage(code, message, args));\n        }\n        toString() {\n          return `${this.name} [${code}]: ${this.message}`;\n        }\n      }\n      Object.defineProperties(NodeError.prototype, {\n        name: {\n          value: Base.name,\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        },\n        toString: {\n          value() {\n            return `${this.name} [${code}]: ${this.message}`;\n          },\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        }\n      }), NodeError.prototype.code = code, NodeError.prototype[kIsNodeError] = !0, codes[code] = NodeError;\n    }\n    function hideStackFrames(fn) {\n      const hidden = nodeInternalPrefix + fn.name;\n      return Object.defineProperty(fn, \"name\", {\n        value: hidden\n      }), fn;\n    }\n    function aggregateTwoErrors(innerError, outerError) {\n      if (innerError && outerError && innerError !== outerError) {\n        if (Array.isArray(outerError.errors))\n          return outerError.errors.push(innerError), outerError;\n        const err = new AggregateError2([outerError, innerError], outerError.message);\n        return err.code = outerError.code, err;\n      }\n      return innerError || outerError;\n    }\n    var AbortError2 = class extends Error {\n      constructor(message = \"The operation was aborted\", options = void 0) {\n        if (options !== void 0 && typeof options !== \"object\")\n          throw new codes.ERR_INVALID_ARG_TYPE(\"options\", \"Object\", options);\n        super(message, options);\n        this.code = \"ABORT_ERR\", this.name = \"AbortError\";\n      }\n    };\n    E(\"ERR_ASSERTION\", \"%s\", Error), E(\"ERR_INVALID_ARG_TYPE\", (name, expected, actual) => {\n      if (assert(typeof name === \"string\", \"'name' must be a string\"), !Array.isArray(expected))\n        expected = [expected];\n      let msg = \"The \";\n      if (name.endsWith(\" argument\"))\n        msg += `${name} `;\n      else\n        msg += `\"${name}\" ${name.includes(\".\") \? \"property\" : \"argument\"} `;\n      msg += \"must be \";\n      const types = [], instances = [], other = [];\n      for (let value of expected)\n        if (assert(typeof value === \"string\", \"All expected entries have to be of type string\"), kTypes.includes(value))\n          types.push(value.toLowerCase());\n        else if (classRegExp.test(value))\n          instances.push(value);\n        else\n          assert(value !== \"object\", 'The value \"object\" should be written as \"Object\"'), other.push(value);\n      if (instances.length > 0) {\n        const pos = types.indexOf(\"object\");\n        if (pos !== -1)\n          types.splice(types, pos, 1), instances.push(\"Object\");\n      }\n      if (types.length > 0) {\n        switch (types.length) {\n          case 1:\n            msg += `of type ${types[0]}`;\n            break;\n          case 2:\n            msg += `one of type ${types[0]} or ${types[1]}`;\n            break;\n          default: {\n            const last = types.pop();\n            msg += `one of type ${types.join(\", \")}, or ${last}`;\n          }\n        }\n        if (instances.length > 0 || other.length > 0)\n          msg += \" or \";\n      }\n      if (instances.length > 0) {\n        switch (instances.length) {\n          case 1:\n            msg += `an instance of ${instances[0]}`;\n            break;\n          case 2:\n            msg += `an instance of ${instances[0]} or ${instances[1]}`;\n            break;\n          default: {\n            const last = instances.pop();\n            msg += `an instance of ${instances.join(\", \")}, or ${last}`;\n          }\n        }\n        if (other.length > 0)\n          msg += \" or \";\n      }\n      switch (other.length) {\n        case 0:\n          break;\n        case 1:\n          if (other[0].toLowerCase() !== other[0])\n            msg += \"an \";\n          msg += `${other[0]}`;\n          break;\n        case 2:\n          msg += `one of ${other[0]} or ${other[1]}`;\n          break;\n        default: {\n          const last = other.pop();\n          msg += `one of ${other.join(\", \")}, or ${last}`;\n        }\n      }\n      if (actual == null)\n        msg += `. Received ${actual}`;\n      else if (typeof actual === \"function\" && actual.name)\n        msg += `. Received function ${actual.name}`;\n      else if (typeof actual === \"object\") {\n        var _actual$constructor;\n        if ((_actual$constructor = actual.constructor) !== null && _actual$constructor !== void 0 && _actual$constructor.name)\n          msg += `. Received an instance of ${actual.constructor.name}`;\n        else {\n          const inspected = inspect2(actual, {\n            depth: -1\n          });\n          msg += `. Received ${inspected}`;\n        }\n      } else {\n        let inspected = inspect2(actual, {\n          colors: !1\n        });\n        if (inspected.length > 25)\n          inspected = `${inspected.slice(0, 25)}...`;\n        msg += `. Received type ${typeof actual} (${inspected})`;\n      }\n      return msg;\n    }, TypeError), E(\"ERR_INVALID_ARG_VALUE\", (name, value, reason = \"is invalid\") => {\n      let inspected = inspect2(value);\n      if (inspected.length > 128)\n        inspected = inspected.slice(0, 128) + \"...\";\n      return `The ${name.includes(\".\") \? \"property\" : \"argument\"} '${name}' ${reason}. Received ${inspected}`;\n    }, TypeError), E(\"ERR_INVALID_RETURN_VALUE\", (input, name, value) => {\n      var _value$constructor;\n      const type = value !== null && value !== void 0 && (_value$constructor = value.constructor) !== null && _value$constructor !== void 0 && _value$constructor.name \? `instance of ${value.constructor.name}` : `type ${typeof value}`;\n      return `Expected ${input} to be returned from the \"${name}\" function but got ${type}.`;\n    }, TypeError), E(\"ERR_MISSING_ARGS\", (...args) => {\n      assert(args.length > 0, \"At least one arg needs to be specified\");\n      let msg;\n      const len = args.length;\n      switch (args = (Array.isArray(args) \? args : [args]).map((a) => `\"${a}\"`).join(\" or \"), len) {\n        case 1:\n          msg += `The ${args[0]} argument`;\n          break;\n        case 2:\n          msg += `The ${args[0]} and ${args[1]} arguments`;\n          break;\n        default:\n          {\n            const last = args.pop();\n            msg += `The ${args.join(\", \")}, and ${last} arguments`;\n          }\n          break;\n      }\n      return `${msg} must be specified`;\n    }, TypeError), E(\"ERR_OUT_OF_RANGE\", (str, range, input) => {\n      assert(range, 'Missing \"range\" argument');\n      let received;\n      if (Number.isInteger(input) && Math.abs(input) > 4294967296)\n        received = addNumericalSeparator(String(input));\n      else if (typeof input === \"bigint\") {\n        if (received = String(input), input > 2n ** 32n || input < -(2n ** 32n))\n          received = addNumericalSeparator(received);\n        received += \"n\";\n      } else\n        received = inspect2(input);\n      return `The value of \"${str}\" is out of range. It must be ${range}. Received ${received}`;\n    }, RangeError), E(\"ERR_MULTIPLE_CALLBACK\", \"Callback called multiple times\", Error), E(\"ERR_METHOD_NOT_IMPLEMENTED\", \"The %s method is not implemented\", Error), E(\"ERR_STREAM_ALREADY_FINISHED\", \"Cannot call %s after a stream was finished\", Error), E(\"ERR_STREAM_CANNOT_PIPE\", \"Cannot pipe, not readable\", Error), E(\"ERR_STREAM_DESTROYED\", \"Cannot call %s after a stream was destroyed\", Error), E(\"ERR_STREAM_NULL_VALUES\", \"May not write null values to stream\", TypeError), E(\"ERR_STREAM_PREMATURE_CLOSE\", \"Premature close\", Error), E(\"ERR_STREAM_PUSH_AFTER_EOF\", \"stream.push() after EOF\", Error), E(\"ERR_STREAM_UNSHIFT_AFTER_END_EVENT\", \"stream.unshift() after end event\", Error), E(\"ERR_STREAM_WRITE_AFTER_END\", \"write after end\", Error), E(\"ERR_UNKNOWN_ENCODING\", \"Unknown encoding: %s\", TypeError), module.exports = {\n      AbortError: AbortError2,\n      aggregateTwoErrors: hideStackFrames(aggregateTwoErrors),\n      hideStackFrames,\n      codes\n    };\n  }\n}), require_validators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/validators.js\"(exports, module) {\n    var {\n      ArrayIsArray,\n      ArrayPrototypeIncludes,\n      ArrayPrototypeJoin,\n      ArrayPrototypeMap,\n      NumberIsInteger,\n      NumberMAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER,\n      NumberParseInt,\n      RegExpPrototypeTest,\n      String: String2,\n      StringPrototypeToUpperCase,\n      StringPrototypeTrim\n    } = require_primordials(), {\n      hideStackFrames,\n      codes: { ERR_SOCKET_BAD_PORT, ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_OUT_OF_RANGE, ERR_UNKNOWN_SIGNAL }\n    } = require_errors(), { normalizeEncoding } = require_util(), { isAsyncFunction, isArrayBufferView } = require_util().types, signals = {};\n    function isInt32(value) {\n      return value === (value | 0);\n    }\n    function isUint32(value) {\n      return value === value >>> 0;\n    }\n    var octalReg = /^[0-7]+$/, modeDesc = \"must be a 32-bit unsigned integer or an octal string\";\n    function parseFileMode(value, name, def) {\n      if (typeof value === \"undefined\")\n        value = def;\n      if (typeof value === \"string\") {\n        if (!RegExpPrototypeTest(octalReg, value))\n          throw new ERR_INVALID_ARG_VALUE2(name, value, modeDesc);\n        value = NumberParseInt(value, 8);\n      }\n      return validateInt32(value, name, 0, 4294967295), value;\n    }\n    var validateInteger = hideStackFrames((value, name, min = NumberMIN_SAFE_INTEGER, max = NumberMAX_SAFE_INTEGER) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!NumberIsInteger(value))\n        throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateInt32 = hideStackFrames((value, name, min = -2147483648, max = 2147483647) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isInt32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n      }\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateUint32 = hideStackFrames((value, name, positive) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isUint32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${positive \? 1 : 0} && < 4294967296`, value);\n      }\n      if (positive && value === 0)\n        throw new ERR_OUT_OF_RANGE(name, \">= 1 && < 4294967296\", value);\n    });\n    function validateString(value, name) {\n      if (typeof value !== \"string\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"string\", value);\n    }\n    function validateNumber(value, name) {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n    }\n    var validateOneOf = hideStackFrames((value, name, oneOf) => {\n      if (!ArrayPrototypeIncludes(oneOf, value)) {\n        const reason = \"must be one of: \" + ArrayPrototypeJoin(ArrayPrototypeMap(oneOf, (v) => typeof v === \"string\" \? `'${v}'` : String2(v)), \", \");\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateBoolean2(value, name) {\n      if (typeof value !== \"boolean\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"boolean\", value);\n    }\n    var validateObject = hideStackFrames((value, name, options) => {\n      const useDefaultOptions = options == null, allowArray = useDefaultOptions \? !1 : options.allowArray, allowFunction = useDefaultOptions \? !1 : options.allowFunction;\n      if (!(useDefaultOptions \? !1 : options.nullable) && value === null || !allowArray && ArrayIsArray(value) || typeof value !== \"object\" && (!allowFunction || typeof value !== \"function\"))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Object\", value);\n    }), validateArray = hideStackFrames((value, name, minLength = 0) => {\n      if (!ArrayIsArray(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Array\", value);\n      if (value.length < minLength) {\n        const reason = `must be longer than ${minLength}`;\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateSignalName(signal, name = \"signal\") {\n      if (validateString(signal, name), signals[signal] === void 0) {\n        if (signals[StringPrototypeToUpperCase(signal)] !== void 0)\n          throw new ERR_UNKNOWN_SIGNAL(signal + \" (signals must use all capital letters)\");\n        throw new ERR_UNKNOWN_SIGNAL(signal);\n      }\n    }\n    var validateBuffer = hideStackFrames((buffer, name = \"buffer\") => {\n      if (!isArrayBufferView(buffer))\n        throw new ERR_INVALID_ARG_TYPE2(name, [\"Buffer\", \"TypedArray\", \"DataView\"], buffer);\n    });\n    function validateEncoding(data, encoding) {\n      const normalizedEncoding = normalizeEncoding(encoding), length = data.length;\n      if (normalizedEncoding === \"hex\" && length % 2 !== 0)\n        throw new ERR_INVALID_ARG_VALUE2(\"encoding\", encoding, `is invalid for data of length ${length}`);\n    }\n    function validatePort(port, name = \"Port\", allowZero = !0) {\n      if (typeof port !== \"number\" && typeof port !== \"string\" || typeof port === \"string\" && StringPrototypeTrim(port).length === 0 || +port !== +port >>> 0 || port > 65535 || port === 0 && !allowZero)\n        throw new ERR_SOCKET_BAD_PORT(name, port, allowZero);\n      return port | 0;\n    }\n    var validateAbortSignal = hideStackFrames((signal, name) => {\n      if (signal !== void 0 && (signal === null || typeof signal !== \"object\" || !(\"aborted\" in signal)))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    }), validateFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validatePlainFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\" || isAsyncFunction(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validateUndefined = hideStackFrames((value, name) => {\n      if (value !== void 0)\n        throw new ERR_INVALID_ARG_TYPE2(name, \"undefined\", value);\n    });\n    module.exports = {\n      isInt32,\n      isUint32,\n      parseFileMode,\n      validateArray,\n      validateBoolean: validateBoolean2,\n      validateBuffer,\n      validateEncoding,\n      validateFunction,\n      validateInt32,\n      validateInteger,\n      validateNumber,\n      validateObject,\n      validateOneOf,\n      validatePlainFunction,\n      validatePort,\n      validateSignalName,\n      validateString,\n      validateUint32,\n      validateUndefined,\n      validateAbortSignal\n    };\n  }\n}), require_utils = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/utils.js\"(exports, module) {\n    var { Symbol: Symbol2, SymbolAsyncIterator, SymbolIterator } = require_primordials(), kDestroyed = Symbol2(\"kDestroyed\"), kIsErrored = Symbol2(\"kIsErrored\"), kIsReadable = Symbol2(\"kIsReadable\"), kIsDisturbed = Symbol2(\"kIsDisturbed\");\n    function isReadableNodeStream(obj, strict = !1) {\n      var _obj$_readableState;\n      return !!(obj && typeof obj.pipe === \"function\" && typeof obj.on === \"function\" && (!strict || typeof obj.pause === \"function\" && typeof obj.resume === \"function\") && (!obj._writableState || ((_obj$_readableState = obj._readableState) === null || _obj$_readableState === void 0 \? void 0 : _obj$_readableState.readable) !== !1) && (!obj._writableState || obj._readableState));\n    }\n    function isWritableNodeStream(obj) {\n      var _obj$_writableState;\n      return !!(obj && typeof obj.write === \"function\" && typeof obj.on === \"function\" && (!obj._readableState || ((_obj$_writableState = obj._writableState) === null || _obj$_writableState === void 0 \? void 0 : _obj$_writableState.writable) !== !1));\n    }\n    function isDuplexNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\" && obj._readableState && typeof obj.on === \"function\" && typeof obj.write === \"function\");\n    }\n    function isNodeStream(obj) {\n      return obj && (obj._readableState || obj._writableState || typeof obj.write === \"function\" && typeof obj.on === \"function\" || typeof obj.pipe === \"function\" && typeof obj.on === \"function\");\n    }\n    function isIterable(obj, isAsync) {\n      if (obj == null)\n        return !1;\n      if (isAsync === !0)\n        return typeof obj[SymbolAsyncIterator] === \"function\";\n      if (isAsync === !1)\n        return typeof obj[SymbolIterator] === \"function\";\n      return typeof obj[SymbolAsyncIterator] === \"function\" || typeof obj[SymbolIterator] === \"function\";\n    }\n    function isDestroyed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !!(stream.destroyed || stream[kDestroyed] || state !== null && state !== void 0 && state.destroyed);\n    }\n    function isWritableEnded(stream) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableEnded === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.ended) !== \"boolean\")\n        return null;\n      return wState.ended;\n    }\n    function isWritableFinished(stream, strict) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableFinished === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.finished) !== \"boolean\")\n        return null;\n      return !!(wState.finished || strict === !1 && wState.ended === !0 && wState.length === 0);\n    }\n    function isReadableEnded(stream) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      if (stream.readableEnded === !0)\n        return !0;\n      const rState = stream._readableState;\n      if (!rState || rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.ended) !== \"boolean\")\n        return null;\n      return rState.ended;\n    }\n    function isReadableFinished(stream, strict) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      const rState = stream._readableState;\n      if (rState !== null && rState !== void 0 && rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.endEmitted) !== \"boolean\")\n        return null;\n      return !!(rState.endEmitted || strict === !1 && rState.ended === !0 && rState.length === 0);\n    }\n    function isReadable(stream) {\n      if (stream && stream[kIsReadable] != null)\n        return stream[kIsReadable];\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.readable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isReadableNodeStream(stream) && stream.readable && !isReadableFinished(stream);\n    }\n    function isWritable(stream) {\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.writable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isWritableNodeStream(stream) && stream.writable && !isWritableEnded(stream);\n    }\n    function isFinished(stream, opts) {\n      if (!isNodeStream(stream))\n        return null;\n      if (isDestroyed(stream))\n        return !0;\n      if ((opts === null || opts === void 0 \? void 0 : opts.readable) !== !1 && isReadable(stream))\n        return !1;\n      if ((opts === null || opts === void 0 \? void 0 : opts.writable) !== !1 && isWritable(stream))\n        return !1;\n      return !0;\n    }\n    function isWritableErrored(stream) {\n      var _stream$_writableStat, _stream$_writableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.writableErrored)\n        return stream.writableErrored;\n      return (_stream$_writableStat = (_stream$_writableStat2 = stream._writableState) === null || _stream$_writableStat2 === void 0 \? void 0 : _stream$_writableStat2.errored) !== null && _stream$_writableStat !== void 0 \? _stream$_writableStat : null;\n    }\n    function isReadableErrored(stream) {\n      var _stream$_readableStat, _stream$_readableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.readableErrored)\n        return stream.readableErrored;\n      return (_stream$_readableStat = (_stream$_readableStat2 = stream._readableState) === null || _stream$_readableStat2 === void 0 \? void 0 : _stream$_readableStat2.errored) !== null && _stream$_readableStat !== void 0 \? _stream$_readableStat : null;\n    }\n    function isClosed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      if (typeof stream.closed === \"boolean\")\n        return stream.closed;\n      const { _writableState: wState, _readableState: rState } = stream;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.closed) === \"boolean\" || typeof (rState === null || rState === void 0 \? void 0 : rState.closed) === \"boolean\")\n        return (wState === null || wState === void 0 \? void 0 : wState.closed) || (rState === null || rState === void 0 \? void 0 : rState.closed);\n      if (typeof stream._closed === \"boolean\" && isOutgoingMessage(stream))\n        return stream._closed;\n      return null;\n    }\n    function isOutgoingMessage(stream) {\n      return typeof stream._closed === \"boolean\" && typeof stream._defaultKeepAlive === \"boolean\" && typeof stream._removedConnection === \"boolean\" && typeof stream._removedContLen === \"boolean\";\n    }\n    function isServerResponse(stream) {\n      return typeof stream._sent100 === \"boolean\" && isOutgoingMessage(stream);\n    }\n    function isServerRequest(stream) {\n      var _stream$req;\n      return typeof stream._consuming === \"boolean\" && typeof stream._dumped === \"boolean\" && ((_stream$req = stream.req) === null || _stream$req === void 0 \? void 0 : _stream$req.upgradeOrConnect) === void 0;\n    }\n    function willEmitClose(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !state && isServerResponse(stream) || !!(state && state.autoDestroy && state.emitClose && state.closed === !1);\n    }\n    function isDisturbed(stream) {\n      var _stream$kIsDisturbed;\n      return !!(stream && ((_stream$kIsDisturbed = stream[kIsDisturbed]) !== null && _stream$kIsDisturbed !== void 0 \? _stream$kIsDisturbed : stream.readableDidRead || stream.readableAborted));\n    }\n    function isErrored(stream) {\n      var _ref, _ref2, _ref3, _ref4, _ref5, _stream$kIsErrored, _stream$_readableStat3, _stream$_writableStat3, _stream$_readableStat4, _stream$_writableStat4;\n      return !!(stream && ((_ref = (_ref2 = (_ref3 = (_ref4 = (_ref5 = (_stream$kIsErrored = stream[kIsErrored]) !== null && _stream$kIsErrored !== void 0 \? _stream$kIsErrored : stream.readableErrored) !== null && _ref5 !== void 0 \? _ref5 : stream.writableErrored) !== null && _ref4 !== void 0 \? _ref4 : (_stream$_readableStat3 = stream._readableState) === null || _stream$_readableStat3 === void 0 \? void 0 : _stream$_readableStat3.errorEmitted) !== null && _ref3 !== void 0 \? _ref3 : (_stream$_writableStat3 = stream._writableState) === null || _stream$_writableStat3 === void 0 \? void 0 : _stream$_writableStat3.errorEmitted) !== null && _ref2 !== void 0 \? _ref2 : (_stream$_readableStat4 = stream._readableState) === null || _stream$_readableStat4 === void 0 \? void 0 : _stream$_readableStat4.errored) !== null && _ref !== void 0 \? _ref : (_stream$_writableStat4 = stream._writableState) === null || _stream$_writableStat4 === void 0 \? void 0 : _stream$_writableStat4.errored));\n    }\n    module.exports = {\n      kDestroyed,\n      isDisturbed,\n      kIsDisturbed,\n      isErrored,\n      kIsErrored,\n      isReadable,\n      kIsReadable,\n      isClosed,\n      isDestroyed,\n      isDuplexNodeStream,\n      isFinished,\n      isIterable,\n      isReadableNodeStream,\n      isReadableEnded,\n      isReadableFinished,\n      isReadableErrored,\n      isNodeStream,\n      isWritable,\n      isWritableNodeStream,\n      isWritableEnded,\n      isWritableFinished,\n      isWritableErrored,\n      isServerRequest,\n      isServerResponse,\n      willEmitClose\n    };\n  }\n}), require_end_of_stream = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/end-of-stream.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_PREMATURE_CLOSE } = codes, { once } = require_util(), { validateAbortSignal, validateFunction, validateObject } = require_validators(), { Promise: Promise2 } = require_primordials(), {\n      isClosed,\n      isReadable,\n      isReadableNodeStream,\n      isReadableFinished,\n      isReadableErrored,\n      isWritable,\n      isWritableNodeStream,\n      isWritableFinished,\n      isWritableErrored,\n      isNodeStream,\n      willEmitClose: _willEmitClose\n    } = require_utils();\n    function isRequest(stream) {\n      return stream.setHeader && typeof stream.abort === \"function\";\n    }\n    var nop = () => {\n    };\n    function eos(stream, options, callback) {\n      var _options$readable, _options$writable;\n      if (arguments.length === 2)\n        callback = options, options = {};\n      else if (options == null)\n        options = {};\n      else\n        validateObject(options, \"options\");\n      validateFunction(callback, \"callback\"), validateAbortSignal(options.signal, \"options.signal\"), callback = once(callback);\n      const readable = (_options$readable = options.readable) !== null && _options$readable !== void 0 \? _options$readable : isReadableNodeStream(stream), writable = (_options$writable = options.writable) !== null && _options$writable !== void 0 \? _options$writable : isWritableNodeStream(stream);\n      if (!isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"Stream\", stream);\n      const { _writableState: wState, _readableState: rState } = stream, onlegacyfinish = () => {\n        if (!stream.writable)\n          onfinish();\n      };\n      let willEmitClose = _willEmitClose(stream) && isReadableNodeStream(stream) === readable && isWritableNodeStream(stream) === writable, writableFinished = isWritableFinished(stream, !1);\n      const onfinish = () => {\n        if (writableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.readable || readable))\n          return;\n        if (!readable || readableFinished)\n          callback.call(stream);\n      };\n      let readableFinished = isReadableFinished(stream, !1);\n      const onend = () => {\n        if (readableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.writable || writable))\n          return;\n        if (!writable || writableFinished)\n          callback.call(stream);\n      }, onerror = (err) => {\n        callback.call(stream, err);\n      };\n      let closed = isClosed(stream);\n      const onclose = () => {\n        closed = !0;\n        const errored = isWritableErrored(stream) || isReadableErrored(stream);\n        if (errored && typeof errored !== \"boolean\")\n          return callback.call(stream, errored);\n        if (readable && !readableFinished && isReadableNodeStream(stream, !0)) {\n          if (!isReadableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        if (writable && !writableFinished) {\n          if (!isWritableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        callback.call(stream);\n      }, onrequest = () => {\n        stream.req.on(\"finish\", onfinish);\n      };\n      if (isRequest(stream)) {\n        if (stream.on(\"complete\", onfinish), !willEmitClose)\n          stream.on(\"abort\", onclose);\n        if (stream.req)\n          onrequest();\n        else\n          stream.on(\"request\", onrequest);\n      } else if (writable && !wState)\n        stream.on(\"end\", onlegacyfinish), stream.on(\"close\", onlegacyfinish);\n      if (!willEmitClose && typeof stream.aborted === \"boolean\")\n        stream.on(\"aborted\", onclose);\n      if (stream.on(\"end\", onend), stream.on(\"finish\", onfinish), options.error !== !1)\n        stream.on(\"error\", onerror);\n      if (stream.on(\"close\", onclose), closed)\n        runOnNextTick(onclose);\n      else if (wState !== null && wState !== void 0 && wState.errorEmitted || rState !== null && rState !== void 0 && rState.errorEmitted) {\n        if (!willEmitClose)\n          runOnNextTick(onclose);\n      } else if (!readable && (!willEmitClose || isReadable(stream)) && (writableFinished || isWritable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (!writable && (!willEmitClose || isWritable(stream)) && (readableFinished || isReadable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (rState && stream.req && stream.aborted)\n        runOnNextTick(onclose);\n      const cleanup = () => {\n        if (callback = nop, stream.removeListener(\"aborted\", onclose), stream.removeListener(\"complete\", onfinish), stream.removeListener(\"abort\", onclose), stream.removeListener(\"request\", onrequest), stream.req)\n          stream.req.removeListener(\"finish\", onfinish);\n        stream.removeListener(\"end\", onlegacyfinish), stream.removeListener(\"close\", onlegacyfinish), stream.removeListener(\"finish\", onfinish), stream.removeListener(\"end\", onend), stream.removeListener(\"error\", onerror), stream.removeListener(\"close\", onclose);\n      };\n      if (options.signal && !closed) {\n        const abort = () => {\n          const endCallback = callback;\n          cleanup(), endCallback.call(stream, new AbortError2(void 0, {\n            cause: options.signal.reason\n          }));\n        };\n        if (options.signal.aborted)\n          runOnNextTick(abort);\n        else {\n          const originalCallback = callback;\n          callback = once((...args) => {\n            options.signal.removeEventListener(\"abort\", abort), originalCallback.apply(stream, args);\n          }), options.signal.addEventListener(\"abort\", abort);\n        }\n      }\n      return cleanup;\n    }\n    function finished(stream, opts) {\n      return new Promise2((resolve, reject) => {\n        eos(stream, opts, (err) => {\n          if (err)\n            reject(err);\n          else\n            resolve();\n        });\n      });\n    }\n    module.exports = eos, module.exports.finished = finished;\n  }\n}), require_operators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/operators.js\"(exports, module) {\n    var {\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_MISSING_ARGS, ERR_OUT_OF_RANGE },\n      AbortError: AbortError2\n    } = require_errors(), { validateAbortSignal, validateInteger, validateObject } = require_validators(), kWeakHandler = require_primordials().Symbol(\"kWeak\"), { finished } = require_end_of_stream(), {\n      ArrayPrototypePush,\n      MathFloor,\n      Number: Number2,\n      NumberIsNaN,\n      Promise: Promise2,\n      PromiseReject,\n      PromisePrototypeCatch,\n      Symbol: Symbol2\n    } = require_primordials(), kEmpty = Symbol2(\"kEmpty\"), kEof = Symbol2(\"kEof\");\n    function map(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let concurrency = 1;\n      if ((options === null || options === void 0 \? void 0 : options.concurrency) != null)\n        concurrency = MathFloor(options.concurrency);\n      return validateInteger(concurrency, \"concurrency\", 1), async function* map2() {\n        var _options$signal, _options$signal2;\n        const ac = new AbortController, stream = this, queue = [], signal = ac.signal, signalOpt = {\n          signal\n        }, abort = () => ac.abort();\n        if (options !== null && options !== void 0 && (_options$signal = options.signal) !== null && _options$signal !== void 0 && _options$signal.aborted)\n          abort();\n        options === null || options === void 0 || (_options$signal2 = options.signal) === null || _options$signal2 === void 0 || _options$signal2.addEventListener(\"abort\", abort);\n        let next, resume, done = !1;\n        function onDone() {\n          done = !0;\n        }\n        async function pump() {\n          try {\n            for await (let val of stream) {\n              var _val;\n              if (done)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              try {\n                val = fn(val, signalOpt);\n              } catch (err) {\n                val = PromiseReject(err);\n              }\n              if (val === kEmpty)\n                continue;\n              if (typeof ((_val = val) === null || _val === void 0 \? void 0 : _val.catch) === \"function\")\n                val.catch(onDone);\n              if (queue.push(val), next)\n                next(), next = null;\n              if (!done && queue.length && queue.length >= concurrency)\n                await new Promise2((resolve) => {\n                  resume = resolve;\n                });\n            }\n            queue.push(kEof);\n          } catch (err) {\n            const val = PromiseReject(err);\n            PromisePrototypeCatch(val, onDone), queue.push(val);\n          } finally {\n            var _options$signal3;\n            if (done = !0, next)\n              next(), next = null;\n            options === null || options === void 0 || (_options$signal3 = options.signal) === null || _options$signal3 === void 0 || _options$signal3.removeEventListener(\"abort\", abort);\n          }\n        }\n        pump();\n        try {\n          while (!0) {\n            while (queue.length > 0) {\n              const val = await queue[0];\n              if (val === kEof)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              if (val !== kEmpty)\n                yield val;\n              if (queue.shift(), resume)\n                resume(), resume = null;\n            }\n            await new Promise2((resolve) => {\n              next = resolve;\n            });\n          }\n        } finally {\n          if (ac.abort(), done = !0, resume)\n            resume(), resume = null;\n        }\n      }.call(this);\n    }\n    function asIndexedPairs(options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return async function* asIndexedPairs2() {\n        let index = 0;\n        for await (let val of this) {\n          var _options$signal4;\n          if (options !== null && options !== void 0 && (_options$signal4 = options.signal) !== null && _options$signal4 !== void 0 && _options$signal4.aborted)\n            throw new AbortError2({\n              cause: options.signal.reason\n            });\n          yield [index++, val];\n        }\n      }.call(this);\n    }\n    async function some(fn, options = void 0) {\n      for await (let unused of filter.call(this, fn, options))\n        return !0;\n      return !1;\n    }\n    async function every(fn, options = void 0) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      return !await some.call(this, async (...args) => {\n        return !await fn(...args);\n      }, options);\n    }\n    async function find(fn, options) {\n      for await (let result of filter.call(this, fn, options))\n        return result;\n      return;\n    }\n    async function forEach(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function forEachFn(value, options2) {\n        return await fn(value, options2), kEmpty;\n      }\n      for await (let unused of map.call(this, forEachFn, options))\n        ;\n    }\n    function filter(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function filterFn(value, options2) {\n        if (await fn(value, options2))\n          return value;\n        return kEmpty;\n      }\n      return map.call(this, filterFn, options);\n    }\n    var ReduceAwareErrMissingArgs = class extends ERR_MISSING_ARGS {\n      constructor() {\n        super(\"reduce\");\n        this.message = \"Reduce of an empty stream requires an initial value\";\n      }\n    };\n    async function reduce(reducer, initialValue, options) {\n      var _options$signal5;\n      if (typeof reducer !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"reducer\", [\"Function\", \"AsyncFunction\"], reducer);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let hasInitialValue = arguments.length > 1;\n      if (options !== null && options !== void 0 && (_options$signal5 = options.signal) !== null && _options$signal5 !== void 0 && _options$signal5.aborted) {\n        const err = new AbortError2(void 0, {\n          cause: options.signal.reason\n        });\n        throw this.once(\"error\", () => {\n        }), await finished(this.destroy(err)), err;\n      }\n      const ac = new AbortController, signal = ac.signal;\n      if (options !== null && options !== void 0 && options.signal) {\n        const opts = {\n          once: !0,\n          [kWeakHandler]: this\n        };\n        options.signal.addEventListener(\"abort\", () => ac.abort(), opts);\n      }\n      let gotAnyItemFromStream = !1;\n      try {\n        for await (let value of this) {\n          var _options$signal6;\n          if (gotAnyItemFromStream = !0, options !== null && options !== void 0 && (_options$signal6 = options.signal) !== null && _options$signal6 !== void 0 && _options$signal6.aborted)\n            throw new AbortError2;\n          if (!hasInitialValue)\n            initialValue = value, hasInitialValue = !0;\n          else\n            initialValue = await reducer(initialValue, value, {\n              signal\n            });\n        }\n        if (!gotAnyItemFromStream && !hasInitialValue)\n          throw new ReduceAwareErrMissingArgs;\n      } finally {\n        ac.abort();\n      }\n      return initialValue;\n    }\n    async function toArray(options) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      const result = [];\n      for await (let val of this) {\n        var _options$signal7;\n        if (options !== null && options !== void 0 && (_options$signal7 = options.signal) !== null && _options$signal7 !== void 0 && _options$signal7.aborted)\n          throw new AbortError2(void 0, {\n            cause: options.signal.reason\n          });\n        ArrayPrototypePush(result, val);\n      }\n      return result;\n    }\n    function flatMap(fn, options) {\n      const values = map.call(this, fn, options);\n      return async function* flatMap2() {\n        for await (let val of values)\n          yield* val;\n      }.call(this);\n    }\n    function toIntegerOrInfinity(number) {\n      if (number = Number2(number), NumberIsNaN(number))\n        return 0;\n      if (number < 0)\n        throw new ERR_OUT_OF_RANGE(\"number\", \">= 0\", number);\n      return number;\n    }\n    function drop(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* drop2() {\n        var _options$signal8;\n        if (options !== null && options !== void 0 && (_options$signal8 = options.signal) !== null && _options$signal8 !== void 0 && _options$signal8.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal9;\n          if (options !== null && options !== void 0 && (_options$signal9 = options.signal) !== null && _options$signal9 !== void 0 && _options$signal9.aborted)\n            throw new AbortError2;\n          if (number-- <= 0)\n            yield val;\n        }\n      }.call(this);\n    }\n    function take(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* take2() {\n        var _options$signal10;\n        if (options !== null && options !== void 0 && (_options$signal10 = options.signal) !== null && _options$signal10 !== void 0 && _options$signal10.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal11;\n          if (options !== null && options !== void 0 && (_options$signal11 = options.signal) !== null && _options$signal11 !== void 0 && _options$signal11.aborted)\n            throw new AbortError2;\n          if (number-- > 0)\n            yield val;\n          else\n            return;\n        }\n      }.call(this);\n    }\n    module.exports.streamReturningOperators = {\n      asIndexedPairs,\n      drop,\n      filter,\n      flatMap,\n      map,\n      take\n    }, module.exports.promiseReturningOperators = {\n      every,\n      forEach,\n      reduce,\n      toArray,\n      some,\n      find\n    };\n  }\n}), require_destroy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/destroy.js\"(exports, module) {\n    var {\n      aggregateTwoErrors,\n      codes: { ERR_MULTIPLE_CALLBACK },\n      AbortError: AbortError2\n    } = require_errors(), { Symbol: Symbol2 } = require_primordials(), { kDestroyed, isDestroyed, isFinished, isServerRequest } = require_utils(), kDestroy = \"#kDestroy\", kConstruct = \"#kConstruct\";\n    function checkError(err, w, r) {\n      if (err) {\n        if (err.stack, w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n      }\n    }\n    function destroy2(err, cb) {\n      const r = this._readableState, w = this._writableState, s = w || r;\n      if (w && w.destroyed || r && r.destroyed) {\n        if (typeof cb === \"function\")\n          cb();\n        return this;\n      }\n      if (checkError(err, w, r), w)\n        w.destroyed = !0;\n      if (r)\n        r.destroyed = !0;\n      if (!s.constructed)\n        this.once(kDestroy, (er) => {\n          _destroy(this, aggregateTwoErrors(er, err), cb);\n        });\n      else\n        _destroy(this, err, cb);\n      return this;\n    }\n    function _destroy(self, err, cb) {\n      let called = !1;\n      function onDestroy(err2) {\n        if (called)\n          return;\n        called = !0;\n        const { _readableState: r, _writableState: w } = self;\n        if (checkError(err2, w, r), w)\n          w.closed = !0;\n        if (r)\n          r.closed = !0;\n        if (typeof cb === \"function\")\n          cb(err2);\n        if (err2)\n          runOnNextTick(emitErrorCloseNT, self, err2);\n        else\n          runOnNextTick(emitCloseNT, self);\n      }\n      try {\n        self._destroy(err || null, onDestroy);\n      } catch (err2) {\n        onDestroy(err2);\n      }\n    }\n    function emitErrorCloseNT(self, err) {\n      emitErrorNT(self, err), emitCloseNT(self);\n    }\n    function emitCloseNT(self) {\n      const { _readableState: r, _writableState: w } = self;\n      if (w)\n        w.closeEmitted = !0;\n      if (r)\n        r.closeEmitted = !0;\n      if (w && w.emitClose || r && r.emitClose)\n        self.emit(\"close\");\n    }\n    function emitErrorNT(self, err) {\n      const r = self\?._readableState, w = self\?._writableState;\n      if (w\?.errorEmitted || r\?.errorEmitted)\n        return;\n      if (w)\n        w.errorEmitted = !0;\n      if (r)\n        r.errorEmitted = !0;\n      self\?.emit\?.(\"error\", err);\n    }\n    function undestroy() {\n      const r = this._readableState, w = this._writableState;\n      if (r)\n        r.constructed = !0, r.closed = !1, r.closeEmitted = !1, r.destroyed = !1, r.errored = null, r.errorEmitted = !1, r.reading = !1, r.ended = r.readable === !1, r.endEmitted = r.readable === !1;\n      if (w)\n        w.constructed = !0, w.destroyed = !1, w.closed = !1, w.closeEmitted = !1, w.errored = null, w.errorEmitted = !1, w.finalCalled = !1, w.prefinished = !1, w.ended = w.writable === !1, w.ending = w.writable === !1, w.finished = w.writable === !1;\n    }\n    function errorOrDestroy2(stream, err, sync) {\n      const r = stream\?._readableState, w = stream\?._writableState;\n      if (w && w.destroyed || r && r.destroyed)\n        return this;\n      if (r && r.autoDestroy || w && w.autoDestroy)\n        stream.destroy(err);\n      else if (err) {\n        if (Error.captureStackTrace(err), w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n        if (sync)\n          runOnNextTick(emitErrorNT, stream, err);\n        else\n          emitErrorNT(stream, err);\n      }\n    }\n    function construct(stream, cb) {\n      if (typeof stream._construct !== \"function\")\n        return;\n      const { _readableState: r, _writableState: w } = stream;\n      if (r)\n        r.constructed = !1;\n      if (w)\n        w.constructed = !1;\n      if (stream.once(kConstruct, cb), stream.listenerCount(kConstruct) > 1)\n        return;\n      runOnNextTick(constructNT, stream);\n    }\n    function constructNT(stream) {\n      let called = !1;\n      function onConstruct(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : new ERR_MULTIPLE_CALLBACK);\n          return;\n        }\n        called = !0;\n        const { _readableState: r, _writableState: w } = stream, s = w || r;\n        if (r)\n          r.constructed = !0;\n        if (w)\n          w.constructed = !0;\n        if (s.destroyed)\n          stream.emit(kDestroy, err);\n        else if (err)\n          errorOrDestroy2(stream, err, !0);\n        else\n          runOnNextTick(emitConstructNT, stream);\n      }\n      try {\n        stream._construct(onConstruct);\n      } catch (err) {\n        onConstruct(err);\n      }\n    }\n    function emitConstructNT(stream) {\n      stream.emit(kConstruct);\n    }\n    function isRequest(stream) {\n      return stream && stream.setHeader && typeof stream.abort === \"function\";\n    }\n    function emitCloseLegacy(stream) {\n      stream.emit(\"close\");\n    }\n    function emitErrorCloseLegacy(stream, err) {\n      stream.emit(\"error\", err), runOnNextTick(emitCloseLegacy, stream);\n    }\n    function destroyer(stream, err) {\n      if (!stream || isDestroyed(stream))\n        return;\n      if (!err && !isFinished(stream))\n        err = new AbortError2;\n      if (isServerRequest(stream))\n        stream.socket = null, stream.destroy(err);\n      else if (isRequest(stream))\n        stream.abort();\n      else if (isRequest(stream.req))\n        stream.req.abort();\n      else if (typeof stream.destroy === \"function\")\n        stream.destroy(err);\n      else if (typeof stream.close === \"function\")\n        stream.close();\n      else if (err)\n        runOnNextTick(emitErrorCloseLegacy, stream);\n      else\n        runOnNextTick(emitCloseLegacy, stream);\n      if (!stream.destroyed)\n        stream[kDestroyed] = !0;\n    }\n    module.exports = {\n      construct,\n      destroyer,\n      destroy: destroy2,\n      undestroy,\n      errorOrDestroy: errorOrDestroy2\n    };\n  }\n}), require_legacy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/legacy.js\"(exports, module) {\n    var { ArrayIsArray, ObjectSetPrototypeOf } = require_primordials();\n    function Stream(options) {\n      if (!(this instanceof Stream))\n        return new Stream(options);\n      EE.call(this, options);\n    }\n    Stream.prototype = {}, ObjectSetPrototypeOf(Stream.prototype, EE.prototype), ObjectSetPrototypeOf(Stream, EE), Stream.prototype.pipe = function(dest, options) {\n      const source = this;\n      function ondata(chunk) {\n        if (dest.writable && dest.write(chunk) === !1 && source.pause)\n          source.pause();\n      }\n      source.on(\"data\", ondata);\n      function ondrain() {\n        if (source.readable && source.resume)\n          source.resume();\n      }\n      if (dest.on(\"drain\", ondrain), !dest._isStdio && (!options || options.end !== !1))\n        source.on(\"end\", onend), source.on(\"close\", onclose);\n      let didOnEnd = !1;\n      function onend() {\n        if (didOnEnd)\n          return;\n        didOnEnd = !0, dest.end();\n      }\n      function onclose() {\n        if (didOnEnd)\n          return;\n        if (didOnEnd = !0, typeof dest.destroy === \"function\")\n          dest.destroy();\n      }\n      function onerror(er) {\n        if (cleanup(), EE.listenerCount(this, \"error\") === 0)\n          this.emit(\"error\", er);\n      }\n      prependListener(source, \"error\", onerror), prependListener(dest, \"error\", onerror);\n      function cleanup() {\n        source.removeListener(\"data\", ondata), dest.removeListener(\"drain\", ondrain), source.removeListener(\"end\", onend), source.removeListener(\"close\", onclose), source.removeListener(\"error\", onerror), dest.removeListener(\"error\", onerror), source.removeListener(\"end\", cleanup), source.removeListener(\"close\", cleanup), dest.removeListener(\"close\", cleanup);\n      }\n      return source.on(\"end\", cleanup), source.on(\"close\", cleanup), dest.on(\"close\", cleanup), dest.emit(\"pipe\", source), dest;\n    };\n    function prependListener(emitter, event, fn) {\n      if (typeof emitter.prependListener === \"function\")\n        return emitter.prependListener(event, fn);\n      if (!emitter._events || !emitter._events[event])\n        emitter.on(event, fn);\n      else if (ArrayIsArray(emitter._events[event]))\n        emitter._events[event].unshift(fn);\n      else\n        emitter._events[event] = [fn, emitter._events[event]];\n    }\n    module.exports = {\n      Stream,\n      prependListener\n    };\n  }\n}), require_add_abort_signal = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/add-abort-signal.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), eos = require_end_of_stream(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2 } = codes, validateAbortSignal = (signal, name) => {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    };\n    function isNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\");\n    }\n    module.exports.addAbortSignal = function addAbortSignal(signal, stream) {\n      if (validateAbortSignal(signal, \"signal\"), !isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"stream.Stream\", stream);\n      return module.exports.addAbortSignalNoValidate(signal, stream);\n    }, module.exports.addAbortSignalNoValidate = function(signal, stream) {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        return stream;\n      const onAbort = () => {\n        stream.destroy(new AbortError2(void 0, {\n          cause: signal.reason\n        }));\n      };\n      if (signal.aborted)\n        onAbort();\n      else\n        signal.addEventListener(\"abort\", onAbort), eos(stream, () => signal.removeEventListener(\"abort\", onAbort));\n      return stream;\n    };\n  }\n}), require_state = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/state.js\"(exports, module) {\n    var { MathFloor, NumberIsInteger } = require_primordials(), { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2 } = require_errors().codes;\n    function highWaterMarkFrom2(options, isDuplex, duplexKey) {\n      return options.highWaterMark != null \? options.highWaterMark : isDuplex \? options[duplexKey] : null;\n    }\n    function getDefaultHighWaterMark2(objectMode) {\n      return objectMode \? 16 : 16384;\n    }\n    function getHighWaterMark2(state, options, duplexKey, isDuplex) {\n      const hwm = highWaterMarkFrom2(options, isDuplex, duplexKey);\n      if (hwm != null) {\n        if (!NumberIsInteger(hwm) || hwm < 0) {\n          const name = isDuplex \? `options.${duplexKey}` : \"options.highWaterMark\";\n          throw new ERR_INVALID_ARG_VALUE2(name, hwm);\n        }\n        return MathFloor(hwm);\n      }\n      return getDefaultHighWaterMark2(state.objectMode);\n    }\n    module.exports = {\n      getHighWaterMark: getHighWaterMark2,\n      getDefaultHighWaterMark: getDefaultHighWaterMark2\n    };\n  }\n}), require_from = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/from.js\"(exports, module) {\n    var { PromisePrototypeThen, SymbolAsyncIterator, SymbolIterator } = require_primordials(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_NULL_VALUES } = require_errors().codes;\n    function from(Readable, iterable, opts) {\n      let iterator;\n      if (typeof iterable === \"string\" || iterable instanceof Buffer)\n        return new Readable({\n          objectMode: !0,\n          ...opts,\n          read() {\n            this.push(iterable), this.push(null);\n          }\n        });\n      let isAsync;\n      if (iterable && iterable[SymbolAsyncIterator])\n        isAsync = !0, iterator = iterable[SymbolAsyncIterator]();\n      else if (iterable && iterable[SymbolIterator])\n        isAsync = !1, iterator = iterable[SymbolIterator]();\n      else\n        throw new ERR_INVALID_ARG_TYPE2(\"iterable\", [\"Iterable\"], iterable);\n      const readable = new Readable({\n        objectMode: !0,\n        highWaterMark: 1,\n        ...opts\n      });\n      let reading = !1;\n      readable._read = function() {\n        if (!reading)\n          reading = !0, next();\n      }, readable._destroy = function(error, cb) {\n        PromisePrototypeThen(close(error), () => runOnNextTick(cb, error), (e) => runOnNextTick(cb, e || error));\n      };\n      async function close(error) {\n        const hadError = error !== void 0 && error !== null, hasThrow = typeof iterator.throw === \"function\";\n        if (hadError && hasThrow) {\n          const { value, done } = await iterator.throw(error);\n          if (await value, done)\n            return;\n        }\n        if (typeof iterator.return === \"function\") {\n          const { value } = await iterator.return();\n          await value;\n        }\n      }\n      async function next() {\n        for (;; ) {\n          try {\n            const { value, done } = isAsync \? await iterator.next() : iterator.next();\n            if (done)\n              readable.push(null);\n            else {\n              const res = value && typeof value.then === \"function\" \? await value : value;\n              if (res === null)\n                throw reading = !1, new ERR_STREAM_NULL_VALUES;\n              else if (readable.push(res))\n                continue;\n              else\n                reading = !1;\n            }\n          } catch (err) {\n            readable.destroy(err);\n          }\n          break;\n        }\n      }\n      return readable;\n    }\n    module.exports = from;\n  }\n}), _ReadableFromWeb, _ReadableFromWebForUndici, require_readable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/readable.js\"(exports, module) {\n    var {\n      ArrayPrototypeIndexOf,\n      NumberIsInteger,\n      NumberIsNaN,\n      NumberParseInt,\n      ObjectDefineProperties,\n      ObjectKeys,\n      ObjectSetPrototypeOf,\n      Promise: Promise2,\n      SafeSet,\n      SymbolAsyncIterator,\n      Symbol: Symbol2\n    } = require_primordials(), { Stream, prependListener } = require_legacy();\n    function Readable(options) {\n      if (!(this instanceof Readable))\n        return new Readable(options);\n      const isDuplex = this instanceof require_duplex();\n      if (this._readableState = new ReadableState(options, this, isDuplex), options) {\n        const { read, destroy: destroy2, construct, signal } = options;\n        if (typeof read === \"function\")\n          this._read = read;\n        if (typeof destroy2 === \"function\")\n          this._destroy = destroy2;\n        if (typeof construct === \"function\")\n          this._construct = construct;\n        if (signal && !isDuplex)\n          addAbortSignal(signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        if (this._readableState.needReadable)\n          maybeReadMore(this, this._readableState);\n      });\n    }\n    Readable.prototype = {}, ObjectSetPrototypeOf(Readable.prototype, Stream.prototype), ObjectSetPrototypeOf(Readable, Stream), Readable.prototype.on = function(ev, fn) {\n      const res = Stream.prototype.on.call(this, ev, fn), state = this._readableState;\n      if (ev === \"data\") {\n        if (state.readableListening = this.listenerCount(\"readable\") > 0, state.flowing !== !1)\n          this.resume();\n      } else if (ev === \"readable\") {\n        if (!state.endEmitted && !state.readableListening) {\n          if (state.readableListening = state.needReadable = !0, state.flowing = !1, state.emittedReadable = !1, state.length)\n            emitReadable(this, state);\n          else if (!state.reading)\n            runOnNextTick(nReadingNextTick, this);\n        } else if (state.endEmitted)\n          ;\n      }\n      return res;\n    };\n\n    class ReadableFromWeb extends Readable {\n      #reader;\n      #closed;\n      #pendingChunks;\n      #stream;\n      constructor(options, stream) {\n        const { objectMode, highWaterMark, encoding, signal } = options;\n        super({\n          objectMode,\n          highWaterMark,\n          encoding,\n          signal\n        });\n        this.#pendingChunks = [], this.#reader = void 0, this.#stream = stream, this.#closed = !1;\n      }\n      #drainPending() {\n        var pendingChunks = this.#pendingChunks, pendingChunksI = 0, pendingChunksCount = pendingChunks.length;\n        for (;pendingChunksI < pendingChunksCount; pendingChunksI++) {\n          const chunk = pendingChunks[pendingChunksI];\n          if (pendingChunks[pendingChunksI] = void 0, !this.push(chunk, void 0))\n            return this.#pendingChunks = pendingChunks.slice(pendingChunksI + 1), !0;\n        }\n        if (pendingChunksCount > 0)\n          this.#pendingChunks = [];\n        return !1;\n      }\n      #handleDone(reader) {\n        reader.releaseLock(), this.#reader = void 0, this.#closed = !0, this.push(null);\n        return;\n      }\n      async _read() {\n        var stream = this.#stream, reader = this.#reader;\n        if (stream)\n          reader = this.#reader = stream.getReader(), this.#stream = void 0;\n        else if (this.#drainPending())\n          return;\n        var deferredError;\n        try {\n          do {\n            var done = !1, value;\n            const firstResult = reader.readMany();\n            if (@isPromise(firstResult)) {\n              if ({ done, value } = await firstResult, this.#closed) {\n                this.#pendingChunks.push(...value);\n                return;\n              }\n            } else\n              ({ done, value } = firstResult);\n            if (done) {\n              this.#handleDone(reader);\n              return;\n            }\n            if (!this.push(value[0])) {\n              this.#pendingChunks = value.slice(1);\n              return;\n            }\n            for (let i = 1, count = value.length;i < count; i++)\n              if (!this.push(value[i])) {\n                this.#pendingChunks = value.slice(i + 1);\n                return;\n              }\n          } while (!this.#closed);\n        } catch (e) {\n          deferredError = e;\n        } finally {\n          if (deferredError)\n            throw deferredError;\n        }\n      }\n      _destroy(error, callback) {\n        if (!this.#closed) {\n          var reader = this.#reader;\n          if (reader)\n            this.#reader = void 0, reader.cancel(error).finally(() => {\n              this.#closed = !0, callback(error);\n            });\n          return;\n        }\n        try {\n          callback(error);\n        } catch (error2) {\n          globalThis.reportError(error2);\n        }\n      }\n    }\n    _ReadableFromWebForUndici = ReadableFromWeb;\n    function newStreamReadableFromReadableStream(readableStream, options = {}) {\n      if (!isReadableStream(readableStream))\n        throw new ERR_INVALID_ARG_TYPE2(\"readableStream\", \"ReadableStream\", readableStream);\n      validateObject(options, \"options\");\n      const {\n        highWaterMark,\n        encoding,\n        objectMode = !1,\n        signal\n      } = options;\n      if (encoding !== void 0 && !Buffer.isEncoding(encoding))\n        throw new ERR_INVALID_ARG_VALUE(encoding, \"options.encoding\");\n      return validateBoolean(objectMode, \"options.objectMode\"), getNativeReadableStream(Readable, readableStream, options) || new ReadableFromWeb({\n        highWaterMark,\n        encoding,\n        objectMode,\n        signal\n      }, readableStream);\n    }\n    module.exports = Readable, _ReadableFromWeb = newStreamReadableFromReadableStream;\n    var { addAbortSignal } = require_add_abort_signal(), eos = require_end_of_stream();\n    function maybeReadMore(stream, state) {\n      if (!state.readingMore && state.constructed)\n        state.readingMore = !0, process.nextTick(maybeReadMore_, stream, state);\n    }\n    function maybeReadMore_(stream, state) {\n      while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) {\n        const len = state.length;\n        if (stream.read(0), len === state.length)\n          break;\n      }\n      state.readingMore = !1;\n    }\n    function emitReadable(stream) {\n      const state = stream._readableState;\n      if (state.needReadable = !1, !state.emittedReadable)\n        state.emittedReadable = !0, process.nextTick(emitReadable_, stream);\n    }\n    function emitReadable_(stream) {\n      const state = stream._readableState;\n      if (!state.destroyed && !state.errored && (state.length || state.ended))\n        stream.emit(\"readable\"), state.emittedReadable = !1;\n      state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark, flow(stream);\n    }\n    function flow(stream) {\n      const state = stream._readableState;\n      while (state.flowing && stream.read() !== null)\n        ;\n    }\n    function onEofChunk(stream, state) {\n      if (state.ended)\n        return;\n      if (state.decoder) {\n        const chunk = state.decoder.end();\n        if (chunk && chunk.length)\n          state.buffer.push(chunk), state.length += state.objectMode \? 1 : chunk.length;\n      }\n      if (state.ended = !0, state.sync)\n        emitReadable(stream);\n      else\n        state.needReadable = !1, state.emittedReadable = !0, emitReadable_(stream);\n    }\n    function resume(stream, state) {\n      if (!state.resumeScheduled)\n        state.resumeScheduled = !0, process.nextTick(resume_, stream, state);\n    }\n    function resume_(stream, state) {\n      if (!state.reading)\n        stream.read(0);\n      if (state.resumeScheduled = !1, stream.emit(\"resume\"), flow(stream), state.flowing && !state.reading)\n        stream.read(0);\n    }\n    var destroyImpl = require_destroy(), {\n      aggregateTwoErrors,\n      codes: {\n        ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n        ERR_METHOD_NOT_IMPLEMENTED,\n        ERR_OUT_OF_RANGE,\n        ERR_STREAM_PUSH_AFTER_EOF,\n        ERR_STREAM_UNSHIFT_AFTER_END_EVENT\n      }\n    } = require_errors(), { validateObject } = require_validators(), from = require_from(), nop = () => {\n    }, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    Readable.prototype.destroy = destroyImpl.destroy, Readable.prototype._undestroy = destroyImpl.undestroy, Readable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Readable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    }, Readable.prototype.push = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !1);\n    }, Readable.prototype.unshift = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !0);\n    };\n    function readableAddChunk(stream, chunk, encoding, addToFront) {\n      const state = stream._readableState;\n      let err;\n      if (!state.objectMode) {\n        if (typeof chunk === \"string\") {\n          if (encoding = encoding || state.defaultEncoding, state.encoding !== encoding)\n            if (addToFront && state.encoding)\n              chunk = Buffer.from(chunk, encoding).toString(state.encoding);\n            else\n              chunk = Buffer.from(chunk, encoding), encoding = \"\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"\";\n        else if (Stream._isUint8Array(chunk)) {\n          if (addToFront || !state.decoder)\n            chunk = Stream._uint8ArrayToBuffer(chunk);\n          encoding = \"\";\n        } else if (chunk != null)\n          err = new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      }\n      if (err)\n        errorOrDestroy2(stream, err);\n      else if (chunk === null)\n        state.reading = !1, onEofChunk(stream, state);\n      else if (state.objectMode || chunk && chunk.length > 0)\n        if (addToFront)\n          if (state.endEmitted)\n            errorOrDestroy2(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT);\n          else if (state.destroyed || state.errored)\n            return !1;\n          else\n            addChunk(stream, state, chunk, !0);\n        else if (state.ended)\n          errorOrDestroy2(stream, new ERR_STREAM_PUSH_AFTER_EOF);\n        else if (state.destroyed || state.errored)\n          return !1;\n        else if (state.reading = !1, state.decoder && !encoding)\n          if (chunk = state.decoder.write(chunk), state.objectMode || chunk.length !== 0)\n            addChunk(stream, state, chunk, !1);\n          else\n            maybeReadMore(stream, state);\n        else\n          addChunk(stream, state, chunk, !1);\n      else if (!addToFront)\n        state.reading = !1, maybeReadMore(stream, state);\n      return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n    }\n    function addChunk(stream, state, chunk, addToFront) {\n      if (state.flowing && state.length === 0 && !state.sync && stream.listenerCount(\"data\") > 0) {\n        if (state.multiAwaitDrain)\n          state.awaitDrainWriters.clear();\n        else\n          state.awaitDrainWriters = null;\n        state.dataEmitted = !0, stream.emit(\"data\", chunk);\n      } else {\n        if (state.length += state.objectMode \? 1 : chunk.length, addToFront)\n          state.buffer.unshift(chunk);\n        else\n          state.buffer.push(chunk);\n        if (state.needReadable)\n          emitReadable(stream, state);\n      }\n      maybeReadMore(stream, state);\n    }\n    Readable.prototype.isPaused = function() {\n      const state = this._readableState;\n      return state.paused === !0 || state.flowing === !1;\n    }, Readable.prototype.setEncoding = function(enc) {\n      const decoder = new StringDecoder(enc);\n      this._readableState.decoder = decoder, this._readableState.encoding = this._readableState.decoder.encoding;\n      const buffer = this._readableState.buffer;\n      let content = \"\";\n      for (let i = buffer.length;i > 0; i--)\n        content += decoder.write(buffer.shift());\n      if (content !== \"\")\n        buffer.push(content);\n      return this._readableState.length = content.length, this;\n    };\n    var MAX_HWM = 1073741824;\n    function computeNewHighWaterMark(n) {\n      if (n > MAX_HWM)\n        throw new ERR_OUT_OF_RANGE(\"size\", \"<= 1GiB\", n);\n      else\n        n--, n |= n >>> 1, n |= n >>> 2, n |= n >>> 4, n |= n >>> 8, n |= n >>> 16, n++;\n      return n;\n    }\n    function howMuchToRead(n, state) {\n      if (n <= 0 || state.length === 0 && state.ended)\n        return 0;\n      if (state.objectMode)\n        return 1;\n      if (NumberIsNaN(n)) {\n        if (state.flowing && state.length)\n          return state.buffer.first().length;\n        return state.length;\n      }\n      if (n <= state.length)\n        return n;\n      return state.ended \? state.length : 0;\n    }\n    Readable.prototype.read = function(n) {\n      if (!NumberIsInteger(n))\n        n = NumberParseInt(n, 10);\n      const state = this._readableState, nOrig = n;\n      if (n > state.highWaterMark)\n        state.highWaterMark = computeNewHighWaterMark(n);\n      if (n !== 0)\n        state.emittedReadable = !1;\n      if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 \? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n        if (state.length === 0 && state.ended)\n          endReadable(this);\n        else\n          emitReadable(this, state);\n        return null;\n      }\n      if (n = howMuchToRead(n, state), n === 0 && state.ended) {\n        if (state.length === 0)\n          endReadable(this);\n        return null;\n      }\n      let doRead = state.needReadable;\n      if (state.length === 0 || state.length - n < state.highWaterMark)\n        doRead = !0;\n      if (state.ended || state.reading || state.destroyed || state.errored || !state.constructed)\n        doRead = !1;\n      else if (doRead) {\n        if (state.reading = !0, state.sync = !0, state.length === 0)\n          state.needReadable = !0;\n        try {\n          var result = this._read(state.highWaterMark);\n          if (@isPromise(result)) {\n            const peeked = Bun.peek(result);\n            if (peeked !== result)\n              result = peeked;\n          }\n          if (@isPromise(result) && result\?.then && @isCallable(result.then))\n            result.then(nop, function(err) {\n              errorOrDestroy2(this, err);\n            });\n        } catch (err) {\n          errorOrDestroy2(this, err);\n        }\n        if (state.sync = !1, !state.reading)\n          n = howMuchToRead(nOrig, state);\n      }\n      let ret;\n      if (n > 0)\n        ret = fromList(n, state);\n      else\n        ret = null;\n      if (ret === null)\n        state.needReadable = state.length <= state.highWaterMark, n = 0;\n      else if (state.length -= n, state.multiAwaitDrain)\n        state.awaitDrainWriters.clear();\n      else\n        state.awaitDrainWriters = null;\n      if (state.length === 0) {\n        if (!state.ended)\n          state.needReadable = !0;\n        if (nOrig !== n && state.ended)\n          endReadable(this);\n      }\n      if (ret !== null && !state.errorEmitted && !state.closeEmitted)\n        state.dataEmitted = !0, this.emit(\"data\", ret);\n      return ret;\n    }, Readable.prototype._read = function(n) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_read()\");\n    }, Readable.prototype.pipe = function(dest, pipeOpts) {\n      const src = this, state = this._readableState;\n      if (state.pipes.length === 1) {\n        if (!state.multiAwaitDrain)\n          state.multiAwaitDrain = !0, state.awaitDrainWriters = new SafeSet(state.awaitDrainWriters \? [state.awaitDrainWriters] : []);\n      }\n      state.pipes.push(dest);\n      const endFn = (!pipeOpts || pipeOpts.end !== !1) && dest !== process.stdout && dest !== process.stderr \? onend : unpipe;\n      if (state.endEmitted)\n        runOnNextTick(endFn);\n      else\n        src.once(\"end\", endFn);\n      dest.on(\"unpipe\", onunpipe);\n      function onunpipe(readable, unpipeInfo) {\n        if (readable === src) {\n          if (unpipeInfo && unpipeInfo.hasUnpiped === !1)\n            unpipeInfo.hasUnpiped = !0, cleanup();\n        }\n      }\n      function onend() {\n        dest.end();\n      }\n      let ondrain, cleanedUp = !1;\n      function cleanup() {\n        if (dest.removeListener(\"close\", onclose), dest.removeListener(\"finish\", onfinish), ondrain)\n          dest.removeListener(\"drain\", ondrain);\n        if (dest.removeListener(\"error\", onerror), dest.removeListener(\"unpipe\", onunpipe), src.removeListener(\"end\", onend), src.removeListener(\"end\", unpipe), src.removeListener(\"data\", ondata), cleanedUp = !0, ondrain && state.awaitDrainWriters && (!dest._writableState || dest._writableState.needDrain))\n          ondrain();\n      }\n      function pause() {\n        if (!cleanedUp) {\n          if (state.pipes.length === 1 && state.pipes[0] === dest)\n            state.awaitDrainWriters = dest, state.multiAwaitDrain = !1;\n          else if (state.pipes.length > 1 && state.pipes.includes(dest))\n            state.awaitDrainWriters.add(dest);\n          src.pause();\n        }\n        if (!ondrain)\n          ondrain = pipeOnDrain(src, dest), dest.on(\"drain\", ondrain);\n      }\n      src.on(\"data\", ondata);\n      function ondata(chunk) {\n        if (dest.write(chunk) === !1)\n          pause();\n      }\n      function onerror(er) {\n        if (unpipe(), dest.removeListener(\"error\", onerror), dest.listenerCount(\"error\") === 0) {\n          const s = dest._writableState || dest._readableState;\n          if (s && !s.errorEmitted)\n            errorOrDestroy2(dest, er);\n          else\n            dest.emit(\"error\", er);\n        }\n      }\n      prependListener(dest, \"error\", onerror);\n      function onclose() {\n        dest.removeListener(\"finish\", onfinish), unpipe();\n      }\n      dest.once(\"close\", onclose);\n      function onfinish() {\n        dest.removeListener(\"close\", onclose), unpipe();\n      }\n      dest.once(\"finish\", onfinish);\n      function unpipe() {\n        src.unpipe(dest);\n      }\n      if (dest.emit(\"pipe\", src), dest.writableNeedDrain === !0) {\n        if (state.flowing)\n          pause();\n      } else if (!state.flowing)\n        src.resume();\n      return dest;\n    };\n    function pipeOnDrain(src, dest) {\n      return function pipeOnDrainFunctionResult() {\n        const state = src._readableState;\n        if (state.awaitDrainWriters === dest)\n          state.awaitDrainWriters = null;\n        else if (state.multiAwaitDrain)\n          state.awaitDrainWriters.delete(dest);\n        if ((!state.awaitDrainWriters || state.awaitDrainWriters.size === 0) && src.listenerCount(\"data\"))\n          src.resume();\n      };\n    }\n    Readable.prototype.unpipe = function(dest) {\n      const state = this._readableState, unpipeInfo = {\n        hasUnpiped: !1\n      };\n      if (state.pipes.length === 0)\n        return this;\n      if (!dest) {\n        const dests = state.pipes;\n        state.pipes = [], this.pause();\n        for (let i = 0;i < dests.length; i++)\n          dests[i].emit(\"unpipe\", this, {\n            hasUnpiped: !1\n          });\n        return this;\n      }\n      const index = ArrayPrototypeIndexOf(state.pipes, dest);\n      if (index === -1)\n        return this;\n      if (state.pipes.splice(index, 1), state.pipes.length === 0)\n        this.pause();\n      return dest.emit(\"unpipe\", this, unpipeInfo), this;\n    }, Readable.prototype.addListener = Readable.prototype.on, Readable.prototype.removeListener = function(ev, fn) {\n      const res = Stream.prototype.removeListener.call(this, ev, fn);\n      if (ev === \"readable\")\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    }, Readable.prototype.off = Readable.prototype.removeListener, Readable.prototype.removeAllListeners = function(ev) {\n      const res = Stream.prototype.removeAllListeners.apply(this, arguments);\n      if (ev === \"readable\" || ev === void 0)\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    };\n    function updateReadableListening(self) {\n      const state = self._readableState;\n      if (state.readableListening = self.listenerCount(\"readable\") > 0, state.resumeScheduled && state.paused === !1)\n        state.flowing = !0;\n      else if (self.listenerCount(\"data\") > 0)\n        self.resume();\n      else if (!state.readableListening)\n        state.flowing = null;\n    }\n    function nReadingNextTick(self) {\n      self.read(0);\n    }\n    Readable.prototype.resume = function() {\n      const state = this._readableState;\n      if (!state.flowing)\n        state.flowing = !state.readableListening, resume(this, state);\n      return state.paused = !1, this;\n    }, Readable.prototype.pause = function() {\n      if (this._readableState.flowing !== !1)\n        this._readableState.flowing = !1, this.emit(\"pause\");\n      return this._readableState.paused = !0, this;\n    }, Readable.prototype.wrap = function(stream) {\n      let paused = !1;\n      stream.on(\"data\", (chunk) => {\n        if (!this.push(chunk) && stream.pause)\n          paused = !0, stream.pause();\n      }), stream.on(\"end\", () => {\n        this.push(null);\n      }), stream.on(\"error\", (err) => {\n        errorOrDestroy2(this, err);\n      }), stream.on(\"close\", () => {\n        this.destroy();\n      }), stream.on(\"destroy\", () => {\n        this.destroy();\n      }), this._read = () => {\n        if (paused && stream.resume)\n          paused = !1, stream.resume();\n      };\n      const streamKeys = ObjectKeys(stream);\n      for (let j = 1;j < streamKeys.length; j++) {\n        const i = streamKeys[j];\n        if (this[i] === void 0 && typeof stream[i] === \"function\")\n          this[i] = stream[i].bind(stream);\n      }\n      return this;\n    }, Readable.prototype[SymbolAsyncIterator] = function() {\n      return streamToAsyncIterator(this);\n    }, Readable.prototype.iterator = function(options) {\n      if (options !== void 0)\n        validateObject(options, \"options\");\n      return streamToAsyncIterator(this, options);\n    };\n    function streamToAsyncIterator(stream, options) {\n      if (typeof stream.read !== \"function\")\n        stream = Readable.wrap(stream, {\n          objectMode: !0\n        });\n      const iter = createAsyncIterator(stream, options);\n      return iter.stream = stream, iter;\n    }\n    async function* createAsyncIterator(stream, options) {\n      let callback = nop;\n      function next(resolve) {\n        if (this === stream)\n          callback(), callback = nop;\n        else\n          callback = resolve;\n      }\n      stream.on(\"readable\", next);\n      let error;\n      const cleanup = eos(stream, {\n        writable: !1\n      }, (err) => {\n        error = err \? aggregateTwoErrors(error, err) : null, callback(), callback = nop;\n      });\n      try {\n        while (!0) {\n          const chunk = stream.destroyed \? null : stream.read();\n          if (chunk !== null)\n            yield chunk;\n          else if (error)\n            throw error;\n          else if (error === null)\n            return;\n          else\n            await new Promise2(next);\n        }\n      } catch (err) {\n        throw error = aggregateTwoErrors(error, err), error;\n      } finally {\n        if ((error || (options === null || options === void 0 \? void 0 : options.destroyOnReturn) !== !1) && (error === void 0 || stream._readableState.autoDestroy))\n          destroyImpl.destroyer(stream, null);\n        else\n          stream.off(\"readable\", next), cleanup();\n      }\n    }\n    ObjectDefineProperties(Readable.prototype, {\n      readable: {\n        get() {\n          const r = this._readableState;\n          return !!r && r.readable !== !1 && !r.destroyed && !r.errorEmitted && !r.endEmitted;\n        },\n        set(val) {\n          if (this._readableState)\n            this._readableState.readable = !!val;\n        }\n      },\n      readableDidRead: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.dataEmitted;\n        }\n      },\n      readableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._readableState.readable !== !1 && (this._readableState.destroyed || this._readableState.errored) && !this._readableState.endEmitted);\n        }\n      },\n      readableHighWaterMark: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.highWaterMark;\n        }\n      },\n      readableBuffer: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState && this._readableState.buffer;\n        }\n      },\n      readableFlowing: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.flowing;\n        },\n        set: function(state) {\n          if (this._readableState)\n            this._readableState.flowing = state;\n        }\n      },\n      readableLength: {\n        enumerable: !1,\n        get() {\n          return this._readableState.length;\n        }\n      },\n      readableObjectMode: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.objectMode : !1;\n        }\n      },\n      readableEncoding: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.encoding : null;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.errored : null;\n        }\n      },\n      closed: {\n        get() {\n          return this._readableState \? this._readableState.closed : !1;\n        }\n      },\n      destroyed: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.destroyed : !1;\n        },\n        set(value) {\n          if (!this._readableState)\n            return;\n          this._readableState.destroyed = value;\n        }\n      },\n      readableEnded: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.endEmitted : !1;\n        }\n      }\n    }), Readable._fromList = fromList;\n    function fromList(n, state) {\n      if (state.length === 0)\n        return null;\n      let ret;\n      if (state.objectMode)\n        ret = state.buffer.shift();\n      else if (!n || n >= state.length) {\n        if (state.decoder)\n          ret = state.buffer.join(\"\");\n        else if (state.buffer.length === 1)\n          ret = state.buffer.first();\n        else\n          ret = state.buffer.concat(state.length);\n        state.buffer.clear();\n      } else\n        ret = state.buffer.consume(n, state.decoder);\n      return ret;\n    }\n    function endReadable(stream) {\n      const state = stream._readableState;\n      if (!state.endEmitted)\n        state.ended = !0, runOnNextTick(endReadableNT, state, stream);\n    }\n    function endReadableNT(state, stream) {\n      if (!state.errored && !state.closeEmitted && !state.endEmitted && state.length === 0) {\n        if (state.endEmitted = !0, stream.emit(\"end\"), stream.writable && stream.allowHalfOpen === !1)\n          runOnNextTick(endWritableNT, stream);\n        else if (state.autoDestroy) {\n          const wState = stream._writableState;\n          if (!wState || wState.autoDestroy && (wState.finished || wState.writable === !1))\n            stream.destroy();\n        }\n      }\n    }\n    function endWritableNT(stream) {\n      if (stream.writable && !stream.writableEnded && !stream.destroyed)\n        stream.end();\n    }\n    Readable.from = function(iterable, opts) {\n      return from(Readable, iterable, opts);\n    };\n    var webStreamsAdapters = {\n      newStreamReadableFromReadableStream,\n      newReadableStreamFromStreamReadable(streamReadable, options = {}) {\n        if (typeof streamReadable\?._readableState !== \"object\")\n          throw new ERR_INVALID_ARG_TYPE2(\"streamReadable\", \"stream.Readable\", streamReadable);\n        var { isDestroyed, isReadable } = require_utils();\n        if (isDestroyed(streamReadable) || !isReadable(streamReadable)) {\n          const readable = new ReadableStream;\n          return readable.cancel(), readable;\n        }\n        const { readableObjectMode: objectMode, readableHighWaterMark: highWaterMark } = streamReadable, strategy = ((strategy2) => {\n          if (strategy2)\n            return strategy2;\n          if (objectMode)\n            return new CountQueuingStrategy({ highWaterMark });\n          return { highWaterMark };\n        })(options\?.strategy);\n        let controller;\n        function onData(chunk) {\n          if (controller.enqueue(chunk), controller.desiredSize <= 0)\n            streamReadable.pause();\n        }\n        streamReadable.pause();\n        const cleanup = eos(streamReadable, (error) => {\n          if (error\?.code === \"ERR_STREAM_PREMATURE_CLOSE\")\n            error = new AbortError(void 0, { cause: error });\n          if (cleanup(), streamReadable.on(\"error\", () => {\n          }), error)\n            return controller.error(error);\n          controller.close();\n        });\n        return streamReadable.on(\"data\", onData), new ReadableStream({\n          start(c) {\n            controller = c;\n          },\n          pull() {\n            streamReadable.resume();\n          },\n          cancel(reason) {\n            destroy(streamReadable, reason);\n          }\n        }, strategy);\n      }\n    };\n    Readable.fromWeb = function(readableStream, options) {\n      return webStreamsAdapters.newStreamReadableFromReadableStream(readableStream, options);\n    }, Readable.toWeb = function(streamReadable, options) {\n      return webStreamsAdapters.newReadableStreamFromStreamReadable(streamReadable, options);\n    }, Readable.wrap = function(src, options) {\n      var _ref, _src$readableObjectMo;\n      return new Readable({\n        objectMode: (_ref = (_src$readableObjectMo = src.readableObjectMode) !== null && _src$readableObjectMo !== void 0 \? _src$readableObjectMo : src.objectMode) !== null && _ref !== void 0 \? _ref : !0,\n        ...options,\n        destroy(err, callback) {\n          destroyImpl.destroyer(src, err), callback(err);\n        }\n      }).wrap(src);\n    };\n  }\n}), require_writable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/writable.js\"(exports, module) {\n    var {\n      ArrayPrototypeSlice,\n      Error: Error2,\n      FunctionPrototypeSymbolHasInstance,\n      ObjectDefineProperty,\n      ObjectDefineProperties,\n      ObjectSetPrototypeOf,\n      StringPrototypeToLowerCase,\n      Symbol: Symbol2,\n      SymbolHasInstance\n    } = require_primordials(), Stream = require_legacy().Stream, destroyImpl = require_destroy(), { addAbortSignal } = require_add_abort_signal(), { getHighWaterMark: getHighWaterMark2, getDefaultHighWaterMark: getDefaultHighWaterMark2 } = require_state(), {\n      ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n      ERR_METHOD_NOT_IMPLEMENTED,\n      ERR_MULTIPLE_CALLBACK,\n      ERR_STREAM_CANNOT_PIPE,\n      ERR_STREAM_DESTROYED,\n      ERR_STREAM_ALREADY_FINISHED,\n      ERR_STREAM_NULL_VALUES,\n      ERR_STREAM_WRITE_AFTER_END,\n      ERR_UNKNOWN_ENCODING\n    } = require_errors().codes, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    function Writable(options = {}) {\n      const isDuplex = this instanceof require_duplex();\n      if (!isDuplex && !FunctionPrototypeSymbolHasInstance(Writable, this))\n        return new Writable(options);\n      if (this._writableState = new WritableState(options, this, isDuplex), options) {\n        if (typeof options.write === \"function\")\n          this._write = options.write;\n        if (typeof options.writev === \"function\")\n          this._writev = options.writev;\n        if (typeof options.destroy === \"function\")\n          this._destroy = options.destroy;\n        if (typeof options.final === \"function\")\n          this._final = options.final;\n        if (typeof options.construct === \"function\")\n          this._construct = options.construct;\n        if (options.signal)\n          addAbortSignal(options.signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        const state = this._writableState;\n        if (!state.writing)\n          clearBuffer(this, state);\n        finishMaybe(this, state);\n      });\n    }\n    Writable.prototype = {}, ObjectSetPrototypeOf(Writable.prototype, Stream.prototype), ObjectSetPrototypeOf(Writable, Stream), module.exports = Writable;\n    function nop() {\n    }\n    var kOnFinished = Symbol2(\"kOnFinished\");\n    function WritableState(options, stream, isDuplex) {\n      if (typeof isDuplex !== \"boolean\")\n        isDuplex = stream instanceof require_duplex();\n      if (this.objectMode = !!(options && options.objectMode), isDuplex)\n        this.objectMode = this.objectMode || !!(options && options.writableObjectMode);\n      this.highWaterMark = options \? getHighWaterMark2(this, options, \"writableHighWaterMark\", isDuplex) : getDefaultHighWaterMark2(!1), this.finalCalled = !1, this.needDrain = !1, this.ending = !1, this.ended = !1, this.finished = !1, this.destroyed = !1;\n      const noDecode = !!(options && options.decodeStrings === !1);\n      this.decodeStrings = !noDecode, this.defaultEncoding = options && options.defaultEncoding || \"utf8\", this.length = 0, this.writing = !1, this.corked = 0, this.sync = !0, this.bufferProcessing = !1, this.onwrite = onwrite.bind(void 0, stream), this.writecb = null, this.writelen = 0, this.afterWriteTickInfo = null, resetBuffer(this), this.pendingcb = 0, this.constructed = !0, this.prefinished = !1, this.errorEmitted = !1, this.emitClose = !options || options.emitClose !== !1, this.autoDestroy = !options || options.autoDestroy !== !1, this.errored = null, this.closed = !1, this.closeEmitted = !1, this[kOnFinished] = [];\n    }\n    WritableState.prototype = {};\n    function resetBuffer(state) {\n      state.buffered = [], state.bufferedIndex = 0, state.allBuffers = !0, state.allNoop = !0;\n    }\n    WritableState.prototype.getBuffer = function getBuffer() {\n      return ArrayPrototypeSlice(this.buffered, this.bufferedIndex);\n    }, ObjectDefineProperty(WritableState.prototype, \"bufferedRequestCount\", {\n      get() {\n        return this.buffered.length - this.bufferedIndex;\n      }\n    }), ObjectDefineProperty(Writable, SymbolHasInstance, {\n      value: function(object) {\n        if (FunctionPrototypeSymbolHasInstance(this, object))\n          return !0;\n        if (this !== Writable)\n          return !1;\n        return object && object._writableState instanceof WritableState;\n      }\n    }), Writable.prototype.pipe = function() {\n      errorOrDestroy2(this, new ERR_STREAM_CANNOT_PIPE);\n    };\n    function _write(stream, chunk, encoding, cb) {\n      const state = stream._writableState;\n      if (typeof encoding === \"function\")\n        cb = encoding, encoding = state.defaultEncoding;\n      else {\n        if (!encoding)\n          encoding = state.defaultEncoding;\n        else if (encoding !== \"buffer\" && !Buffer.isEncoding(encoding))\n          throw new ERR_UNKNOWN_ENCODING(encoding);\n        if (typeof cb !== \"function\")\n          cb = nop;\n      }\n      if (chunk === null)\n        throw new ERR_STREAM_NULL_VALUES;\n      else if (!state.objectMode)\n        if (typeof chunk === \"string\") {\n          if (state.decodeStrings !== !1)\n            chunk = Buffer.from(chunk, encoding), encoding = \"buffer\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"buffer\";\n        else if (Stream._isUint8Array(chunk))\n          chunk = Stream._uint8ArrayToBuffer(chunk), encoding = \"buffer\";\n        else\n          throw new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      let err;\n      if (state.ending)\n        err = new ERR_STREAM_WRITE_AFTER_END;\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"write\");\n      if (err)\n        return runOnNextTick(cb, err), errorOrDestroy2(stream, err, !0), err;\n      return state.pendingcb++, writeOrBuffer(stream, state, chunk, encoding, cb);\n    }\n    Writable.prototype.write = function(chunk, encoding, cb) {\n      return _write(this, chunk, encoding, cb) === !0;\n    }, Writable.prototype.cork = function() {\n      this._writableState.corked++;\n    }, Writable.prototype.uncork = function() {\n      const state = this._writableState;\n      if (state.corked) {\n        if (state.corked--, !state.writing)\n          clearBuffer(this, state);\n      }\n    }, Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n      if (typeof encoding === \"string\")\n        encoding = StringPrototypeToLowerCase(encoding);\n      if (!Buffer.isEncoding(encoding))\n        throw new ERR_UNKNOWN_ENCODING(encoding);\n      return this._writableState.defaultEncoding = encoding, this;\n    };\n    function writeOrBuffer(stream, state, chunk, encoding, callback) {\n      const len = state.objectMode \? 1 : chunk.length;\n      state.length += len;\n      const ret = state.length < state.highWaterMark;\n      if (!ret)\n        state.needDrain = !0;\n      if (state.writing || state.corked || state.errored || !state.constructed) {\n        if (state.buffered.push({\n          chunk,\n          encoding,\n          callback\n        }), state.allBuffers && encoding !== \"buffer\")\n          state.allBuffers = !1;\n        if (state.allNoop && callback !== nop)\n          state.allNoop = !1;\n      } else\n        state.writelen = len, state.writecb = callback, state.writing = !0, state.sync = !0, stream._write(chunk, encoding, state.onwrite), state.sync = !1;\n      return ret && !state.errored && !state.destroyed;\n    }\n    function doWrite(stream, state, writev, len, chunk, encoding, cb) {\n      if (state.writelen = len, state.writecb = cb, state.writing = !0, state.sync = !0, state.destroyed)\n        state.onwrite(new ERR_STREAM_DESTROYED(\"write\"));\n      else if (writev)\n        stream._writev(chunk, state.onwrite);\n      else\n        stream._write(chunk, encoding, state.onwrite);\n      state.sync = !1;\n    }\n    function onwriteError(stream, state, er, cb) {\n      --state.pendingcb, cb(er), errorBuffer(state), errorOrDestroy2(stream, er);\n    }\n    function onwrite(stream, er) {\n      const state = stream._writableState, sync = state.sync, cb = state.writecb;\n      if (typeof cb !== \"function\") {\n        errorOrDestroy2(stream, new ERR_MULTIPLE_CALLBACK);\n        return;\n      }\n      if (state.writing = !1, state.writecb = null, state.length -= state.writelen, state.writelen = 0, er) {\n        if (Error.captureStackTrace(er), !state.errored)\n          state.errored = er;\n        if (stream._readableState && !stream._readableState.errored)\n          stream._readableState.errored = er;\n        if (sync)\n          runOnNextTick(onwriteError, stream, state, er, cb);\n        else\n          onwriteError(stream, state, er, cb);\n      } else {\n        if (state.buffered.length > state.bufferedIndex)\n          clearBuffer(stream, state);\n        if (sync)\n          if (state.afterWriteTickInfo !== null && state.afterWriteTickInfo.cb === cb)\n            state.afterWriteTickInfo.count++;\n          else\n            state.afterWriteTickInfo = {\n              count: 1,\n              cb,\n              stream,\n              state\n            }, runOnNextTick(afterWriteTick, state.afterWriteTickInfo);\n        else\n          afterWrite(stream, state, 1, cb);\n      }\n    }\n    function afterWriteTick({ stream, state, count, cb }) {\n      return state.afterWriteTickInfo = null, afterWrite(stream, state, count, cb);\n    }\n    function afterWrite(stream, state, count, cb) {\n      if (!state.ending && !stream.destroyed && state.length === 0 && state.needDrain)\n        state.needDrain = !1, stream.emit(\"drain\");\n      while (count-- > 0)\n        state.pendingcb--, cb();\n      if (state.destroyed)\n        errorBuffer(state);\n      finishMaybe(stream, state);\n    }\n    function errorBuffer(state) {\n      if (state.writing)\n        return;\n      for (let n = state.bufferedIndex;n < state.buffered.length; ++n) {\n        var _state$errored;\n        const { chunk, callback } = state.buffered[n], len = state.objectMode \? 1 : chunk.length;\n        state.length -= len, callback((_state$errored = state.errored) !== null && _state$errored !== void 0 \? _state$errored : new ERR_STREAM_DESTROYED(\"write\"));\n      }\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++) {\n        var _state$errored2;\n        onfinishCallbacks[i]((_state$errored2 = state.errored) !== null && _state$errored2 !== void 0 \? _state$errored2 : new ERR_STREAM_DESTROYED(\"end\"));\n      }\n      resetBuffer(state);\n    }\n    function clearBuffer(stream, state) {\n      if (state.corked || state.bufferProcessing || state.destroyed || !state.constructed)\n        return;\n      const { buffered, bufferedIndex, objectMode } = state, bufferedLength = buffered.length - bufferedIndex;\n      if (!bufferedLength)\n        return;\n      let i = bufferedIndex;\n      if (state.bufferProcessing = !0, bufferedLength > 1 && stream._writev) {\n        state.pendingcb -= bufferedLength - 1;\n        const callback = state.allNoop \? nop : (err) => {\n          for (let n = i;n < buffered.length; ++n)\n            buffered[n].callback(err);\n        }, chunks = state.allNoop && i === 0 \? buffered : ArrayPrototypeSlice(buffered, i);\n        chunks.allBuffers = state.allBuffers, doWrite(stream, state, !0, state.length, chunks, \"\", callback), resetBuffer(state);\n      } else {\n        do {\n          const { chunk, encoding, callback } = buffered[i];\n          buffered[i++] = null;\n          const len = objectMode \? 1 : chunk.length;\n          doWrite(stream, state, !1, len, chunk, encoding, callback);\n        } while (i < buffered.length && !state.writing);\n        if (i === buffered.length)\n          resetBuffer(state);\n        else if (i > 256)\n          buffered.splice(0, i), state.bufferedIndex = 0;\n        else\n          state.bufferedIndex = i;\n      }\n      state.bufferProcessing = !1;\n    }\n    Writable.prototype._write = function(chunk, encoding, cb) {\n      if (this._writev)\n        this._writev([\n          {\n            chunk,\n            encoding\n          }\n        ], cb);\n      else\n        throw new ERR_METHOD_NOT_IMPLEMENTED(\"_write()\");\n    }, Writable.prototype._writev = null, Writable.prototype.end = function(chunk, encoding, cb, native = !1) {\n      const state = this._writableState;\n      if (typeof chunk === \"function\")\n        cb = chunk, chunk = null, encoding = null;\n      else if (typeof encoding === \"function\")\n        cb = encoding, encoding = null;\n      let err;\n      if (chunk !== null && chunk !== void 0) {\n        let ret;\n        if (!native)\n          ret = _write(this, chunk, encoding);\n        else\n          ret = this.write(chunk, encoding);\n        if (ret instanceof Error2)\n          err = ret;\n      }\n      if (state.corked)\n        state.corked = 1, this.uncork();\n      if (err)\n        this.emit(\"error\", err);\n      else if (!state.errored && !state.ending)\n        state.ending = !0, finishMaybe(this, state, !0), state.ended = !0;\n      else if (state.finished)\n        err = new ERR_STREAM_ALREADY_FINISHED(\"end\");\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"end\");\n      if (typeof cb === \"function\")\n        if (err || state.finished)\n          runOnNextTick(cb, err);\n        else\n          state[kOnFinished].push(cb);\n      return this;\n    };\n    function needFinish(state, tag) {\n      var needFinish2 = state.ending && !state.destroyed && state.constructed && state.length === 0 && !state.errored && state.buffered.length === 0 && !state.finished && !state.writing && !state.errorEmitted && !state.closeEmitted;\n      return needFinish2;\n    }\n    function callFinal(stream, state) {\n      let called = !1;\n      function onFinish(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : ERR_MULTIPLE_CALLBACK());\n          return;\n        }\n        if (called = !0, state.pendingcb--, err) {\n          const onfinishCallbacks = state[kOnFinished].splice(0);\n          for (let i = 0;i < onfinishCallbacks.length; i++)\n            onfinishCallbacks[i](err);\n          errorOrDestroy2(stream, err, state.sync);\n        } else if (needFinish(state))\n          state.prefinished = !0, stream.emit(\"prefinish\"), state.pendingcb++, runOnNextTick(finish, stream, state);\n      }\n      state.sync = !0, state.pendingcb++;\n      try {\n        stream._final(onFinish);\n      } catch (err) {\n        onFinish(err);\n      }\n      state.sync = !1;\n    }\n    function prefinish(stream, state) {\n      if (!state.prefinished && !state.finalCalled)\n        if (typeof stream._final === \"function\" && !state.destroyed)\n          state.finalCalled = !0, callFinal(stream, state);\n        else\n          state.prefinished = !0, stream.emit(\"prefinish\");\n    }\n    function finishMaybe(stream, state, sync) {\n      if (!needFinish(state, stream.__id))\n        return;\n      if (prefinish(stream, state), state.pendingcb === 0) {\n        if (sync)\n          state.pendingcb++, runOnNextTick((stream2, state2) => {\n            if (needFinish(state2))\n              finish(stream2, state2);\n            else\n              state2.pendingcb--;\n          }, stream, state);\n        else if (needFinish(state))\n          state.pendingcb++, finish(stream, state);\n      }\n    }\n    function finish(stream, state) {\n      state.pendingcb--, state.finished = !0;\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++)\n        onfinishCallbacks[i]();\n      if (stream.emit(\"finish\"), state.autoDestroy) {\n        const rState = stream._readableState;\n        if (!rState || rState.autoDestroy && (rState.endEmitted || rState.readable === !1))\n          stream.destroy();\n      }\n    }\n    ObjectDefineProperties(Writable.prototype, {\n      closed: {\n        get() {\n          return this._writableState \? this._writableState.closed : !1;\n        }\n      },\n      destroyed: {\n        get() {\n          return this._writableState \? this._writableState.destroyed : !1;\n        },\n        set(value) {\n          if (this._writableState)\n            this._writableState.destroyed = value;\n        }\n      },\n      writable: {\n        get() {\n          const w = this._writableState;\n          return !!w && w.writable !== !1 && !w.destroyed && !w.errored && !w.ending && !w.ended;\n        },\n        set(val) {\n          if (this._writableState)\n            this._writableState.writable = !!val;\n        }\n      },\n      writableFinished: {\n        get() {\n          return this._writableState \? this._writableState.finished : !1;\n        }\n      },\n      writableObjectMode: {\n        get() {\n          return this._writableState \? this._writableState.objectMode : !1;\n        }\n      },\n      writableBuffer: {\n        get() {\n          return this._writableState && this._writableState.getBuffer();\n        }\n      },\n      writableEnded: {\n        get() {\n          return this._writableState \? this._writableState.ending : !1;\n        }\n      },\n      writableNeedDrain: {\n        get() {\n          const wState = this._writableState;\n          if (!wState)\n            return !1;\n          return !wState.destroyed && !wState.ending && wState.needDrain;\n        }\n      },\n      writableHighWaterMark: {\n        get() {\n          return this._writableState && this._writableState.highWaterMark;\n        }\n      },\n      writableCorked: {\n        get() {\n          return this._writableState \? this._writableState.corked : 0;\n        }\n      },\n      writableLength: {\n        get() {\n          return this._writableState && this._writableState.length;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._writableState \? this._writableState.errored : null;\n        }\n      },\n      writableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._writableState.writable !== !1 && (this._writableState.destroyed || this._writableState.errored) && !this._writableState.finished);\n        }\n      }\n    });\n    var destroy2 = destroyImpl.destroy;\n    Writable.prototype.destroy = function(err, cb) {\n      const state = this._writableState;\n      if (!state.destroyed && (state.bufferedIndex < state.buffered.length || state[kOnFinished].length))\n        runOnNextTick(errorBuffer, state);\n      return destroy2.call(this, err, cb), this;\n    }, Writable.prototype._undestroy = destroyImpl.undestroy, Writable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Writable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    };\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Writable.fromWeb = function(writableStream, options) {\n      return lazyWebStreams().newStreamWritableFromWritableStream(writableStream, options);\n    }, Writable.toWeb = function(streamWritable) {\n      return lazyWebStreams().newWritableStreamFromStreamWritable(streamWritable);\n    };\n  }\n}), require_duplexify = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplexify.js\"(exports, module) {\n    var {\n      isReadable,\n      isWritable,\n      isIterable,\n      isNodeStream,\n      isReadableNodeStream,\n      isWritableNodeStream,\n      isDuplexNodeStream\n    } = require_utils(), eos = require_end_of_stream(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE }\n    } = require_errors(), { destroyer } = require_destroy(), Duplex = require_duplex(), Readable = require_readable(), { createDeferredPromise } = require_util(), from = require_from(), isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    }, { FunctionPrototypeCall } = require_primordials();\n\n    class Duplexify extends Duplex {\n      constructor(options) {\n        super(options);\n        if ((options === null || options === void 0 \? void 0 : options.readable) === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if ((options === null || options === void 0 \? void 0 : options.writable) === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      }\n    }\n    module.exports = function duplexify(body, name) {\n      if (isDuplexNodeStream(body))\n        return body;\n      if (isReadableNodeStream(body))\n        return _duplexify({\n          readable: body\n        });\n      if (isWritableNodeStream(body))\n        return _duplexify({\n          writable: body\n        });\n      if (isNodeStream(body))\n        return _duplexify({\n          writable: !1,\n          readable: !1\n        });\n      if (typeof body === \"function\") {\n        const { value, write, final, destroy: destroy2 } = fromAsyncGen(body);\n        if (isIterable(value))\n          return from(Duplexify, value, {\n            objectMode: !0,\n            write,\n            final,\n            destroy: destroy2\n          });\n        const then2 = value === null || value === void 0 \? void 0 : value.then;\n        if (typeof then2 === \"function\") {\n          let d;\n          const promise = FunctionPrototypeCall(then2, value, (val) => {\n            if (val != null)\n              throw new ERR_INVALID_RETURN_VALUE(\"nully\", \"body\", val);\n          }, (err) => {\n            destroyer(d, err);\n          });\n          return d = new Duplexify({\n            objectMode: !0,\n            readable: !1,\n            write,\n            final(cb) {\n              final(async () => {\n                try {\n                  await promise, runOnNextTick(cb, null);\n                } catch (err) {\n                  runOnNextTick(cb, err);\n                }\n              });\n            },\n            destroy: destroy2\n          });\n        }\n        throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or AsyncFunction\", name, value);\n      }\n      if (isBlob(body))\n        return duplexify(body.arrayBuffer());\n      if (isIterable(body))\n        return from(Duplexify, body, {\n          objectMode: !0,\n          writable: !1\n        });\n      if (typeof (body === null || body === void 0 \? void 0 : body.writable) === \"object\" || typeof (body === null || body === void 0 \? void 0 : body.readable) === \"object\") {\n        const readable = body !== null && body !== void 0 && body.readable \? isReadableNodeStream(body === null || body === void 0 \? void 0 : body.readable) \? body === null || body === void 0 \? void 0 : body.readable : duplexify(body.readable) : void 0, writable = body !== null && body !== void 0 && body.writable \? isWritableNodeStream(body === null || body === void 0 \? void 0 : body.writable) \? body === null || body === void 0 \? void 0 : body.writable : duplexify(body.writable) : void 0;\n        return _duplexify({\n          readable,\n          writable\n        });\n      }\n      const then = body === null || body === void 0 \? void 0 : body.then;\n      if (typeof then === \"function\") {\n        let d;\n        return FunctionPrototypeCall(then, body, (val) => {\n          if (val != null)\n            d.push(val);\n          d.push(null);\n        }, (err) => {\n          destroyer(d, err);\n        }), d = new Duplexify({\n          objectMode: !0,\n          writable: !1,\n          read() {\n          }\n        });\n      }\n      throw new ERR_INVALID_ARG_TYPE2(name, [\n        \"Blob\",\n        \"ReadableStream\",\n        \"WritableStream\",\n        \"Stream\",\n        \"Iterable\",\n        \"AsyncIterable\",\n        \"Function\",\n        \"{ readable, writable } pair\",\n        \"Promise\"\n      ], body);\n    };\n    function fromAsyncGen(fn) {\n      let { promise, resolve } = createDeferredPromise();\n      const ac = new AbortController, signal = ac.signal;\n      return {\n        value: fn(async function* () {\n          while (!0) {\n            const _promise = promise;\n            promise = null;\n            const { chunk, done, cb } = await _promise;\n            if (runOnNextTick(cb), done)\n              return;\n            if (signal.aborted)\n              throw new AbortError2(void 0, {\n                cause: signal.reason\n              });\n            ({ promise, resolve } = createDeferredPromise()), yield chunk;\n          }\n        }(), {\n          signal\n        }),\n        write(chunk, encoding, cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            chunk,\n            done: !1,\n            cb\n          });\n        },\n        final(cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            done: !0,\n            cb\n          });\n        },\n        destroy(err, cb) {\n          ac.abort(), cb(err);\n        }\n      };\n    }\n    function _duplexify(pair) {\n      const r = pair.readable && typeof pair.readable.read !== \"function\" \? Readable.wrap(pair.readable) : pair.readable, w = pair.writable;\n      let readable = !!isReadable(r), writable = !!isWritable(w), ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      if (d = new Duplexify({\n        readableObjectMode: !!(r !== null && r !== void 0 && r.readableObjectMode),\n        writableObjectMode: !!(w !== null && w !== void 0 && w.writableObjectMode),\n        readable,\n        writable\n      }), writable)\n        eos(w, (err) => {\n          if (writable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), d._write = function(chunk, encoding, callback) {\n          if (w.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          w.end(), onfinish = callback;\n        }, w.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), w.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        eos(r, (err) => {\n          if (readable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), r.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), r.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = r.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(w, err), destroyer(r, err);\n      }, d;\n    }\n  }\n}), require_duplex = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplex.js\"(exports, module) {\n    var { ObjectDefineProperties, ObjectGetOwnPropertyDescriptor, ObjectKeys, ObjectSetPrototypeOf } = require_primordials(), Readable = require_readable();\n    function Duplex(options) {\n      if (!(this instanceof Duplex))\n        return new Duplex(options);\n      if (Readable.call(this, options), Writable.call(this, options), options) {\n        if (this.allowHalfOpen = options.allowHalfOpen !== !1, options.readable === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if (options.writable === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      } else\n        this.allowHalfOpen = !0;\n    }\n    Duplex.prototype = {}, module.exports = Duplex, ObjectSetPrototypeOf(Duplex.prototype, Readable.prototype), ObjectSetPrototypeOf(Duplex, Readable);\n    for (var method in Writable.prototype)\n      if (!Duplex.prototype[method])\n        Duplex.prototype[method] = Writable.prototype[method];\n    ObjectDefineProperties(Duplex.prototype, {\n      writable: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writable\"),\n      writableHighWaterMark: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableHighWaterMark\"),\n      writableObjectMode: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableObjectMode\"),\n      writableBuffer: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableBuffer\"),\n      writableLength: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableLength\"),\n      writableFinished: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableFinished\"),\n      writableCorked: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableCorked\"),\n      writableEnded: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableEnded\"),\n      writableNeedDrain: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableNeedDrain\"),\n      destroyed: {\n        get() {\n          if (this._readableState === void 0 || this._writableState === void 0)\n            return !1;\n          return this._readableState.destroyed && this._writableState.destroyed;\n        },\n        set(value) {\n          if (this._readableState && this._writableState)\n            this._readableState.destroyed = value, this._writableState.destroyed = value;\n        }\n      }\n    });\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Duplex.fromWeb = function(pair, options) {\n      return lazyWebStreams().newStreamDuplexFromReadableWritablePair(pair, options);\n    }, Duplex.toWeb = function(duplex) {\n      return lazyWebStreams().newReadableWritablePairFromDuplex(duplex);\n    };\n    var duplexify;\n    Duplex.from = function(body) {\n      if (!duplexify)\n        duplexify = require_duplexify();\n      return duplexify(body, \"body\");\n    };\n  }\n}), require_transform = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/transform.js\"(exports, module) {\n    var { ObjectSetPrototypeOf, Symbol: Symbol2 } = require_primordials(), { ERR_METHOD_NOT_IMPLEMENTED } = require_errors().codes, Duplex = require_duplex();\n    function Transform(options) {\n      if (!(this instanceof Transform))\n        return new Transform(options);\n      if (Duplex.call(this, options), this._readableState.sync = !1, this[kCallback] = null, options) {\n        if (typeof options.transform === \"function\")\n          this._transform = options.transform;\n        if (typeof options.flush === \"function\")\n          this._flush = options.flush;\n      }\n      this.on(\"prefinish\", prefinish.bind(this));\n    }\n    Transform.prototype = {}, ObjectSetPrototypeOf(Transform.prototype, Duplex.prototype), ObjectSetPrototypeOf(Transform, Duplex), module.exports = Transform;\n    var kCallback = Symbol2(\"kCallback\");\n    function final(cb) {\n      if (typeof this._flush === \"function\" && !this.destroyed)\n        this._flush((er, data) => {\n          if (er) {\n            if (cb)\n              cb(er);\n            else\n              this.destroy(er);\n            return;\n          }\n          if (data != null)\n            this.push(data);\n          if (this.push(null), cb)\n            cb();\n        });\n      else if (this.push(null), cb)\n        cb();\n    }\n    function prefinish() {\n      if (this._final !== final)\n        final.call(this);\n    }\n    Transform.prototype._final = final, Transform.prototype._transform = function(chunk, encoding, callback) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_transform()\");\n    }, Transform.prototype._write = function(chunk, encoding, callback) {\n      const rState = this._readableState, wState = this._writableState, length = rState.length;\n      this._transform(chunk, encoding, (err, val) => {\n        if (err) {\n          callback(err);\n          return;\n        }\n        if (val != null)\n          this.push(val);\n        if (wState.ended || length === rState.length || rState.length < rState.highWaterMark || rState.highWaterMark === 0 || rState.length === 0)\n          callback();\n        else\n          this[kCallback] = callback;\n      });\n    }, Transform.prototype._read = function() {\n      if (this[kCallback]) {\n        const callback = this[kCallback];\n        this[kCallback] = null, callback();\n      }\n    };\n  }\n}), require_passthrough = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/passthrough.js\"(exports, module) {\n    var { ObjectSetPrototypeOf } = require_primordials(), Transform = require_transform();\n    function PassThrough(options) {\n      if (!(this instanceof PassThrough))\n        return new PassThrough(options);\n      Transform.call(this, options);\n    }\n    PassThrough.prototype = {}, ObjectSetPrototypeOf(PassThrough.prototype, Transform.prototype), ObjectSetPrototypeOf(PassThrough, Transform), PassThrough.prototype._transform = function(chunk, encoding, cb) {\n      cb(null, chunk);\n    }, module.exports = PassThrough;\n  }\n}), require_pipeline = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/pipeline.js\"(exports, module) {\n    var { ArrayIsArray, Promise: Promise2, SymbolAsyncIterator } = require_primordials(), eos = require_end_of_stream(), { once } = require_util(), destroyImpl = require_destroy(), Duplex = require_duplex(), {\n      aggregateTwoErrors,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE, ERR_MISSING_ARGS, ERR_STREAM_DESTROYED },\n      AbortError: AbortError2\n    } = require_errors(), { validateFunction, validateAbortSignal } = require_validators(), { isIterable, isReadable, isReadableNodeStream, isNodeStream } = require_utils(), PassThrough, Readable;\n    function destroyer(stream, reading, writing) {\n      let finished = !1;\n      stream.on(\"close\", () => {\n        finished = !0;\n      });\n      const cleanup = eos(stream, {\n        readable: reading,\n        writable: writing\n      }, (err) => {\n        finished = !err;\n      });\n      return {\n        destroy: (err) => {\n          if (finished)\n            return;\n          finished = !0, destroyImpl.destroyer(stream, err || new ERR_STREAM_DESTROYED(\"pipe\"));\n        },\n        cleanup\n      };\n    }\n    function popCallback(streams) {\n      return validateFunction(streams[streams.length - 1], \"streams[stream.length - 1]\"), streams.pop();\n    }\n    function makeAsyncIterable(val) {\n      if (isIterable(val))\n        return val;\n      else if (isReadableNodeStream(val))\n        return fromReadable(val);\n      throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], val);\n    }\n    async function* fromReadable(val) {\n      if (!Readable)\n        Readable = require_readable();\n      yield* Readable.prototype[SymbolAsyncIterator].call(val);\n    }\n    async function pump(iterable, writable, finish, { end }) {\n      let error, onresolve = null;\n      const resume = (err) => {\n        if (err)\n          error = err;\n        if (onresolve) {\n          const callback = onresolve;\n          onresolve = null, callback();\n        }\n      }, wait = () => new Promise2((resolve, reject) => {\n        if (error)\n          reject(error);\n        else\n          onresolve = () => {\n            if (error)\n              reject(error);\n            else\n              resolve();\n          };\n      });\n      writable.on(\"drain\", resume);\n      const cleanup = eos(writable, {\n        readable: !1\n      }, resume);\n      try {\n        if (writable.writableNeedDrain)\n          await wait();\n        for await (let chunk of iterable)\n          if (!writable.write(chunk))\n            await wait();\n        if (end)\n          writable.end();\n        await wait(), finish();\n      } catch (err) {\n        finish(error !== err \? aggregateTwoErrors(error, err) : err);\n      } finally {\n        cleanup(), writable.off(\"drain\", resume);\n      }\n    }\n    function pipeline(...streams) {\n      return pipelineImpl(streams, once(popCallback(streams)));\n    }\n    function pipelineImpl(streams, callback, opts) {\n      if (streams.length === 1 && ArrayIsArray(streams[0]))\n        streams = streams[0];\n      if (streams.length < 2)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      const ac = new AbortController, signal = ac.signal, outerSignal = opts === null || opts === void 0 \? void 0 : opts.signal, lastStreamCleanup = [];\n      validateAbortSignal(outerSignal, \"options.signal\");\n      function abort() {\n        finishImpl(new AbortError2);\n      }\n      outerSignal === null || outerSignal === void 0 || outerSignal.addEventListener(\"abort\", abort);\n      let error, value;\n      const destroys = [];\n      let finishCount = 0;\n      function finish(err) {\n        finishImpl(err, --finishCount === 0);\n      }\n      function finishImpl(err, final) {\n        if (err && (!error || error.code === \"ERR_STREAM_PREMATURE_CLOSE\"))\n          error = err;\n        if (!error && !final)\n          return;\n        while (destroys.length)\n          destroys.shift()(error);\n        if (outerSignal === null || outerSignal === void 0 || outerSignal.removeEventListener(\"abort\", abort), ac.abort(), final) {\n          if (!error)\n            lastStreamCleanup.forEach((fn) => fn());\n          runOnNextTick(callback, error, value);\n        }\n      }\n      let ret;\n      for (let i = 0;i < streams.length; i++) {\n        const stream = streams[i], reading = i < streams.length - 1, writing = i > 0, end = reading || (opts === null || opts === void 0 \? void 0 : opts.end) !== !1, isLastStream = i === streams.length - 1;\n        if (isNodeStream(stream)) {\n          let onError = function(err) {\n            if (err && err.name !== \"AbortError\" && err.code !== \"ERR_STREAM_PREMATURE_CLOSE\")\n              finish(err);\n          };\n          if (end) {\n            const { destroy: destroy2, cleanup } = destroyer(stream, reading, writing);\n            if (destroys.push(destroy2), isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n          if (stream.on(\"error\", onError), isReadable(stream) && isLastStream)\n            lastStreamCleanup.push(() => {\n              stream.removeListener(\"error\", onError);\n            });\n        }\n        if (i === 0)\n          if (typeof stream === \"function\") {\n            if (ret = stream({\n              signal\n            }), !isIterable(ret))\n              throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or Stream\", \"source\", ret);\n          } else if (isIterable(stream) || isReadableNodeStream(stream))\n            ret = stream;\n          else\n            ret = Duplex.from(stream);\n        else if (typeof stream === \"function\")\n          if (ret = makeAsyncIterable(ret), ret = stream(ret, {\n            signal\n          }), reading) {\n            if (!isIterable(ret, !0))\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable\", `transform[${i - 1}]`, ret);\n          } else {\n            var _ret;\n            if (!PassThrough)\n              PassThrough = require_passthrough();\n            const pt = new PassThrough({\n              objectMode: !0\n            }), then = (_ret = ret) === null || _ret === void 0 \? void 0 : _ret.then;\n            if (typeof then === \"function\")\n              finishCount++, then.call(ret, (val) => {\n                if (value = val, val != null)\n                  pt.write(val);\n                if (end)\n                  pt.end();\n                runOnNextTick(finish);\n              }, (err) => {\n                pt.destroy(err), runOnNextTick(finish, err);\n              });\n            else if (isIterable(ret, !0))\n              finishCount++, pump(ret, pt, finish, {\n                end\n              });\n            else\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable or Promise\", \"destination\", ret);\n            ret = pt;\n            const { destroy: destroy2, cleanup } = destroyer(ret, !1, !0);\n            if (destroys.push(destroy2), isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n        else if (isNodeStream(stream)) {\n          if (isReadableNodeStream(ret)) {\n            finishCount += 2;\n            const cleanup = pipe(ret, stream, finish, {\n              end\n            });\n            if (isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          } else if (isIterable(ret))\n            finishCount++, pump(ret, stream, finish, {\n              end\n            });\n          else\n            throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], ret);\n          ret = stream;\n        } else\n          ret = Duplex.from(stream);\n      }\n      if (signal !== null && signal !== void 0 && signal.aborted || outerSignal !== null && outerSignal !== void 0 && outerSignal.aborted)\n        runOnNextTick(abort);\n      return ret;\n    }\n    function pipe(src, dst, finish, { end }) {\n      if (src.pipe(dst, {\n        end\n      }), end)\n        src.once(\"end\", () => dst.end());\n      else\n        finish();\n      return eos(src, {\n        readable: !0,\n        writable: !1\n      }, (err) => {\n        const rState = src._readableState;\n        if (err && err.code === \"ERR_STREAM_PREMATURE_CLOSE\" && rState && rState.ended && !rState.errored && !rState.errorEmitted)\n          src.once(\"end\", finish).once(\"error\", finish);\n        else\n          finish(err);\n      }), eos(dst, {\n        readable: !1,\n        writable: !0\n      }, finish);\n    }\n    module.exports = {\n      pipelineImpl,\n      pipeline\n    };\n  }\n}), require_compose = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/compose.js\"(exports, module) {\n    var { pipeline } = require_pipeline(), Duplex = require_duplex(), { destroyer } = require_destroy(), { isNodeStream, isReadable, isWritable } = require_utils(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_MISSING_ARGS }\n    } = require_errors();\n    module.exports = function compose(...streams) {\n      if (streams.length === 0)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      if (streams.length === 1)\n        return Duplex.from(streams[0]);\n      const orgStreams = [...streams];\n      if (typeof streams[0] === \"function\")\n        streams[0] = Duplex.from(streams[0]);\n      if (typeof streams[streams.length - 1] === \"function\") {\n        const idx = streams.length - 1;\n        streams[idx] = Duplex.from(streams[idx]);\n      }\n      for (let n = 0;n < streams.length; ++n) {\n        if (!isNodeStream(streams[n]))\n          continue;\n        if (n < streams.length - 1 && !isReadable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be readable\");\n        if (n > 0 && !isWritable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be writable\");\n      }\n      let ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      const head = streams[0], tail = pipeline(streams, onfinished), writable = !!isWritable(head), readable = !!isReadable(tail);\n      if (d = new Duplex({\n        writableObjectMode: !!(head !== null && head !== void 0 && head.writableObjectMode),\n        readableObjectMode: !!(tail !== null && tail !== void 0 && tail.writableObjectMode),\n        writable,\n        readable\n      }), writable)\n        d._write = function(chunk, encoding, callback) {\n          if (head.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          head.end(), onfinish = callback;\n        }, head.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), tail.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        tail.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), tail.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = tail.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(tail, err);\n      }, d;\n    };\n  }\n}), require_promises = __commonJS({\n  \"node_modules/readable-stream/lib/stream/promises.js\"(exports, module) {\n    var { ArrayPrototypePop, Promise: Promise2 } = require_primordials(), { isIterable, isNodeStream } = require_utils(), { pipelineImpl: pl } = require_pipeline(), { finished } = require_end_of_stream();\n    function pipeline(...streams) {\n      return new Promise2((resolve, reject) => {\n        let signal, end;\n        const lastArg = streams[streams.length - 1];\n        if (lastArg && typeof lastArg === \"object\" && !isNodeStream(lastArg) && !isIterable(lastArg)) {\n          const options = ArrayPrototypePop(streams);\n          signal = options.signal, end = options.end;\n        }\n        pl(streams, (err, value) => {\n          if (err)\n            reject(err);\n          else\n            resolve(value);\n        }, {\n          signal,\n          end\n        });\n      });\n    }\n    module.exports = {\n      finished,\n      pipeline\n    };\n  }\n}), require_stream = __commonJS({\n  \"node_modules/readable-stream/lib/stream.js\"(exports, module) {\n    var { ObjectDefineProperty, ObjectKeys, ReflectApply } = require_primordials(), {\n      promisify: { custom: customPromisify }\n    } = require_util(), { streamReturningOperators, promiseReturningOperators } = require_operators(), {\n      codes: { ERR_ILLEGAL_CONSTRUCTOR }\n    } = require_errors(), compose = require_compose(), { pipeline } = require_pipeline(), { destroyer } = require_destroy(), eos = require_end_of_stream(), promises = require_promises(), utils = require_utils(), Stream = module.exports = require_legacy().Stream;\n    Stream.isDisturbed = utils.isDisturbed, Stream.isErrored = utils.isErrored, Stream.isWritable = utils.isWritable, Stream.isReadable = utils.isReadable, Stream.Readable = require_readable();\n    for (let key of ObjectKeys(streamReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return Stream.Readable.from(ReflectApply(op, this, args));\n      };\n      const op = streamReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    for (let key of ObjectKeys(promiseReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return ReflectApply(op, this, args);\n      };\n      const op = promiseReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    Stream.Writable = require_writable(), Stream.Duplex = require_duplex(), Stream.Transform = require_transform(), Stream.PassThrough = require_passthrough(), Stream.pipeline = pipeline;\n    var { addAbortSignal } = require_add_abort_signal();\n    Stream.addAbortSignal = addAbortSignal, Stream.finished = eos, Stream.destroy = destroyer, Stream.compose = compose, ObjectDefineProperty(Stream, \"promises\", {\n      configurable: !0,\n      enumerable: !0,\n      get() {\n        return promises;\n      }\n    }), ObjectDefineProperty(pipeline, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.pipeline;\n      }\n    }), ObjectDefineProperty(eos, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.finished;\n      }\n    }), Stream.Stream = Stream, Stream._isUint8Array = function isUint8Array(value) {\n      return value instanceof Uint8Array;\n    }, Stream._uint8ArrayToBuffer = function _uint8ArrayToBuffer(chunk) {\n      return new Buffer(chunk.buffer, chunk.byteOffset, chunk.byteLength);\n    };\n  }\n}), nativeReadableStreamPrototypes = {\n  0: void 0,\n  1: void 0,\n  2: void 0,\n  3: void 0,\n  4: void 0,\n  5: void 0\n}, Writable = require_writable(), NativeWritable = class NativeWritable2 extends Writable {\n  #pathOrFdOrSink;\n  #fileSink;\n  #native = !0;\n  _construct;\n  _destroy;\n  _final;\n  constructor(pathOrFdOrSink, options = {}) {\n    super(options);\n    this._construct = this.#internalConstruct, this._destroy = this.#internalDestroy, this._final = this.#internalFinal, this.#pathOrFdOrSink = pathOrFdOrSink;\n  }\n  #internalConstruct(cb) {\n    if (this._writableState.constructed = !0, this.constructed = !0, typeof cb === \"function\")\n      cb();\n    process.nextTick(() => {\n      this.emit(\"open\", this.fd), this.emit(\"ready\");\n    });\n  }\n  #lazyConstruct() {\n    if (typeof this.#pathOrFdOrSink === \"object\")\n      if (typeof this.#pathOrFdOrSink.write === \"function\")\n        this.#fileSink = this.#pathOrFdOrSink;\n      else\n        throw new Error(\"Invalid FileSink\");\n    else\n      this.#fileSink = Bun.file(this.#pathOrFdOrSink).writer();\n  }\n  write(chunk, encoding, cb, native = this.#native) {\n    if (!native)\n      return this.#native = !1, super.write(chunk, encoding, cb);\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    var fileSink = this.#fileSink, result = fileSink.write(chunk);\n    if (@isPromise(result))\n      return result.then(() => {\n        this.emit(\"drain\"), fileSink.flush(!0);\n      }), !1;\n    if (fileSink.flush(!0), cb)\n      cb(null, chunk.byteLength);\n    return !0;\n  }\n  end(chunk, encoding, cb, native = this.#native) {\n    return super.end(chunk, encoding, cb, native);\n  }\n  #internalDestroy(error, cb) {\n    const w = this._writableState, r = this._readableState;\n    if (w)\n      w.destroyed = !0, w.closeEmitted = !0;\n    if (r)\n      r.destroyed = !0, r.closeEmitted = !0;\n    if (typeof cb === \"function\")\n      cb(error);\n    if (w\?.closeEmitted || r\?.closeEmitted)\n      this.emit(\"close\");\n  }\n  #internalFinal(cb) {\n    if (this.#fileSink)\n      this.#fileSink.end();\n    if (cb)\n      cb();\n  }\n  ref() {\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    this.#fileSink.ref();\n  }\n  unref() {\n    if (!this.#fileSink)\n      return;\n    this.#fileSink.unref();\n  }\n}, exports = require_stream(), promises = require_promises();\nexports._getNativeReadableStreamPrototype = getNativeReadableStreamPrototype;\nexports.NativeWritable = NativeWritable;\nObject.defineProperty(exports, \"promises\", {\n  configurable: !0,\n  enumerable: !0,\n  get() {\n    return promises;\n  }\n});\nexports[Symbol.for(\"::bunternal::\")] = { _ReadableFromWeb, _ReadableFromWebForUndici };\nexports.eos = require_end_of_stream();\nexports.EventEmitter = EE;\nvar Duplex = exports.Duplex;\nreturn exports})\n"_s; +static constexpr ASCIILiteral NodeStreamCode = "(function (){\"use strict\";// src/js/out/tmp/node/stream.ts\nvar isReadableStream = function(value) {\n  return typeof value === \"object\" && value !== null && value instanceof ReadableStream;\n}, validateBoolean = function(value, name) {\n  if (typeof value !== \"boolean\")\n    throw new ERR_INVALID_ARG_TYPE(name, \"boolean\", value);\n};\nvar ERR_INVALID_ARG_TYPE = function(name, type, value) {\n  return new Error(`The argument '${name}' is invalid. Received '${value}' for type '${type}'`);\n}, ERR_INVALID_ARG_VALUE = function(name, value, reason) {\n  return new Error(`The value '${value}' is invalid for argument '${name}'. Reason: ${reason}`);\n}, createNativeStreamReadable = function(nativeType, Readable) {\n  var [pull, start, cancel, setClose, deinit, updateRef, drainFn] = globalThis[globalThis.Symbol.for('Bun.lazy')](nativeType), closer = [!1], handleNumberResult = function(nativeReadable, result, view, isClosed) {\n    if (result > 0) {\n      const slice = view.subarray(0, result), remainder = view.subarray(result);\n      if (slice.byteLength > 0)\n        nativeReadable.push(slice);\n      if (isClosed)\n        nativeReadable.push(null);\n      return remainder.byteLength > 0 \? remainder : void 0;\n    }\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, handleArrayBufferViewResult = function(nativeReadable, result, view, isClosed) {\n    if (result.byteLength > 0)\n      nativeReadable.push(result);\n    if (isClosed)\n      nativeReadable.push(null);\n    return view;\n  }, DYNAMICALLY_ADJUST_CHUNK_SIZE = process.env.BUN_DISABLE_DYNAMIC_CHUNK_SIZE !== \"1\";\n  const finalizer = new FinalizationRegistry((ptr) => ptr && deinit(ptr)), MIN_BUFFER_SIZE = 512;\n  var NativeReadable = class NativeReadable2 extends Readable {\n    #bunNativePtr;\n    #refCount = 1;\n    #constructed = !1;\n    #remainingChunk = void 0;\n    #highWaterMark;\n    #pendingRead = !1;\n    #hasResized = !DYNAMICALLY_ADJUST_CHUNK_SIZE;\n    #unregisterToken;\n    constructor(ptr, options = {}) {\n      super(options);\n      if (typeof options.highWaterMark === \"number\")\n        this.#highWaterMark = options.highWaterMark;\n      else\n        this.#highWaterMark = 262144;\n      this.#bunNativePtr = ptr, this.#constructed = !1, this.#remainingChunk = void 0, this.#pendingRead = !1, this.#unregisterToken = {}, finalizer.register(this, this.#bunNativePtr, this.#unregisterToken);\n    }\n    _read(maxToRead) {\n      if (this.#pendingRead)\n        return;\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        this.push(null);\n        return;\n      }\n      if (!this.#constructed)\n        this.#internalConstruct(ptr);\n      return this.#internalRead(this.#getRemainingChunk(maxToRead), ptr);\n    }\n    #internalConstruct(ptr) {\n      this.#constructed = !0;\n      const result = start(ptr, this.#highWaterMark);\n      if (typeof result === \"number\" && result > 1)\n        this.#hasResized = !0, this.#highWaterMark = Math.min(this.#highWaterMark, result);\n      if (drainFn) {\n        const drainResult = drainFn(ptr);\n        if ((drainResult\?.byteLength \?\? 0) > 0)\n          this.push(drainResult);\n      }\n    }\n    #getRemainingChunk(maxToRead = this.#highWaterMark) {\n      var chunk = this.#remainingChunk;\n      if (chunk\?.byteLength \?\? 0 < MIN_BUFFER_SIZE) {\n        var size = maxToRead > MIN_BUFFER_SIZE \? maxToRead : MIN_BUFFER_SIZE;\n        this.#remainingChunk = chunk = new Buffer(size);\n      }\n      return chunk;\n    }\n    #handleResult(result, view, isClosed) {\n      if (typeof result === \"number\") {\n        if (result >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleNumberResult(this, result, view, isClosed);\n      } else if (typeof result === \"boolean\")\n        return process.nextTick(() => {\n          this.push(null);\n        }), view\?.byteLength \?\? 0 > 0 \? view : void 0;\n      else if (ArrayBuffer.isView(result)) {\n        if (result.byteLength >= this.#highWaterMark && !this.#hasResized && !isClosed)\n          this.#highWaterMark *= 2, this.#hasResized = !0;\n        return handleArrayBufferViewResult(this, result, view, isClosed);\n      } else\n        throw new Error(\"Invalid result from pull\");\n    }\n    #internalRead(view, ptr) {\n      closer[0] = !1;\n      var result = pull(ptr, view, closer);\n      if (@isPromise(result))\n        return this.#pendingRead = !0, result.then((result2) => {\n          this.#pendingRead = !1, this.#remainingChunk = this.#handleResult(result2, view, closer[0]);\n        }, (reason) => {\n          errorOrDestroy(this, reason);\n        });\n      else\n        this.#remainingChunk = this.#handleResult(result, view, closer[0]);\n    }\n    _destroy(error, callback) {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0) {\n        callback(error);\n        return;\n      }\n      if (finalizer.unregister(this.#unregisterToken), this.#bunNativePtr = 0, updateRef)\n        updateRef(ptr, !1);\n      cancel(ptr, error), callback(error);\n    }\n    ref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount++ === 0)\n        updateRef(ptr, !0);\n    }\n    unref() {\n      var ptr = this.#bunNativePtr;\n      if (ptr === 0)\n        return;\n      if (this.#refCount-- === 1)\n        updateRef(ptr, !1);\n    }\n  };\n  if (!updateRef)\n    NativeReadable.prototype.ref = void 0, NativeReadable.prototype.unref = void 0;\n  return NativeReadable;\n}, getNativeReadableStreamPrototype = function(nativeType, Readable) {\n  return nativeReadableStreamPrototypes[nativeType] ||= createNativeStreamReadable(nativeType, Readable);\n}, getNativeReadableStream = function(Readable, stream, options) {\n  if (!(stream && typeof stream === \"object\" && stream instanceof ReadableStream))\n    return;\n  const native = @direct(stream);\n  if (!native)\n    return;\n  const { stream: ptr, data: type } = native;\n  return new (getNativeReadableStreamPrototype(type, Readable))(ptr, options);\n}, EE = globalThis[globalThis.Symbol.for('Bun.lazy')](\"events\"), StringDecoder = @requireNativeModule(\"string_decoder\").StringDecoder, __getOwnPropNames = Object.getOwnPropertyNames, __commonJS = (cb, mod) => function __require2() {\n  return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;\n}, runOnNextTick = process.nextTick;\nvar ArrayIsArray = Array.isArray, require_primordials = __commonJS({\n  \"node_modules/readable-stream/lib/ours/primordials.js\"(exports, module) {\n    module.exports = {\n      ArrayIsArray(self) {\n        return Array.isArray(self);\n      },\n      ArrayPrototypeIncludes(self, el) {\n        return self.includes(el);\n      },\n      ArrayPrototypeIndexOf(self, el) {\n        return self.indexOf(el);\n      },\n      ArrayPrototypeJoin(self, sep) {\n        return self.join(sep);\n      },\n      ArrayPrototypeMap(self, fn) {\n        return self.map(fn);\n      },\n      ArrayPrototypePop(self, el) {\n        return self.pop(el);\n      },\n      ArrayPrototypePush(self, el) {\n        return self.push(el);\n      },\n      ArrayPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      Error,\n      FunctionPrototypeCall(fn, thisArgs, ...args) {\n        return fn.call(thisArgs, ...args);\n      },\n      FunctionPrototypeSymbolHasInstance(self, instance) {\n        return Function.prototype[Symbol.hasInstance].call(self, instance);\n      },\n      MathFloor: Math.floor,\n      Number,\n      NumberIsInteger: Number.isInteger,\n      NumberIsNaN: Number.isNaN,\n      NumberMAX_SAFE_INTEGER: Number.MAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER: Number.MIN_SAFE_INTEGER,\n      NumberParseInt: Number.parseInt,\n      ObjectDefineProperties(self, props) {\n        return Object.defineProperties(self, props);\n      },\n      ObjectDefineProperty(self, name, prop) {\n        return Object.defineProperty(self, name, prop);\n      },\n      ObjectGetOwnPropertyDescriptor(self, name) {\n        return Object.getOwnPropertyDescriptor(self, name);\n      },\n      ObjectKeys(obj) {\n        return Object.keys(obj);\n      },\n      ObjectSetPrototypeOf(target, proto) {\n        return Object.setPrototypeOf(target, proto);\n      },\n      Promise,\n      PromisePrototypeCatch(self, fn) {\n        return self.catch(fn);\n      },\n      PromisePrototypeThen(self, thenFn, catchFn) {\n        return self.then(thenFn, catchFn);\n      },\n      PromiseReject(err) {\n        return Promise.reject(err);\n      },\n      ReflectApply: Reflect.apply,\n      RegExpPrototypeTest(self, value) {\n        return self.test(value);\n      },\n      SafeSet: Set,\n      String,\n      StringPrototypeSlice(self, start, end) {\n        return self.slice(start, end);\n      },\n      StringPrototypeToLowerCase(self) {\n        return self.toLowerCase();\n      },\n      StringPrototypeToUpperCase(self) {\n        return self.toUpperCase();\n      },\n      StringPrototypeTrim(self) {\n        return self.trim();\n      },\n      Symbol,\n      SymbolAsyncIterator: Symbol.asyncIterator,\n      SymbolHasInstance: Symbol.hasInstance,\n      SymbolIterator: Symbol.iterator,\n      TypedArrayPrototypeSet(self, buf, len) {\n        return self.set(buf, len);\n      },\n      Uint8Array\n    };\n  }\n}), require_util = __commonJS({\n  \"node_modules/readable-stream/lib/ours/util.js\"(exports, module) {\n    var AsyncFunction = Object.getPrototypeOf(async function() {\n    }).constructor, isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    }, AggregateError = class extends Error {\n      constructor(errors) {\n        if (!Array.isArray(errors))\n          @throwTypeError(`Expected input to be an Array, got ${typeof errors}`);\n        let message = \"\";\n        for (let i = 0;i < errors.length; i++)\n          message += `    ${errors[i].stack}\n`;\n        super(message);\n        this.name = \"AggregateError\", this.errors = errors;\n      }\n    };\n    module.exports = {\n      AggregateError,\n      once(callback) {\n        let called = !1;\n        return function(...args) {\n          if (called)\n            return;\n          called = !0, callback.apply(this, args);\n        };\n      },\n      createDeferredPromise: function() {\n        let resolve, reject;\n        return {\n          promise: new Promise((res, rej) => {\n            resolve = res, reject = rej;\n          }),\n          resolve,\n          reject\n        };\n      },\n      promisify(fn) {\n        return new Promise((resolve, reject) => {\n          fn((err, ...args) => {\n            if (err)\n              return reject(err);\n            return resolve(...args);\n          });\n        });\n      },\n      debuglog() {\n        return function() {\n        };\n      },\n      format(format, ...args) {\n        return format.replace(/%([sdifj])/g, function(...[_unused, type]) {\n          const replacement = args.shift();\n          if (type === \"f\")\n            return replacement.toFixed(6);\n          else if (type === \"j\")\n            return JSON.stringify(replacement);\n          else if (type === \"s\" && typeof replacement === \"object\")\n            return `${replacement.constructor !== Object \? replacement.constructor.name : \"\"} {}`.trim();\n          else\n            return replacement.toString();\n        });\n      },\n      inspect(value) {\n        switch (typeof value) {\n          case \"string\":\n            if (value.includes(\"'\")) {\n              if (!value.includes('\"'))\n                return `\"${value}\"`;\n              else if (!value.includes(\"`\") && !value.includes(\"${\"))\n                return `\\`${value}\\``;\n            }\n            return `'${value}'`;\n          case \"number\":\n            if (isNaN(value))\n              return \"NaN\";\n            else if (Object.is(value, -0))\n              return String(value);\n            return value;\n          case \"bigint\":\n            return `${String(value)}n`;\n          case \"boolean\":\n          case \"undefined\":\n            return String(value);\n          case \"object\":\n            return \"{}\";\n        }\n      },\n      types: {\n        isAsyncFunction(fn) {\n          return fn instanceof AsyncFunction;\n        },\n        isArrayBufferView(arr) {\n          return ArrayBuffer.isView(arr);\n        }\n      },\n      isBlob\n    }, module.exports.promisify.custom = Symbol.for(\"nodejs.util.promisify.custom\");\n  }\n}), require_errors = __commonJS({\n  \"node_modules/readable-stream/lib/ours/errors.js\"(exports, module) {\n    var { format, inspect, AggregateError: CustomAggregateError } = require_util(), AggregateError = globalThis.AggregateError || CustomAggregateError, kIsNodeError = Symbol(\"kIsNodeError\"), kTypes = [\"string\", \"function\", \"number\", \"object\", \"Function\", \"Object\", \"boolean\", \"bigint\", \"symbol\"], classRegExp = /^([A-Z][a-z0-9]*)+$/, nodeInternalPrefix = \"__node_internal_\", codes = {};\n    function assert(value, message) {\n      if (!value)\n        throw new codes.ERR_INTERNAL_ASSERTION(message);\n    }\n    function addNumericalSeparator(val) {\n      let res = \"\", i = val.length;\n      const start = val[0] === \"-\" \? 1 : 0;\n      for (;i >= start + 4; i -= 3)\n        res = `_${val.slice(i - 3, i)}${res}`;\n      return `${val.slice(0, i)}${res}`;\n    }\n    function getMessage(key, msg, args) {\n      if (typeof msg === \"function\")\n        return assert(msg.length <= args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${msg.length}).`), msg(...args);\n      const expectedLength = (msg.match(/%[dfijoOs]/g) || []).length;\n      if (assert(expectedLength === args.length, `Code: ${key}; The provided arguments length (${args.length}) does not match the required ones (${expectedLength}).`), args.length === 0)\n        return msg;\n      return format(msg, ...args);\n    }\n    function E(code, message, Base) {\n      if (!Base)\n        Base = Error;\n\n      class NodeError extends Base {\n        constructor(...args) {\n          super(getMessage(code, message, args));\n        }\n        toString() {\n          return `${this.name} [${code}]: ${this.message}`;\n        }\n      }\n      Object.defineProperties(NodeError.prototype, {\n        name: {\n          value: Base.name,\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        },\n        toString: {\n          value() {\n            return `${this.name} [${code}]: ${this.message}`;\n          },\n          writable: !0,\n          enumerable: !1,\n          configurable: !0\n        }\n      }), NodeError.prototype.code = code, NodeError.prototype[kIsNodeError] = !0, codes[code] = NodeError;\n    }\n    function hideStackFrames(fn) {\n      const hidden = nodeInternalPrefix + fn.name;\n      return Object.defineProperty(fn, \"name\", {\n        value: hidden\n      }), fn;\n    }\n    function aggregateTwoErrors(innerError, outerError) {\n      if (innerError && outerError && innerError !== outerError) {\n        if (Array.isArray(outerError.errors))\n          return outerError.errors.push(innerError), outerError;\n        const err = new AggregateError([outerError, innerError], outerError.message);\n        return err.code = outerError.code, err;\n      }\n      return innerError || outerError;\n    }\n    var AbortError2 = class extends Error {\n      constructor(message = \"The operation was aborted\", options = void 0) {\n        if (options !== void 0 && typeof options !== \"object\")\n          throw new codes.ERR_INVALID_ARG_TYPE(\"options\", \"Object\", options);\n        super(message, options);\n        this.code = \"ABORT_ERR\", this.name = \"AbortError\";\n      }\n    };\n    E(\"ERR_ASSERTION\", \"%s\", Error), E(\"ERR_INVALID_ARG_TYPE\", (name, expected, actual) => {\n      if (assert(typeof name === \"string\", \"'name' must be a string\"), !Array.isArray(expected))\n        expected = [expected];\n      let msg = \"The \";\n      if (name.endsWith(\" argument\"))\n        msg += `${name} `;\n      else\n        msg += `\"${name}\" ${name.includes(\".\") \? \"property\" : \"argument\"} `;\n      msg += \"must be \";\n      const types = [], instances = [], other = [];\n      for (let value of expected)\n        if (assert(typeof value === \"string\", \"All expected entries have to be of type string\"), kTypes.includes(value))\n          types.push(value.toLowerCase());\n        else if (classRegExp.test(value))\n          instances.push(value);\n        else\n          assert(value !== \"object\", 'The value \"object\" should be written as \"Object\"'), other.push(value);\n      if (instances.length > 0) {\n        const pos = types.indexOf(\"object\");\n        if (pos !== -1)\n          types.splice(types, pos, 1), instances.push(\"Object\");\n      }\n      if (types.length > 0) {\n        switch (types.length) {\n          case 1:\n            msg += `of type ${types[0]}`;\n            break;\n          case 2:\n            msg += `one of type ${types[0]} or ${types[1]}`;\n            break;\n          default: {\n            const last = types.pop();\n            msg += `one of type ${types.join(\", \")}, or ${last}`;\n          }\n        }\n        if (instances.length > 0 || other.length > 0)\n          msg += \" or \";\n      }\n      if (instances.length > 0) {\n        switch (instances.length) {\n          case 1:\n            msg += `an instance of ${instances[0]}`;\n            break;\n          case 2:\n            msg += `an instance of ${instances[0]} or ${instances[1]}`;\n            break;\n          default: {\n            const last = instances.pop();\n            msg += `an instance of ${instances.join(\", \")}, or ${last}`;\n          }\n        }\n        if (other.length > 0)\n          msg += \" or \";\n      }\n      switch (other.length) {\n        case 0:\n          break;\n        case 1:\n          if (other[0].toLowerCase() !== other[0])\n            msg += \"an \";\n          msg += `${other[0]}`;\n          break;\n        case 2:\n          msg += `one of ${other[0]} or ${other[1]}`;\n          break;\n        default: {\n          const last = other.pop();\n          msg += `one of ${other.join(\", \")}, or ${last}`;\n        }\n      }\n      if (actual == null)\n        msg += `. Received ${actual}`;\n      else if (typeof actual === \"function\" && actual.name)\n        msg += `. Received function ${actual.name}`;\n      else if (typeof actual === \"object\") {\n        var _actual$constructor;\n        if ((_actual$constructor = actual.constructor) !== null && _actual$constructor !== void 0 && _actual$constructor.name)\n          msg += `. Received an instance of ${actual.constructor.name}`;\n        else {\n          const inspected = inspect(actual, {\n            depth: -1\n          });\n          msg += `. Received ${inspected}`;\n        }\n      } else {\n        let inspected = inspect(actual, {\n          colors: !1\n        });\n        if (inspected.length > 25)\n          inspected = `${inspected.slice(0, 25)}...`;\n        msg += `. Received type ${typeof actual} (${inspected})`;\n      }\n      return msg;\n    }, TypeError), E(\"ERR_INVALID_ARG_VALUE\", (name, value, reason = \"is invalid\") => {\n      let inspected = inspect(value);\n      if (inspected.length > 128)\n        inspected = inspected.slice(0, 128) + \"...\";\n      return `The ${name.includes(\".\") \? \"property\" : \"argument\"} '${name}' ${reason}. Received ${inspected}`;\n    }, TypeError), E(\"ERR_INVALID_RETURN_VALUE\", (input, name, value) => {\n      var _value$constructor;\n      const type = value !== null && value !== void 0 && (_value$constructor = value.constructor) !== null && _value$constructor !== void 0 && _value$constructor.name \? `instance of ${value.constructor.name}` : `type ${typeof value}`;\n      return `Expected ${input} to be returned from the \"${name}\" function but got ${type}.`;\n    }, TypeError), E(\"ERR_MISSING_ARGS\", (...args) => {\n      assert(args.length > 0, \"At least one arg needs to be specified\");\n      let msg;\n      const len = args.length;\n      switch (args = (Array.isArray(args) \? args : [args]).map((a) => `\"${a}\"`).join(\" or \"), len) {\n        case 1:\n          msg += `The ${args[0]} argument`;\n          break;\n        case 2:\n          msg += `The ${args[0]} and ${args[1]} arguments`;\n          break;\n        default:\n          {\n            const last = args.pop();\n            msg += `The ${args.join(\", \")}, and ${last} arguments`;\n          }\n          break;\n      }\n      return `${msg} must be specified`;\n    }, TypeError), E(\"ERR_OUT_OF_RANGE\", (str, range, input) => {\n      assert(range, 'Missing \"range\" argument');\n      let received;\n      if (Number.isInteger(input) && Math.abs(input) > 4294967296)\n        received = addNumericalSeparator(String(input));\n      else if (typeof input === \"bigint\") {\n        if (received = String(input), input > 2n ** 32n || input < -(2n ** 32n))\n          received = addNumericalSeparator(received);\n        received += \"n\";\n      } else\n        received = inspect(input);\n      return `The value of \"${str}\" is out of range. It must be ${range}. Received ${received}`;\n    }, RangeError), E(\"ERR_MULTIPLE_CALLBACK\", \"Callback called multiple times\", Error), E(\"ERR_METHOD_NOT_IMPLEMENTED\", \"The %s method is not implemented\", Error), E(\"ERR_STREAM_ALREADY_FINISHED\", \"Cannot call %s after a stream was finished\", Error), E(\"ERR_STREAM_CANNOT_PIPE\", \"Cannot pipe, not readable\", Error), E(\"ERR_STREAM_DESTROYED\", \"Cannot call %s after a stream was destroyed\", Error), E(\"ERR_STREAM_NULL_VALUES\", \"May not write null values to stream\", TypeError), E(\"ERR_STREAM_PREMATURE_CLOSE\", \"Premature close\", Error), E(\"ERR_STREAM_PUSH_AFTER_EOF\", \"stream.push() after EOF\", Error), E(\"ERR_STREAM_UNSHIFT_AFTER_END_EVENT\", \"stream.unshift() after end event\", Error), E(\"ERR_STREAM_WRITE_AFTER_END\", \"write after end\", Error), E(\"ERR_UNKNOWN_ENCODING\", \"Unknown encoding: %s\", TypeError), module.exports = {\n      AbortError: AbortError2,\n      aggregateTwoErrors: hideStackFrames(aggregateTwoErrors),\n      hideStackFrames,\n      codes\n    };\n  }\n}), require_validators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/validators.js\"(exports, module) {\n    var {\n      ArrayIsArray: ArrayIsArray2,\n      ArrayPrototypeIncludes,\n      ArrayPrototypeJoin,\n      ArrayPrototypeMap,\n      NumberIsInteger,\n      NumberMAX_SAFE_INTEGER,\n      NumberMIN_SAFE_INTEGER,\n      NumberParseInt,\n      RegExpPrototypeTest,\n      String: String2,\n      StringPrototypeToUpperCase,\n      StringPrototypeTrim\n    } = require_primordials(), {\n      hideStackFrames,\n      codes: { ERR_SOCKET_BAD_PORT, ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_OUT_OF_RANGE, ERR_UNKNOWN_SIGNAL }\n    } = require_errors(), { normalizeEncoding } = require_util(), { isAsyncFunction, isArrayBufferView } = require_util().types, signals = {};\n    function isInt32(value) {\n      return value === (value | 0);\n    }\n    function isUint32(value) {\n      return value === value >>> 0;\n    }\n    var octalReg = /^[0-7]+$/, modeDesc = \"must be a 32-bit unsigned integer or an octal string\";\n    function parseFileMode(value, name, def) {\n      if (typeof value === \"undefined\")\n        value = def;\n      if (typeof value === \"string\") {\n        if (!RegExpPrototypeTest(octalReg, value))\n          throw new ERR_INVALID_ARG_VALUE2(name, value, modeDesc);\n        value = NumberParseInt(value, 8);\n      }\n      return validateInt32(value, name, 0, 4294967295), value;\n    }\n    var validateInteger = hideStackFrames((value, name, min = NumberMIN_SAFE_INTEGER, max = NumberMAX_SAFE_INTEGER) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!NumberIsInteger(value))\n        throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateInt32 = hideStackFrames((value, name, min = -2147483648, max = 2147483647) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isInt32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n      }\n      if (value < min || value > max)\n        throw new ERR_OUT_OF_RANGE(name, `>= ${min} && <= ${max}`, value);\n    }), validateUint32 = hideStackFrames((value, name, positive) => {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n      if (!isUint32(value)) {\n        if (!NumberIsInteger(value))\n          throw new ERR_OUT_OF_RANGE(name, \"an integer\", value);\n        throw new ERR_OUT_OF_RANGE(name, `>= ${positive \? 1 : 0} && < 4294967296`, value);\n      }\n      if (positive && value === 0)\n        throw new ERR_OUT_OF_RANGE(name, \">= 1 && < 4294967296\", value);\n    });\n    function validateString(value, name) {\n      if (typeof value !== \"string\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"string\", value);\n    }\n    function validateNumber(value, name) {\n      if (typeof value !== \"number\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"number\", value);\n    }\n    var validateOneOf = hideStackFrames((value, name, oneOf) => {\n      if (!ArrayPrototypeIncludes(oneOf, value)) {\n        const reason = \"must be one of: \" + ArrayPrototypeJoin(ArrayPrototypeMap(oneOf, (v) => typeof v === \"string\" \? `'${v}'` : String2(v)), \", \");\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateBoolean2(value, name) {\n      if (typeof value !== \"boolean\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"boolean\", value);\n    }\n    var validateObject = hideStackFrames((value, name, options) => {\n      const useDefaultOptions = options == null, allowArray = useDefaultOptions \? !1 : options.allowArray, allowFunction = useDefaultOptions \? !1 : options.allowFunction;\n      if (!(useDefaultOptions \? !1 : options.nullable) && value === null || !allowArray && ArrayIsArray2(value) || typeof value !== \"object\" && (!allowFunction || typeof value !== \"function\"))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Object\", value);\n    }), validateArray = hideStackFrames((value, name, minLength = 0) => {\n      if (!ArrayIsArray2(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Array\", value);\n      if (value.length < minLength) {\n        const reason = `must be longer than ${minLength}`;\n        throw new ERR_INVALID_ARG_VALUE2(name, value, reason);\n      }\n    });\n    function validateSignalName(signal, name = \"signal\") {\n      if (validateString(signal, name), signals[signal] === void 0) {\n        if (signals[StringPrototypeToUpperCase(signal)] !== void 0)\n          throw new ERR_UNKNOWN_SIGNAL(signal + \" (signals must use all capital letters)\");\n        throw new ERR_UNKNOWN_SIGNAL(signal);\n      }\n    }\n    var validateBuffer = hideStackFrames((buffer, name = \"buffer\") => {\n      if (!isArrayBufferView(buffer))\n        throw new ERR_INVALID_ARG_TYPE2(name, [\"Buffer\", \"TypedArray\", \"DataView\"], buffer);\n    });\n    function validateEncoding(data, encoding) {\n      const normalizedEncoding = normalizeEncoding(encoding), length = data.length;\n      if (normalizedEncoding === \"hex\" && length % 2 !== 0)\n        throw new ERR_INVALID_ARG_VALUE2(\"encoding\", encoding, `is invalid for data of length ${length}`);\n    }\n    function validatePort(port, name = \"Port\", allowZero = !0) {\n      if (typeof port !== \"number\" && typeof port !== \"string\" || typeof port === \"string\" && StringPrototypeTrim(port).length === 0 || +port !== +port >>> 0 || port > 65535 || port === 0 && !allowZero)\n        throw new ERR_SOCKET_BAD_PORT(name, port, allowZero);\n      return port | 0;\n    }\n    var validateAbortSignal = hideStackFrames((signal, name) => {\n      if (signal !== void 0 && (signal === null || typeof signal !== \"object\" || !(\"aborted\" in signal)))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    }), validateFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validatePlainFunction = hideStackFrames((value, name) => {\n      if (typeof value !== \"function\" || isAsyncFunction(value))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"Function\", value);\n    }), validateUndefined = hideStackFrames((value, name) => {\n      if (value !== void 0)\n        throw new ERR_INVALID_ARG_TYPE2(name, \"undefined\", value);\n    });\n    module.exports = {\n      isInt32,\n      isUint32,\n      parseFileMode,\n      validateArray,\n      validateBoolean: validateBoolean2,\n      validateBuffer,\n      validateEncoding,\n      validateFunction,\n      validateInt32,\n      validateInteger,\n      validateNumber,\n      validateObject,\n      validateOneOf,\n      validatePlainFunction,\n      validatePort,\n      validateSignalName,\n      validateString,\n      validateUint32,\n      validateUndefined,\n      validateAbortSignal\n    };\n  }\n}), require_utils = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/utils.js\"(exports, module) {\n    var { Symbol: Symbol2, SymbolAsyncIterator, SymbolIterator } = require_primordials(), kDestroyed = Symbol2(\"kDestroyed\"), kIsErrored = Symbol2(\"kIsErrored\"), kIsReadable = Symbol2(\"kIsReadable\"), kIsDisturbed = Symbol2(\"kIsDisturbed\");\n    function isReadableNodeStream(obj, strict = !1) {\n      var _obj$_readableState;\n      return !!(obj && typeof obj.pipe === \"function\" && typeof obj.on === \"function\" && (!strict || typeof obj.pause === \"function\" && typeof obj.resume === \"function\") && (!obj._writableState || ((_obj$_readableState = obj._readableState) === null || _obj$_readableState === void 0 \? void 0 : _obj$_readableState.readable) !== !1) && (!obj._writableState || obj._readableState));\n    }\n    function isWritableNodeStream(obj) {\n      var _obj$_writableState;\n      return !!(obj && typeof obj.write === \"function\" && typeof obj.on === \"function\" && (!obj._readableState || ((_obj$_writableState = obj._writableState) === null || _obj$_writableState === void 0 \? void 0 : _obj$_writableState.writable) !== !1));\n    }\n    function isDuplexNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\" && obj._readableState && typeof obj.on === \"function\" && typeof obj.write === \"function\");\n    }\n    function isNodeStream(obj) {\n      return obj && (obj._readableState || obj._writableState || typeof obj.write === \"function\" && typeof obj.on === \"function\" || typeof obj.pipe === \"function\" && typeof obj.on === \"function\");\n    }\n    function isIterable(obj, isAsync) {\n      if (obj == null)\n        return !1;\n      if (isAsync === !0)\n        return typeof obj[SymbolAsyncIterator] === \"function\";\n      if (isAsync === !1)\n        return typeof obj[SymbolIterator] === \"function\";\n      return typeof obj[SymbolAsyncIterator] === \"function\" || typeof obj[SymbolIterator] === \"function\";\n    }\n    function isDestroyed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !!(stream.destroyed || stream[kDestroyed] || state !== null && state !== void 0 && state.destroyed);\n    }\n    function isWritableEnded(stream) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableEnded === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.ended) !== \"boolean\")\n        return null;\n      return wState.ended;\n    }\n    function isWritableFinished(stream, strict) {\n      if (!isWritableNodeStream(stream))\n        return null;\n      if (stream.writableFinished === !0)\n        return !0;\n      const wState = stream._writableState;\n      if (wState !== null && wState !== void 0 && wState.errored)\n        return !1;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.finished) !== \"boolean\")\n        return null;\n      return !!(wState.finished || strict === !1 && wState.ended === !0 && wState.length === 0);\n    }\n    function isReadableEnded(stream) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      if (stream.readableEnded === !0)\n        return !0;\n      const rState = stream._readableState;\n      if (!rState || rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.ended) !== \"boolean\")\n        return null;\n      return rState.ended;\n    }\n    function isReadableFinished(stream, strict) {\n      if (!isReadableNodeStream(stream))\n        return null;\n      const rState = stream._readableState;\n      if (rState !== null && rState !== void 0 && rState.errored)\n        return !1;\n      if (typeof (rState === null || rState === void 0 \? void 0 : rState.endEmitted) !== \"boolean\")\n        return null;\n      return !!(rState.endEmitted || strict === !1 && rState.ended === !0 && rState.length === 0);\n    }\n    function isReadable(stream) {\n      if (stream && stream[kIsReadable] != null)\n        return stream[kIsReadable];\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.readable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isReadableNodeStream(stream) && stream.readable && !isReadableFinished(stream);\n    }\n    function isWritable(stream) {\n      if (typeof (stream === null || stream === void 0 \? void 0 : stream.writable) !== \"boolean\")\n        return null;\n      if (isDestroyed(stream))\n        return !1;\n      return isWritableNodeStream(stream) && stream.writable && !isWritableEnded(stream);\n    }\n    function isFinished(stream, opts) {\n      if (!isNodeStream(stream))\n        return null;\n      if (isDestroyed(stream))\n        return !0;\n      if ((opts === null || opts === void 0 \? void 0 : opts.readable) !== !1 && isReadable(stream))\n        return !1;\n      if ((opts === null || opts === void 0 \? void 0 : opts.writable) !== !1 && isWritable(stream))\n        return !1;\n      return !0;\n    }\n    function isWritableErrored(stream) {\n      var _stream$_writableStat, _stream$_writableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.writableErrored)\n        return stream.writableErrored;\n      return (_stream$_writableStat = (_stream$_writableStat2 = stream._writableState) === null || _stream$_writableStat2 === void 0 \? void 0 : _stream$_writableStat2.errored) !== null && _stream$_writableStat !== void 0 \? _stream$_writableStat : null;\n    }\n    function isReadableErrored(stream) {\n      var _stream$_readableStat, _stream$_readableStat2;\n      if (!isNodeStream(stream))\n        return null;\n      if (stream.readableErrored)\n        return stream.readableErrored;\n      return (_stream$_readableStat = (_stream$_readableStat2 = stream._readableState) === null || _stream$_readableStat2 === void 0 \? void 0 : _stream$_readableStat2.errored) !== null && _stream$_readableStat !== void 0 \? _stream$_readableStat : null;\n    }\n    function isClosed(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      if (typeof stream.closed === \"boolean\")\n        return stream.closed;\n      const { _writableState: wState, _readableState: rState } = stream;\n      if (typeof (wState === null || wState === void 0 \? void 0 : wState.closed) === \"boolean\" || typeof (rState === null || rState === void 0 \? void 0 : rState.closed) === \"boolean\")\n        return (wState === null || wState === void 0 \? void 0 : wState.closed) || (rState === null || rState === void 0 \? void 0 : rState.closed);\n      if (typeof stream._closed === \"boolean\" && isOutgoingMessage(stream))\n        return stream._closed;\n      return null;\n    }\n    function isOutgoingMessage(stream) {\n      return typeof stream._closed === \"boolean\" && typeof stream._defaultKeepAlive === \"boolean\" && typeof stream._removedConnection === \"boolean\" && typeof stream._removedContLen === \"boolean\";\n    }\n    function isServerResponse(stream) {\n      return typeof stream._sent100 === \"boolean\" && isOutgoingMessage(stream);\n    }\n    function isServerRequest(stream) {\n      var _stream$req;\n      return typeof stream._consuming === \"boolean\" && typeof stream._dumped === \"boolean\" && ((_stream$req = stream.req) === null || _stream$req === void 0 \? void 0 : _stream$req.upgradeOrConnect) === void 0;\n    }\n    function willEmitClose(stream) {\n      if (!isNodeStream(stream))\n        return null;\n      const { _writableState: wState, _readableState: rState } = stream, state = wState || rState;\n      return !state && isServerResponse(stream) || !!(state && state.autoDestroy && state.emitClose && state.closed === !1);\n    }\n    function isDisturbed(stream) {\n      var _stream$kIsDisturbed;\n      return !!(stream && ((_stream$kIsDisturbed = stream[kIsDisturbed]) !== null && _stream$kIsDisturbed !== void 0 \? _stream$kIsDisturbed : stream.readableDidRead || stream.readableAborted));\n    }\n    function isErrored(stream) {\n      var _ref, _ref2, _ref3, _ref4, _ref5, _stream$kIsErrored, _stream$_readableStat3, _stream$_writableStat3, _stream$_readableStat4, _stream$_writableStat4;\n      return !!(stream && ((_ref = (_ref2 = (_ref3 = (_ref4 = (_ref5 = (_stream$kIsErrored = stream[kIsErrored]) !== null && _stream$kIsErrored !== void 0 \? _stream$kIsErrored : stream.readableErrored) !== null && _ref5 !== void 0 \? _ref5 : stream.writableErrored) !== null && _ref4 !== void 0 \? _ref4 : (_stream$_readableStat3 = stream._readableState) === null || _stream$_readableStat3 === void 0 \? void 0 : _stream$_readableStat3.errorEmitted) !== null && _ref3 !== void 0 \? _ref3 : (_stream$_writableStat3 = stream._writableState) === null || _stream$_writableStat3 === void 0 \? void 0 : _stream$_writableStat3.errorEmitted) !== null && _ref2 !== void 0 \? _ref2 : (_stream$_readableStat4 = stream._readableState) === null || _stream$_readableStat4 === void 0 \? void 0 : _stream$_readableStat4.errored) !== null && _ref !== void 0 \? _ref : (_stream$_writableStat4 = stream._writableState) === null || _stream$_writableStat4 === void 0 \? void 0 : _stream$_writableStat4.errored));\n    }\n    module.exports = {\n      kDestroyed,\n      isDisturbed,\n      kIsDisturbed,\n      isErrored,\n      kIsErrored,\n      isReadable,\n      kIsReadable,\n      isClosed,\n      isDestroyed,\n      isDuplexNodeStream,\n      isFinished,\n      isIterable,\n      isReadableNodeStream,\n      isReadableEnded,\n      isReadableFinished,\n      isReadableErrored,\n      isNodeStream,\n      isWritable,\n      isWritableNodeStream,\n      isWritableEnded,\n      isWritableFinished,\n      isWritableErrored,\n      isServerRequest,\n      isServerResponse,\n      willEmitClose\n    };\n  }\n}), require_end_of_stream = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/end-of-stream.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_PREMATURE_CLOSE } = codes, { once } = require_util(), { validateAbortSignal, validateFunction, validateObject } = require_validators(), { Promise: Promise2 } = require_primordials(), {\n      isClosed,\n      isReadable,\n      isReadableNodeStream,\n      isReadableFinished,\n      isReadableErrored,\n      isWritable,\n      isWritableNodeStream,\n      isWritableFinished,\n      isWritableErrored,\n      isNodeStream,\n      willEmitClose: _willEmitClose\n    } = require_utils();\n    function isRequest(stream) {\n      return stream.setHeader && typeof stream.abort === \"function\";\n    }\n    var nop = () => {\n    };\n    function eos(stream, options, callback) {\n      var _options$readable, _options$writable;\n      if (arguments.length === 2)\n        callback = options, options = {};\n      else if (options == null)\n        options = {};\n      else\n        validateObject(options, \"options\");\n      validateFunction(callback, \"callback\"), validateAbortSignal(options.signal, \"options.signal\"), callback = once(callback);\n      const readable = (_options$readable = options.readable) !== null && _options$readable !== void 0 \? _options$readable : isReadableNodeStream(stream), writable = (_options$writable = options.writable) !== null && _options$writable !== void 0 \? _options$writable : isWritableNodeStream(stream);\n      if (!isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"Stream\", stream);\n      const { _writableState: wState, _readableState: rState } = stream, onlegacyfinish = () => {\n        if (!stream.writable)\n          onfinish();\n      };\n      let willEmitClose = _willEmitClose(stream) && isReadableNodeStream(stream) === readable && isWritableNodeStream(stream) === writable, writableFinished = isWritableFinished(stream, !1);\n      const onfinish = () => {\n        if (writableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.readable || readable))\n          return;\n        if (!readable || readableFinished)\n          callback.call(stream);\n      };\n      let readableFinished = isReadableFinished(stream, !1);\n      const onend = () => {\n        if (readableFinished = !0, stream.destroyed)\n          willEmitClose = !1;\n        if (willEmitClose && (!stream.writable || writable))\n          return;\n        if (!writable || writableFinished)\n          callback.call(stream);\n      }, onerror = (err) => {\n        callback.call(stream, err);\n      };\n      let closed = isClosed(stream);\n      const onclose = () => {\n        closed = !0;\n        const errored = isWritableErrored(stream) || isReadableErrored(stream);\n        if (errored && typeof errored !== \"boolean\")\n          return callback.call(stream, errored);\n        if (readable && !readableFinished && isReadableNodeStream(stream, !0)) {\n          if (!isReadableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        if (writable && !writableFinished) {\n          if (!isWritableFinished(stream, !1))\n            return callback.call(stream, new ERR_STREAM_PREMATURE_CLOSE);\n        }\n        callback.call(stream);\n      }, onrequest = () => {\n        stream.req.on(\"finish\", onfinish);\n      };\n      if (isRequest(stream)) {\n        if (stream.on(\"complete\", onfinish), !willEmitClose)\n          stream.on(\"abort\", onclose);\n        if (stream.req)\n          onrequest();\n        else\n          stream.on(\"request\", onrequest);\n      } else if (writable && !wState)\n        stream.on(\"end\", onlegacyfinish), stream.on(\"close\", onlegacyfinish);\n      if (!willEmitClose && typeof stream.aborted === \"boolean\")\n        stream.on(\"aborted\", onclose);\n      if (stream.on(\"end\", onend), stream.on(\"finish\", onfinish), options.error !== !1)\n        stream.on(\"error\", onerror);\n      if (stream.on(\"close\", onclose), closed)\n        runOnNextTick(onclose);\n      else if (wState !== null && wState !== void 0 && wState.errorEmitted || rState !== null && rState !== void 0 && rState.errorEmitted) {\n        if (!willEmitClose)\n          runOnNextTick(onclose);\n      } else if (!readable && (!willEmitClose || isReadable(stream)) && (writableFinished || isWritable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (!writable && (!willEmitClose || isWritable(stream)) && (readableFinished || isReadable(stream) === !1))\n        runOnNextTick(onclose);\n      else if (rState && stream.req && stream.aborted)\n        runOnNextTick(onclose);\n      const cleanup = () => {\n        if (callback = nop, stream.removeListener(\"aborted\", onclose), stream.removeListener(\"complete\", onfinish), stream.removeListener(\"abort\", onclose), stream.removeListener(\"request\", onrequest), stream.req)\n          stream.req.removeListener(\"finish\", onfinish);\n        stream.removeListener(\"end\", onlegacyfinish), stream.removeListener(\"close\", onlegacyfinish), stream.removeListener(\"finish\", onfinish), stream.removeListener(\"end\", onend), stream.removeListener(\"error\", onerror), stream.removeListener(\"close\", onclose);\n      };\n      if (options.signal && !closed) {\n        const abort = () => {\n          const endCallback = callback;\n          cleanup(), endCallback.call(stream, new AbortError2(void 0, {\n            cause: options.signal.reason\n          }));\n        };\n        if (options.signal.aborted)\n          runOnNextTick(abort);\n        else {\n          const originalCallback = callback;\n          callback = once((...args) => {\n            options.signal.removeEventListener(\"abort\", abort), originalCallback.apply(stream, args);\n          }), options.signal.addEventListener(\"abort\", abort);\n        }\n      }\n      return cleanup;\n    }\n    function finished(stream, opts) {\n      return new Promise2((resolve, reject) => {\n        eos(stream, opts, (err) => {\n          if (err)\n            reject(err);\n          else\n            resolve();\n        });\n      });\n    }\n    module.exports = eos, module.exports.finished = finished;\n  }\n}), require_operators = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/operators.js\"(exports, module) {\n    var {\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_MISSING_ARGS, ERR_OUT_OF_RANGE },\n      AbortError: AbortError2\n    } = require_errors(), { validateAbortSignal, validateInteger, validateObject } = require_validators(), kWeakHandler = require_primordials().Symbol(\"kWeak\"), { finished } = require_end_of_stream(), {\n      ArrayPrototypePush,\n      MathFloor,\n      Number: Number2,\n      NumberIsNaN,\n      Promise: Promise2,\n      PromiseReject,\n      PromisePrototypeCatch,\n      Symbol: Symbol2\n    } = require_primordials(), kEmpty = Symbol2(\"kEmpty\"), kEof = Symbol2(\"kEof\");\n    function map(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let concurrency = 1;\n      if ((options === null || options === void 0 \? void 0 : options.concurrency) != null)\n        concurrency = MathFloor(options.concurrency);\n      return validateInteger(concurrency, \"concurrency\", 1), async function* map2() {\n        var _options$signal, _options$signal2;\n        const ac = new AbortController, stream = this, queue = [], signal = ac.signal, signalOpt = {\n          signal\n        }, abort = () => ac.abort();\n        if (options !== null && options !== void 0 && (_options$signal = options.signal) !== null && _options$signal !== void 0 && _options$signal.aborted)\n          abort();\n        options === null || options === void 0 || (_options$signal2 = options.signal) === null || _options$signal2 === void 0 || _options$signal2.addEventListener(\"abort\", abort);\n        let next, resume, done = !1;\n        function onDone() {\n          done = !0;\n        }\n        async function pump() {\n          try {\n            for await (let val of stream) {\n              var _val;\n              if (done)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              try {\n                val = fn(val, signalOpt);\n              } catch (err) {\n                val = PromiseReject(err);\n              }\n              if (val === kEmpty)\n                continue;\n              if (typeof ((_val = val) === null || _val === void 0 \? void 0 : _val.catch) === \"function\")\n                val.catch(onDone);\n              if (queue.push(val), next)\n                next(), next = null;\n              if (!done && queue.length && queue.length >= concurrency)\n                await new Promise2((resolve) => {\n                  resume = resolve;\n                });\n            }\n            queue.push(kEof);\n          } catch (err) {\n            const val = PromiseReject(err);\n            PromisePrototypeCatch(val, onDone), queue.push(val);\n          } finally {\n            var _options$signal3;\n            if (done = !0, next)\n              next(), next = null;\n            options === null || options === void 0 || (_options$signal3 = options.signal) === null || _options$signal3 === void 0 || _options$signal3.removeEventListener(\"abort\", abort);\n          }\n        }\n        pump();\n        try {\n          while (!0) {\n            while (queue.length > 0) {\n              const val = await queue[0];\n              if (val === kEof)\n                return;\n              if (signal.aborted)\n                throw new AbortError2;\n              if (val !== kEmpty)\n                yield val;\n              if (queue.shift(), resume)\n                resume(), resume = null;\n            }\n            await new Promise2((resolve) => {\n              next = resolve;\n            });\n          }\n        } finally {\n          if (ac.abort(), done = !0, resume)\n            resume(), resume = null;\n        }\n      }.call(this);\n    }\n    function asIndexedPairs(options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return async function* asIndexedPairs2() {\n        let index = 0;\n        for await (let val of this) {\n          var _options$signal4;\n          if (options !== null && options !== void 0 && (_options$signal4 = options.signal) !== null && _options$signal4 !== void 0 && _options$signal4.aborted)\n            throw new AbortError2({\n              cause: options.signal.reason\n            });\n          yield [index++, val];\n        }\n      }.call(this);\n    }\n    async function some(fn, options = void 0) {\n      for await (let unused of filter.call(this, fn, options))\n        return !0;\n      return !1;\n    }\n    async function every(fn, options = void 0) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      return !await some.call(this, async (...args) => {\n        return !await fn(...args);\n      }, options);\n    }\n    async function find(fn, options) {\n      for await (let result of filter.call(this, fn, options))\n        return result;\n      return;\n    }\n    async function forEach(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function forEachFn(value, options2) {\n        return await fn(value, options2), kEmpty;\n      }\n      for await (let unused of map.call(this, forEachFn, options))\n        ;\n    }\n    function filter(fn, options) {\n      if (typeof fn !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"fn\", [\"Function\", \"AsyncFunction\"], fn);\n      async function filterFn(value, options2) {\n        if (await fn(value, options2))\n          return value;\n        return kEmpty;\n      }\n      return map.call(this, filterFn, options);\n    }\n    var ReduceAwareErrMissingArgs = class extends ERR_MISSING_ARGS {\n      constructor() {\n        super(\"reduce\");\n        this.message = \"Reduce of an empty stream requires an initial value\";\n      }\n    };\n    async function reduce(reducer, initialValue, options) {\n      var _options$signal5;\n      if (typeof reducer !== \"function\")\n        throw new ERR_INVALID_ARG_TYPE2(\"reducer\", [\"Function\", \"AsyncFunction\"], reducer);\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      let hasInitialValue = arguments.length > 1;\n      if (options !== null && options !== void 0 && (_options$signal5 = options.signal) !== null && _options$signal5 !== void 0 && _options$signal5.aborted) {\n        const err = new AbortError2(void 0, {\n          cause: options.signal.reason\n        });\n        throw this.once(\"error\", () => {\n        }), await finished(this.destroy(err)), err;\n      }\n      const ac = new AbortController, signal = ac.signal;\n      if (options !== null && options !== void 0 && options.signal) {\n        const opts = {\n          once: !0,\n          [kWeakHandler]: this\n        };\n        options.signal.addEventListener(\"abort\", () => ac.abort(), opts);\n      }\n      let gotAnyItemFromStream = !1;\n      try {\n        for await (let value of this) {\n          var _options$signal6;\n          if (gotAnyItemFromStream = !0, options !== null && options !== void 0 && (_options$signal6 = options.signal) !== null && _options$signal6 !== void 0 && _options$signal6.aborted)\n            throw new AbortError2;\n          if (!hasInitialValue)\n            initialValue = value, hasInitialValue = !0;\n          else\n            initialValue = await reducer(initialValue, value, {\n              signal\n            });\n        }\n        if (!gotAnyItemFromStream && !hasInitialValue)\n          throw new ReduceAwareErrMissingArgs;\n      } finally {\n        ac.abort();\n      }\n      return initialValue;\n    }\n    async function toArray(options) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      const result = [];\n      for await (let val of this) {\n        var _options$signal7;\n        if (options !== null && options !== void 0 && (_options$signal7 = options.signal) !== null && _options$signal7 !== void 0 && _options$signal7.aborted)\n          throw new AbortError2(void 0, {\n            cause: options.signal.reason\n          });\n        ArrayPrototypePush(result, val);\n      }\n      return result;\n    }\n    function flatMap(fn, options) {\n      const values = map.call(this, fn, options);\n      return async function* flatMap2() {\n        for await (let val of values)\n          yield* val;\n      }.call(this);\n    }\n    function toIntegerOrInfinity(number) {\n      if (number = Number2(number), NumberIsNaN(number))\n        return 0;\n      if (number < 0)\n        throw new ERR_OUT_OF_RANGE(\"number\", \">= 0\", number);\n      return number;\n    }\n    function drop(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* drop2() {\n        var _options$signal8;\n        if (options !== null && options !== void 0 && (_options$signal8 = options.signal) !== null && _options$signal8 !== void 0 && _options$signal8.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal9;\n          if (options !== null && options !== void 0 && (_options$signal9 = options.signal) !== null && _options$signal9 !== void 0 && _options$signal9.aborted)\n            throw new AbortError2;\n          if (number-- <= 0)\n            yield val;\n        }\n      }.call(this);\n    }\n    function take(number, options = void 0) {\n      if (options != null)\n        validateObject(options, \"options\");\n      if ((options === null || options === void 0 \? void 0 : options.signal) != null)\n        validateAbortSignal(options.signal, \"options.signal\");\n      return number = toIntegerOrInfinity(number), async function* take2() {\n        var _options$signal10;\n        if (options !== null && options !== void 0 && (_options$signal10 = options.signal) !== null && _options$signal10 !== void 0 && _options$signal10.aborted)\n          throw new AbortError2;\n        for await (let val of this) {\n          var _options$signal11;\n          if (options !== null && options !== void 0 && (_options$signal11 = options.signal) !== null && _options$signal11 !== void 0 && _options$signal11.aborted)\n            throw new AbortError2;\n          if (number-- > 0)\n            yield val;\n          else\n            return;\n        }\n      }.call(this);\n    }\n    module.exports.streamReturningOperators = {\n      asIndexedPairs,\n      drop,\n      filter,\n      flatMap,\n      map,\n      take\n    }, module.exports.promiseReturningOperators = {\n      every,\n      forEach,\n      reduce,\n      toArray,\n      some,\n      find\n    };\n  }\n}), require_destroy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/destroy.js\"(exports, module) {\n    var {\n      aggregateTwoErrors,\n      codes: { ERR_MULTIPLE_CALLBACK },\n      AbortError: AbortError2\n    } = require_errors(), { Symbol: Symbol2 } = require_primordials(), { kDestroyed, isDestroyed, isFinished, isServerRequest } = require_utils(), kDestroy = \"#kDestroy\", kConstruct = \"#kConstruct\";\n    function checkError(err, w, r) {\n      if (err) {\n        if (err.stack, w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n      }\n    }\n    function destroy2(err, cb) {\n      const r = this._readableState, w = this._writableState, s = w || r;\n      if (w && w.destroyed || r && r.destroyed) {\n        if (typeof cb === \"function\")\n          cb();\n        return this;\n      }\n      if (checkError(err, w, r), w)\n        w.destroyed = !0;\n      if (r)\n        r.destroyed = !0;\n      if (!s.constructed)\n        this.once(kDestroy, (er) => {\n          _destroy(this, aggregateTwoErrors(er, err), cb);\n        });\n      else\n        _destroy(this, err, cb);\n      return this;\n    }\n    function _destroy(self, err, cb) {\n      let called = !1;\n      function onDestroy(err2) {\n        if (called)\n          return;\n        called = !0;\n        const { _readableState: r, _writableState: w } = self;\n        if (checkError(err2, w, r), w)\n          w.closed = !0;\n        if (r)\n          r.closed = !0;\n        if (typeof cb === \"function\")\n          cb(err2);\n        if (err2)\n          runOnNextTick(emitErrorCloseNT, self, err2);\n        else\n          runOnNextTick(emitCloseNT, self);\n      }\n      try {\n        self._destroy(err || null, onDestroy);\n      } catch (err2) {\n        onDestroy(err2);\n      }\n    }\n    function emitErrorCloseNT(self, err) {\n      emitErrorNT(self, err), emitCloseNT(self);\n    }\n    function emitCloseNT(self) {\n      const { _readableState: r, _writableState: w } = self;\n      if (w)\n        w.closeEmitted = !0;\n      if (r)\n        r.closeEmitted = !0;\n      if (w && w.emitClose || r && r.emitClose)\n        self.emit(\"close\");\n    }\n    function emitErrorNT(self, err) {\n      const r = self\?._readableState, w = self\?._writableState;\n      if (w\?.errorEmitted || r\?.errorEmitted)\n        return;\n      if (w)\n        w.errorEmitted = !0;\n      if (r)\n        r.errorEmitted = !0;\n      self\?.emit\?.(\"error\", err);\n    }\n    function undestroy() {\n      const r = this._readableState, w = this._writableState;\n      if (r)\n        r.constructed = !0, r.closed = !1, r.closeEmitted = !1, r.destroyed = !1, r.errored = null, r.errorEmitted = !1, r.reading = !1, r.ended = r.readable === !1, r.endEmitted = r.readable === !1;\n      if (w)\n        w.constructed = !0, w.destroyed = !1, w.closed = !1, w.closeEmitted = !1, w.errored = null, w.errorEmitted = !1, w.finalCalled = !1, w.prefinished = !1, w.ended = w.writable === !1, w.ending = w.writable === !1, w.finished = w.writable === !1;\n    }\n    function errorOrDestroy2(stream, err, sync) {\n      const r = stream\?._readableState, w = stream\?._writableState;\n      if (w && w.destroyed || r && r.destroyed)\n        return this;\n      if (r && r.autoDestroy || w && w.autoDestroy)\n        stream.destroy(err);\n      else if (err) {\n        if (Error.captureStackTrace(err), w && !w.errored)\n          w.errored = err;\n        if (r && !r.errored)\n          r.errored = err;\n        if (sync)\n          runOnNextTick(emitErrorNT, stream, err);\n        else\n          emitErrorNT(stream, err);\n      }\n    }\n    function construct(stream, cb) {\n      if (typeof stream._construct !== \"function\")\n        return;\n      const { _readableState: r, _writableState: w } = stream;\n      if (r)\n        r.constructed = !1;\n      if (w)\n        w.constructed = !1;\n      if (stream.once(kConstruct, cb), stream.listenerCount(kConstruct) > 1)\n        return;\n      runOnNextTick(constructNT, stream);\n    }\n    function constructNT(stream) {\n      let called = !1;\n      function onConstruct(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : new ERR_MULTIPLE_CALLBACK);\n          return;\n        }\n        called = !0;\n        const { _readableState: r, _writableState: w } = stream, s = w || r;\n        if (r)\n          r.constructed = !0;\n        if (w)\n          w.constructed = !0;\n        if (s.destroyed)\n          stream.emit(kDestroy, err);\n        else if (err)\n          errorOrDestroy2(stream, err, !0);\n        else\n          runOnNextTick(emitConstructNT, stream);\n      }\n      try {\n        stream._construct(onConstruct);\n      } catch (err) {\n        onConstruct(err);\n      }\n    }\n    function emitConstructNT(stream) {\n      stream.emit(kConstruct);\n    }\n    function isRequest(stream) {\n      return stream && stream.setHeader && typeof stream.abort === \"function\";\n    }\n    function emitCloseLegacy(stream) {\n      stream.emit(\"close\");\n    }\n    function emitErrorCloseLegacy(stream, err) {\n      stream.emit(\"error\", err), runOnNextTick(emitCloseLegacy, stream);\n    }\n    function destroyer(stream, err) {\n      if (!stream || isDestroyed(stream))\n        return;\n      if (!err && !isFinished(stream))\n        err = new AbortError2;\n      if (isServerRequest(stream))\n        stream.socket = null, stream.destroy(err);\n      else if (isRequest(stream))\n        stream.abort();\n      else if (isRequest(stream.req))\n        stream.req.abort();\n      else if (typeof stream.destroy === \"function\")\n        stream.destroy(err);\n      else if (typeof stream.close === \"function\")\n        stream.close();\n      else if (err)\n        runOnNextTick(emitErrorCloseLegacy, stream);\n      else\n        runOnNextTick(emitCloseLegacy, stream);\n      if (!stream.destroyed)\n        stream[kDestroyed] = !0;\n    }\n    module.exports = {\n      construct,\n      destroyer,\n      destroy: destroy2,\n      undestroy,\n      errorOrDestroy: errorOrDestroy2\n    };\n  }\n}), require_legacy = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/legacy.js\"(exports, module) {\n    var { ArrayIsArray: ArrayIsArray2, ObjectSetPrototypeOf } = require_primordials();\n    function Stream(options) {\n      if (!(this instanceof Stream))\n        return new Stream(options);\n      EE.call(this, options);\n    }\n    Stream.prototype = {}, ObjectSetPrototypeOf(Stream.prototype, EE.prototype), ObjectSetPrototypeOf(Stream, EE), Stream.prototype.pipe = function(dest, options) {\n      const source = this;\n      function ondata(chunk) {\n        if (dest.writable && dest.write(chunk) === !1 && source.pause)\n          source.pause();\n      }\n      source.on(\"data\", ondata);\n      function ondrain() {\n        if (source.readable && source.resume)\n          source.resume();\n      }\n      if (dest.on(\"drain\", ondrain), !dest._isStdio && (!options || options.end !== !1))\n        source.on(\"end\", onend), source.on(\"close\", onclose);\n      let didOnEnd = !1;\n      function onend() {\n        if (didOnEnd)\n          return;\n        didOnEnd = !0, dest.end();\n      }\n      function onclose() {\n        if (didOnEnd)\n          return;\n        if (didOnEnd = !0, typeof dest.destroy === \"function\")\n          dest.destroy();\n      }\n      function onerror(er) {\n        if (cleanup(), EE.listenerCount(this, \"error\") === 0)\n          this.emit(\"error\", er);\n      }\n      prependListener(source, \"error\", onerror), prependListener(dest, \"error\", onerror);\n      function cleanup() {\n        source.removeListener(\"data\", ondata), dest.removeListener(\"drain\", ondrain), source.removeListener(\"end\", onend), source.removeListener(\"close\", onclose), source.removeListener(\"error\", onerror), dest.removeListener(\"error\", onerror), source.removeListener(\"end\", cleanup), source.removeListener(\"close\", cleanup), dest.removeListener(\"close\", cleanup);\n      }\n      return source.on(\"end\", cleanup), source.on(\"close\", cleanup), dest.on(\"close\", cleanup), dest.emit(\"pipe\", source), dest;\n    };\n    function prependListener(emitter, event, fn) {\n      if (typeof emitter.prependListener === \"function\")\n        return emitter.prependListener(event, fn);\n      if (!emitter._events || !emitter._events[event])\n        emitter.on(event, fn);\n      else if (ArrayIsArray2(emitter._events[event]))\n        emitter._events[event].unshift(fn);\n      else\n        emitter._events[event] = [fn, emitter._events[event]];\n    }\n    module.exports = {\n      Stream,\n      prependListener\n    };\n  }\n}), require_add_abort_signal = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/add-abort-signal.js\"(exports, module) {\n    var { AbortError: AbortError2, codes } = require_errors(), eos = require_end_of_stream(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2 } = codes, validateAbortSignal = (signal, name) => {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        throw new ERR_INVALID_ARG_TYPE2(name, \"AbortSignal\", signal);\n    };\n    function isNodeStream(obj) {\n      return !!(obj && typeof obj.pipe === \"function\");\n    }\n    module.exports.addAbortSignal = function addAbortSignal(signal, stream) {\n      if (validateAbortSignal(signal, \"signal\"), !isNodeStream(stream))\n        throw new ERR_INVALID_ARG_TYPE2(\"stream\", \"stream.Stream\", stream);\n      return module.exports.addAbortSignalNoValidate(signal, stream);\n    }, module.exports.addAbortSignalNoValidate = function(signal, stream) {\n      if (typeof signal !== \"object\" || !(\"aborted\" in signal))\n        return stream;\n      const onAbort = () => {\n        stream.destroy(new AbortError2(void 0, {\n          cause: signal.reason\n        }));\n      };\n      if (signal.aborted)\n        onAbort();\n      else\n        signal.addEventListener(\"abort\", onAbort), eos(stream, () => signal.removeEventListener(\"abort\", onAbort));\n      return stream;\n    };\n  }\n}), require_state = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/state.js\"(exports, module) {\n    var { MathFloor, NumberIsInteger } = require_primordials(), { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2 } = require_errors().codes;\n    function highWaterMarkFrom(options, isDuplex, duplexKey) {\n      return options.highWaterMark != null \? options.highWaterMark : isDuplex \? options[duplexKey] : null;\n    }\n    function getDefaultHighWaterMark(objectMode) {\n      return objectMode \? 16 : 16384;\n    }\n    function getHighWaterMark(state, options, duplexKey, isDuplex) {\n      const hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n      if (hwm != null) {\n        if (!NumberIsInteger(hwm) || hwm < 0) {\n          const name = isDuplex \? `options.${duplexKey}` : \"options.highWaterMark\";\n          throw new ERR_INVALID_ARG_VALUE2(name, hwm);\n        }\n        return MathFloor(hwm);\n      }\n      return getDefaultHighWaterMark(state.objectMode);\n    }\n    module.exports = {\n      getHighWaterMark,\n      getDefaultHighWaterMark\n    };\n  }\n}), require_from = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/from.js\"(exports, module) {\n    var { PromisePrototypeThen, SymbolAsyncIterator, SymbolIterator } = require_primordials(), { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_STREAM_NULL_VALUES } = require_errors().codes;\n    function from(Readable, iterable, opts) {\n      let iterator;\n      if (typeof iterable === \"string\" || iterable instanceof Buffer)\n        return new Readable({\n          objectMode: !0,\n          ...opts,\n          read() {\n            this.push(iterable), this.push(null);\n          }\n        });\n      let isAsync;\n      if (iterable && iterable[SymbolAsyncIterator])\n        isAsync = !0, iterator = iterable[SymbolAsyncIterator]();\n      else if (iterable && iterable[SymbolIterator])\n        isAsync = !1, iterator = iterable[SymbolIterator]();\n      else\n        throw new ERR_INVALID_ARG_TYPE2(\"iterable\", [\"Iterable\"], iterable);\n      const readable = new Readable({\n        objectMode: !0,\n        highWaterMark: 1,\n        ...opts\n      });\n      let reading = !1;\n      readable._read = function() {\n        if (!reading)\n          reading = !0, next();\n      }, readable._destroy = function(error, cb) {\n        PromisePrototypeThen(close(error), () => runOnNextTick(cb, error), (e) => runOnNextTick(cb, e || error));\n      };\n      async function close(error) {\n        const hadError = error !== void 0 && error !== null, hasThrow = typeof iterator.throw === \"function\";\n        if (hadError && hasThrow) {\n          const { value, done } = await iterator.throw(error);\n          if (await value, done)\n            return;\n        }\n        if (typeof iterator.return === \"function\") {\n          const { value } = await iterator.return();\n          await value;\n        }\n      }\n      async function next() {\n        for (;; ) {\n          try {\n            const { value, done } = isAsync \? await iterator.next() : iterator.next();\n            if (done)\n              readable.push(null);\n            else {\n              const res = value && typeof value.then === \"function\" \? await value : value;\n              if (res === null)\n                throw reading = !1, new ERR_STREAM_NULL_VALUES;\n              else if (readable.push(res))\n                continue;\n              else\n                reading = !1;\n            }\n          } catch (err) {\n            readable.destroy(err);\n          }\n          break;\n        }\n      }\n      return readable;\n    }\n    module.exports = from;\n  }\n}), _ReadableFromWeb, _ReadableFromWebForUndici, require_readable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/readable.js\"(exports, module) {\n    var {\n      ArrayPrototypeIndexOf,\n      NumberIsInteger,\n      NumberIsNaN,\n      NumberParseInt,\n      ObjectDefineProperties,\n      ObjectKeys,\n      ObjectSetPrototypeOf,\n      Promise: Promise2,\n      SafeSet,\n      SymbolAsyncIterator,\n      Symbol: Symbol2\n    } = require_primordials(), ReadableState = globalThis[globalThis.Symbol.for('Bun.lazy')](\"bun:stream\").ReadableState, { Stream, prependListener } = require_legacy();\n    function Readable(options) {\n      if (!(this instanceof Readable))\n        return new Readable(options);\n      const isDuplex = this instanceof require_duplex();\n      if (this._readableState = new ReadableState(options, this, isDuplex), options) {\n        const { read, destroy: destroy2, construct, signal } = options;\n        if (typeof read === \"function\")\n          this._read = read;\n        if (typeof destroy2 === \"function\")\n          this._destroy = destroy2;\n        if (typeof construct === \"function\")\n          this._construct = construct;\n        if (signal && !isDuplex)\n          addAbortSignal(signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        if (this._readableState.needReadable)\n          maybeReadMore(this, this._readableState);\n      });\n    }\n    Readable.prototype = {}, ObjectSetPrototypeOf(Readable.prototype, Stream.prototype), ObjectSetPrototypeOf(Readable, Stream), Readable.prototype.on = function(ev, fn) {\n      const res = Stream.prototype.on.call(this, ev, fn), state = this._readableState;\n      if (ev === \"data\") {\n        if (state.readableListening = this.listenerCount(\"readable\") > 0, state.flowing !== !1)\n          this.resume();\n      } else if (ev === \"readable\") {\n        if (!state.endEmitted && !state.readableListening) {\n          if (state.readableListening = state.needReadable = !0, state.flowing = !1, state.emittedReadable = !1, state.length)\n            emitReadable(this, state);\n          else if (!state.reading)\n            runOnNextTick(nReadingNextTick, this);\n        } else if (state.endEmitted)\n          ;\n      }\n      return res;\n    };\n\n    class ReadableFromWeb extends Readable {\n      #reader;\n      #closed;\n      #pendingChunks;\n      #stream;\n      constructor(options, stream) {\n        const { objectMode, highWaterMark, encoding, signal } = options;\n        super({\n          objectMode,\n          highWaterMark,\n          encoding,\n          signal\n        });\n        this.#pendingChunks = [], this.#reader = void 0, this.#stream = stream, this.#closed = !1;\n      }\n      #drainPending() {\n        var pendingChunks = this.#pendingChunks, pendingChunksI = 0, pendingChunksCount = pendingChunks.length;\n        for (;pendingChunksI < pendingChunksCount; pendingChunksI++) {\n          const chunk = pendingChunks[pendingChunksI];\n          if (pendingChunks[pendingChunksI] = void 0, !this.push(chunk, void 0))\n            return this.#pendingChunks = pendingChunks.slice(pendingChunksI + 1), !0;\n        }\n        if (pendingChunksCount > 0)\n          this.#pendingChunks = [];\n        return !1;\n      }\n      #handleDone(reader) {\n        reader.releaseLock(), this.#reader = void 0, this.#closed = !0, this.push(null);\n        return;\n      }\n      async _read() {\n        var stream = this.#stream, reader = this.#reader;\n        if (stream)\n          reader = this.#reader = stream.getReader(), this.#stream = void 0;\n        else if (this.#drainPending())\n          return;\n        var deferredError;\n        try {\n          do {\n            var done = !1, value;\n            const firstResult = reader.readMany();\n            if (@isPromise(firstResult)) {\n              if ({ done, value } = await firstResult, this.#closed) {\n                this.#pendingChunks.push(...value);\n                return;\n              }\n            } else\n              ({ done, value } = firstResult);\n            if (done) {\n              this.#handleDone(reader);\n              return;\n            }\n            if (!this.push(value[0])) {\n              this.#pendingChunks = value.slice(1);\n              return;\n            }\n            for (let i = 1, count = value.length;i < count; i++)\n              if (!this.push(value[i])) {\n                this.#pendingChunks = value.slice(i + 1);\n                return;\n              }\n          } while (!this.#closed);\n        } catch (e) {\n          deferredError = e;\n        } finally {\n          if (deferredError)\n            throw deferredError;\n        }\n      }\n      _destroy(error, callback) {\n        if (!this.#closed) {\n          var reader = this.#reader;\n          if (reader)\n            this.#reader = void 0, reader.cancel(error).finally(() => {\n              this.#closed = !0, callback(error);\n            });\n          return;\n        }\n        try {\n          callback(error);\n        } catch (error2) {\n          globalThis.reportError(error2);\n        }\n      }\n    }\n    _ReadableFromWebForUndici = ReadableFromWeb;\n    function newStreamReadableFromReadableStream(readableStream, options = {}) {\n      if (!isReadableStream(readableStream))\n        throw new ERR_INVALID_ARG_TYPE2(\"readableStream\", \"ReadableStream\", readableStream);\n      validateObject(options, \"options\");\n      const {\n        highWaterMark,\n        encoding,\n        objectMode = !1,\n        signal\n      } = options;\n      if (encoding !== void 0 && !Buffer.isEncoding(encoding))\n        throw new ERR_INVALID_ARG_VALUE(encoding, \"options.encoding\");\n      return validateBoolean(objectMode, \"options.objectMode\"), getNativeReadableStream(Readable, readableStream, options) || new ReadableFromWeb({\n        highWaterMark,\n        encoding,\n        objectMode,\n        signal\n      }, readableStream);\n    }\n    module.exports = Readable, _ReadableFromWeb = newStreamReadableFromReadableStream;\n    var { addAbortSignal } = require_add_abort_signal(), eos = require_end_of_stream();\n    const { maybeReadMore: _maybeReadMore, resume, emitReadable: _emitReadable, onEofChunk } = globalThis[globalThis.Symbol.for('Bun.lazy')](\"bun:stream\");\n    function maybeReadMore(stream, state) {\n      process.nextTick(_maybeReadMore, stream, state);\n    }\n    function emitReadable(stream, state) {\n      _emitReadable(stream, state);\n    }\n    var destroyImpl = require_destroy(), {\n      aggregateTwoErrors,\n      codes: {\n        ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n        ERR_METHOD_NOT_IMPLEMENTED,\n        ERR_OUT_OF_RANGE,\n        ERR_STREAM_PUSH_AFTER_EOF,\n        ERR_STREAM_UNSHIFT_AFTER_END_EVENT\n      }\n    } = require_errors(), { validateObject } = require_validators(), from = require_from(), nop = () => {\n    }, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    Readable.prototype.destroy = destroyImpl.destroy, Readable.prototype._undestroy = destroyImpl.undestroy, Readable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Readable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    }, Readable.prototype.push = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !1);\n    }, Readable.prototype.unshift = function(chunk, encoding) {\n      return readableAddChunk(this, chunk, encoding, !0);\n    };\n    function readableAddChunk(stream, chunk, encoding, addToFront) {\n      const state = stream._readableState;\n      let err;\n      if (!state.objectMode) {\n        if (typeof chunk === \"string\") {\n          if (encoding = encoding || state.defaultEncoding, state.encoding !== encoding)\n            if (addToFront && state.encoding)\n              chunk = Buffer.from(chunk, encoding).toString(state.encoding);\n            else\n              chunk = Buffer.from(chunk, encoding), encoding = \"\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"\";\n        else if (Stream._isUint8Array(chunk)) {\n          if (addToFront || !state.decoder)\n            chunk = Stream._uint8ArrayToBuffer(chunk);\n          encoding = \"\";\n        } else if (chunk != null)\n          err = new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      }\n      if (err)\n        errorOrDestroy2(stream, err);\n      else if (chunk === null)\n        state.reading = !1, onEofChunk(stream, state);\n      else if (state.objectMode || chunk && chunk.length > 0)\n        if (addToFront)\n          if (state.endEmitted)\n            errorOrDestroy2(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT);\n          else if (state.destroyed || state.errored)\n            return !1;\n          else\n            addChunk(stream, state, chunk, !0);\n        else if (state.ended)\n          errorOrDestroy2(stream, new ERR_STREAM_PUSH_AFTER_EOF);\n        else if (state.destroyed || state.errored)\n          return !1;\n        else if (state.reading = !1, state.decoder && !encoding)\n          if (chunk = state.decoder.write(chunk), state.objectMode || chunk.length !== 0)\n            addChunk(stream, state, chunk, !1);\n          else\n            maybeReadMore(stream, state);\n        else\n          addChunk(stream, state, chunk, !1);\n      else if (!addToFront)\n        state.reading = !1, maybeReadMore(stream, state);\n      return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n    }\n    function addChunk(stream, state, chunk, addToFront) {\n      if (state.flowing && state.length === 0 && !state.sync && stream.listenerCount(\"data\") > 0) {\n        if (state.multiAwaitDrain)\n          state.awaitDrainWriters.clear();\n        else\n          state.awaitDrainWriters = null;\n        state.dataEmitted = !0, stream.emit(\"data\", chunk);\n      } else {\n        if (state.length += state.objectMode \? 1 : chunk.length, addToFront)\n          state.buffer.unshift(chunk);\n        else\n          state.buffer.push(chunk);\n        if (state.needReadable)\n          emitReadable(stream, state);\n      }\n      maybeReadMore(stream, state);\n    }\n    Readable.prototype.isPaused = function() {\n      const state = this._readableState;\n      return state.paused === !0 || state.flowing === !1;\n    }, Readable.prototype.setEncoding = function(enc) {\n      const decoder = new StringDecoder(enc);\n      this._readableState.decoder = decoder, this._readableState.encoding = this._readableState.decoder.encoding;\n      const buffer = this._readableState.buffer;\n      let content = \"\";\n      for (let i = buffer.length;i > 0; i--)\n        content += decoder.write(buffer.shift());\n      if (content !== \"\")\n        buffer.push(content);\n      return this._readableState.length = content.length, this;\n    };\n    var MAX_HWM = 1073741824;\n    function computeNewHighWaterMark(n) {\n      if (n > MAX_HWM)\n        throw new ERR_OUT_OF_RANGE(\"size\", \"<= 1GiB\", n);\n      else\n        n--, n |= n >>> 1, n |= n >>> 2, n |= n >>> 4, n |= n >>> 8, n |= n >>> 16, n++;\n      return n;\n    }\n    function howMuchToRead(n, state) {\n      if (n <= 0 || state.length === 0 && state.ended)\n        return 0;\n      if (state.objectMode)\n        return 1;\n      if (NumberIsNaN(n)) {\n        if (state.flowing && state.length)\n          return state.buffer.first().length;\n        return state.length;\n      }\n      if (n <= state.length)\n        return n;\n      return state.ended \? state.length : 0;\n    }\n    Readable.prototype.read = function(n) {\n      if (!NumberIsInteger(n))\n        n = NumberParseInt(n, 10);\n      const state = this._readableState, nOrig = n;\n      if (n > state.highWaterMark)\n        state.highWaterMark = computeNewHighWaterMark(n);\n      if (n !== 0)\n        state.emittedReadable = !1;\n      if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 \? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n        if (state.length === 0 && state.ended)\n          endReadable(this);\n        else\n          emitReadable(this, state);\n        return null;\n      }\n      if (n = howMuchToRead(n, state), n === 0 && state.ended) {\n        if (state.length === 0)\n          endReadable(this);\n        return null;\n      }\n      let doRead = state.needReadable;\n      if (state.length === 0 || state.length - n < state.highWaterMark)\n        doRead = !0;\n      if (state.ended || state.reading || state.destroyed || state.errored || !state.constructed)\n        doRead = !1;\n      else if (doRead) {\n        if (state.reading = !0, state.sync = !0, state.length === 0)\n          state.needReadable = !0;\n        try {\n          var result = this._read(state.highWaterMark);\n          if (@isPromise(result)) {\n            const peeked = Bun.peek(result);\n            if (peeked !== result)\n              result = peeked;\n          }\n          if (@isPromise(result) && result\?.then && @isCallable(result.then))\n            result.then(nop, function(err) {\n              errorOrDestroy2(this, err);\n            });\n        } catch (err) {\n          errorOrDestroy2(this, err);\n        }\n        if (state.sync = !1, !state.reading)\n          n = howMuchToRead(nOrig, state);\n      }\n      let ret;\n      if (n > 0)\n        ret = fromList(n, state);\n      else\n        ret = null;\n      if (ret === null)\n        state.needReadable = state.length <= state.highWaterMark, n = 0;\n      else if (state.length -= n, state.multiAwaitDrain)\n        state.awaitDrainWriters.clear();\n      else\n        state.awaitDrainWriters = null;\n      if (state.length === 0) {\n        if (!state.ended)\n          state.needReadable = !0;\n        if (nOrig !== n && state.ended)\n          endReadable(this);\n      }\n      if (ret !== null && !state.errorEmitted && !state.closeEmitted)\n        state.dataEmitted = !0, this.emit(\"data\", ret);\n      return ret;\n    }, Readable.prototype._read = function(n) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_read()\");\n    }, Readable.prototype.pipe = function(dest, pipeOpts) {\n      const src = this, state = this._readableState;\n      if (state.pipes.length === 1) {\n        if (!state.multiAwaitDrain)\n          state.multiAwaitDrain = !0, state.awaitDrainWriters = new SafeSet(state.awaitDrainWriters \? [state.awaitDrainWriters] : []);\n      }\n      state.pipes.push(dest);\n      const endFn = (!pipeOpts || pipeOpts.end !== !1) && dest !== process.stdout && dest !== process.stderr \? onend : unpipe;\n      if (state.endEmitted)\n        runOnNextTick(endFn);\n      else\n        src.once(\"end\", endFn);\n      dest.on(\"unpipe\", onunpipe);\n      function onunpipe(readable, unpipeInfo) {\n        if (readable === src) {\n          if (unpipeInfo && unpipeInfo.hasUnpiped === !1)\n            unpipeInfo.hasUnpiped = !0, cleanup();\n        }\n      }\n      function onend() {\n        dest.end();\n      }\n      let ondrain, cleanedUp = !1;\n      function cleanup() {\n        if (dest.removeListener(\"close\", onclose), dest.removeListener(\"finish\", onfinish), ondrain)\n          dest.removeListener(\"drain\", ondrain);\n        if (dest.removeListener(\"error\", onerror), dest.removeListener(\"unpipe\", onunpipe), src.removeListener(\"end\", onend), src.removeListener(\"end\", unpipe), src.removeListener(\"data\", ondata), cleanedUp = !0, ondrain && state.awaitDrainWriters && (!dest._writableState || dest._writableState.needDrain))\n          ondrain();\n      }\n      function pause() {\n        if (!cleanedUp) {\n          if (state.pipes.length === 1 && state.pipes[0] === dest)\n            state.awaitDrainWriters = dest, state.multiAwaitDrain = !1;\n          else if (state.pipes.length > 1 && state.pipes.includes(dest))\n            state.awaitDrainWriters.add(dest);\n          src.pause();\n        }\n        if (!ondrain)\n          ondrain = pipeOnDrain(src, dest), dest.on(\"drain\", ondrain);\n      }\n      src.on(\"data\", ondata);\n      function ondata(chunk) {\n        if (dest.write(chunk) === !1)\n          pause();\n      }\n      function onerror(er) {\n        if (unpipe(), dest.removeListener(\"error\", onerror), dest.listenerCount(\"error\") === 0) {\n          const s = dest._writableState || dest._readableState;\n          if (s && !s.errorEmitted)\n            errorOrDestroy2(dest, er);\n          else\n            dest.emit(\"error\", er);\n        }\n      }\n      prependListener(dest, \"error\", onerror);\n      function onclose() {\n        dest.removeListener(\"finish\", onfinish), unpipe();\n      }\n      dest.once(\"close\", onclose);\n      function onfinish() {\n        dest.removeListener(\"close\", onclose), unpipe();\n      }\n      dest.once(\"finish\", onfinish);\n      function unpipe() {\n        src.unpipe(dest);\n      }\n      if (dest.emit(\"pipe\", src), dest.writableNeedDrain === !0) {\n        if (state.flowing)\n          pause();\n      } else if (!state.flowing)\n        src.resume();\n      return dest;\n    };\n    function pipeOnDrain(src, dest) {\n      return function pipeOnDrainFunctionResult() {\n        const state = src._readableState;\n        if (state.awaitDrainWriters === dest)\n          state.awaitDrainWriters = null;\n        else if (state.multiAwaitDrain)\n          state.awaitDrainWriters.delete(dest);\n        if ((!state.awaitDrainWriters || state.awaitDrainWriters.size === 0) && src.listenerCount(\"data\"))\n          src.resume();\n      };\n    }\n    Readable.prototype.unpipe = function(dest) {\n      const state = this._readableState, unpipeInfo = {\n        hasUnpiped: !1\n      };\n      if (state.pipes.length === 0)\n        return this;\n      if (!dest) {\n        const dests = state.pipes;\n        state.pipes = [], this.pause();\n        for (let i = 0;i < dests.length; i++)\n          dests[i].emit(\"unpipe\", this, {\n            hasUnpiped: !1\n          });\n        return this;\n      }\n      const index = ArrayPrototypeIndexOf(state.pipes, dest);\n      if (index === -1)\n        return this;\n      if (state.pipes.splice(index, 1), state.pipes.length === 0)\n        this.pause();\n      return dest.emit(\"unpipe\", this, unpipeInfo), this;\n    }, Readable.prototype.addListener = Readable.prototype.on, Readable.prototype.removeListener = function(ev, fn) {\n      const res = Stream.prototype.removeListener.call(this, ev, fn);\n      if (ev === \"readable\")\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    }, Readable.prototype.off = Readable.prototype.removeListener, Readable.prototype.removeAllListeners = function(ev) {\n      const res = Stream.prototype.removeAllListeners.apply(this, arguments);\n      if (ev === \"readable\" || ev === void 0)\n        runOnNextTick(updateReadableListening, this);\n      return res;\n    };\n    function updateReadableListening(self) {\n      const state = self._readableState;\n      if (state.readableListening = self.listenerCount(\"readable\") > 0, state.resumeScheduled && state.paused === !1)\n        state.flowing = !0;\n      else if (self.listenerCount(\"data\") > 0)\n        self.resume();\n      else if (!state.readableListening)\n        state.flowing = null;\n    }\n    function nReadingNextTick(self) {\n      self.read(0);\n    }\n    Readable.prototype.resume = function() {\n      const state = this._readableState;\n      if (!state.flowing)\n        state.flowing = !state.readableListening, resume(this, state);\n      return state.paused = !1, this;\n    }, Readable.prototype.pause = function() {\n      if (this._readableState.flowing !== !1)\n        this._readableState.flowing = !1, this.emit(\"pause\");\n      return this._readableState.paused = !0, this;\n    }, Readable.prototype.wrap = function(stream) {\n      let paused = !1;\n      stream.on(\"data\", (chunk) => {\n        if (!this.push(chunk) && stream.pause)\n          paused = !0, stream.pause();\n      }), stream.on(\"end\", () => {\n        this.push(null);\n      }), stream.on(\"error\", (err) => {\n        errorOrDestroy2(this, err);\n      }), stream.on(\"close\", () => {\n        this.destroy();\n      }), stream.on(\"destroy\", () => {\n        this.destroy();\n      }), this._read = () => {\n        if (paused && stream.resume)\n          paused = !1, stream.resume();\n      };\n      const streamKeys = ObjectKeys(stream);\n      for (let j = 1;j < streamKeys.length; j++) {\n        const i = streamKeys[j];\n        if (this[i] === void 0 && typeof stream[i] === \"function\")\n          this[i] = stream[i].bind(stream);\n      }\n      return this;\n    }, Readable.prototype[SymbolAsyncIterator] = function() {\n      return streamToAsyncIterator(this);\n    }, Readable.prototype.iterator = function(options) {\n      if (options !== void 0)\n        validateObject(options, \"options\");\n      return streamToAsyncIterator(this, options);\n    };\n    function streamToAsyncIterator(stream, options) {\n      if (typeof stream.read !== \"function\")\n        stream = Readable.wrap(stream, {\n          objectMode: !0\n        });\n      const iter = createAsyncIterator(stream, options);\n      return iter.stream = stream, iter;\n    }\n    async function* createAsyncIterator(stream, options) {\n      let callback = nop;\n      function next(resolve) {\n        if (this === stream)\n          callback(), callback = nop;\n        else\n          callback = resolve;\n      }\n      stream.on(\"readable\", next);\n      let error;\n      const cleanup = eos(stream, {\n        writable: !1\n      }, (err) => {\n        error = err \? aggregateTwoErrors(error, err) : null, callback(), callback = nop;\n      });\n      try {\n        while (!0) {\n          const chunk = stream.destroyed \? null : stream.read();\n          if (chunk !== null)\n            yield chunk;\n          else if (error)\n            throw error;\n          else if (error === null)\n            return;\n          else\n            await new Promise2(next);\n        }\n      } catch (err) {\n        throw error = aggregateTwoErrors(error, err), error;\n      } finally {\n        if ((error || (options === null || options === void 0 \? void 0 : options.destroyOnReturn) !== !1) && (error === void 0 || stream._readableState.autoDestroy))\n          destroyImpl.destroyer(stream, null);\n        else\n          stream.off(\"readable\", next), cleanup();\n      }\n    }\n    ObjectDefineProperties(Readable.prototype, {\n      readable: {\n        get() {\n          const r = this._readableState;\n          return !!r && r.readable !== !1 && !r.destroyed && !r.errorEmitted && !r.endEmitted;\n        },\n        set(val) {\n          if (this._readableState)\n            this._readableState.readable = !!val;\n        }\n      },\n      readableDidRead: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.dataEmitted;\n        }\n      },\n      readableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._readableState.readable !== !1 && (this._readableState.destroyed || this._readableState.errored) && !this._readableState.endEmitted);\n        }\n      },\n      readableHighWaterMark: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.highWaterMark;\n        }\n      },\n      readableBuffer: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState && this._readableState.buffer;\n        }\n      },\n      readableFlowing: {\n        enumerable: !1,\n        get: function() {\n          return this._readableState.flowing;\n        },\n        set: function(state) {\n          if (this._readableState)\n            this._readableState.flowing = state;\n        }\n      },\n      readableLength: {\n        enumerable: !1,\n        get() {\n          return this._readableState.length;\n        }\n      },\n      readableObjectMode: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.objectMode : !1;\n        }\n      },\n      readableEncoding: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.encoding : null;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.errored : null;\n        }\n      },\n      closed: {\n        get() {\n          return this._readableState \? this._readableState.closed : !1;\n        }\n      },\n      destroyed: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.destroyed : !1;\n        },\n        set(value) {\n          if (!this._readableState)\n            return;\n          this._readableState.destroyed = value;\n        }\n      },\n      readableEnded: {\n        enumerable: !1,\n        get() {\n          return this._readableState \? this._readableState.endEmitted : !1;\n        }\n      }\n    }), Readable._fromList = fromList;\n    function fromList(n, state) {\n      if (state.length === 0)\n        return null;\n      let ret;\n      if (state.objectMode)\n        ret = state.buffer.shift();\n      else if (!n || n >= state.length) {\n        if (state.decoder)\n          ret = state.buffer.join(\"\");\n        else if (state.buffer.length === 1)\n          ret = state.buffer.first();\n        else\n          ret = state.buffer.concat(state.length);\n        state.buffer.clear();\n      } else\n        ret = state.buffer.consume(n, state.decoder);\n      return ret;\n    }\n    function endReadable(stream) {\n      const state = stream._readableState;\n      if (!state.endEmitted)\n        state.ended = !0, runOnNextTick(endReadableNT, state, stream);\n    }\n    function endReadableNT(state, stream) {\n      if (!state.errored && !state.closeEmitted && !state.endEmitted && state.length === 0) {\n        if (state.endEmitted = !0, stream.emit(\"end\"), stream.writable && stream.allowHalfOpen === !1)\n          runOnNextTick(endWritableNT, stream);\n        else if (state.autoDestroy) {\n          const wState = stream._writableState;\n          if (!wState || wState.autoDestroy && (wState.finished || wState.writable === !1))\n            stream.destroy();\n        }\n      }\n    }\n    function endWritableNT(stream) {\n      if (stream.writable && !stream.writableEnded && !stream.destroyed)\n        stream.end();\n    }\n    Readable.from = function(iterable, opts) {\n      return from(Readable, iterable, opts);\n    };\n    var webStreamsAdapters = {\n      newStreamReadableFromReadableStream,\n      newReadableStreamFromStreamReadable(streamReadable, options = {}) {\n        if (typeof streamReadable\?._readableState !== \"object\")\n          throw new ERR_INVALID_ARG_TYPE2(\"streamReadable\", \"stream.Readable\", streamReadable);\n        var { isDestroyed, isReadable } = require_utils();\n        if (isDestroyed(streamReadable) || !isReadable(streamReadable)) {\n          const readable = new ReadableStream;\n          return readable.cancel(), readable;\n        }\n        const { readableObjectMode: objectMode, readableHighWaterMark: highWaterMark } = streamReadable, strategy = ((strategy2) => {\n          if (strategy2)\n            return strategy2;\n          if (objectMode)\n            return new CountQueuingStrategy({ highWaterMark });\n          return { highWaterMark };\n        })(options\?.strategy);\n        let controller;\n        function onData(chunk) {\n          if (controller.enqueue(chunk), controller.desiredSize <= 0)\n            streamReadable.pause();\n        }\n        streamReadable.pause();\n        const cleanup = eos(streamReadable, (error) => {\n          if (error\?.code === \"ERR_STREAM_PREMATURE_CLOSE\")\n            error = new AbortError(void 0, { cause: error });\n          if (cleanup(), streamReadable.on(\"error\", () => {\n          }), error)\n            return controller.error(error);\n          controller.close();\n        });\n        return streamReadable.on(\"data\", onData), new ReadableStream({\n          start(c) {\n            controller = c;\n          },\n          pull() {\n            streamReadable.resume();\n          },\n          cancel(reason) {\n            destroy(streamReadable, reason);\n          }\n        }, strategy);\n      }\n    };\n    Readable.fromWeb = function(readableStream, options) {\n      return webStreamsAdapters.newStreamReadableFromReadableStream(readableStream, options);\n    }, Readable.toWeb = function(streamReadable, options) {\n      return webStreamsAdapters.newReadableStreamFromStreamReadable(streamReadable, options);\n    }, Readable.wrap = function(src, options) {\n      var _ref, _src$readableObjectMo;\n      return new Readable({\n        objectMode: (_ref = (_src$readableObjectMo = src.readableObjectMode) !== null && _src$readableObjectMo !== void 0 \? _src$readableObjectMo : src.objectMode) !== null && _ref !== void 0 \? _ref : !0,\n        ...options,\n        destroy(err, callback) {\n          destroyImpl.destroyer(src, err), callback(err);\n        }\n      }).wrap(src);\n    };\n  }\n}), require_writable = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/writable.js\"(exports, module) {\n    var {\n      ArrayPrototypeSlice,\n      Error: Error2,\n      FunctionPrototypeSymbolHasInstance,\n      ObjectDefineProperty,\n      ObjectDefineProperties,\n      ObjectSetPrototypeOf,\n      StringPrototypeToLowerCase,\n      Symbol: Symbol2,\n      SymbolHasInstance\n    } = require_primordials(), Stream = require_legacy().Stream, destroyImpl = require_destroy(), { addAbortSignal } = require_add_abort_signal(), { getHighWaterMark, getDefaultHighWaterMark } = require_state(), {\n      ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2,\n      ERR_METHOD_NOT_IMPLEMENTED,\n      ERR_MULTIPLE_CALLBACK,\n      ERR_STREAM_CANNOT_PIPE,\n      ERR_STREAM_DESTROYED,\n      ERR_STREAM_ALREADY_FINISHED,\n      ERR_STREAM_NULL_VALUES,\n      ERR_STREAM_WRITE_AFTER_END,\n      ERR_UNKNOWN_ENCODING\n    } = require_errors().codes, { errorOrDestroy: errorOrDestroy2 } = destroyImpl;\n    function Writable(options = {}) {\n      const isDuplex = this instanceof require_duplex();\n      if (!isDuplex && !FunctionPrototypeSymbolHasInstance(Writable, this))\n        return new Writable(options);\n      if (this._writableState = new WritableState(options, this, isDuplex), options) {\n        if (typeof options.write === \"function\")\n          this._write = options.write;\n        if (typeof options.writev === \"function\")\n          this._writev = options.writev;\n        if (typeof options.destroy === \"function\")\n          this._destroy = options.destroy;\n        if (typeof options.final === \"function\")\n          this._final = options.final;\n        if (typeof options.construct === \"function\")\n          this._construct = options.construct;\n        if (options.signal)\n          addAbortSignal(options.signal, this);\n      }\n      Stream.call(this, options), destroyImpl.construct(this, () => {\n        const state = this._writableState;\n        if (!state.writing)\n          clearBuffer(this, state);\n        finishMaybe(this, state);\n      });\n    }\n    Writable.prototype = {}, ObjectSetPrototypeOf(Writable.prototype, Stream.prototype), ObjectSetPrototypeOf(Writable, Stream), module.exports = Writable;\n    function nop() {\n    }\n    var kOnFinished = Symbol2(\"kOnFinished\");\n    function WritableState(options, stream, isDuplex) {\n      if (typeof isDuplex !== \"boolean\")\n        isDuplex = stream instanceof require_duplex();\n      if (this.objectMode = !!(options && options.objectMode), isDuplex)\n        this.objectMode = this.objectMode || !!(options && options.writableObjectMode);\n      this.highWaterMark = options \? getHighWaterMark(this, options, \"writableHighWaterMark\", isDuplex) : getDefaultHighWaterMark(!1), this.finalCalled = !1, this.needDrain = !1, this.ending = !1, this.ended = !1, this.finished = !1, this.destroyed = !1;\n      const noDecode = !!(options && options.decodeStrings === !1);\n      this.decodeStrings = !noDecode, this.defaultEncoding = options && options.defaultEncoding || \"utf8\", this.length = 0, this.writing = !1, this.corked = 0, this.sync = !0, this.bufferProcessing = !1, this.onwrite = onwrite.bind(void 0, stream), this.writecb = null, this.writelen = 0, this.afterWriteTickInfo = null, resetBuffer(this), this.pendingcb = 0, this.constructed = !0, this.prefinished = !1, this.errorEmitted = !1, this.emitClose = !options || options.emitClose !== !1, this.autoDestroy = !options || options.autoDestroy !== !1, this.errored = null, this.closed = !1, this.closeEmitted = !1, this[kOnFinished] = [];\n    }\n    WritableState.prototype = {};\n    function resetBuffer(state) {\n      state.buffered = [], state.bufferedIndex = 0, state.allBuffers = !0, state.allNoop = !0;\n    }\n    WritableState.prototype.getBuffer = function getBuffer() {\n      return ArrayPrototypeSlice(this.buffered, this.bufferedIndex);\n    }, ObjectDefineProperty(WritableState.prototype, \"bufferedRequestCount\", {\n      get() {\n        return this.buffered.length - this.bufferedIndex;\n      }\n    }), ObjectDefineProperty(Writable, SymbolHasInstance, {\n      value: function(object) {\n        if (FunctionPrototypeSymbolHasInstance(this, object))\n          return !0;\n        if (this !== Writable)\n          return !1;\n        return object && object._writableState instanceof WritableState;\n      }\n    }), Writable.prototype.pipe = function() {\n      errorOrDestroy2(this, new ERR_STREAM_CANNOT_PIPE);\n    };\n    function _write(stream, chunk, encoding, cb) {\n      const state = stream._writableState;\n      if (typeof encoding === \"function\")\n        cb = encoding, encoding = state.defaultEncoding;\n      else {\n        if (!encoding)\n          encoding = state.defaultEncoding;\n        else if (encoding !== \"buffer\" && !Buffer.isEncoding(encoding))\n          throw new ERR_UNKNOWN_ENCODING(encoding);\n        if (typeof cb !== \"function\")\n          cb = nop;\n      }\n      if (chunk === null)\n        throw new ERR_STREAM_NULL_VALUES;\n      else if (!state.objectMode)\n        if (typeof chunk === \"string\") {\n          if (state.decodeStrings !== !1)\n            chunk = Buffer.from(chunk, encoding), encoding = \"buffer\";\n        } else if (chunk instanceof Buffer)\n          encoding = \"buffer\";\n        else if (Stream._isUint8Array(chunk))\n          chunk = Stream._uint8ArrayToBuffer(chunk), encoding = \"buffer\";\n        else\n          throw new ERR_INVALID_ARG_TYPE2(\"chunk\", [\"string\", \"Buffer\", \"Uint8Array\"], chunk);\n      let err;\n      if (state.ending)\n        err = new ERR_STREAM_WRITE_AFTER_END;\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"write\");\n      if (err)\n        return runOnNextTick(cb, err), errorOrDestroy2(stream, err, !0), err;\n      return state.pendingcb++, writeOrBuffer(stream, state, chunk, encoding, cb);\n    }\n    Writable.prototype.write = function(chunk, encoding, cb) {\n      return _write(this, chunk, encoding, cb) === !0;\n    }, Writable.prototype.cork = function() {\n      this._writableState.corked++;\n    }, Writable.prototype.uncork = function() {\n      const state = this._writableState;\n      if (state.corked) {\n        if (state.corked--, !state.writing)\n          clearBuffer(this, state);\n      }\n    }, Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n      if (typeof encoding === \"string\")\n        encoding = StringPrototypeToLowerCase(encoding);\n      if (!Buffer.isEncoding(encoding))\n        throw new ERR_UNKNOWN_ENCODING(encoding);\n      return this._writableState.defaultEncoding = encoding, this;\n    };\n    function writeOrBuffer(stream, state, chunk, encoding, callback) {\n      const len = state.objectMode \? 1 : chunk.length;\n      state.length += len;\n      const ret = state.length < state.highWaterMark;\n      if (!ret)\n        state.needDrain = !0;\n      if (state.writing || state.corked || state.errored || !state.constructed) {\n        if (state.buffered.push({\n          chunk,\n          encoding,\n          callback\n        }), state.allBuffers && encoding !== \"buffer\")\n          state.allBuffers = !1;\n        if (state.allNoop && callback !== nop)\n          state.allNoop = !1;\n      } else\n        state.writelen = len, state.writecb = callback, state.writing = !0, state.sync = !0, stream._write(chunk, encoding, state.onwrite), state.sync = !1;\n      return ret && !state.errored && !state.destroyed;\n    }\n    function doWrite(stream, state, writev, len, chunk, encoding, cb) {\n      if (state.writelen = len, state.writecb = cb, state.writing = !0, state.sync = !0, state.destroyed)\n        state.onwrite(new ERR_STREAM_DESTROYED(\"write\"));\n      else if (writev)\n        stream._writev(chunk, state.onwrite);\n      else\n        stream._write(chunk, encoding, state.onwrite);\n      state.sync = !1;\n    }\n    function onwriteError(stream, state, er, cb) {\n      --state.pendingcb, cb(er), errorBuffer(state), errorOrDestroy2(stream, er);\n    }\n    function onwrite(stream, er) {\n      const state = stream._writableState, sync = state.sync, cb = state.writecb;\n      if (typeof cb !== \"function\") {\n        errorOrDestroy2(stream, new ERR_MULTIPLE_CALLBACK);\n        return;\n      }\n      if (state.writing = !1, state.writecb = null, state.length -= state.writelen, state.writelen = 0, er) {\n        if (Error.captureStackTrace(er), !state.errored)\n          state.errored = er;\n        if (stream._readableState && !stream._readableState.errored)\n          stream._readableState.errored = er;\n        if (sync)\n          runOnNextTick(onwriteError, stream, state, er, cb);\n        else\n          onwriteError(stream, state, er, cb);\n      } else {\n        if (state.buffered.length > state.bufferedIndex)\n          clearBuffer(stream, state);\n        if (sync)\n          if (state.afterWriteTickInfo !== null && state.afterWriteTickInfo.cb === cb)\n            state.afterWriteTickInfo.count++;\n          else\n            state.afterWriteTickInfo = {\n              count: 1,\n              cb,\n              stream,\n              state\n            }, runOnNextTick(afterWriteTick, state.afterWriteTickInfo);\n        else\n          afterWrite(stream, state, 1, cb);\n      }\n    }\n    function afterWriteTick({ stream, state, count, cb }) {\n      return state.afterWriteTickInfo = null, afterWrite(stream, state, count, cb);\n    }\n    function afterWrite(stream, state, count, cb) {\n      if (!state.ending && !stream.destroyed && state.length === 0 && state.needDrain)\n        state.needDrain = !1, stream.emit(\"drain\");\n      while (count-- > 0)\n        state.pendingcb--, cb();\n      if (state.destroyed)\n        errorBuffer(state);\n      finishMaybe(stream, state);\n    }\n    function errorBuffer(state) {\n      if (state.writing)\n        return;\n      for (let n = state.bufferedIndex;n < state.buffered.length; ++n) {\n        var _state$errored;\n        const { chunk, callback } = state.buffered[n], len = state.objectMode \? 1 : chunk.length;\n        state.length -= len, callback((_state$errored = state.errored) !== null && _state$errored !== void 0 \? _state$errored : new ERR_STREAM_DESTROYED(\"write\"));\n      }\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++) {\n        var _state$errored2;\n        onfinishCallbacks[i]((_state$errored2 = state.errored) !== null && _state$errored2 !== void 0 \? _state$errored2 : new ERR_STREAM_DESTROYED(\"end\"));\n      }\n      resetBuffer(state);\n    }\n    function clearBuffer(stream, state) {\n      if (state.corked || state.bufferProcessing || state.destroyed || !state.constructed)\n        return;\n      const { buffered, bufferedIndex, objectMode } = state, bufferedLength = buffered.length - bufferedIndex;\n      if (!bufferedLength)\n        return;\n      let i = bufferedIndex;\n      if (state.bufferProcessing = !0, bufferedLength > 1 && stream._writev) {\n        state.pendingcb -= bufferedLength - 1;\n        const callback = state.allNoop \? nop : (err) => {\n          for (let n = i;n < buffered.length; ++n)\n            buffered[n].callback(err);\n        }, chunks = state.allNoop && i === 0 \? buffered : ArrayPrototypeSlice(buffered, i);\n        chunks.allBuffers = state.allBuffers, doWrite(stream, state, !0, state.length, chunks, \"\", callback), resetBuffer(state);\n      } else {\n        do {\n          const { chunk, encoding, callback } = buffered[i];\n          buffered[i++] = null;\n          const len = objectMode \? 1 : chunk.length;\n          doWrite(stream, state, !1, len, chunk, encoding, callback);\n        } while (i < buffered.length && !state.writing);\n        if (i === buffered.length)\n          resetBuffer(state);\n        else if (i > 256)\n          buffered.splice(0, i), state.bufferedIndex = 0;\n        else\n          state.bufferedIndex = i;\n      }\n      state.bufferProcessing = !1;\n    }\n    Writable.prototype._write = function(chunk, encoding, cb) {\n      if (this._writev)\n        this._writev([\n          {\n            chunk,\n            encoding\n          }\n        ], cb);\n      else\n        throw new ERR_METHOD_NOT_IMPLEMENTED(\"_write()\");\n    }, Writable.prototype._writev = null, Writable.prototype.end = function(chunk, encoding, cb, native = !1) {\n      const state = this._writableState;\n      if (typeof chunk === \"function\")\n        cb = chunk, chunk = null, encoding = null;\n      else if (typeof encoding === \"function\")\n        cb = encoding, encoding = null;\n      let err;\n      if (chunk !== null && chunk !== void 0) {\n        let ret;\n        if (!native)\n          ret = _write(this, chunk, encoding);\n        else\n          ret = this.write(chunk, encoding);\n        if (ret instanceof Error2)\n          err = ret;\n      }\n      if (state.corked)\n        state.corked = 1, this.uncork();\n      if (err)\n        this.emit(\"error\", err);\n      else if (!state.errored && !state.ending)\n        state.ending = !0, finishMaybe(this, state, !0), state.ended = !0;\n      else if (state.finished)\n        err = new ERR_STREAM_ALREADY_FINISHED(\"end\");\n      else if (state.destroyed)\n        err = new ERR_STREAM_DESTROYED(\"end\");\n      if (typeof cb === \"function\")\n        if (err || state.finished)\n          runOnNextTick(cb, err);\n        else\n          state[kOnFinished].push(cb);\n      return this;\n    };\n    function needFinish(state, tag) {\n      var needFinish2 = state.ending && !state.destroyed && state.constructed && state.length === 0 && !state.errored && state.buffered.length === 0 && !state.finished && !state.writing && !state.errorEmitted && !state.closeEmitted;\n      return needFinish2;\n    }\n    function callFinal(stream, state) {\n      let called = !1;\n      function onFinish(err) {\n        if (called) {\n          errorOrDestroy2(stream, err !== null && err !== void 0 \? err : ERR_MULTIPLE_CALLBACK());\n          return;\n        }\n        if (called = !0, state.pendingcb--, err) {\n          const onfinishCallbacks = state[kOnFinished].splice(0);\n          for (let i = 0;i < onfinishCallbacks.length; i++)\n            onfinishCallbacks[i](err);\n          errorOrDestroy2(stream, err, state.sync);\n        } else if (needFinish(state))\n          state.prefinished = !0, stream.emit(\"prefinish\"), state.pendingcb++, runOnNextTick(finish, stream, state);\n      }\n      state.sync = !0, state.pendingcb++;\n      try {\n        stream._final(onFinish);\n      } catch (err) {\n        onFinish(err);\n      }\n      state.sync = !1;\n    }\n    function prefinish(stream, state) {\n      if (!state.prefinished && !state.finalCalled)\n        if (typeof stream._final === \"function\" && !state.destroyed)\n          state.finalCalled = !0, callFinal(stream, state);\n        else\n          state.prefinished = !0, stream.emit(\"prefinish\");\n    }\n    function finishMaybe(stream, state, sync) {\n      if (!needFinish(state, stream.__id))\n        return;\n      if (prefinish(stream, state), state.pendingcb === 0) {\n        if (sync)\n          state.pendingcb++, runOnNextTick((stream2, state2) => {\n            if (needFinish(state2))\n              finish(stream2, state2);\n            else\n              state2.pendingcb--;\n          }, stream, state);\n        else if (needFinish(state))\n          state.pendingcb++, finish(stream, state);\n      }\n    }\n    function finish(stream, state) {\n      state.pendingcb--, state.finished = !0;\n      const onfinishCallbacks = state[kOnFinished].splice(0);\n      for (let i = 0;i < onfinishCallbacks.length; i++)\n        onfinishCallbacks[i]();\n      if (stream.emit(\"finish\"), state.autoDestroy) {\n        const rState = stream._readableState;\n        if (!rState || rState.autoDestroy && (rState.endEmitted || rState.readable === !1))\n          stream.destroy();\n      }\n    }\n    ObjectDefineProperties(Writable.prototype, {\n      closed: {\n        get() {\n          return this._writableState \? this._writableState.closed : !1;\n        }\n      },\n      destroyed: {\n        get() {\n          return this._writableState \? this._writableState.destroyed : !1;\n        },\n        set(value) {\n          if (this._writableState)\n            this._writableState.destroyed = value;\n        }\n      },\n      writable: {\n        get() {\n          const w = this._writableState;\n          return !!w && w.writable !== !1 && !w.destroyed && !w.errored && !w.ending && !w.ended;\n        },\n        set(val) {\n          if (this._writableState)\n            this._writableState.writable = !!val;\n        }\n      },\n      writableFinished: {\n        get() {\n          return this._writableState \? this._writableState.finished : !1;\n        }\n      },\n      writableObjectMode: {\n        get() {\n          return this._writableState \? this._writableState.objectMode : !1;\n        }\n      },\n      writableBuffer: {\n        get() {\n          return this._writableState && this._writableState.getBuffer();\n        }\n      },\n      writableEnded: {\n        get() {\n          return this._writableState \? this._writableState.ending : !1;\n        }\n      },\n      writableNeedDrain: {\n        get() {\n          const wState = this._writableState;\n          if (!wState)\n            return !1;\n          return !wState.destroyed && !wState.ending && wState.needDrain;\n        }\n      },\n      writableHighWaterMark: {\n        get() {\n          return this._writableState && this._writableState.highWaterMark;\n        }\n      },\n      writableCorked: {\n        get() {\n          return this._writableState \? this._writableState.corked : 0;\n        }\n      },\n      writableLength: {\n        get() {\n          return this._writableState && this._writableState.length;\n        }\n      },\n      errored: {\n        enumerable: !1,\n        get() {\n          return this._writableState \? this._writableState.errored : null;\n        }\n      },\n      writableAborted: {\n        enumerable: !1,\n        get: function() {\n          return !!(this._writableState.writable !== !1 && (this._writableState.destroyed || this._writableState.errored) && !this._writableState.finished);\n        }\n      }\n    });\n    var destroy2 = destroyImpl.destroy;\n    Writable.prototype.destroy = function(err, cb) {\n      const state = this._writableState;\n      if (!state.destroyed && (state.bufferedIndex < state.buffered.length || state[kOnFinished].length))\n        runOnNextTick(errorBuffer, state);\n      return destroy2.call(this, err, cb), this;\n    }, Writable.prototype._undestroy = destroyImpl.undestroy, Writable.prototype._destroy = function(err, cb) {\n      cb(err);\n    }, Writable.prototype[EE.captureRejectionSymbol] = function(err) {\n      this.destroy(err);\n    };\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Writable.fromWeb = function(writableStream, options) {\n      return lazyWebStreams().newStreamWritableFromWritableStream(writableStream, options);\n    }, Writable.toWeb = function(streamWritable) {\n      return lazyWebStreams().newWritableStreamFromStreamWritable(streamWritable);\n    };\n  }\n}), require_duplexify = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplexify.js\"(exports, module) {\n    var {\n      isReadable,\n      isWritable,\n      isIterable,\n      isNodeStream,\n      isReadableNodeStream,\n      isWritableNodeStream,\n      isDuplexNodeStream\n    } = require_utils(), eos = require_end_of_stream(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE }\n    } = require_errors(), { destroyer } = require_destroy(), Duplex = require_duplex(), Readable = require_readable(), { createDeferredPromise } = require_util(), from = require_from(), isBlob = typeof Blob !== \"undefined\" \? function isBlob2(b) {\n      return b instanceof Blob;\n    } : function isBlob2(b) {\n      return !1;\n    }, { FunctionPrototypeCall } = require_primordials();\n\n    class Duplexify extends Duplex {\n      constructor(options) {\n        super(options);\n        if ((options === null || options === void 0 \? void 0 : options.readable) === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if ((options === null || options === void 0 \? void 0 : options.writable) === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      }\n    }\n    module.exports = function duplexify(body, name) {\n      if (isDuplexNodeStream(body))\n        return body;\n      if (isReadableNodeStream(body))\n        return _duplexify({\n          readable: body\n        });\n      if (isWritableNodeStream(body))\n        return _duplexify({\n          writable: body\n        });\n      if (isNodeStream(body))\n        return _duplexify({\n          writable: !1,\n          readable: !1\n        });\n      if (typeof body === \"function\") {\n        const { value, write, final, destroy: destroy2 } = fromAsyncGen(body);\n        if (isIterable(value))\n          return from(Duplexify, value, {\n            objectMode: !0,\n            write,\n            final,\n            destroy: destroy2\n          });\n        const then2 = value === null || value === void 0 \? void 0 : value.then;\n        if (typeof then2 === \"function\") {\n          let d;\n          const promise = FunctionPrototypeCall(then2, value, (val) => {\n            if (val != null)\n              throw new ERR_INVALID_RETURN_VALUE(\"nully\", \"body\", val);\n          }, (err) => {\n            destroyer(d, err);\n          });\n          return d = new Duplexify({\n            objectMode: !0,\n            readable: !1,\n            write,\n            final(cb) {\n              final(async () => {\n                try {\n                  await promise, runOnNextTick(cb, null);\n                } catch (err) {\n                  runOnNextTick(cb, err);\n                }\n              });\n            },\n            destroy: destroy2\n          });\n        }\n        throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or AsyncFunction\", name, value);\n      }\n      if (isBlob(body))\n        return duplexify(body.arrayBuffer());\n      if (isIterable(body))\n        return from(Duplexify, body, {\n          objectMode: !0,\n          writable: !1\n        });\n      if (typeof (body === null || body === void 0 \? void 0 : body.writable) === \"object\" || typeof (body === null || body === void 0 \? void 0 : body.readable) === \"object\") {\n        const readable = body !== null && body !== void 0 && body.readable \? isReadableNodeStream(body === null || body === void 0 \? void 0 : body.readable) \? body === null || body === void 0 \? void 0 : body.readable : duplexify(body.readable) : void 0, writable = body !== null && body !== void 0 && body.writable \? isWritableNodeStream(body === null || body === void 0 \? void 0 : body.writable) \? body === null || body === void 0 \? void 0 : body.writable : duplexify(body.writable) : void 0;\n        return _duplexify({\n          readable,\n          writable\n        });\n      }\n      const then = body === null || body === void 0 \? void 0 : body.then;\n      if (typeof then === \"function\") {\n        let d;\n        return FunctionPrototypeCall(then, body, (val) => {\n          if (val != null)\n            d.push(val);\n          d.push(null);\n        }, (err) => {\n          destroyer(d, err);\n        }), d = new Duplexify({\n          objectMode: !0,\n          writable: !1,\n          read() {\n          }\n        });\n      }\n      throw new ERR_INVALID_ARG_TYPE2(name, [\n        \"Blob\",\n        \"ReadableStream\",\n        \"WritableStream\",\n        \"Stream\",\n        \"Iterable\",\n        \"AsyncIterable\",\n        \"Function\",\n        \"{ readable, writable } pair\",\n        \"Promise\"\n      ], body);\n    };\n    function fromAsyncGen(fn) {\n      let { promise, resolve } = createDeferredPromise();\n      const ac = new AbortController, signal = ac.signal;\n      return {\n        value: fn(async function* () {\n          while (!0) {\n            const _promise = promise;\n            promise = null;\n            const { chunk, done, cb } = await _promise;\n            if (runOnNextTick(cb), done)\n              return;\n            if (signal.aborted)\n              throw new AbortError2(void 0, {\n                cause: signal.reason\n              });\n            ({ promise, resolve } = createDeferredPromise()), yield chunk;\n          }\n        }(), {\n          signal\n        }),\n        write(chunk, encoding, cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            chunk,\n            done: !1,\n            cb\n          });\n        },\n        final(cb) {\n          const _resolve = resolve;\n          resolve = null, _resolve({\n            done: !0,\n            cb\n          });\n        },\n        destroy(err, cb) {\n          ac.abort(), cb(err);\n        }\n      };\n    }\n    function _duplexify(pair) {\n      const r = pair.readable && typeof pair.readable.read !== \"function\" \? Readable.wrap(pair.readable) : pair.readable, w = pair.writable;\n      let readable = !!isReadable(r), writable = !!isWritable(w), ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      if (d = new Duplexify({\n        readableObjectMode: !!(r !== null && r !== void 0 && r.readableObjectMode),\n        writableObjectMode: !!(w !== null && w !== void 0 && w.writableObjectMode),\n        readable,\n        writable\n      }), writable)\n        eos(w, (err) => {\n          if (writable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), d._write = function(chunk, encoding, callback) {\n          if (w.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          w.end(), onfinish = callback;\n        }, w.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), w.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        eos(r, (err) => {\n          if (readable = !1, err)\n            destroyer(r, err);\n          onfinished(err);\n        }), r.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), r.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = r.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(w, err), destroyer(r, err);\n      }, d;\n    }\n  }\n}), require_duplex = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/duplex.js\"(exports, module) {\n    var { ObjectDefineProperties, ObjectGetOwnPropertyDescriptor, ObjectKeys, ObjectSetPrototypeOf } = require_primordials(), Readable = require_readable();\n    function Duplex(options) {\n      if (!(this instanceof Duplex))\n        return new Duplex(options);\n      if (Readable.call(this, options), Writable.call(this, options), options) {\n        if (this.allowHalfOpen = options.allowHalfOpen !== !1, options.readable === !1)\n          this._readableState.readable = !1, this._readableState.ended = !0, this._readableState.endEmitted = !0;\n        if (options.writable === !1)\n          this._writableState.writable = !1, this._writableState.ending = !0, this._writableState.ended = !0, this._writableState.finished = !0;\n      } else\n        this.allowHalfOpen = !0;\n    }\n    Duplex.prototype = {}, module.exports = Duplex, ObjectSetPrototypeOf(Duplex.prototype, Readable.prototype), ObjectSetPrototypeOf(Duplex, Readable);\n    for (var method in Writable.prototype)\n      if (!Duplex.prototype[method])\n        Duplex.prototype[method] = Writable.prototype[method];\n    ObjectDefineProperties(Duplex.prototype, {\n      writable: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writable\"),\n      writableHighWaterMark: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableHighWaterMark\"),\n      writableObjectMode: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableObjectMode\"),\n      writableBuffer: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableBuffer\"),\n      writableLength: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableLength\"),\n      writableFinished: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableFinished\"),\n      writableCorked: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableCorked\"),\n      writableEnded: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableEnded\"),\n      writableNeedDrain: ObjectGetOwnPropertyDescriptor(Writable.prototype, \"writableNeedDrain\"),\n      destroyed: {\n        get() {\n          if (this._readableState === void 0 || this._writableState === void 0)\n            return !1;\n          return this._readableState.destroyed && this._writableState.destroyed;\n        },\n        set(value) {\n          if (this._readableState && this._writableState)\n            this._readableState.destroyed = value, this._writableState.destroyed = value;\n        }\n      }\n    });\n    var webStreamsAdapters;\n    function lazyWebStreams() {\n      if (webStreamsAdapters === void 0)\n        webStreamsAdapters = {};\n      return webStreamsAdapters;\n    }\n    Duplex.fromWeb = function(pair, options) {\n      return lazyWebStreams().newStreamDuplexFromReadableWritablePair(pair, options);\n    }, Duplex.toWeb = function(duplex) {\n      return lazyWebStreams().newReadableWritablePairFromDuplex(duplex);\n    };\n    var duplexify;\n    Duplex.from = function(body) {\n      if (!duplexify)\n        duplexify = require_duplexify();\n      return duplexify(body, \"body\");\n    };\n  }\n}), require_transform = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/transform.js\"(exports, module) {\n    var { ObjectSetPrototypeOf, Symbol: Symbol2 } = require_primordials(), { ERR_METHOD_NOT_IMPLEMENTED } = require_errors().codes, Duplex = require_duplex();\n    function Transform(options) {\n      if (!(this instanceof Transform))\n        return new Transform(options);\n      if (Duplex.call(this, options), this._readableState.sync = !1, this[kCallback] = null, options) {\n        if (typeof options.transform === \"function\")\n          this._transform = options.transform;\n        if (typeof options.flush === \"function\")\n          this._flush = options.flush;\n      }\n      this.on(\"prefinish\", prefinish.bind(this));\n    }\n    Transform.prototype = {}, ObjectSetPrototypeOf(Transform.prototype, Duplex.prototype), ObjectSetPrototypeOf(Transform, Duplex), module.exports = Transform;\n    var kCallback = Symbol2(\"kCallback\");\n    function final(cb) {\n      if (typeof this._flush === \"function\" && !this.destroyed)\n        this._flush((er, data) => {\n          if (er) {\n            if (cb)\n              cb(er);\n            else\n              this.destroy(er);\n            return;\n          }\n          if (data != null)\n            this.push(data);\n          if (this.push(null), cb)\n            cb();\n        });\n      else if (this.push(null), cb)\n        cb();\n    }\n    function prefinish() {\n      if (this._final !== final)\n        final.call(this);\n    }\n    Transform.prototype._final = final, Transform.prototype._transform = function(chunk, encoding, callback) {\n      throw new ERR_METHOD_NOT_IMPLEMENTED(\"_transform()\");\n    }, Transform.prototype._write = function(chunk, encoding, callback) {\n      const rState = this._readableState, wState = this._writableState, length = rState.length;\n      this._transform(chunk, encoding, (err, val) => {\n        if (err) {\n          callback(err);\n          return;\n        }\n        if (val != null)\n          this.push(val);\n        if (wState.ended || length === rState.length || rState.length < rState.highWaterMark || rState.highWaterMark === 0 || rState.length === 0)\n          callback();\n        else\n          this[kCallback] = callback;\n      });\n    }, Transform.prototype._read = function() {\n      if (this[kCallback]) {\n        const callback = this[kCallback];\n        this[kCallback] = null, callback();\n      }\n    };\n  }\n}), require_passthrough = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/passthrough.js\"(exports, module) {\n    var { ObjectSetPrototypeOf } = require_primordials(), Transform = require_transform();\n    function PassThrough(options) {\n      if (!(this instanceof PassThrough))\n        return new PassThrough(options);\n      Transform.call(this, options);\n    }\n    PassThrough.prototype = {}, ObjectSetPrototypeOf(PassThrough.prototype, Transform.prototype), ObjectSetPrototypeOf(PassThrough, Transform), PassThrough.prototype._transform = function(chunk, encoding, cb) {\n      cb(null, chunk);\n    }, module.exports = PassThrough;\n  }\n}), require_pipeline = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/pipeline.js\"(exports, module) {\n    var { ArrayIsArray: ArrayIsArray2, Promise: Promise2, SymbolAsyncIterator } = require_primordials(), eos = require_end_of_stream(), { once } = require_util(), destroyImpl = require_destroy(), Duplex = require_duplex(), {\n      aggregateTwoErrors,\n      codes: { ERR_INVALID_ARG_TYPE: ERR_INVALID_ARG_TYPE2, ERR_INVALID_RETURN_VALUE, ERR_MISSING_ARGS, ERR_STREAM_DESTROYED },\n      AbortError: AbortError2\n    } = require_errors(), { validateFunction, validateAbortSignal } = require_validators(), { isIterable, isReadable, isReadableNodeStream, isNodeStream } = require_utils(), PassThrough, Readable;\n    function destroyer(stream, reading, writing) {\n      let finished = !1;\n      stream.on(\"close\", () => {\n        finished = !0;\n      });\n      const cleanup = eos(stream, {\n        readable: reading,\n        writable: writing\n      }, (err) => {\n        finished = !err;\n      });\n      return {\n        destroy: (err) => {\n          if (finished)\n            return;\n          finished = !0, destroyImpl.destroyer(stream, err || new ERR_STREAM_DESTROYED(\"pipe\"));\n        },\n        cleanup\n      };\n    }\n    function popCallback(streams) {\n      return validateFunction(streams[streams.length - 1], \"streams[stream.length - 1]\"), streams.pop();\n    }\n    function makeAsyncIterable(val) {\n      if (isIterable(val))\n        return val;\n      else if (isReadableNodeStream(val))\n        return fromReadable(val);\n      throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], val);\n    }\n    async function* fromReadable(val) {\n      if (!Readable)\n        Readable = require_readable();\n      yield* Readable.prototype[SymbolAsyncIterator].call(val);\n    }\n    async function pump(iterable, writable, finish, { end }) {\n      let error, onresolve = null;\n      const resume = (err) => {\n        if (err)\n          error = err;\n        if (onresolve) {\n          const callback = onresolve;\n          onresolve = null, callback();\n        }\n      }, wait = () => new Promise2((resolve, reject) => {\n        if (error)\n          reject(error);\n        else\n          onresolve = () => {\n            if (error)\n              reject(error);\n            else\n              resolve();\n          };\n      });\n      writable.on(\"drain\", resume);\n      const cleanup = eos(writable, {\n        readable: !1\n      }, resume);\n      try {\n        if (writable.writableNeedDrain)\n          await wait();\n        for await (let chunk of iterable)\n          if (!writable.write(chunk))\n            await wait();\n        if (end)\n          writable.end();\n        await wait(), finish();\n      } catch (err) {\n        finish(error !== err \? aggregateTwoErrors(error, err) : err);\n      } finally {\n        cleanup(), writable.off(\"drain\", resume);\n      }\n    }\n    function pipeline(...streams) {\n      return pipelineImpl(streams, once(popCallback(streams)));\n    }\n    function pipelineImpl(streams, callback, opts) {\n      if (streams.length === 1 && ArrayIsArray2(streams[0]))\n        streams = streams[0];\n      if (streams.length < 2)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      const ac = new AbortController, signal = ac.signal, outerSignal = opts === null || opts === void 0 \? void 0 : opts.signal, lastStreamCleanup = [];\n      validateAbortSignal(outerSignal, \"options.signal\");\n      function abort() {\n        finishImpl(new AbortError2);\n      }\n      outerSignal === null || outerSignal === void 0 || outerSignal.addEventListener(\"abort\", abort);\n      let error, value;\n      const destroys = [];\n      let finishCount = 0;\n      function finish(err) {\n        finishImpl(err, --finishCount === 0);\n      }\n      function finishImpl(err, final) {\n        if (err && (!error || error.code === \"ERR_STREAM_PREMATURE_CLOSE\"))\n          error = err;\n        if (!error && !final)\n          return;\n        while (destroys.length)\n          destroys.shift()(error);\n        if (outerSignal === null || outerSignal === void 0 || outerSignal.removeEventListener(\"abort\", abort), ac.abort(), final) {\n          if (!error)\n            lastStreamCleanup.forEach((fn) => fn());\n          runOnNextTick(callback, error, value);\n        }\n      }\n      let ret;\n      for (let i = 0;i < streams.length; i++) {\n        const stream = streams[i], reading = i < streams.length - 1, writing = i > 0, end = reading || (opts === null || opts === void 0 \? void 0 : opts.end) !== !1, isLastStream = i === streams.length - 1;\n        if (isNodeStream(stream)) {\n          let onError = function(err) {\n            if (err && err.name !== \"AbortError\" && err.code !== \"ERR_STREAM_PREMATURE_CLOSE\")\n              finish(err);\n          };\n          if (end) {\n            const { destroy: destroy2, cleanup } = destroyer(stream, reading, writing);\n            if (destroys.push(destroy2), isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n          if (stream.on(\"error\", onError), isReadable(stream) && isLastStream)\n            lastStreamCleanup.push(() => {\n              stream.removeListener(\"error\", onError);\n            });\n        }\n        if (i === 0)\n          if (typeof stream === \"function\") {\n            if (ret = stream({\n              signal\n            }), !isIterable(ret))\n              throw new ERR_INVALID_RETURN_VALUE(\"Iterable, AsyncIterable or Stream\", \"source\", ret);\n          } else if (isIterable(stream) || isReadableNodeStream(stream))\n            ret = stream;\n          else\n            ret = Duplex.from(stream);\n        else if (typeof stream === \"function\")\n          if (ret = makeAsyncIterable(ret), ret = stream(ret, {\n            signal\n          }), reading) {\n            if (!isIterable(ret, !0))\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable\", `transform[${i - 1}]`, ret);\n          } else {\n            var _ret;\n            if (!PassThrough)\n              PassThrough = require_passthrough();\n            const pt = new PassThrough({\n              objectMode: !0\n            }), then = (_ret = ret) === null || _ret === void 0 \? void 0 : _ret.then;\n            if (typeof then === \"function\")\n              finishCount++, then.call(ret, (val) => {\n                if (value = val, val != null)\n                  pt.write(val);\n                if (end)\n                  pt.end();\n                runOnNextTick(finish);\n              }, (err) => {\n                pt.destroy(err), runOnNextTick(finish, err);\n              });\n            else if (isIterable(ret, !0))\n              finishCount++, pump(ret, pt, finish, {\n                end\n              });\n            else\n              throw new ERR_INVALID_RETURN_VALUE(\"AsyncIterable or Promise\", \"destination\", ret);\n            ret = pt;\n            const { destroy: destroy2, cleanup } = destroyer(ret, !1, !0);\n            if (destroys.push(destroy2), isLastStream)\n              lastStreamCleanup.push(cleanup);\n          }\n        else if (isNodeStream(stream)) {\n          if (isReadableNodeStream(ret)) {\n            finishCount += 2;\n            const cleanup = pipe(ret, stream, finish, {\n              end\n            });\n            if (isReadable(stream) && isLastStream)\n              lastStreamCleanup.push(cleanup);\n          } else if (isIterable(ret))\n            finishCount++, pump(ret, stream, finish, {\n              end\n            });\n          else\n            throw new ERR_INVALID_ARG_TYPE2(\"val\", [\"Readable\", \"Iterable\", \"AsyncIterable\"], ret);\n          ret = stream;\n        } else\n          ret = Duplex.from(stream);\n      }\n      if (signal !== null && signal !== void 0 && signal.aborted || outerSignal !== null && outerSignal !== void 0 && outerSignal.aborted)\n        runOnNextTick(abort);\n      return ret;\n    }\n    function pipe(src, dst, finish, { end }) {\n      if (src.pipe(dst, {\n        end\n      }), end)\n        src.once(\"end\", () => dst.end());\n      else\n        finish();\n      return eos(src, {\n        readable: !0,\n        writable: !1\n      }, (err) => {\n        const rState = src._readableState;\n        if (err && err.code === \"ERR_STREAM_PREMATURE_CLOSE\" && rState && rState.ended && !rState.errored && !rState.errorEmitted)\n          src.once(\"end\", finish).once(\"error\", finish);\n        else\n          finish(err);\n      }), eos(dst, {\n        readable: !1,\n        writable: !0\n      }, finish);\n    }\n    module.exports = {\n      pipelineImpl,\n      pipeline\n    };\n  }\n}), require_compose = __commonJS({\n  \"node_modules/readable-stream/lib/internal/streams/compose.js\"(exports, module) {\n    var { pipeline } = require_pipeline(), Duplex = require_duplex(), { destroyer } = require_destroy(), { isNodeStream, isReadable, isWritable } = require_utils(), {\n      AbortError: AbortError2,\n      codes: { ERR_INVALID_ARG_VALUE: ERR_INVALID_ARG_VALUE2, ERR_MISSING_ARGS }\n    } = require_errors();\n    module.exports = function compose(...streams) {\n      if (streams.length === 0)\n        throw new ERR_MISSING_ARGS(\"streams\");\n      if (streams.length === 1)\n        return Duplex.from(streams[0]);\n      const orgStreams = [...streams];\n      if (typeof streams[0] === \"function\")\n        streams[0] = Duplex.from(streams[0]);\n      if (typeof streams[streams.length - 1] === \"function\") {\n        const idx = streams.length - 1;\n        streams[idx] = Duplex.from(streams[idx]);\n      }\n      for (let n = 0;n < streams.length; ++n) {\n        if (!isNodeStream(streams[n]))\n          continue;\n        if (n < streams.length - 1 && !isReadable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be readable\");\n        if (n > 0 && !isWritable(streams[n]))\n          throw new ERR_INVALID_ARG_VALUE2(`streams[${n}]`, orgStreams[n], \"must be writable\");\n      }\n      let ondrain, onfinish, onreadable, onclose, d;\n      function onfinished(err) {\n        const cb = onclose;\n        if (onclose = null, cb)\n          cb(err);\n        else if (err)\n          d.destroy(err);\n        else if (!readable && !writable)\n          d.destroy();\n      }\n      const head = streams[0], tail = pipeline(streams, onfinished), writable = !!isWritable(head), readable = !!isReadable(tail);\n      if (d = new Duplex({\n        writableObjectMode: !!(head !== null && head !== void 0 && head.writableObjectMode),\n        readableObjectMode: !!(tail !== null && tail !== void 0 && tail.writableObjectMode),\n        writable,\n        readable\n      }), writable)\n        d._write = function(chunk, encoding, callback) {\n          if (head.write(chunk, encoding))\n            callback();\n          else\n            ondrain = callback;\n        }, d._final = function(callback) {\n          head.end(), onfinish = callback;\n        }, head.on(\"drain\", function() {\n          if (ondrain) {\n            const cb = ondrain;\n            ondrain = null, cb();\n          }\n        }), tail.on(\"finish\", function() {\n          if (onfinish) {\n            const cb = onfinish;\n            onfinish = null, cb();\n          }\n        });\n      if (readable)\n        tail.on(\"readable\", function() {\n          if (onreadable) {\n            const cb = onreadable;\n            onreadable = null, cb();\n          }\n        }), tail.on(\"end\", function() {\n          d.push(null);\n        }), d._read = function() {\n          while (!0) {\n            const buf = tail.read();\n            if (buf === null) {\n              onreadable = d._read;\n              return;\n            }\n            if (!d.push(buf))\n              return;\n          }\n        };\n      return d._destroy = function(err, callback) {\n        if (!err && onclose !== null)\n          err = new AbortError2;\n        if (onreadable = null, ondrain = null, onfinish = null, onclose === null)\n          callback(err);\n        else\n          onclose = callback, destroyer(tail, err);\n      }, d;\n    };\n  }\n}), require_promises = __commonJS({\n  \"node_modules/readable-stream/lib/stream/promises.js\"(exports, module) {\n    var { ArrayPrototypePop, Promise: Promise2 } = require_primordials(), { isIterable, isNodeStream } = require_utils(), { pipelineImpl: pl } = require_pipeline(), { finished } = require_end_of_stream();\n    function pipeline(...streams) {\n      return new Promise2((resolve, reject) => {\n        let signal, end;\n        const lastArg = streams[streams.length - 1];\n        if (lastArg && typeof lastArg === \"object\" && !isNodeStream(lastArg) && !isIterable(lastArg)) {\n          const options = ArrayPrototypePop(streams);\n          signal = options.signal, end = options.end;\n        }\n        pl(streams, (err, value) => {\n          if (err)\n            reject(err);\n          else\n            resolve(value);\n        }, {\n          signal,\n          end\n        });\n      });\n    }\n    module.exports = {\n      finished,\n      pipeline\n    };\n  }\n}), require_stream = __commonJS({\n  \"node_modules/readable-stream/lib/stream.js\"(exports, module) {\n    var { ObjectDefineProperty, ObjectKeys, ReflectApply } = require_primordials(), {\n      promisify: { custom: customPromisify }\n    } = require_util(), { streamReturningOperators, promiseReturningOperators } = require_operators(), {\n      codes: { ERR_ILLEGAL_CONSTRUCTOR }\n    } = require_errors(), compose = require_compose(), { pipeline } = require_pipeline(), { destroyer } = require_destroy(), eos = require_end_of_stream(), promises = require_promises(), utils = require_utils(), Stream = module.exports = require_legacy().Stream;\n    Stream.isDisturbed = utils.isDisturbed, Stream.isErrored = utils.isErrored, Stream.isWritable = utils.isWritable, Stream.isReadable = utils.isReadable, Stream.Readable = require_readable();\n    for (let key of ObjectKeys(streamReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return Stream.Readable.from(ReflectApply(op, this, args));\n      };\n      const op = streamReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    for (let key of ObjectKeys(promiseReturningOperators)) {\n      let fn = function(...args) {\n        if (new.target)\n          throw ERR_ILLEGAL_CONSTRUCTOR();\n        return ReflectApply(op, this, args);\n      };\n      const op = promiseReturningOperators[key];\n      ObjectDefineProperty(fn, \"name\", {\n        value: op.name\n      }), ObjectDefineProperty(fn, \"length\", {\n        value: op.length\n      }), ObjectDefineProperty(Stream.Readable.prototype, key, {\n        value: fn,\n        enumerable: !1,\n        configurable: !0,\n        writable: !0\n      });\n    }\n    Stream.Writable = require_writable(), Stream.Duplex = require_duplex(), Stream.Transform = require_transform(), Stream.PassThrough = require_passthrough(), Stream.pipeline = pipeline;\n    var { addAbortSignal } = require_add_abort_signal();\n    Stream.addAbortSignal = addAbortSignal, Stream.finished = eos, Stream.destroy = destroyer, Stream.compose = compose, ObjectDefineProperty(Stream, \"promises\", {\n      configurable: !0,\n      enumerable: !0,\n      get() {\n        return promises;\n      }\n    }), ObjectDefineProperty(pipeline, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.pipeline;\n      }\n    }), ObjectDefineProperty(eos, customPromisify, {\n      enumerable: !0,\n      get() {\n        return promises.finished;\n      }\n    }), Stream.Stream = Stream, Stream._isUint8Array = function isUint8Array(value) {\n      return value instanceof Uint8Array;\n    }, Stream._uint8ArrayToBuffer = function _uint8ArrayToBuffer(chunk) {\n      return new Buffer(chunk.buffer, chunk.byteOffset, chunk.byteLength);\n    };\n  }\n}), nativeReadableStreamPrototypes = {\n  0: void 0,\n  1: void 0,\n  2: void 0,\n  3: void 0,\n  4: void 0,\n  5: void 0\n}, Writable = require_writable(), NativeWritable = class NativeWritable2 extends Writable {\n  #pathOrFdOrSink;\n  #fileSink;\n  #native = !0;\n  _construct;\n  _destroy;\n  _final;\n  constructor(pathOrFdOrSink, options = {}) {\n    super(options);\n    this._construct = this.#internalConstruct, this._destroy = this.#internalDestroy, this._final = this.#internalFinal, this.#pathOrFdOrSink = pathOrFdOrSink;\n  }\n  #internalConstruct(cb) {\n    if (this._writableState.constructed = !0, this.constructed = !0, typeof cb === \"function\")\n      cb();\n    process.nextTick(() => {\n      this.emit(\"open\", this.fd), this.emit(\"ready\");\n    });\n  }\n  #lazyConstruct() {\n    if (typeof this.#pathOrFdOrSink === \"object\")\n      if (typeof this.#pathOrFdOrSink.write === \"function\")\n        this.#fileSink = this.#pathOrFdOrSink;\n      else\n        throw new Error(\"Invalid FileSink\");\n    else\n      this.#fileSink = Bun.file(this.#pathOrFdOrSink).writer();\n  }\n  write(chunk, encoding, cb, native = this.#native) {\n    if (!native)\n      return this.#native = !1, super.write(chunk, encoding, cb);\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    var fileSink = this.#fileSink, result = fileSink.write(chunk);\n    if (@isPromise(result))\n      return result.then(() => {\n        this.emit(\"drain\"), fileSink.flush(!0);\n      }), !1;\n    if (fileSink.flush(!0), cb)\n      cb(null, chunk.byteLength);\n    return !0;\n  }\n  end(chunk, encoding, cb, native = this.#native) {\n    return super.end(chunk, encoding, cb, native);\n  }\n  #internalDestroy(error, cb) {\n    const w = this._writableState, r = this._readableState;\n    if (w)\n      w.destroyed = !0, w.closeEmitted = !0;\n    if (r)\n      r.destroyed = !0, r.closeEmitted = !0;\n    if (typeof cb === \"function\")\n      cb(error);\n    if (w\?.closeEmitted || r\?.closeEmitted)\n      this.emit(\"close\");\n  }\n  #internalFinal(cb) {\n    if (this.#fileSink)\n      this.#fileSink.end();\n    if (cb)\n      cb();\n  }\n  ref() {\n    if (!this.#fileSink)\n      this.#lazyConstruct();\n    this.#fileSink.ref();\n  }\n  unref() {\n    if (!this.#fileSink)\n      return;\n    this.#fileSink.unref();\n  }\n}, exports = require_stream(), promises = require_promises();\nexports._getNativeReadableStreamPrototype = getNativeReadableStreamPrototype;\nexports.NativeWritable = NativeWritable;\nObject.defineProperty(exports, \"promises\", {\n  configurable: !0,\n  enumerable: !0,\n  get() {\n    return promises;\n  }\n});\nexports[Symbol.for(\"::bunternal::\")] = { _ReadableFromWeb, _ReadableFromWebForUndici };\nexports.eos = require_end_of_stream();\nexports.EventEmitter = EE;\nreturn exports})\n"_s;  //  // diff --git a/src/js/private.d.ts b/src/js/private.d.ts index 74ac8ee1a..0e99e2a5b 100644 --- a/src/js/private.d.ts +++ b/src/js/private.d.ts @@ -175,6 +175,13 @@ interface BunLazyModules {      describe: typeof import("bun:jsc").jscDescribe;      describeArray: typeof import("bun:jsc").jscDescribe;    }; +  "bun:stream": { +    maybeReadMore: Function; +    resume: Function; +    emitReadable: Function; +    onEofChunk: Function; +    ReadableState: Function; +  };    sqlite: any;    "vm": {      createContext: Function; @@ -183,11 +190,8 @@ interface BunLazyModules {      runInNewContext: Function;      runInThisContext: Function;    }; -  /* typeof === 'undefined', but callable -> throws not implemented -   * We dont use this anywhere right now, so it's commented out in native code. -   */ -  // "masqueradesAsUndefined": (...args: any) => any; - +  /** typeof === 'undefined', but callable -> throws not implemented */ +  "masqueradesAsUndefined": (...args: any) => any;    pathToFileURL: typeof import("node:url").pathToFileURL;    fileURLToPath: typeof import("node:url").fileURLToPath;    noop: { diff --git a/src/linux_c.zig b/src/linux_c.zig index e927ea886..4f40a8029 100644 --- a/src/linux_c.zig +++ b/src/linux_c.zig @@ -167,7 +167,7 @@ pub const SystemErrno = enum(u8) {          map.put(.ENXIO, "No such device or address");          map.put(.E2BIG, "Argument list too long");          map.put(.ENOEXEC, "Exec format error"); -        map.put(.EBADF, "Bad file number"); +        map.put(.EBADF, "Bad file descriptor");          map.put(.ECHILD, "No child processes");          map.put(.EAGAIN, "Try again");          map.put(.ENOMEM, "Out of memory"); diff --git a/src/windows_c.zig b/src/windows_c.zig index 299614579..5101d7ffb 100644 --- a/src/windows_c.zig +++ b/src/windows_c.zig @@ -752,7 +752,7 @@ pub const SystemErrno = enum(u8) {          map.put(.ENXIO, "No such device or address");          map.put(.E2BIG, "Argument list too long");          map.put(.ENOEXEC, "Exec format error"); -        map.put(.EBADF, "Bad file number"); +        map.put(.EBADF, "Bad file descriptor");          map.put(.ECHILD, "No child processes");          map.put(.EAGAIN, "Try again");          map.put(.EOF, "End of file"); | 
