import{s as tl,o as nl,n as al}from"../chunks/scheduler.53228c21.js";import{S as pl,i as Ml,e as J,s as i,c as u,h as il,a as U,d as n,b as c,f as ll,g as y,j as X,k as sl,l as cl,m as p,n as m,t as d,o as f,p as b}from"../chunks/index.100fac89.js";import{C as ol}from"../chunks/CopyLLMTxtMenu.9360b11d.js";import{C as q}from"../chunks/CodeBlock.d30a6509.js";import{H as rl,E as jl}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.c9001d7a.js";import{H as ul,a as el}from"../chunks/HfOption.fad27e59.js";function yl(h){let s,M;return s=new q({props:{code:"ZnJvbSUyMGRpZmZ1c2Vycy5tb2R1bGFyX3BpcGVsaW5lcyUyMGltcG9ydCUyME1vZHVsYXJQaXBlbGluZUJsb2NrcyUyQyUyMElucHV0UGFyYW0lMkMlMjBPdXRwdXRQYXJhbSUwQSUwQWNsYXNzJTIwSW5wdXRCbG9jayhNb2R1bGFyUGlwZWxpbmVCbG9ja3MpJTNBJTBBJTBBJTIwJTIwJTIwJTIwJTQwcHJvcGVydHklMEElMjAlMjAlMjAlMjBkZWYlMjBpbnB1dHMoc2VsZiklM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBJbnB1dFBhcmFtKG5hbWUlM0QlMjJwcm9tcHQlMjIlMkMlMjB0eXBlX2hpbnQlM0RsaXN0JTJDJTIwZGVzY3JpcHRpb24lM0QlMjJsaXN0JTIwb2YlMjB0ZXh0JTIwcHJvbXB0cyUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBJbnB1dFBhcmFtKG5hbWUlM0QlMjJudW1faW1hZ2VzX3Blcl9wcm9tcHQlMjIlMkMlMjB0eXBlX2hpbnQlM0RpbnQlMkMlMjBkZXNjcmlwdGlvbiUzRCUyMm51bWJlciUyMG9mJTIwaW1hZ2VzJTIwcGVyJTIwcHJvbXB0JTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1RCUwQSUwQSUyMCUyMCUyMCUyMCU0MHByb3BlcnR5JTBBJTIwJTIwJTIwJTIwZGVmJTIwaW50ZXJtZWRpYXRlX291dHB1dHMoc2VsZiklM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBPdXRwdXRQYXJhbShuYW1lJTNEJTIyYmF0Y2hfc2l6ZSUyMiUyQyUyMGRlc2NyaXB0aW9uJTNEJTIyY2FsY3VsYXRlZCUyMGJhdGNoJTIwc2l6ZSUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUQlMEElMEElMjAlMjAlMjAlMjAlNDBwcm9wZXJ0eSUwQSUyMCUyMCUyMCUyMGRlZiUyMGRlc2NyaXB0aW9uKHNlbGYpJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwJTIyQSUyMGJsb2NrJTIwdGhhdCUyMGRldGVybWluZXMlMjBiYXRjaF9zaXplJTIwYmFzZWQlMjBvbiUyMHRoZSUyMG51bWJlciUyMG9mJTIwcHJvbXB0cyUyMGFuZCUyMG51bV9pbWFnZXNfcGVyX3Byb21wdCUyMGFyZ3VtZW50LiUyMiUwQSUwQSUyMCUyMCUyMCUyMGRlZiUyMF9fY2FsbF9fKHNlbGYlMkMlMjBjb21wb25lbnRzJTJDJTIwc3RhdGUpJTNBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYmxvY2tfc3RhdGUlMjAlM0QlMjBzZWxmLmdldF9ibG9ja19zdGF0ZShzdGF0ZSklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBiYXRjaF9zaXplJTIwJTNEJTIwbGVuKGJsb2NrX3N0YXRlLnByb21wdCklMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja19zdGF0ZS5iYXRjaF9zaXplJTIwJTNEJTIwYmF0Y2hfc2l6ZSUyMColMjBibG9ja19zdGF0ZS5udW1faW1hZ2VzX3Blcl9wcm9tcHQlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBzZWxmLnNldF9ibG9ja19zdGF0ZShzdGF0ZSUyQyUyMGJsb2NrX3N0YXRlKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMGNvbXBvbmVudHMlMkMlMjBzdGF0ZQ==",highlighted:`<span class="hljs-keyword">from</span> diffusers.modular_pipelines <span class="hljs-keyword">import</span> ModularPipelineBlocks, InputParam, OutputParam

<span class="hljs-keyword">class</span> <span class="hljs-title class_">InputBlock</span>(<span class="hljs-title class_ inherited__">ModularPipelineBlocks</span>):

<span class="hljs-meta">    @property</span>
    <span class="hljs-keyword">def</span> <span class="hljs-title function_">inputs</span>(<span class="hljs-params">self</span>):
        <span class="hljs-keyword">return</span> [
            InputParam(name=<span class="hljs-string">&quot;prompt&quot;</span>, type_hint=<span class="hljs-built_in">list</span>, description=<span class="hljs-string">&quot;list of text prompts&quot;</span>),
            InputParam(name=<span class="hljs-string">&quot;num_images_per_prompt&quot;</span>, type_hint=<span class="hljs-built_in">int</span>, description=<span class="hljs-string">&quot;number of images per prompt&quot;</span>),
        ]

<span class="hljs-meta">    @property</span>
    <span class="hljs-keyword">def</span> <span class="hljs-title function_">intermediate_outputs</span>(<span class="hljs-params">self</span>):
        <span class="hljs-keyword">return</span> [
            OutputParam(name=<span class="hljs-string">&quot;batch_size&quot;</span>, description=<span class="hljs-string">&quot;calculated batch size&quot;</span>),
        ]

<span class="hljs-meta">    @property</span>
    <span class="hljs-keyword">def</span> <span class="hljs-title function_">description</span>(<span class="hljs-params">self</span>):
        <span class="hljs-keyword">return</span> <span class="hljs-string">&quot;A block that determines batch_size based on the number of prompts and num_images_per_prompt argument.&quot;</span>

    <span class="hljs-keyword">def</span> <span class="hljs-title function_">__call__</span>(<span class="hljs-params">self, components, state</span>):
        block_state = self.get_block_state(state)
        batch_size = <span class="hljs-built_in">len</span>(block_state.prompt)
        block_state.batch_size = batch_size * block_state.num_images_per_prompt
        self.set_block_state(state, block_state)
        <span class="hljs-keyword">return</span> components, state`,wrap:!1}}),{c(){u(s.$$.fragment)},l(e){y(s.$$.fragment,e)},m(e,o){m(s,e,o),M=!0},p:al,i(e){M||(d(s.$$.fragment,e),M=!0)},o(e){f(s.$$.fragment,e),M=!1},d(e){b(s,e)}}}function ml(h){let s,M;return s=new q({props:{code:"aW1wb3J0JTIwdG9yY2glMEFmcm9tJTIwZGlmZnVzZXJzLm1vZHVsYXJfcGlwZWxpbmVzJTIwaW1wb3J0JTIwTW9kdWxhclBpcGVsaW5lQmxvY2tzJTJDJTIwSW5wdXRQYXJhbSUyQyUyME91dHB1dFBhcmFtJTBBJTBBY2xhc3MlMjBJbWFnZUVuY29kZXJCbG9jayhNb2R1bGFyUGlwZWxpbmVCbG9ja3MpJTNBJTBBJTBBJTIwJTIwJTIwJTIwJTQwcHJvcGVydHklMEElMjAlMjAlMjAlMjBkZWYlMjBpbnB1dHMoc2VsZiklM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBJbnB1dFBhcmFtKG5hbWUlM0QlMjJpbWFnZSUyMiUyQyUyMHR5cGVfaGludCUzRCUyMlBJTC5JbWFnZSUyMiUyQyUyMGRlc2NyaXB0aW9uJTNEJTIycmF3JTIwaW5wdXQlMjBpbWFnZSUyMHRvJTIwcHJvY2VzcyUyMiklMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBJbnB1dFBhcmFtKG5hbWUlM0QlMjJiYXRjaF9zaXplJTIyJTJDJTIwdHlwZV9oaW50JTNEaW50KSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1RCUwQSUwQSUyMCUyMCUyMCUyMCU0MHByb3BlcnR5JTBBJTIwJTIwJTIwJTIwZGVmJTIwaW50ZXJtZWRpYXRlX291dHB1dHMoc2VsZiklM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBPdXRwdXRQYXJhbShuYW1lJTNEJTIyaW1hZ2VfbGF0ZW50cyUyMiUyQyUyMGRlc2NyaXB0aW9uJTNEJTIybGF0ZW50cyUyMHJlcHJlc2VudGluZyUyMHRoZSUyMGltYWdlJTIyKSUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1RCUwQSUwQSUyMCUyMCUyMCUyMCU0MHByb3BlcnR5JTBBJTIwJTIwJTIwJTIwZGVmJTIwZGVzY3JpcHRpb24oc2VsZiklM0ElMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlMjJFbmNvZGUlMjByYXclMjBpbWFnZSUyMGludG8lMjBpdHMlMjBsYXRlbnQlMjBwcmVzZW50YXRpb24lMjIlMEElMEElMjAlMjAlMjAlMjBkZWYlMjBfX2NhbGxfXyhzZWxmJTJDJTIwY29tcG9uZW50cyUyQyUyMHN0YXRlKSUzQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrX3N0YXRlJTIwJTNEJTIwc2VsZi5nZXRfYmxvY2tfc3RhdGUoc3RhdGUpJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIzJTIwU2ltdWxhdGUlMjBwcm9jZXNzaW5nJTIwdGhlJTIwaW1hZ2UlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjMlMjBUaGlzJTIwd2lsbCUyMGNoYW5nZSUyMHRoZSUyMHN0YXRlJTIwb2YlMjB0aGUlMjBpbWFnZSUyMGZyb20lMjBhJTIwUElMJTIwaW1hZ2UlMjB0byUyMGElMjB0ZW5zb3IlMjBmb3IlMjBhbGwlMjBibG9ja3MlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja19zdGF0ZS5pbWFnZSUyMCUzRCUyMHRvcmNoLnJhbmRuKDElMkMlMjAzJTJDJTIwNTEyJTJDJTIwNTEyKSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJsb2NrX3N0YXRlLmJhdGNoX3NpemUlMjAlM0QlMjBibG9ja19zdGF0ZS5iYXRjaF9zaXplJTIwKiUyMDIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBibG9ja19zdGF0ZS5pbWFnZV9sYXRlbnRzJTIwJTNEJTIwdG9yY2gucmFuZG4oMSUyQyUyMDQlMkMlMjA2NCUyQyUyMDY0KSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNlbGYuc2V0X2Jsb2NrX3N0YXRlKHN0YXRlJTJDJTIwYmxvY2tfc3RhdGUpJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwY29tcG9uZW50cyUyQyUyMHN0YXRl",highlighted:`<span class="hljs-keyword">import</span> torch
<span class="hljs-keyword">from</span> diffusers.modular_pipelines <span class="hljs-keyword">import</span> ModularPipelineBlocks, InputParam, OutputParam

<span class="hljs-keyword">class</span> <span class="hljs-title class_">ImageEncoderBlock</span>(<span class="hljs-title class_ inherited__">ModularPipelineBlocks</span>):

<span class="hljs-meta">    @property</span>
    <span class="hljs-keyword">def</span> <span class="hljs-title function_">inputs</span>(<span class="hljs-params">self</span>):
        <span class="hljs-keyword">return</span> [
            InputParam(name=<span class="hljs-string">&quot;image&quot;</span>, type_hint=<span class="hljs-string">&quot;PIL.Image&quot;</span>, description=<span class="hljs-string">&quot;raw input image to process&quot;</span>),
            InputParam(name=<span class="hljs-string">&quot;batch_size&quot;</span>, type_hint=<span class="hljs-built_in">int</span>),
        ]

<span class="hljs-meta">    @property</span>
    <span class="hljs-keyword">def</span> <span class="hljs-title function_">intermediate_outputs</span>(<span class="hljs-params">self</span>):
        <span class="hljs-keyword">return</span> [
            OutputParam(name=<span class="hljs-string">&quot;image_latents&quot;</span>, description=<span class="hljs-string">&quot;latents representing the image&quot;</span>),
        ]

<span class="hljs-meta">    @property</span>
    <span class="hljs-keyword">def</span> <span class="hljs-title function_">description</span>(<span class="hljs-params">self</span>):
        <span class="hljs-keyword">return</span> <span class="hljs-string">&quot;Encode raw image into its latent presentation&quot;</span>

    <span class="hljs-keyword">def</span> <span class="hljs-title function_">__call__</span>(<span class="hljs-params">self, components, state</span>):
        block_state = self.get_block_state(state)
        <span class="hljs-comment"># Simulate processing the image</span>
        <span class="hljs-comment"># This will change the state of the image from a PIL image to a tensor for all blocks</span>
        block_state.image = torch.randn(<span class="hljs-number">1</span>, <span class="hljs-number">3</span>, <span class="hljs-number">512</span>, <span class="hljs-number">512</span>)
        block_state.batch_size = block_state.batch_size * <span class="hljs-number">2</span>
        block_state.image_latents = torch.randn(<span class="hljs-number">1</span>, <span class="hljs-number">4</span>, <span class="hljs-number">64</span>, <span class="hljs-number">64</span>)
        self.set_block_state(state, block_state)
        <span class="hljs-keyword">return</span> components, state`,wrap:!1}}),{c(){u(s.$$.fragment)},l(e){y(s.$$.fragment,e)},m(e,o){m(s,e,o),M=!0},p:al,i(e){M||(d(s.$$.fragment,e),M=!0)},o(e){f(s.$$.fragment,e),M=!1},d(e){b(s,e)}}}function dl(h){let s,M,e,o;return s=new el({props:{id:"sequential",option:"InputBlock",$$slots:{default:[yl]},$$scope:{ctx:h}}}),e=new el({props:{id:"sequential",option:"ImageEncoderBlock",$$slots:{default:[ml]},$$scope:{ctx:h}}}),{c(){u(s.$$.fragment),M=i(),u(e.$$.fragment)},l(t){y(s.$$.fragment,t),M=c(t),y(e.$$.fragment,t)},m(t,r){m(s,t,r),p(t,M,r),m(e,t,r),o=!0},p(t,r){const j={};r&2&&(j.$$scope={dirty:r,ctx:t}),s.$set(j);const A={};r&2&&(A.$$scope={dirty:r,ctx:t}),e.$set(A)},i(t){o||(d(s.$$.fragment,t),d(e.$$.fragment,t),o=!0)},o(t){f(s.$$.fragment,t),f(e.$$.fragment,t),o=!1},d(t){t&&n(M),b(s,t),b(e,t)}}}function fl(h){let s,M,e,o,t,r,j,A,T,P='<a href="/docs/diffusers/main/en/api/modular_diffusers/pipeline_blocks#diffusers.modular_pipelines.SequentialPipelineBlocks">SequentialPipelineBlocks</a> are a multi-block type that composes other <a href="/docs/diffusers/main/en/api/modular_diffusers/pipeline_blocks#diffusers.ModularPipelineBlocks">ModularPipelineBlocks</a> together in a sequence. Data flows linearly from one block to the next using <code>intermediate_inputs</code> and <code>intermediate_outputs</code>. Each block in <a href="/docs/diffusers/main/en/api/modular_diffusers/pipeline_blocks#diffusers.modular_pipelines.SequentialPipelineBlocks">SequentialPipelineBlocks</a> usually represents a step in the pipeline, and by combining them, you gradually build a pipeline.',R,B,v='This guide shows you how to connect two blocks into a <a href="/docs/diffusers/main/en/api/modular_diffusers/pipeline_blocks#diffusers.modular_pipelines.SequentialPipelineBlocks">SequentialPipelineBlocks</a>.',g,_,x='Create two <a href="/docs/diffusers/main/en/api/modular_diffusers/pipeline_blocks#diffusers.ModularPipelineBlocks">ModularPipelineBlocks</a>. The first block, <code>InputBlock</code>, outputs a <code>batch_size</code> value and the second block, <code>ImageEncoderBlock</code> uses <code>batch_size</code> as <code>intermediate_inputs</code>.',N,w,S,k,L="Connect the two blocks by defining an <code>InsertableDict</code> to map the block names to the block instances. Blocks are executed in the order they’re registered in <code>blocks_dict</code>.",Y,I,K='Use <a href="/docs/diffusers/main/en/api/modular_diffusers/pipeline_blocks#diffusers.modular_pipelines.SequentialPipelineBlocks.from_blocks_dict">from_blocks_dict()</a> to create a <a href="/docs/diffusers/main/en/api/modular_diffusers/pipeline_blocks#diffusers.modular_pipelines.SequentialPipelineBlocks">SequentialPipelineBlocks</a>.',W,G,Q,C,D='Inspect the sub-blocks in <a href="/docs/diffusers/main/en/api/modular_diffusers/pipeline_blocks#diffusers.modular_pipelines.SequentialPipelineBlocks">SequentialPipelineBlocks</a> by calling <code>blocks</code>, and for more details about the inputs and outputs, access the <code>docs</code> attribute.',H,Z,z,$,F,E,V;return t=new ol({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),j=new rl({props:{title:"SequentialPipelineBlocks",local:"sequentialpipelineblocks",headingTag:"h1"}}),w=new ul({props:{id:"sequential",options:["InputBlock","ImageEncoderBlock"],$$slots:{default:[dl]},$$scope:{ctx:h}}}),G=new q({props:{code:"ZnJvbSUyMGRpZmZ1c2Vycy5tb2R1bGFyX3BpcGVsaW5lcyUyMGltcG9ydCUyMFNlcXVlbnRpYWxQaXBlbGluZUJsb2NrcyUyQyUyMEluc2VydGFibGVEaWN0JTBBJTBBYmxvY2tzX2RpY3QlMjAlM0QlMjBJbnNlcnRhYmxlRGljdCgpJTBBYmxvY2tzX2RpY3QlNUIlMjJpbnB1dCUyMiU1RCUyMCUzRCUyMGlucHV0X2Jsb2NrJTBBYmxvY2tzX2RpY3QlNUIlMjJpbWFnZV9lbmNvZGVyJTIyJTVEJTIwJTNEJTIwaW1hZ2VfZW5jb2Rlcl9ibG9jayUwQSUwQWJsb2NrcyUyMCUzRCUyMFNlcXVlbnRpYWxQaXBlbGluZUJsb2Nrcy5mcm9tX2Jsb2Nrc19kaWN0KGJsb2Nrc19kaWN0KQ==",highlighted:`<span class="hljs-keyword">from</span> diffusers.modular_pipelines <span class="hljs-keyword">import</span> SequentialPipelineBlocks, InsertableDict

blocks_dict = InsertableDict()
blocks_dict[<span class="hljs-string">&quot;input&quot;</span>] = input_block
blocks_dict[<span class="hljs-string">&quot;image_encoder&quot;</span>] = image_encoder_block

blocks = SequentialPipelineBlocks.from_blocks_dict(blocks_dict)`,wrap:!1}}),Z=new q({props:{code:"cHJpbnQoYmxvY2tzKSUwQXByaW50KGJsb2Nrcy5kb2Mp",highlighted:`<span class="hljs-built_in">print</span>(blocks)
<span class="hljs-built_in">print</span>(blocks.doc)`,wrap:!1}}),$=new jl({props:{source:"https://github.com/huggingface/diffusers/blob/main/docs/source/en/modular_diffusers/sequential_pipeline_blocks.md"}}),{c(){s=J("meta"),M=i(),e=J("p"),o=i(),u(t.$$.fragment),r=i(),u(j.$$.fragment),A=i(),T=J("p"),T.innerHTML=P,R=i(),B=J("p"),B.innerHTML=v,g=i(),_=J("p"),_.innerHTML=x,N=i(),u(w.$$.fragment),S=i(),k=J("p"),k.innerHTML=L,Y=i(),I=J("p"),I.innerHTML=K,W=i(),u(G.$$.fragment),Q=i(),C=J("p"),C.innerHTML=D,H=i(),u(Z.$$.fragment),z=i(),u($.$$.fragment),F=i(),E=J("p"),this.h()},l(l){const a=il("svelte-u9bgzb",document.head);s=U(a,"META",{name:!0,content:!0}),a.forEach(n),M=c(l),e=U(l,"P",{}),ll(e).forEach(n),o=c(l),y(t.$$.fragment,l),r=c(l),y(j.$$.fragment,l),A=c(l),T=U(l,"P",{"data-svelte-h":!0}),X(T)!=="svelte-5nbzf2"&&(T.innerHTML=P),R=c(l),B=U(l,"P",{"data-svelte-h":!0}),X(B)!=="svelte-1ih16wi"&&(B.innerHTML=v),g=c(l),_=U(l,"P",{"data-svelte-h":!0}),X(_)!=="svelte-184knl9"&&(_.innerHTML=x),N=c(l),y(w.$$.fragment,l),S=c(l),k=U(l,"P",{"data-svelte-h":!0}),X(k)!=="svelte-18r9ckz"&&(k.innerHTML=L),Y=c(l),I=U(l,"P",{"data-svelte-h":!0}),X(I)!=="svelte-lzlrpp"&&(I.innerHTML=K),W=c(l),y(G.$$.fragment,l),Q=c(l),C=U(l,"P",{"data-svelte-h":!0}),X(C)!=="svelte-1s832is"&&(C.innerHTML=D),H=c(l),y(Z.$$.fragment,l),z=c(l),y($.$$.fragment,l),F=c(l),E=U(l,"P",{}),ll(E).forEach(n),this.h()},h(){sl(s,"name","hf:doc:metadata"),sl(s,"content",bl)},m(l,a){cl(document.head,s),p(l,M,a),p(l,e,a),p(l,o,a),m(t,l,a),p(l,r,a),m(j,l,a),p(l,A,a),p(l,T,a),p(l,R,a),p(l,B,a),p(l,g,a),p(l,_,a),p(l,N,a),m(w,l,a),p(l,S,a),p(l,k,a),p(l,Y,a),p(l,I,a),p(l,W,a),m(G,l,a),p(l,Q,a),p(l,C,a),p(l,H,a),m(Z,l,a),p(l,z,a),m($,l,a),p(l,F,a),p(l,E,a),V=!0},p(l,[a]){const O={};a&2&&(O.$$scope={dirty:a,ctx:l}),w.$set(O)},i(l){V||(d(t.$$.fragment,l),d(j.$$.fragment,l),d(w.$$.fragment,l),d(G.$$.fragment,l),d(Z.$$.fragment,l),d($.$$.fragment,l),V=!0)},o(l){f(t.$$.fragment,l),f(j.$$.fragment,l),f(w.$$.fragment,l),f(G.$$.fragment,l),f(Z.$$.fragment,l),f($.$$.fragment,l),V=!1},d(l){l&&(n(M),n(e),n(o),n(r),n(A),n(T),n(R),n(B),n(g),n(_),n(N),n(S),n(k),n(Y),n(I),n(W),n(Q),n(C),n(H),n(z),n(F),n(E)),n(s),b(t,l),b(j,l),b(w,l),b(G,l),b(Z,l),b($,l)}}}const bl='{"title":"SequentialPipelineBlocks","local":"sequentialpipelineblocks","sections":[],"depth":1}';function Jl(h){return nl(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class _l extends pl{constructor(s){super(),Ml(this,s,Jl,fl,tl,{})}}export{_l as component};
