tag:blogger.com,1999:blog-81614062106205205902024-03-18T16:25:16.390+05:30Software training Videos And MaterialsWe provide Seo,wordpress,digital marketing,pythan,go programming,c,c++,Php with Project,php laravel With project many More courses .Vlr Traininghttp://www.blogger.com/profile/17043738417504853644noreply@blogger.comBlogger2466125tag:blogger.com,1999:blog-8161406210620520590.post-62429003249066740922024-03-18T15:57:00.004+05:302024-03-18T15:57:33.624+05:30 In scatter-gather one route is taking 5 sec and second route is taking 3 sec to complete. How much time will it take to give output? 155<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> <span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;"> </span><span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;">In scatter-gather one route is taking 5 sec and second route is taking 3 sec to complete. How much time will it take to give output? in MuleSoft</span></span></h2><div><span id="docs-internal-guid-24d9a62b-7fff-efe2-8327-16731719247f"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4, when using a Scatter-Gather router with two routes, the overall processing time will be determined by the </span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">slowest</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> route's execution time. This is because Scatter-Gather executes each route concurrently but waits for </span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">all</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> routes to finish before proceeding.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's a breakdown of the behavior:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Scatter:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The message is sent to both routes simultaneously.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Parallel Processing:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Each route executes independently, processing the message based on its defined logic.</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Route 1 takes 5 seconds.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Route 2 takes 3 seconds.</span></p></li></ul><ol start="3" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Gather:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The Scatter-Gather component waits for both routes to complete (whichever takes longer).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Output:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Once both routes finish, the Scatter-Gather component combines the results (if applicable) and proceeds with the following component in the flow.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">In your scenario:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Route 1 takes 5 seconds.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Route 2 takes 3 seconds.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Therefore, the overall processing time, including output, will be </span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">5 seconds</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">. The Scatter-Gather component will wait for the slower Route 1 to complete before proceeding.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Key Points:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Scatter-Gather prioritizes parallel execution for efficiency.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">It waits for all routes to finish before providing output.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The overall time is dictated by the slowest route's execution duration.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">If the routes perform independent tasks and don't require combining results, the output from each route might be available as soon as it finishes processing (depending on the subsequent flow logic).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Scatter-Gather offers timeouts to handle situations where a route hangs indefinitely.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">In Conclusion:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Understanding Scatter-Gather's behavior is crucial for designing efficient MuleSoft flows. By considering the execution times of your routes, you can optimize your application's performance and ensure timely processing of messages.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-51540205992181581982024-03-18T15:45:00.000+05:302024-03-18T15:45:29.098+05:30In MuleSoft, what precisely is a batch aggregator?154<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> In MuleSoft, what precisely is a batch aggregator?</span></h2><div><span id="docs-internal-guid-1a06e011-7fff-7fa0-5af7-de0b3f1d648d"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4, a Batch Aggregator serves as a critical component within </span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Batch Processing</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> flows. It acts as a collector and processor for messages specifically designed to handle large datasets efficiently.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's a breakdown of its functionality:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Purpose:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The Batch Aggregator acts as a temporary buffer, accumulating messages iteratively as they arrive during the Process phase of a Batch Job.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">It holds these messages in a collection until a specific condition is met, triggering the processing of the accumulated data in bulk.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Configuration:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">size attribute:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This defines the maximum number of messages the Batch Aggregator can hold before processing them. The larger the size, the more efficient the processing can be for very large datasets, but it also increases memory usage.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Processors:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> You can define any MuleSoft component (like transformers, loggers, database operations) within the Batch Aggregator to manipulate the collected data before processing it as a whole.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Processing Logic:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Message Arrival:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Each message entering the Batch Job flows through the Batch Aggregator.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Collection:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The Batch Aggregator adds the message to its internal collection.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Triggering Condition:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The Batch Aggregator continuously checks if the configured threshold (set by the size attribute) has been reached.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Alternatively, you can define a custom expression within the Batch Aggregator to trigger processing based on a different condition, such as a time-based interval.</span></p></li></ul><ol start="4" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Processing Execution:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Once the trigger condition is met (e.g., size messages accumulated or time interval reached), the Batch Aggregator applies the defined processors to the entire collection of messages.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The processors can transform, enrich, or perform any necessary operations on the accumulated data as a batch.</span></p></li></ul><ol start="5" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Reset:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> After processing, the Batch Aggregator's collection is cleared, and it starts accumulating messages again for the next trigger.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Benefits:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Improved Efficiency:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> By accumulating messages and processing them in batches, the Batch Aggregator reduces the number of individual operations, leading to improved performance, especially when dealing with large datasets.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Reduced Database Calls:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Batch processing data minimizes the number of database interactions compared to inserting or updating records individually. This reduces database load and improves overall processing speed.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Flexibility:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> You can customize the processing logic within the Batch Aggregator using various MuleSoft components to manipulate the data before processing it as a whole.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Example Scenario:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Imagine you need to insert 1000 product records into a database. A Batch Job with a Batch Aggregator set to size=100 can:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Accumulate 100 product records.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Once 100 records are collected, the Batch Aggregator can perform a single database call to insert all 100 records at once in a batch.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">This reduces database load compared to inserting each record individually, leading to faster processing.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">In Conclusion:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">The Batch Aggregator is a valuable component in MuleSoft 4's Batch Processing suite. It streamlines the handling of large data volumes by facilitating efficient message accumulation and bulk processing within Batch Jobs. Understanding its functionality allows you to design scalable and performant MuleSoft flows for data processing tasks.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-74729286234584922902024-03-18T15:17:00.000+05:302024-03-18T15:17:09.946+05:30In MuleSoft4, what is a flow?153<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> In MuleSoft4, what is a flow?</span></h2><div><span id="docs-internal-guid-100f88ad-7fff-a894-46ef-271379be0f2e"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4, a </span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> is the fundamental building block of your application. It represents a connected series of MuleSoft components that process and manipulate messages. Flows define the logic and execution sequence for handling data within your MuleSoft application.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Key Characteristics of Flows:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Modular Design:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Flows promote modularity, allowing you to break down complex functionalities into smaller, reusable units.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Message Driven:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Flows operate on messages, which can contain various data formats like JSON, XML, or plain text.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Event-Driven Architecture (EDA):</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Flows adhere to an EDA approach, reacting to incoming messages and triggering processing logic based on their content.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Visual Representation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> In MuleSoft Studio, flows are typically visualized as a graph, with components arranged in a specific order to depict the message processing pipeline.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Components of a Flow:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Inbound Endpoints:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> These components act as starting points for flows, receiving messages from various sources like databases, queues, or external APIs.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Processors:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> These components perform specific operations on the message payload. Examples include transformers (data manipulation), loggers (message recording), and database connectors (interacting with databases).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Routers:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Based on message content or other criteria, routers determine the next processing steps within the flow or direct messages to different flows.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Outbound Endpoints:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> These components deliver the final processed message to a destination like a database, another application, or a message queue.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Flow Execution:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Message Arrival:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> A message enters the flow through an inbound endpoint.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Component Processing:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The message progresses through the connected components in the defined order. Processors manipulate the message payload, routers make routing decisions, and other components perform their designated tasks.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Output:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The processed message reaches the designated outbound endpoint, completing the flow's execution.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Types of Flows:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Request-Reply Flows:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Designed for scenarios where a response is expected after processing a request message.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Event-Driven Flows:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Respond to incoming events or messages without necessarily expecting a reply.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Sub-Flows:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Reusable flows that can be embedded within other flows for modularity and code reuse.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Benefits of Using Flows:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Modular Design:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Enables easier application development and maintenance due to the modular and reusable nature of flows.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Flexibility:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Flows can accommodate various processing tasks and integrate with diverse systems using different connectors.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Scalability:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Flows can be easily scaled horizontally to handle increasing message volumes.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Testability:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Individual flows can be tested independently, simplifying the debugging and testing process.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">In Conclusion:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Flows are the backbone of MuleSoft 4 applications. Understanding their structure, components, and execution flow is crucial for building robust and efficient MuleSoft applications that effectively process and manage your data.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-58290515636059288342024-03-16T16:35:00.004+05:302024-03-16T16:35:49.928+05:30in MuleSoft, what exactly is an api manager?152<h2 style="text-align: left;"><span style="font-size: x-large;"> in MuleSoft, what exactly is an api manager?152</span></h2><div><span id="docs-internal-guid-7a93f388-7fff-e044-b71f-228965ace301"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft Anypoint Platform, </span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">API Manager (API Manager)</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> is a comprehensive solution for managing APIs throughout their lifecycle. It provides a centralized platform to design, secure, publish, analyze, and govern your APIs. Here's a breakdown of its key functionalities:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">API Design and Management:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Visual Interface:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> API Manager offers a user-friendly interface to design and document your APIs using OpenAPI (Swagger) specifications or a drag-and-drop approach.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Lifecycle Management:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> It supports the entire API lifecycle, from creation and definition to deployment, versioning, and retirement.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Security Enforcement:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> API Manager allows you to implement various security mechanisms like access control, authentication (OAuth, API keys), and throttling to protect your APIs.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">API Gateway Functionality:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Single Entry Point:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> API Manager acts as a gateway, serving as a single entry point for external applications to access your APIs.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Traffic Management:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> It facilitates routing incoming API requests to the appropriate backend services based on defined rules.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Policy Enforcement:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> API Manager enforces pre-defined policies at runtime, including security checks, rate limiting, and transformation rules.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">API Analytics and Monitoring:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">API Usage Insights:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> API Manager provides valuable insights into API usage patterns, including call volume, response times, and error rates.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Monitoring and Troubleshooting:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> It offers tools for monitoring API health, identifying performance bottlenecks, and troubleshooting issues.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Benefits of Using API Manager:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Improved Developer Experience:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Provides a self-service portal for developers to discover, explore, and understand your APIs.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Enhanced Security:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Enforces robust security measures to protect your APIs from unauthorized access and malicious attacks.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Increased Scalability:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Enables efficient handling of large volumes of API traffic and simplifies scaling your API infrastructure.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Centralized Governance:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Offers consistent governance across your entire API portfolio, ensuring compliance with internal and external regulations.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">API Manager integrates seamlessly with other Anypoint Platform components for a holistic API management experience.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">It supports various deployment options, including on-premise, cloud, and hybrid environments.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">In Conclusion:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">API Manager is an essential tool for organizations looking to effectively manage their APIs and provide a seamless experience for both internal and external developers. It streamlines the API lifecycle, enhances security, and offers valuable insights for monitoring and improvement.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div><p><br /></p>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-79697332526742094212024-03-16T16:20:00.004+05:302024-03-16T16:20:34.008+05:30In MuleSoft, what exactly is a batch job?151<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> In MuleSoft, what exactly is a batch job?</span></h2><div><span id="docs-internal-guid-67891ff7-7fff-4155-435f-61d6d3c3f9c8"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4, a Batch Job is a high-level component designed for efficient and reliable processing of large datasets. It provides a structured approach to handling these tasks asynchronously and in a batched manner.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Key Characteristics:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Asynchronous Processing:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Batch Jobs operate independently of the main MuleSoft flow, allowing your application to remain responsive while processing large amounts of data.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Batching:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Messages are grouped and processed together, improving performance compared to individual message processing.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Reliability:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Batch Jobs offer features like retries and exception handling to ensure data consistency and prevent processing failures.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Structured Phases:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> A Batch Job consists of four well-defined phases:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Load and Dispatch:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Data is loaded from the source and prepared for processing.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Process:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Individual records within the data are processed using Batch Steps.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">On Success:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Actions are executed upon successful completion of the Batch Job.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">On Error:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Error handling logic is defined in case of failures during processing.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Components:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Batch Job:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The top-level component defining the overall job configuration.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Batch Step:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> A container for specific processing logic applied to individual records within the batch. This typically involves transformers, database operations, or other MuleSoft components.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Batch Aggregator (Optional):</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Used to accumulate messages before processing them in bulk, further improving efficiency.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Benefits of Batch Processing:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Improved Performance:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Batch processing reduces database load and network overhead compared to individual message processing.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Scalability:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Batch Jobs can handle large datasets effectively, making your application scalable for growing data volumes.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Reliability:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Features like retries and error handling ensure data integrity and facilitate recovery from processing failures.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Asynchronous Operation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Batch Jobs free up your main MuleSoft flow for handling other requests while processing data in the background.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Use Cases:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Database Inserts/Updates:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Batch processing large data sets for database operations like inserts, updates, or deletions.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">File Processing:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Handling massive file uploads, transformations, or downloads in batches.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Data Transformation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Efficiently transforming large datasets using MuleSoft components within Batch Steps.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">API Calls:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Batching API calls to external systems to optimize network usage and improve performance.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">In Conclusion:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Batch Jobs are a powerful tool in MuleSoft 4 for tackling large-scale data processing tasks. By leveraging their features and understanding their structure, you can design robust and efficient MuleSoft applications that handle data effectively.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-70196328476166664802024-03-16T16:02:00.002+05:302024-03-16T16:02:19.593+05:30In MuleSoft, what exactly is a batch aggregator?150<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> In MuleSoft, what exactly is a batch aggregator?</span></h2><div><span id="docs-internal-guid-36cd8c66-7fff-1796-a87c-a1f196f335be"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4, a Batch Aggregator component serves a crucial role within Batch Processing flows. It acts as a collector and processor for messages within a batch job. Here's a breakdown of its functionality:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Purpose:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The Batch Aggregator accumulates messages iteratively as they arrive during the Process phase of a Batch Job.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">It holds these messages in a collection until a specific condition is met, triggering the processing of the accumulated data.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Configuration:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">size attribute:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This defines the maximum number of messages the Batch Aggregator can hold before processing them.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">**</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Processors:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> You can define any MuleSoft component (like transformers, loggers, database operations) within the Batch Aggregator to manipulate the collected data.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Processing Logic:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Message Arrival:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Each message entering the Batch Job flows through the Batch Aggregator.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Collection:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The Batch Aggregator adds the message to its internal collection.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Triggering Condition:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The Batch Aggregator continuously checks if the configured threshold (set by the size attribute) has been reached.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Alternatively, a custom expression within the Batch Aggregator can define the processing trigger (e.g., a time-based condition).</span></p></li></ul><ol start="4" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Processing Execution:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Once the trigger condition is met (e.g., size messages accumulated), the Batch Aggregator applies the defined processors to the entire collection of messages.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The processors can transform, enrich, or perform any necessary operations on the accumulated data.</span></p></li></ul><ol start="5" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Reset:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> After processing, the Batch Aggregator's collection is cleared, and it starts accumulating messages again for the next trigger.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Benefits:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Improved Efficiency:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Batch Aggregator enables efficient processing of large datasets by grouping messages before applying operations.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Reduced Database Calls:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> By processing data in batches, you can minimize the number of database interactions, improving performance.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Flexibility:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> You can customize the processing logic within the Batch Aggregator using various MuleSoft components.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Example Scenario:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Imagine you need to insert 1000 product records into a database. A Batch Job with a Batch Aggregator set to size=100 can:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Accumulate 100 product records.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Once 100 records are collected, the Batch Aggregator can perform a single database call to insert all 100 records at once.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">This reduces database load compared to inserting each record individually.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">In Conclusion:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">The Batch Aggregator is a valuable component in MuleSoft 4's Batch Processing suite. It streamlines the handling of large data volumes by facilitating efficient message accumulation and processing within Batch Jobs. Understanding its functionality allows you to design scalable and performant MuleSoft flows for data processing tasks.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div><div><span style="background-color: #fce5cd; font-size: x-large;"><br /></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-53081269629740146742024-03-16T15:41:00.000+05:302024-03-16T15:41:06.597+05:30In data weave, how do you merge two arrays?149<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> In data weave, how do you merge two arrays?</span></h2><div><span id="docs-internal-guid-fda013d8-7fff-cf1c-2601-aa3725904bbe"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">DataWeave offers a couple of effective ways to merge two arrays into a single array:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 1: Using the Spread Operator (...)</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">The spread operator (...) allows you to efficiently combine elements from multiple arrays:</span></p><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sample arrays</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var array1 = [1, 2, 3];</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var array2 = ["apple", "banana", "cherry"];</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Merge the arrays using spread operator</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = [...array1, ...array2];</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The spread operator unpacks the elements of each array within the square brackets.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The result is a single array containing all elements from both array1 and array2.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 2: Using the concat Function</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">The concat function provides another approach for array concatenation:</span></p><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sample arrays (same as previous example)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = array1 concat array2;</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The concat function takes two arrays as arguments and returns a new array containing the combined elements.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Choosing the Right Method:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Both methods achieve the same outcome.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The spread operator might be considered more concise and readable, especially for simple merges.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The concat function offers a more explicit approach and can be useful when dealing with functions or variables holding the arrays you want to merge.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">You can merge more than two arrays by adding them within the square brackets for the spread operator or using multiple arguments with concat.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">DataWeave preserves the order of elements during the merge operation.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Example with Duplicates:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">If the arrays might contain duplicate elements, both methods will result in a merged array where duplicates are preserved. Here's an example:</span></p><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var array1 = [1, 2, 3];</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var array2 = [2, 3, 4];</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = [...array1, ...array2]; // output: [1, 2, 3, 2, 3, 4]</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Removing Duplicates (Optional):</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">To create a unique set of elements after merging, you can leverage the distinctBy function:</span></p><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = [...array1, ...array2] distinctBy $; // output: [1, 2, 3, 4]</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">This approach uses distinctBy $ to remove duplicates based on the element itself ($).</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">By understanding these methods, you can effectively merge arrays in your DataWeave transformations within MuleSoft applications.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-8449557940459298042024-03-16T13:46:00.001+05:302024-03-16T13:46:14.261+05:30In dataweave, how do i log a message? 148<h2 style="text-align: left;"><span style="background-color: #fce5cd;"><span style="font-size: x-large;">In dataweave, how do i log a message?</span></span></h2><div><span id="docs-internal-guid-b409152a-7fff-acb1-8314-231b9c178855"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">DataWeave provides a built-in function named log that allows you to log messages during data transformation processes. Here's how to use it:</span></p><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Your DataWeave transformation logic</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = someTransformation(payload)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Log a message with an optional prefix</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">log("Processing completed for message:", output)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The log function takes two arguments:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">(Optional) Prefix:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> A string to prepend to the logged message.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Value:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The actual message content you want to log. The value can be any expression that evaluates to a string.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Output:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">The log function doesn't modify the output of your DataWeave script. Its primary purpose is to send logging messages to the Mule application console or configured logging destinations.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Integration with MuleSoft Flows:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">When you use DataWeave within a MuleSoft flow, the logged messages appear in the console based on the configured logging level (e.g., INFO, DEBUG).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">You can access the MuleSoft console logs using Studio or the server logs depending on your development environment.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Key Points:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">log is a convenient way to track the execution flow and data manipulation steps within your DataWeave transformations.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">It helps with debugging and understanding how your DataWeave scripts are processing data.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Leverage conditional statements within the log function to control when messages are logged (e.g., only log for specific conditions).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Use string interpolation techniques to dynamically create informative log messages based on your data.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">By effectively using the log function, you can enhance the observability and maintainability of your DataWeave transformations in MuleSoft applications.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-52632867654850453022024-03-16T13:12:00.004+05:302024-03-16T13:15:44.747+05:30In database select no records are satisfying the condition then what will be the output from db? in MuleSoft 147<p> </p><span id="docs-internal-guid-3726bee7-7fff-61f1-21f2-3dd61ccc230a"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4, when you execute a db:select operation and the database query doesn't return any records because no rows satisfy the condition, the output from the database will be an </span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">empty list</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's a breakdown of the behavior:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Database Interaction:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The db:select component interacts with your database and executes the specified SQL query.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Empty Result Set:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> If the query doesn't find any matching rows based on the conditions, the database returns an empty result set.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MuleSoft Handling:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> MuleSoft receives this empty result set and interprets it as an empty list in memory.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Impact on Your Flow:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The subsequent processing within your MuleSoft flow will handle this empty list depending on your configuration.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">You can leverage conditional logic or error handling mechanisms to determine if any records were retrieved.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Example Flow:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"check-data-flow"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:select</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">config-ref</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"yourDbConfig"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Select Data"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:sql</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">SELECT * FROM your_table WHERE id = 10;</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:sql</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:select</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">choice</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Check for Results"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">when</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">expression</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[!empty(payload)]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">logger</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Record found!"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">level</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"INFO"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">when</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">otherwise</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">logger</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"No record found for ID 10"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">level</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"INFO"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">otherwise</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">choice</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">This flow performs a database select operation searching for an ID of 10.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">If no record exists, the payload (holding the retrieved data) will be an empty list.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The Choice Router checks if the payload is not empty (meaning there's at least one record).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">If empty, the "otherwise" route executes, indicating no record was found.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">You can utilize DataWeave expressions like size(payload) == 0 to check for an empty list within your flow logic.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Implement proper error handling to gracefully handle situations where the database connection itself might be unsuccessful, regardless of the number of retrieved records.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">By understanding this behavior, you can effectively design your MuleSoft flows to handle scenarios where the database query might not return any results and take appropriate actions based on the presence or absence of retrieved data.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-16398077257157914222024-03-16T12:43:00.000+05:302024-03-16T12:43:14.110+05:30In choice router if first route and second routes conditions are true. Which route it will execute? in MuleSoft 146<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> <span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;">In choice router if first route and second routes conditions are true. Which route it will execute? in MuleSoft</span></span></h2><div><span id="docs-internal-guid-7fb26fce-7fff-0560-57c9-9d9d4f367246"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4's Choice Router, if both the first route's and the second route's conditions evaluate to true, MuleSoft will only execute the </span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">first route's processing logic</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">. This behavior is consistent with how conditional logic typically works in programming languages.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's a breakdown of the execution flow:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Message Arrives:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> A message enters the Choice Router.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Condition Evaluation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The conditions associated with each route are evaluated sequentially against the message content and attributes.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">First True Route:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> If the condition of the first route evaluates to true, the processing logic defined within that route is executed immediately.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Subsequent Routes Ignored:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Even if subsequent routes also have conditions that evaluate to true, their processing logic is bypassed. The message is considered "handled" after the first successful route execution.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Example:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">choice-router</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Choice Router"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">when</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">expression</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload.type == 'order']"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">logger</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Processing order"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">level</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"INFO"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">set-payload</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">value</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Order processed"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Set Order Processed"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">when</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">when</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">expression</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload.amount > 100]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">logger</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Processing high-value transaction"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">level</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"INFO"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">enrich</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">target</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">source</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[{ additionalData: 'appended' }]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">enrich-type</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">MERGE</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">enrich-type</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">enrich</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">when</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">default-otherwise</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">logger</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Default route"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">level</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"INFO"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">default-otherwise</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">choice-router</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">In this example:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">If a message arrives with payload.type equal to "order", the first route's condition is true, and its processing logic (logging and setting payload) executes.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Even if the payload.amount also happens to be greater than 100 (making the second route's condition true as well), the second route's logic is not processed.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Key Points:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Choice Router prioritizes evaluating conditions from top to bottom.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The first route with a true condition dictates the execution path.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Subsequent routes, even with true conditions, are skipped to avoid unintended processing.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Recommendations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Order your Choice Router conditions carefully, placing the most likely scenarios or specific conditions at the top.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Consider using a default route (<default-otherwise>) as a catch-all for messages that don't match any defined conditions.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">By understanding this behavior, you can effectively design your MuleSoft 4 flows to handle messages based on specific criteria and ensure the intended processing logic is executed for each message.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-67803350419615077462024-03-16T12:30:00.002+05:302024-03-16T12:30:10.572+05:30If we need to insert 100 records in to db using batch processing, until 10 records failed it needs to be inserted after that it should stop execution. How can we achieve this? in MuleSoft 145<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> <span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;">If we need to insert 100 records in to db using batch processing, until 10 records failed it needs to be inserted after that it should stop execution. How can we achieve this? in MuleSoft</span></span></h2><div><span id="docs-internal-guid-c56ccea4-7fff-5ecf-8c5a-6feb842430d0"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's how you can achieve batch processing for database inserts in MuleSoft 4, stopping after 10 failures:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Components:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Batch Job:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This component manages asynchronous and reliable processing of large datasets.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Batch Step:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This component defines a specific step within the batch job, in this case, the database insert operation.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Database Connector:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This component interacts with your database to execute insert statements.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Flow:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Prepare Data:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Prepare the list of 100 records you want to insert into the database.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Batch Job:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Configure a Batch Job with the following properties:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Name:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> A descriptive name for your batch job.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Source:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Specify the collection containing the 100 records for insertion.</span></p></li></ul><ol start="3" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Batch Step:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Name:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Name for this batch step (e.g., "Database Insert").</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Type:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Set the type to "mule:db".</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Query:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Define the SQL INSERT statement to insert data into your table.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Exception Handling:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="3" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: square; margin-left: 12pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Strategy:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Choose "retry" with a maximum retry count of 0 (meaning no retries on individual insert failures).</span></p></li><li aria-level="3" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: square; margin-left: 12pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Continue on Error:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Set to "false" to stop processing after encountering 10 failures.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Error Handling:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The maxFailedRecords attribute of the Batch Job is not directly applicable here as it controls the overall job failure threshold.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">We achieve the 10 failure limit by setting the continueOnError property to false within the Batch Step's exception handling configuration.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">This ensures that upon encountering the 10th failure during database inserts, the entire Batch Job execution stops.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Here's an example Mule flow configuration:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"batch-insert-flow"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">batch:job</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"DatabaseInsertJob"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">batch:source</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">dw:split</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">type</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"tokenize"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">by</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">","</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Split Records"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> #[payload] </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">dw:split</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">batch:source</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">batch:step</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"InsertData"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">type</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"mule:db"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:config-ref</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">ref</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"yourDbConfig"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:sql</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">INSERT INTO your_table (column1, column2) VALUES (?, ?);</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:sql</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">exception-strategy</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">retry</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">count</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"0"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">continueOnError</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">expression</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[vars.failureCount >= 10]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Stop on 10th Failure"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">exception-strategy</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">batch:step</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">batch:job</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">This flow defines a Batch Job named "DatabaseInsertJob".</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The source for the Batch Job uses DataWeave to split the payload (assuming a comma-separated list) into individual records.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The Batch Step named "InsertData" specifies the database configuration, SQL INSERT statement, and exception handling logic.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The retry count is set to 0 to avoid retries on individual insert failures.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The continueOnError expression checks if the failureCount variable (assumed to be incremented within the exception handling logic) reaches 10. If so, it stops further processing.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Implement proper error handling within the Batch Step to capture specific database errors and potentially log them for further investigation.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Consider using a dedicated error handling strategy like mule:checkpoint to track successful and failed inserts, allowing for potential retries in future executions.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">By following this approach, you can achieve reliable batch processing for database inserts in MuleSoft 4, stopping the execution after encountering 10 failures within the designated Batch Step.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-90066244409126869782024-03-15T18:05:00.005+05:302024-03-15T18:09:08.101+05:30 Q: It was Sunday on Jan 1, 2006. What was the day of the week on Jan 1, 2010?<p> <span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;">Q: It was Sunday on Jan 1, 2006. What was the day of the week on Jan 1, 2010?</span></p><span id="docs-internal-guid-edb8df46-7fff-6dae-c6d7-7e28b3b9e8c0"><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">A) Monday</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">B) Friday</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">C) Sunday</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">D) Tuesday</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Answer:</span><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> B) Friday</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's how to determine the day of the week for a given date:</span></p><ol style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Normal Years vs. Leap Years:</span></p></li></ol><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">There are 365 days in a normal year, which is 52 weeks and 1 day. So the day of the week shifts forward by one day each year.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">There are 366 days in a leap year, which is 52 weeks and 2 days. So the day of the week shifts forward by two days each leap year.</span></p></li></ul><ol start="2" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Counting the Years:</span></p></li></ol><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">2006</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">: Normal year (shift of +1 day)</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">2007</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">: Normal year (shift of +1 day)</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">2008</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">: Leap year (shift of +2 days)</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">2009</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">: Normal year (shift of +1 day)</span></p></li></ul><ol start="3" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Total Shift:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> 1 + 1 + 2 + 1 = 5 days forward</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Calculating from the Start Day:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Since Jan 1, 2006, was a Sunday, five days forward would land on a Friday.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Therefore, Jan 1, 2010, was a Friday.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Hindi</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></p><p style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px;"> <span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">प्रश्न: 1 जनवरी 2006 को रविवार था। 1 जनवरी 2010 को सप्ताह का कौन सा दिन था?</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ए) सोमवार</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">बी) शुक्रवार</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">सी) रविवार</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">डी) मंगलवार</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">उत्तर: </span></span></span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">बी) शुक्रवार</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">स्पष्टीकरण:</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">यहां बताया गया है कि किसी दी गई तारीख के लिए सप्ताह का दिन कैसे निर्धारित किया जाए:</span></span></span></p><ol style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">सामान्य वर्ष बनाम लीप वर्ष:</span></span></span></p></li></ol><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">एक सामान्य वर्ष में 365 दिन यानी 52 सप्ताह और 1 दिन होते हैं। </span><span style="vertical-align: inherit;">इसलिए सप्ताह का दिन प्रत्येक वर्ष एक दिन आगे बढ़ जाता है।</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">एक लीप वर्ष में 366 दिन यानी 52 सप्ताह और 2 दिन होते हैं। </span><span style="vertical-align: inherit;">इसलिए प्रत्येक लीप वर्ष में सप्ताह का दिन दो दिन आगे बढ़ जाता है।</span></span></span></p></li></ul><ol start="2" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">वर्षों की गिनती:</span></span></span></p></li></ol><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2006 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: सामान्य वर्ष (+1 दिन की पाली)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2007 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: सामान्य वर्ष (+1 दिन की पाली)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2008 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: लीप वर्ष (+2 दिन की पाली)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2009 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: सामान्य वर्ष (+1 दिन की पाली)</span></span></span></p></li></ul><ol start="3" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span class="VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q" style="background-color: #c9d7f1; box-shadow: rgb(153, 153, 170) 2px 2px 4px; box-sizing: border-box; position: relative; vertical-align: inherit;">कुल शिफ्ट: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span class="VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q" style="background-color: #c9d7f1; box-shadow: rgb(153, 153, 170) 2px 2px 4px; box-sizing: border-box; position: relative; vertical-align: inherit;">1 + 1 + 2 + 1 = 5 दिन आगे</span></span></span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">आरंभ दिवस से गणना: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">चूँकि 1 जनवरी 2006 को रविवार था, आगे के पाँच दिन शुक्रवार को पड़ेंगे।</span></span></span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span id="docs-internal-guid-edb8df46-7fff-6dae-c6d7-7e28b3b9e8c0" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; font-weight: 400; white-space-collapse: collapse;"></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">इसलिए, 1 जनवरी 2010 को शुक्रवार था।</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Telugu</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px;"> <span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span class="VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q" style="background-color: #c9d7f1; box-shadow: rgb(153, 153, 170) 2px 2px 4px; box-sizing: border-box; position: relative; vertical-align: inherit;">ప్ర: ఇది జనవరి 1, 2006న ఆదివారం. జనవరి 1, 2010న వారంలో ఏ రోజు?</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ఎ) సోమవారం</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">బి) శుక్రవారం</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">సి) ఆదివారం</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">డి) మంగళవారం</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">సమాధానం: </span></span></span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">బి) శుక్రవారం</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">వివరణ:</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ఇచ్చిన తేదీకి వారంలోని రోజును ఎలా నిర్ణయించాలో ఇక్కడ ఉంది:</span></span></span></p><ol style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">సాధారణ సంవత్సరాలు వర్సెస్ లీప్ ఇయర్స్:</span></span></span></p></li></ol><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ఒక సాధారణ సంవత్సరంలో 365 రోజులు, అంటే 52 వారాలు మరియు 1 రోజు. </span><span style="vertical-align: inherit;">కాబట్టి వారంలోని రోజు ప్రతి సంవత్సరం ఒక రోజు ముందుకు మారుతుంది.</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">లీపు సంవత్సరంలో 366 రోజులు, అంటే 52 వారాలు మరియు 2 రోజులు. </span><span style="vertical-align: inherit;">కాబట్టి ప్రతి లీపు సంవత్సరంలో వారంలోని రోజు రెండు రోజులు ముందుకు మారుతుంది.</span></span></span></p></li></ul><ol start="2" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">సంవత్సరాల లెక్కింపు:</span></span></span></p></li></ol><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2006 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: సాధారణ సంవత్సరం (+1 రోజు షిఫ్ట్)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2007 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: సాధారణ సంవత్సరం (+1 రోజు షిఫ్ట్)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2008 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: లీపు సంవత్సరం (+2 రోజుల మార్పు)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2009 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: సాధారణ సంవత్సరం (+1 రోజు షిఫ్ట్)</span></span></span></p></li></ul><ol start="3" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">మొత్తం షిఫ్ట్: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">1 + 1 + 2 + 1 = 5 రోజులు ముందుకు</span></span></span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ప్రారంభ రోజు నుండి గణించడం: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">జనవరి 1, 2006, ఆదివారం కావడంతో, ఐదు రోజులు ముందుకు శుక్రవారం ల్యాండ్ అవుతుంది.</span></span></span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span id="docs-internal-guid-edb8df46-7fff-6dae-c6d7-7e28b3b9e8c0" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; font-weight: 400; white-space-collapse: collapse;"></span></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">కాబట్టి, జనవరి 1, 2010, శుక్రవారం.</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Tamil</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px;"> <span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span class="VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q" style="background-color: #c9d7f1; box-shadow: rgb(153, 153, 170) 2px 2px 4px; box-sizing: border-box; position: relative; vertical-align: inherit;">கே: அது ஜனவரி 1, 2006 அன்று ஞாயிற்றுக்கிழமை. ஜனவரி 1, 2010 அன்று வாரத்தின் நாள் என்ன?</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">A) திங்கள்</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">B) வெள்ளிக்கிழமை</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">C) ஞாயிறு</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">D) செவ்வாய்</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">பதில்: </span></span></span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ஆ) வெள்ளிக்கிழமை</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">விளக்கம்:</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">கொடுக்கப்பட்ட தேதிக்கான வாரத்தின் நாளை எவ்வாறு தீர்மானிப்பது என்பது இங்கே:</span></span></span></p><ol style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">இயல்பான ஆண்டுகள் மற்றும் லீப் ஆண்டுகள்:</span></span></span></p></li></ol><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ஒரு சாதாரண ஆண்டில் 365 நாட்கள் உள்ளன, அதாவது 52 வாரங்கள் மற்றும் 1 நாள். </span><span style="vertical-align: inherit;">எனவே வாரத்தின் நாள் ஒவ்வொரு ஆண்டும் ஒரு நாள் முன்னோக்கி நகர்கிறது.</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ஒரு லீப் ஆண்டில் 366 நாட்கள் உள்ளன, அதாவது 52 வாரங்கள் மற்றும் 2 நாட்கள். </span><span style="vertical-align: inherit;">எனவே வாரத்தின் நாள் ஒவ்வொரு லீப் ஆண்டிலும் இரண்டு நாட்கள் முன்னோக்கி நகர்கிறது.</span></span></span></p></li></ul><ol start="2" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ஆண்டுகளை எண்ணுதல்:</span></span></span></p></li></ol><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2006 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: சாதாரண ஆண்டு (+1 நாள் மாற்றம்)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2007 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: சாதாரண ஆண்டு (+1 நாள் மாற்றம்)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2008 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: லீப் ஆண்டு (+2 நாட்கள் மாற்றம்)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2009 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: சாதாரண ஆண்டு (+1 நாள் மாற்றம்)</span></span></span></p></li></ul><ol start="3" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">மொத்த மாற்றம்: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">1 + 1 + 2 + 1 = 5 நாட்கள் முன்னோக்கி</span></span></span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">தொடக்க நாளிலிருந்து கணக்கிடுதல்: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ஜனவரி 1, 2006, ஞாயிற்றுக்கிழமை என்பதால், ஐந்து நாட்கள் முன்னோக்கி வெள்ளிக்கிழமை இறங்கும்.</span></span></span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span id="docs-internal-guid-edb8df46-7fff-6dae-c6d7-7e28b3b9e8c0" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px;"></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">எனவே, ஜனவரி 1, 2010, வெள்ளிக்கிழமை.</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Spanish</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px;"> <span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span class="VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q" style="background-color: #c9d7f1; box-shadow: rgb(153, 153, 170) 2px 2px 4px; box-sizing: border-box; position: relative; vertical-align: inherit;">P: Era domingo 1 de enero de 2006. ¿Cuál era el día de la semana el 1 de enero de 2010?</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">a) lunes</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">b) viernes</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">c) domingo</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">D) Martes</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Respuesta: </span></span></span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">B) viernes</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Explicación:</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">A continuación se explica cómo determinar el día de la semana para una fecha determinada:</span></span></span></p><ol style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Años normales frente a años bisiestos:</span></span></span></p></li></ol><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Un año normal tiene 365 días, que son 52 semanas y 1 día. </span><span style="vertical-align: inherit;">Así, el día de la semana avanza un día cada año.</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Un año bisiesto tiene 366 días, lo que equivale a 52 semanas y 2 días. </span><span style="vertical-align: inherit;">Así, el día de la semana avanza dos días en cada año bisiesto.</span></span></span></p></li></ul><ol start="2" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Contando los años:</span></span></span></p></li></ol><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2006 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: Año normal (turno de +1 día)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2007 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: Año normal (turno de +1 día)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2008 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: año bisiesto (turno de +2 días)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2009 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: Año normal (turno de +1 día)</span></span></span></p></li></ul><ol start="3" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Turno Total: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">1 + 1 + 2 + 1 = 5 días adelante</span></span></span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Calculando desde el día de inicio: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">dado que el 1 de enero de 2006 era domingo, cinco días en adelante llegarían a viernes.</span></span></span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span id="docs-internal-guid-edb8df46-7fff-6dae-c6d7-7e28b3b9e8c0" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; font-weight: 400; white-space-collapse: collapse;"></span></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Por lo tanto, el 1 de enero de 2010 fue viernes.</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">French</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px;"> <span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span class="VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q" style="background-color: #c9d7f1; box-shadow: rgb(153, 153, 170) 2px 2px 4px; box-sizing: border-box; position: relative; vertical-align: inherit;">Q : C'était le dimanche 1er janvier 2006. Quel était le jour de la semaine le 1er janvier 2010 ?</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">A) Lundi</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">B) Vendredi</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">C) Dimanche</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">D) mardi</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Réponse : </span></span></span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">B) Vendredi</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Explication:</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Voici comment déterminer le jour de la semaine pour une date donnée :</span></span></span></p><ol style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Années normales et années bissextiles :</span></span></span></p></li></ol><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Il y a 365 jours dans une année normale, soit 52 semaines et 1 jour. </span><span style="vertical-align: inherit;">Ainsi, le jour de la semaine avance d’un jour chaque année.</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Il y a 366 jours dans une année bissextile, soit 52 semaines et 2 jours. </span><span style="vertical-align: inherit;">Ainsi, le jour de la semaine avance de deux jours chaque année bissextile.</span></span></span></p></li></ul><ol start="2" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Compter les années :</span></span></span></p></li></ol><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2006 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: Année normale (poste de +1 jour)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2007 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: Année normale (poste de +1 jour)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2008 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: Année bissextile (décalage de +2 jours)</span></span></span></p></li><li aria-level="2" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin: 0px 0px 0.25em -1.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">2009 </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">: Année normale (poste de +1 jour)</span></span></span></p></li></ul><ol start="3" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Quart total : </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">1 + 1 + 2 + 1 = 5 jours en avant</span></span></span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin: 0px 0px 0.25em -15pt; padding: 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Calcul à partir du jour de début : </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">étant donné que le 1 janvier 2006 était un dimanche, cinq jours à venir atterriraient sur un vendredi.</span></span></span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span id="docs-internal-guid-edb8df46-7fff-6dae-c6d7-7e28b3b9e8c0" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; font-weight: 400; white-space-collapse: collapse;"></span></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Le 1er janvier 2010 était donc un vendredi.</span></span></span></p><div><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span>Vlr Traininghttp://www.blogger.com/profile/17043738417504853644noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-91818465156263394952024-03-15T17:04:00.004+05:302024-03-16T12:21:00.131+05:30 If input of foreach is[1,2,3,4,5] and inside foreach placed a transform message and performed sum function. What is the output of foreach? in MuleSoft144<h2 style="text-align: left;"><span style="background-color: #eeeeee; font-size: x-large;"> <span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;"> </span><span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;">If input of foreach is[1,2,3,4,5] and inside foreach placed a transform message and performed sum function. What is the output of foreach? in MuleSoft</span></span></h2><div><span id="docs-internal-guid-b7d93b4b-7fff-01c1-8d13-f78618ffaaf5"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4, the foreach scope iterates through a collection, but it doesn't directly modify the original payload. Therefore, the output of the foreach scope itself will remain the same as the input, which is the list [1, 2, 3, 4, 5].</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">However, within the foreach loop, you can utilize a transform message to process each element and perform the sum function. Here's a breakdown of what happens:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Scenario:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The input to the foreach scope is the list [1, 2, 3, 4, 5].</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Inside the foreach loop:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Each element (individual number) is passed to the transform message.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The transform message (assuming it uses DataWeave) can access the current element and perform the sum calculation.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">foreach Iteration:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The foreach scope iterates five times, once for each element in the list.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">During each iteration, the current element is available as the payload within the foreach scope.</span></p></li></ul><ol start="2" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">transform Message:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Inside the foreach loop, a transform message can be used to process the current element (payload).</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">DataWeave, a powerful transformation language in MuleSoft, is often used within the transform message.</span></p></li></ul><ol start="3" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave Transformation:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">You can leverage DataWeave expressions to access the current element (payload) and perform the sum.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">An example DataWeave expression for calculating the sum within the loop could be:</span></p></li></ul><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = payload</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Important Note:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">This output assignment within the transform message </span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">doesn't modify the original payload</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> being processed by the foreach loop.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The foreach scope continues iterating through the remaining elements.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Output:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The foreach scope itself doesn't produce any output as it primarily iterates and potentially processes elements.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">If you intend to capture the calculated sum, you would need to store it in a separate variable outside the foreach loop.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Example Flow:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"foreach-sum-example"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">foreach</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">collection</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Loop through numbers"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">transform</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> %dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> ---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> output = payload</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">transform</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">foreach</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">To capture the sum:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Initialize a variable before the foreach loop.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Inside the loop, add the current element to the variable using the + operator.</span></p></li></ol><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"foreach-sum-example"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">set-variable</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">variableName</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"sum"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">value</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"0"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Initialize Sum"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">foreach</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">collection</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Loop through numbers"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">transform</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> %dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> ---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> output = payload</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">transform</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">set-variable</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">variableName</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"sum"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">expression</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[vars.sum + payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Add to Sum"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">foreach</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">logger</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Sum: #[vars.sum]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">level</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"INFO"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In conclusion, the foreach loop's output remains the original input list. However, you can leverage the loop and a transform message with DataWeave to process each element individually and perform calculations like finding the sum using a separate variable.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-43979261420553279262024-03-15T16:39:00.003+05:302024-03-15T16:39:22.104+05:30If database table does not have autoincrement primary key how can you pick the newly inserted records always from Muleapi?143<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> <span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;">If database table does not have autoincrement primary key how can you pick the newly inserted records always from Muleapi?</span></span></h2><div><span id="docs-internal-guid-52028174-7fff-3e57-987f-ed6af0f23153"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here are two approaches to identify newly inserted records in MuleSoft 4 when the database table doesn't have an auto-incrementing primary key:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 1: Utilizing Database Cursors (Recommended):</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Database Cursor:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Leverage a database cursor to efficiently retrieve recently inserted data.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Open Cursor:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Establish a cursor pointing to the table you're interested in.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Fetch Data:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Execute the cursor to fetch data progressively, specifying a condition to filter recently inserted records.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Here's a Mule flow example:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"get-new-records"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:select</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">config-ref</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"dbConfig"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Open Cursor"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:sql</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">SELECT * FROM your_table WHERE inserted_at >= current_timestamp - interval '1 minute';</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:sql</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:cursor</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">/></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:select</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:poll</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Fetch New Records"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:cursor-fetch</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">config-ref</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"dbConfig"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:poll</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">logger</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"New record: #[payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">level</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"INFO"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The db:select element opens a cursor with a SQL statement targeting rows inserted within a specific timeframe (adjustable using current_timestamp).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The db:poll element retrieves data from the opened cursor in batches.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The retrieved data (payload) contains the newly inserted records.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Advantages:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Efficient for handling large datasets.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Reduces database load compared to fetching the entire table.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 2: Periodic Checks with Filtering (Alternative):</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Scheduled Flow:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Set up a flow to run periodically (e.g., every minute).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Database Query:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Execute a query that retrieves data based on a specific criteria, like a timestamp column indicating insertion time.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Here's a Mule flow example:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"get-new-records"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">scheduler</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">frequency</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"1min"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Schedule Check"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">scheduler</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:select</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">config-ref</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"dbConfig"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Select New Records"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:sql</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">SELECT * FROM your_table WHERE inserted_at >= current_timestamp - interval '1 minute';</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:sql</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">db:select</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">logger</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"New records: #[payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">level</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"INFO"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The flow runs periodically based on the defined schedule.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The db:select element retrieves data inserted within a specific timeframe.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The retrieved data (payload) contains the newly inserted records.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Disadvantages:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Less efficient for high data insertion rates as the entire table might be scanned periodically.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Can put additional load on the database compared to using a cursor.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Choosing the Right Approach:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Database Cursors:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Generally preferred for their efficiency in handling large datasets and minimizing database load.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Periodic Checks:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Consider this approach for scenarios with a lower data insertion rate or when cursor functionality might not be readily available in your database system.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Error Handling:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Implement proper error handling mechanisms to gracefully handle situations like database connection issues or unexpected data retrieval results.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Security:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Ensure the database user has the necessary privileges to execute the required SQL statements.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Remember that the optimal approach depends on your specific requirements, data volume, and database capabilities. Evaluate both methods and choose the one that best suits your scenario.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-41964890934688261552024-03-15T15:38:00.000+05:302024-03-15T15:38:04.115+05:30identify query params & uri params in MuleSoft 142<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> identify query params & uri params in MuleSoft</span></h2><div><span id="docs-internal-guid-921d3b3b-7fff-7ec7-8c9c-307fd86ccb30"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4, you can identify query parameters and URI parameters using the following methods:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">1. Using DataWeave:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">DataWeave provides a convenient and expressive approach to access and manipulate request parameters:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">URI Parameters:</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">These are captured using the attributes.uriParams object within your DataWeave expression.</span></p></li></ul><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Assuming your URI is like: /api/products/{productId}?name=Alice</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = {</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> productId: attributes.uriParams.productId, // Access URI parameter</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> // ... other logic using payload or headers</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">};</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Query Parameters:</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">These are accessed using the attributes.queryParams object.</span></p></li></ul><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Assuming your URI is like: /api/products?name=Alice&category=electronics</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = {</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> name: attributes.queryParams.name, // Access query parameter</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> category: attributes.queryParams.category,</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> // ... other logic using payload or headers</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">};</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">attributes: This object provides access to various message attributes, including request parameters.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">uriParams: This object specifically holds the URI parameters extracted from the request path.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">queryParams: This object holds the query parameters extracted from the URL's query string.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">2. Using MEL (Message Expression Language):</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">While less preferred due to verbosity, MEL can also be used to access parameters:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">URI Parameters:</span></p></li></ul><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = {</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> productId: mel:message.inboundProperties['http.request.uri.params']['productId']</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">};</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Query Parameters:</span></p></li></ul><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = {</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> name: mel:message.inboundProperties['http.request.query.params']['name']</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">};</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">mel:message: This expression refers to the current message object.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">inboundProperties: This object contains various message properties, including request parameters.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">http.request.uri.params: This property holds the URI parameters.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">http.request.query.params: This property holds the query parameters.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Choosing the Right Approach:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This is the recommended method due to its:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Readability</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Conciseness</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Ability to combine accessing parameters with other data manipulation steps within a single expression.</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> While functional, MEL expressions can become complex for intricate logic or combining data access with transformations.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Ensure you understand the structure of your request URL to correctly identify the presence and location of URI and query parameters.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Error handling can be incorporated within DataWeave or MEL to gracefully handle cases where parameters might be missing or invalid.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here are some helpful resources for further reference:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave documentation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/dataweave/latest/dataweave-language-guide" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/dataweave/latest/dataweave-language-guide</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL documentation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/mule-runtime/3.9/mule-expression-language-mel" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/mule-runtime/3.9/mule-expression-language-mel</span></a></p></li></ul></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-29904750034014712662024-03-15T15:13:00.004+05:302024-03-15T15:13:44.413+05:30How would you use the map function to transform an array of objects into another array of objects? in MuleSoft 141<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> <span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;">How would you use the map function to transform an array of objects into another array of objects? in MuleSoft</span></span></h2><div><span id="docs-internal-guid-97790931-7fff-9f92-e4be-dfd891234392"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's how to effectively utilize the map function in MuleSoft 4 to transform an array of objects into another array of objects:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Scenario:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Imagine you have an array of employee objects with properties like name and department, and you want to create a new array with additional information like employeeId and a modified departmentName.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave Transformation:</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">DataWeave provides a concise and versatile approach for manipulating data using the map function.</span></p></li></ol><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sample employee array</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var employees = [</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> { name: "John Doe", department: "engineering" },</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> { name: "Jane Doe", department: "sales" }</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">];</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Transform the array using map</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = employees map (employee) -> {</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> // Add new properties and potentially modify existing ones</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> employee merge {</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> employeeId: uniqueId(), // Generate a unique ID</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> departmentName: employee.department ++ " Department"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> }</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">};</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The map function iterates through each object (employee) within the original employees array.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Inside the map function:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The merge operator combines the existing employee object with a new object containing:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="3" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: square; margin-left: 4.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">employeeId: Generated using the uniqueId() function (assuming you need unique IDs).</span></p></li><li aria-level="3" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: square; margin-left: 4.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">departmentName: The original department value concatenated with " Department".</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The resulting output array contains the transformed employee objects with additional properties.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Key Points:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The map function allows you to apply transformations to each element in the array.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">You can access properties within the current object using the . notation (e.g., employee.department).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">DataWeave offers various functions like merge, uniqueId(), and string manipulation operators for data modification.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Conditional Transformations:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> You can incorporate conditional logic within the map function to selectively transform objects based on specific criteria.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Complex Transformations:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> For intricate data manipulation scenarios, DataWeave provides powerful features like filtering, sorting, and nested transformations.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Further Exploration:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave map function:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/dataweave/latest/dw-core-functions-map" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/dataweave/latest/dw-core-functions-map</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave merge operator:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/dataweave/latest/dw-objects-functions-mergewith" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/dataweave/latest/dw-objects-functions-mergewith</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave uniqueId function:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/dataweave/latest/dw-core-functions-uuid" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/dataweave/latest/dw-core-functions-uuid</span></a></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Alternative (Less Recommended):</span></p><ol start="2" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL (Message Expression Language):</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">While MEL offers basic functionality for iterating through arrays, it can become cumbersome for complex transformations. Here's an example:</span></p></li></ol><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">foreach</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">collection</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Employee Loop"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">set-payload</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">expression</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload merge { </span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> employeeId: java.util.UUID.randomUUID().toString(), </span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> departmentName: payload.department ++ ' Department' </span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> }]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Update Employee"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">/></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">foreach</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Remember:</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> DataWeave is generally preferred due to its readability, expressiveness, and ability to handle intricate data manipulation tasks effectively.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-52364321544672054412024-03-15T15:00:00.004+05:302024-03-15T15:00:32.126+05:30How will you encrypt/decryptthe passwords in Mule?140<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> <span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;">How will you encrypt/decryptthe passwords in Mule?</span></span></h2><div><span id="docs-internal-guid-b645df87-7fff-b0ba-9ec4-11588421186b"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's a breakdown of how to securely handle passwords in MuleSoft 4:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Important Note:</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Never store passwords directly within your code or configuration files.</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> This poses a significant security risk.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Recommended Approach:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Use Secure Properties:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Store passwords and other sensitive information in encrypted property files.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Leverage the </span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Secure Properties</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> feature within MuleSoft.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">During runtime, MuleSoft automatically decrypts the properties using a master password or keystore.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Steps:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Create a Secure Properties File:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Use the </span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Mule Secure Properties Tool</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> (included in Anypoint Studio) to create a .properties file.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Specify the encryption algorithm (e.g., AES) and provide a strong password or keystore for encryption.</span></p></li></ul><ol start="2" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Access Encrypted Properties:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">In your Mule application, use the </span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Secure Property Placeholder</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> (#[prop:name]) to reference properties from the secure file.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">MuleSoft handles decryption transparently at runtime.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Example:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"secure-password-flow"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">http:inbound-endpoint</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">path</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"/login"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">method</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"POST"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">set-variable</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">variableName</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"password"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">value</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[prop:encrypted_password]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Get Password"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Security Measures:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Rotate encryption keys regularly.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Implement access controls to restrict access to secure properties.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Consider using a dedicated secrets management solution for more advanced key management.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Alternatives (Not recommended for production):</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Environment Variables:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> You can store passwords in environment variables, but this approach is less secure than secure properties as the values might be exposed in process listings.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Mule Configuration:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> While possible to store passwords in Mule configuration files, it's strongly discouraged due to the inherent security risks.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Remember:</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> Security is paramount, and directly storing passwords in code or configurations is a critical vulnerability. Always prioritize the use of secure properties and implement additional security practices to safeguard sensitive information.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here are some helpful resources for further exploration:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MuleSoft Secure Properties documentation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/mule-runtime/latest/secure-configuration-properties" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/mule-runtime/latest/secure-configuration-properties</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Mule Secure Properties Tool documentation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/mule-runtime/latest/secure-configuration-properties" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/mule-runtime/latest/secure-configuration-properties</span></a></p></li></ul></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-38806148197258349872024-03-15T14:46:00.000+05:302024-03-15T14:46:12.815+05:30How to validate if email is correct or not by which component? in MuleSoft139<h2 style="text-align: left;"><span style="background-color: #f3f3f3; font-size: x-large;"> <span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;">How to validate if email is correct or not by which component? in MuleSoft</span></span></h2><div><span id="docs-internal-guid-28395216-7fff-005b-8120-4952e32a4f90"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4, while there's no single built-in component solely dedicated to comprehensive email validation, here are two effective approaches to achieve email verification:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 1: Using the Validation Module:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Validation Component:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This component offers a way to validate message payloads against predefined criteria.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Is Email Validator:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The Validation module provides a validator specifically designed to check if a string resembles a valid email address format.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Here's an example implementation:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"validate-email-flow"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">http:inbound-endpoint</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">path</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"/validate-email"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">method</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"POST"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">validation:is-email</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">email</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload.email]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Validate Email"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">validation:message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Invalid email format</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">validation:message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">validation:is-email</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">logger</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Email is valid: #[payload.email]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">level</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"INFO"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The validation:is-email element checks the email property (assumed to be present in the payload) against the built-in email validation logic.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">If the email format is invalid, a custom error message is displayed.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">You can optionally add further processing steps to handle the valid email scenario.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Limitations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">This method only performs basic format verification. It doesn't guarantee the existence of a mailbox or the ability to deliver emails to the address.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 2: Using a Regular Expression:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL (Message Expression Language):</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> You can leverage MEL to define a regular expression that matches common email address patterns.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Here's an example:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"validate-email-flow"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">http:inbound-endpoint</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">path</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"/validate-email"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">method</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"POST"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">set-payload</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">expression</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload.email =~ /^([a-zA-Z0-9_\-\.]+)@([a-zA-Z\-]+\.)+[a-zA-Z]{2,}$/ ? 'Valid' : 'Invalid']"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Validate Email (Regex)"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">logger</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">message</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Email validation result: #[payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">level</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"INFO"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">flow</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The set-payload component uses an MEL expression with a regular expression that checks for a common email format.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The expression returns "Valid" if the email matches the pattern, otherwise "Invalid".</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">You can further process the message based on the validation outcome.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Limitations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Regular expressions require careful construction to handle various email address formats.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">This method also doesn't guarantee complete email validity.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">External Services:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> For more robust email validation, consider using external services that can verify the existence of mailboxes and improve the accuracy of the check.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Data Privacy:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Be mindful of data privacy regulations when handling email addresses within your MuleSoft applications.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Remember:</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> While these methods provide basic email validation mechanisms, they shouldn't be solely relied upon to ensure the complete deliverability or legitimacy of email addresses.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-31041524865903231452024-03-15T12:09:00.004+05:302024-03-15T12:09:39.992+05:30How to use splitby function ? in MuleSoft138<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> How to use splitby function ? in MuleSoft</span></h2><div><span id="docs-internal-guid-bef8906a-7fff-4a04-7204-fb38cc9e1ef4"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">The splitBy function is a valuable tool for working with strings in MuleSoft 4. Here's a comprehensive explanation of its usage:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Functionality:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Splits a string into an array of substrings based on a specified delimiter or regular expression.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The delimiter is the character or pattern that separates the elements in the original string.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Syntax:</span></p><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">splitBy(text: String, regex: Regex): Array<String></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Parameters:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">text: The string you want to split.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">regex: A regular expression object defining the delimiter or pattern for splitting. You can use a literal string for simple delimiters.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Return Value:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">An array containing the substrings obtained after splitting the original string.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Examples:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Splitting by comma:</span></p></li></ol><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sample string</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var data = "apple,banana,orange";</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Split by comma</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var fruits = data splitBy ',';</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = fruits; // Output: ["apple", "banana", "orange"]</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><ol start="2" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Splitting by whitespace:</span></p></li></ol><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sample string</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var text = "This is a string with spaces";</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Split by whitespace (including tabs)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var words = text splitBy anyOf(' ', '\t');</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = words; // Output: ["This", "is", "a", "string", "with", "spaces"]</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><ol start="3" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Splitting using a regular expression:</span></p></li></ol><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sample string with HTML tags</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var html = "<p>This is a paragraph</p>";</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Split by opening and closing paragraph tags</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var paragraphs = html splitBy anyOf('<p>', '</p>');</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = paragraphs; // Output: ["", "This is a paragraph", ""] (extra empty elements due to tag matching)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Important Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Empty elements:</span><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Splitting by delimiters at the beginning or end of the string might result in empty elements in the output array.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Regular expressions:</span><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> For complex splitting logic, regular expressions offer greater control over the splitting behavior.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Error handling:</span><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Ensure the provided string and regular expression are valid to avoid potential errors.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Notes:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The splitBy function is primarily used within DataWeave transformations.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">While MEL (Message Expression Language) doesn't have a direct equivalent, you can achieve similar functionality using string manipulation functions like substring and indexOf.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Further Exploration:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave splitBy function:</span><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/dataweave/latest/dw-core-functions-splitby" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/dataweave/latest/dw-core-functions-splitby</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave regular expressions:</span><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/dataweave/latest/dataweave-cookbook-use-regex" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/dataweave/latest/dataweave-cookbook-use-regex</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL string functions:</span><span style="color: #1f1f1f; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/mule-runtime/3.9/mule-expression-language-mel" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/mule-runtime/3.9/mule-expression-language-mel</span></a></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">By understanding the splitBy function and its nuances, you can effectively manipulate strings and extract desired data components within your MuleSoft 4 applications.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 17pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-55365752454126765902024-03-15T11:44:00.001+05:302024-03-15T11:44:04.562+05:30How to use Mule HQ with Mule?137<h2 style="text-align: left;"><span style="background-color: #fce5cd;"><span style="font-size: x-large;"> How to use Mule HQ with Mule?</span></span></h2><div><span id="docs-internal-guid-7b7696df-7fff-8e53-510b-ec6e9e711c24"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In MuleSoft 4, </span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Mule HQ is no longer an actively supported product</span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">. While it previously offered functionalities for performance monitoring and management, its capabilities have been superseded by the features available within the Anypoint Platform.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's a breakdown of the situation:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Discontinuation of Mule HQ:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> MuleSoft officially discontinued Mule HQ in 2018.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Alternative Solutions:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Anypoint Platform:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="3" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: square; margin-left: 4.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Provides a comprehensive suite of tools for managing and monitoring your Mule applications, including:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="4" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: square; margin-left: 18pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">API Manager:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Manages APIs, enforces policies, and provides analytics.</span></p></li><li aria-level="4" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: square; margin-left: 18pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Exchange:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> A repository for sharing reusable assets like connectors and templates.</span></p></li><li aria-level="4" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: square; margin-left: 18pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Monitoring Center:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Monitors application health, performance, and errors.</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Custom Monitoring Solutions:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="3" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: square; margin-left: 4.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">You can leverage external monitoring tools like Prometheus, Grafana, or Datadog to integrate with your Mule applications and collect performance data.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Here's how you can achieve performance monitoring and management in MuleSoft 4:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Utilize Anypoint Platform:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">API Manager:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This offers features like traffic monitoring, quota management, and API analytics.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Monitoring Center:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Provides real-time insights into application health, including CPU, memory usage, and error rates. You can configure alerts and notifications based on specific metrics.</span></p></li></ul><ol start="2" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Explore External Monitoring Tools:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Integrate tools like Prometheus or Datadog with your Mule applications using connectors or APIs.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">These tools allow you to collect detailed performance metrics, visualize data, and set up custom alerts.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">While Mule HQ is no longer available, the knowledge gained from its functionalities can be applied to understanding performance monitoring concepts.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The Anypoint Platform offers a broader range of features and capabilities for managing your Mule applications compared to the limited scope of Mule HQ.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Choosing the right monitoring solution depends on your specific requirements, budget, and technical expertise.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here are some helpful resources for further exploration:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Anypoint Platform documentation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/general/" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/general/</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">API Manager documentation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/api-manager/latest/latest-overview-concept" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/api-manager/latest/latest-overview-concept</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Monitoring Center documentation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/monitoring/" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/monitoring/</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Prometheus documentation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://prometheus.io/" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://prometheus.io/</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Grafana documentation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://grafana.com/" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://grafana.com/</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Datadog documentation:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.datadoghq.com/" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.datadoghq.com/</span></a></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Remember, while Mule HQ is no longer a viable option, the Anypoint Platform and other external monitoring tools provide effective solutions for monitoring and managing your MuleSoft 4 applications.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-60518302820071353342024-03-15T11:23:00.001+05:302024-03-15T11:23:14.645+05:30How to update company name in employee array ? in MuleSoft 136<h2 style="text-align: left;"><span style="background-color: #f3f3f3; font-size: x-large;"> <span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;">How to update company name in employee array ? in MuleSoft</span></span></h2><div><span id="docs-internal-guid-7de18922-7fff-d93c-f6c0-1a86b3116cdc"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's how to update the company name within an employee array in MuleSoft 4:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 1: Using DataWeave:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">DataWeave offers a powerful and concise approach for manipulating data within arrays. Here's how to achieve this:</span></p><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sample employee array</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var employees = [</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> { name: "John Doe", company: "OldCompany" },</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> { name: "Jane Doe", company: "OldCompany" }</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">];</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Update the company name for all employees</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = employees map (employee) -> {</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> employee merge { company: "NewCompany" }; // Merge with updated company name</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">};</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Define a sample employee array (employees) containing objects with name and company properties.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The map function iterates through each employee object in the array.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Inside the map function:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The merge operator is used to combine the existing employee object with a new object containing the updated company name ("NewCompany").</span></p></li></ul><ol start="4" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The resulting output array contains all employees with their company name updated to "NewCompany".</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 2: Using MEL (Message Expression Language):</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">MEL provides a basic approach for manipulating objects within an array. Here's an example:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">foreach</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">collection</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Employee Loop"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">set-payload</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">expression</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"#[payload merge { company: 'NewCompany' }]"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">doc:name</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">=</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Update Company"</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">/></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">foreach</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">A foreach loop iterates through each element (payload) in the assumed employee array.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Inside the loop:</span></p></li></ol><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">A set-payload component uses an expression to update the current employee object.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The merge function (similar to DataWeave) combines the existing object with a new object containing the updated company name.</span></p></li></ul><ol start="3" style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The updated object is then sent to the output.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Choosing the Right Approach:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This is the recommended method due to its:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Readability</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Conciseness</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Ability to handle complex scenarios (updating based on conditions, modifying other properties)</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> While functional for simple updates, MEL expressions can become cumbersome for intricate object manipulation or conditional logic.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Ensure the payload structure (array of objects) is compatible with the chosen method.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Error handling can be incorporated within DataWeave or MEL to gracefully handle cases where the array might be empty or the object structure differs.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Further Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">DataWeave allows for updating specific elements within the array based on conditions. You can use filters within the map function to target specific employees for the update.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Consider using a dedicated processor like "Object to JSON" or "JSON to Object" if additional data transformation is required after the update.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here are some helpful resources for further reference:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave map function:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/dataweave/latest/dw-core-functions-map" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/dataweave/latest/dw-core-functions-map</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave merge operator:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> [invalid URL removed]</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL merge function:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/mule-runtime/3.9/mule-expression-language-mel" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/mule-runtime/3.9/mule-expression-language-mel</span></a></p></li></ul></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-37400838186235841402024-03-14T22:44:00.008+05:302024-03-18T10:28:03.460+05:30 how to import modules in Python 22 NumPy and Pandas<p> </p><span id="docs-internal-guid-64399cfe-7fff-af2d-d363-2612cd2daaf4"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 19pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Here's a breakdown of how to import modules in Python, the various ways to do it, and their use cases:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Types of Imports</span></p><ol style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Importing an entire module:</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Python</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> math</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">result = math.sqrt(</span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">25</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">) </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"># Accessing functions using module_name.function_name </span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">print(result) </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"># Output: 5.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /><br /></span></p></li></ol><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Use this when you need multiple functions or objects from a module.</span></p></li></ul><ol start="2" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Importing specific items from a module:</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Python</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">from</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> math </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> sqrt, pi</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">result = sqrt(</span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">16</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">print(result) </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"># Output: 4.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">print(pi) </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"># Output: 3.14159... </span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /><br /></span></p></li></ol><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Use this to avoid potential namespace clashes and make your code more readable when you only need specific parts of the module.</span></p></li></ul><ol start="3" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Importing a module with an alias:</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Python</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> pandas </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">as</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> pd</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">df = pd.DataFrame({</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">'A'</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">: [</span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">1</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">, </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">2</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">, </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">3</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">]}) </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"># Using the conventional shorthand 'pd'</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /><br /></span></p></li></ol><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Use this for long module names to create more concise references, or to standardize commonly used names within your project.</span></p></li></ul><ol start="4" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Importing all contents of a module (generally discouraged):</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Python</span><span style="font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">from</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> math </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> * </span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">result = sqrt(</span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">9</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">) </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"># Can directly access functions without module_name prefix.</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">print(result) </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"># Output: 3.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><br /><br /></span></p></li></ol><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Caution:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This practice can lead to namespace pollution and make it harder to track where functions or variables came from, decreasing code clarity. It's generally better to be explicit about what you're importing.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Key Considerations</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Namespaces:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Each module has its own namespace, preventing names from colliding. That's why you need to use the module_name.item_name syntax when you import a whole module.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Efficiency:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Importing specific items can be slightly more efficient than importing the entire module. Be mindful of this if you're working with large modules on performance-critical code.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Readability:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Your choice of import style plays a big role in code readability. Choose a method that keeps your code clear and understandable.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Notes</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Custom Modules:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Import your own modules just like those from the Standard Library, as long as the module file (.py) is accessible from your project's directory or Python path.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Circular Imports:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Be careful to avoid circular import situations where two modules depend on each other directly. Structure your code to minimize these dependencies.</span></p></li></ul><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 20pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Here are ways to find out all the methods (and attributes) within a module in Python:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">1. Using the dir() function:</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The dir() function attempts to return a list of valid attributes and methods of the object you pass to it.</span></p></li></ul><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt; margin: 12pt;"><span face="Arial, sans-serif" style="background-color: #f0f4f9; color: #444746; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Python</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> math</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">print(</span><span style="background-color: #f0f4f9; color: #1967d2; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">dir</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">(math)) </span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Output:</span><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> A list of names including functions (methods), constants, etc., within the math module.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">2. Using the help() function for detailed information:</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The help() function provides interactive help. It's more descriptive than dir().</span></p></li></ul><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt; margin: 12pt;"><span face="Arial, sans-serif" style="background-color: #f0f4f9; color: #444746; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Python</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> math</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1967d2; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">help</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">(math)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Output:</span><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> Shows a comprehensive summary of the module, including descriptions of functions, classes, and variables.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">3. Online Documentation</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">For standard library modules, refer to the official Python documentation: </span><a href="https://docs.python.org/3/library/" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.python.org/3/library/</span></a><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Third-party libraries usually have their own documentation websites.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Key Points:</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Methods vs. Attributes:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> dir() will show you a mix of methods, attributes that aren't methods (like variables), and other names defined in the module.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Filtering:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> If you </span><span style="color: #1f1f1f; font-size: 16pt; font-style: italic; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">only</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> want methods, you might need to filter the results of dir() with a bit of code. Here's an example:</span></p></li></ul><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt; margin: 12pt;"><span face="Arial, sans-serif" style="background-color: #f0f4f9; color: #444746; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Python</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> inspect</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> math</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">def</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #996900; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">get_methods</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">(module):</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> members = inspect.getmembers(module, inspect.isfunction) </span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">return</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> [member[</span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">] </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">for</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> member </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">in</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> members]</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">print(get_methods(math))</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Important Note:</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Some modules might have internal methods and attributes not intended for general use. These often start with an underscore (_).</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Example with a Non-Standard Module (requests):</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt; margin: 12pt;"><span face="Arial, sans-serif" style="background-color: #f0f4f9; color: #444746; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Python</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> requests</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">print(</span><span style="background-color: #f0f4f9; color: #1967d2; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">dir</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">(requests)) </span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Will list methods like 'get', 'post', etc., along with other attributes</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1967d2; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">help</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">(requests)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Will provide a detailed description of the module and its functionality</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Let me know if you want to know the methods for a specific module!</span></p><br /></span>--------------------<div><br /></div><div><span id="docs-internal-guid-fbed1ad5-7fff-a5e6-c549-b3ca351e25af"><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 26pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"> NumPy and Pandas, two essential libraries within the Python scientific computing ecosystem:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">NumPy (Numerical Python)</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">The Core of Numerical Computation:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> NumPy lays the foundation for working with numerical data in Python. Here's its essence:</span></p></li></ul><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">ndarray:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> The powerful ndarray, NumPy's multidimensional array, provides efficient storage and manipulation of large numerical datasets.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Mathematical Operations:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> NumPy offers a rich collection of mathematical functions optimized for operating on arrays—linear algebra functions, Fourier transforms, random number generation, and much more.</span></p></li></ul><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Why NumPy?</span></p></li></ul><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Speed:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> NumPy's core operations are implemented in C, making them significantly faster than standard Python lists for computation.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Memory Efficiency:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Optimized for storing numerical data, saving you memory compared to standard Python lists.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Foundation:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> NumPy underpins many other powerful Python libraries like Pandas, Scikit-learn (machine learning), and Matplotlib (visualization).</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Pandas (Panel Data Analysis)</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Data Analysis Powerhouse:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Pandas builds upon NumPy and introduces powerful tools designed specifically for data analysis and manipulation.</span></p></li></ul><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Series:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> A one-dimensional array-like object capable of holding various data types (numbers, strings, dates, etc.) and carrying labels (index).</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataFrame:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> A tabular, spreadsheet-like data structure with labeled rows and columns. Think of it as an in-memory Excel table.</span></p></li></ul><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Why Pandas?</span></p></li></ul><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Flexible Data Import:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Read and load data from various sources (CSV, Excel, JSON, databases) into DataFrames.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Data Cleaning and Wrangling:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Tackle missing data, reshaping, indexing, slicing, filtering and merging of datasets with ease.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Exploration and Analysis:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> Calculate summary statistics, create visualizations, and perform group-by operations.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">NumPy and Pandas: A Dynamic Duo</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">NumPy provides the underlying numerical computation and array structures.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Pandas leverages NumPy's arrays and offers high-level abstractions for real-world data analysis tasks.</span></p></li></ul><br /><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 26pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Website traffic analysis program using Matplotlib.</span></p><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt; margin: 12pt;"><span face="Arial, sans-serif" style="background-color: #f0f4f9; color: #444746; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Python</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> numpy </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">as</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> np</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> pandas </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">as</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> pd</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">import</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> matplotlib.pyplot </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">as</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> plt</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Load the CSV data into a Pandas DataFrame</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">data = pd.read_csv(</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"sample_traffic.csv"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">) </span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Convert the "Date" column to datetime format</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">data[</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Date"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">] = pd.to_datetime(data[</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Date"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">])</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Set the "Date" column as the DataFrame's index</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">data.set_index(</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Date"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">, inplace=</span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">True</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># NumPy for calculations</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">daily_change = data[</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">'Visitors'</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">].pct_change() * </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">100</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Analysis with Pandas</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">print(</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Descriptive statistics:"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">print(data.describe())</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">print(</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"\nDaily percentage change in traffic:"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">print(daily_change) </span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Visualizations with Matplotlib</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.figure(figsize=(</span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">10</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">, </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">6</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">)) </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Adjust figure size</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Line plot of visitor count</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.subplot(</span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">2</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">, </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">1</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">, </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">1</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">) </span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.plot(data[</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Visitors"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">])</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.title(</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Daily Website Visitors"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.xlabel(</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Date"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.ylabel(</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Visitors"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Bar plot of percentage change</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.subplot(</span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">2</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">, </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">1</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">, </span><span style="background-color: #f0f4f9; color: #b55908; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">2</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">) </span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.bar(daily_change.index, daily_change.values)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.title(</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Daily Change in Traffic (%)"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.xlabel(</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Date"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.ylabel(</span><span style="background-color: #f0f4f9; color: #188038; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">"Percentage Change"</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.tight_layout() </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"># Adjust spacing to prevent overlapping</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">plt.show()</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation of Changes:</span></p><ol style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Import Matplotlib:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> We import the matplotlib.pyplot module.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Figure and Subplots:</span></p></li></ol><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">plt.figure() creates a figure to hold our plots.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">plt.subplot(2, 1, 1) and plt.subplot(2, 1, 2) divide the figure into a 2x1 grid, and we select the first and second positions, respectively, for our plots.</span></p></li></ul><ol start="3" style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Line Plot:</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> We plot the original visitor count over time.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Bar Plot</span><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">: We create a bar chart visualizing the percentage change in traffic.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">Layout and Display:</span></p></li></ol><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">plt.tight_layout() improves the spacing between the plots.</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -1.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">plt.show() displays the plots.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Customization:</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Explore Matplotlib's extensive customization options for colors, labels, legends, etc. Refer to the documentation: </span><a href="https://matplotlib.org/" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 15pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://matplotlib.org/</span></a></p></li></ul><br /><br /></span></div>
<!DOCTYPE html>
<html>
<head><meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>22</title><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
<style type="text/css">
pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.highlight .hll { background-color: var(--jp-cell-editor-active-background) }
.highlight { background: var(--jp-cell-editor-background); color: var(--jp-mirror-editor-variable-color) }
.highlight .c { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment */
.highlight .err { color: var(--jp-mirror-editor-error-color) } /* Error */
.highlight .k { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword */
.highlight .o { color: var(--jp-mirror-editor-operator-color); font-weight: bold } /* Operator */
.highlight .p { color: var(--jp-mirror-editor-punctuation-color) } /* Punctuation */
.highlight .ch { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Multiline */
.highlight .cp { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Preproc */
.highlight .cpf { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.PreprocFile */
.highlight .c1 { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Single */
.highlight .cs { color: var(--jp-mirror-editor-comment-color); font-style: italic } /* Comment.Special */
.highlight .kc { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Pseudo */
.highlight .kr { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: var(--jp-mirror-editor-keyword-color); font-weight: bold } /* Keyword.Type */
.highlight .m { color: var(--jp-mirror-editor-number-color) } /* Literal.Number */
.highlight .s { color: var(--jp-mirror-editor-string-color) } /* Literal.String */
.highlight .ow { color: var(--jp-mirror-editor-operator-color); font-weight: bold } /* Operator.Word */
.highlight .pm { color: var(--jp-mirror-editor-punctuation-color) } /* Punctuation.Marker */
.highlight .w { color: var(--jp-mirror-editor-variable-color) } /* Text.Whitespace */
.highlight .mb { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Bin */
.highlight .mf { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Float */
.highlight .mh { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Hex */
.highlight .mi { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer */
.highlight .mo { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Oct */
.highlight .sa { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Affix */
.highlight .sb { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Backtick */
.highlight .sc { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Char */
.highlight .dl { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Delimiter */
.highlight .sd { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Doc */
.highlight .s2 { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Double */
.highlight .se { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Escape */
.highlight .sh { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Heredoc */
.highlight .si { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Interpol */
.highlight .sx { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Other */
.highlight .sr { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Regex */
.highlight .s1 { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Single */
.highlight .ss { color: var(--jp-mirror-editor-string-color) } /* Literal.String.Symbol */
.highlight .il { color: var(--jp-mirror-editor-number-color) } /* Literal.Number.Integer.Long */
</style>
<style type="text/css">
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*
* Mozilla scrollbar styling
*/
/* use standard opaque scrollbars for most nodes */
[data-jp-theme-scrollbars='true'] {
scrollbar-color: rgb(var(--jp-scrollbar-thumb-color))
var(--jp-scrollbar-background-color);
}
/* for code nodes, use a transparent style of scrollbar. These selectors
* will match lower in the tree, and so will override the above */
[data-jp-theme-scrollbars='true'] .CodeMirror-hscrollbar,
[data-jp-theme-scrollbars='true'] .CodeMirror-vscrollbar {
scrollbar-color: rgba(var(--jp-scrollbar-thumb-color), 0.5) transparent;
}
/* tiny scrollbar */
.jp-scrollbar-tiny {
scrollbar-color: rgba(var(--jp-scrollbar-thumb-color), 0.5) transparent;
scrollbar-width: thin;
}
/*
* Webkit scrollbar styling
*/
/* use standard opaque scrollbars for most nodes */
[data-jp-theme-scrollbars='true'] ::-webkit-scrollbar,
[data-jp-theme-scrollbars='true'] ::-webkit-scrollbar-corner {
background: var(--jp-scrollbar-background-color);
}
[data-jp-theme-scrollbars='true'] ::-webkit-scrollbar-thumb {
background: rgb(var(--jp-scrollbar-thumb-color));
border: var(--jp-scrollbar-thumb-margin) solid transparent;
background-clip: content-box;
border-radius: var(--jp-scrollbar-thumb-radius);
}
[data-jp-theme-scrollbars='true'] ::-webkit-scrollbar-track:horizontal {
border-left: var(--jp-scrollbar-endpad) solid
var(--jp-scrollbar-background-color);
border-right: var(--jp-scrollbar-endpad) solid
var(--jp-scrollbar-background-color);
}
[data-jp-theme-scrollbars='true'] ::-webkit-scrollbar-track:vertical {
border-top: var(--jp-scrollbar-endpad) solid
var(--jp-scrollbar-background-color);
border-bottom: var(--jp-scrollbar-endpad) solid
var(--jp-scrollbar-background-color);
}
/* for code nodes, use a transparent style of scrollbar */
[data-jp-theme-scrollbars='true'] .CodeMirror-hscrollbar::-webkit-scrollbar,
[data-jp-theme-scrollbars='true'] .CodeMirror-vscrollbar::-webkit-scrollbar,
[data-jp-theme-scrollbars='true']
.CodeMirror-hscrollbar::-webkit-scrollbar-corner,
[data-jp-theme-scrollbars='true']
.CodeMirror-vscrollbar::-webkit-scrollbar-corner {
background-color: transparent;
}
[data-jp-theme-scrollbars='true']
.CodeMirror-hscrollbar::-webkit-scrollbar-thumb,
[data-jp-theme-scrollbars='true']
.CodeMirror-vscrollbar::-webkit-scrollbar-thumb {
background: rgba(var(--jp-scrollbar-thumb-color), 0.5);
border: var(--jp-scrollbar-thumb-margin) solid transparent;
background-clip: content-box;
border-radius: var(--jp-scrollbar-thumb-radius);
}
[data-jp-theme-scrollbars='true']
.CodeMirror-hscrollbar::-webkit-scrollbar-track:horizontal {
border-left: var(--jp-scrollbar-endpad) solid transparent;
border-right: var(--jp-scrollbar-endpad) solid transparent;
}
[data-jp-theme-scrollbars='true']
.CodeMirror-vscrollbar::-webkit-scrollbar-track:vertical {
border-top: var(--jp-scrollbar-endpad) solid transparent;
border-bottom: var(--jp-scrollbar-endpad) solid transparent;
}
/* tiny scrollbar */
.jp-scrollbar-tiny::-webkit-scrollbar,
.jp-scrollbar-tiny::-webkit-scrollbar-corner {
background-color: transparent;
height: 4px;
width: 4px;
}
.jp-scrollbar-tiny::-webkit-scrollbar-thumb {
background: rgba(var(--jp-scrollbar-thumb-color), 0.5);
}
.jp-scrollbar-tiny::-webkit-scrollbar-track:horizontal {
border-left: 0px solid transparent;
border-right: 0px solid transparent;
}
.jp-scrollbar-tiny::-webkit-scrollbar-track:vertical {
border-top: 0px solid transparent;
border-bottom: 0px solid transparent;
}
/*
* Phosphor
*/
.lm-ScrollBar[data-orientation='horizontal'] {
min-height: 16px;
max-height: 16px;
min-width: 45px;
border-top: 1px solid #a0a0a0;
}
.lm-ScrollBar[data-orientation='vertical'] {
min-width: 16px;
max-width: 16px;
min-height: 45px;
border-left: 1px solid #a0a0a0;
}
.lm-ScrollBar-button {
background-color: #f0f0f0;
background-position: center center;
min-height: 15px;
max-height: 15px;
min-width: 15px;
max-width: 15px;
}
.lm-ScrollBar-button:hover {
background-color: #dadada;
}
.lm-ScrollBar-button.lm-mod-active {
background-color: #cdcdcd;
}
.lm-ScrollBar-track {
background: #f0f0f0;
}
.lm-ScrollBar-thumb {
background: #cdcdcd;
}
.lm-ScrollBar-thumb:hover {
background: #bababa;
}
.lm-ScrollBar-thumb.lm-mod-active {
background: #a0a0a0;
}
.lm-ScrollBar[data-orientation='horizontal'] .lm-ScrollBar-thumb {
height: 100%;
min-width: 15px;
border-left: 1px solid #a0a0a0;
border-right: 1px solid #a0a0a0;
}
.lm-ScrollBar[data-orientation='vertical'] .lm-ScrollBar-thumb {
width: 100%;
min-height: 15px;
border-top: 1px solid #a0a0a0;
border-bottom: 1px solid #a0a0a0;
}
.lm-ScrollBar[data-orientation='horizontal']
.lm-ScrollBar-button[data-action='decrement'] {
background-image: var(--jp-icon-caret-left);
background-size: 17px;
}
.lm-ScrollBar[data-orientation='horizontal']
.lm-ScrollBar-button[data-action='increment'] {
background-image: var(--jp-icon-caret-right);
background-size: 17px;
}
.lm-ScrollBar[data-orientation='vertical']
.lm-ScrollBar-button[data-action='decrement'] {
background-image: var(--jp-icon-caret-up);
background-size: 17px;
}
.lm-ScrollBar[data-orientation='vertical']
.lm-ScrollBar-button[data-action='increment'] {
background-image: var(--jp-icon-caret-down);
background-size: 17px;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
/* <DEPRECATED> */ .p-Widget, /* </DEPRECATED> */
.lm-Widget {
box-sizing: border-box;
position: relative;
overflow: hidden;
cursor: default;
}
/* <DEPRECATED> */ .p-Widget.p-mod-hidden, /* </DEPRECATED> */
.lm-Widget.lm-mod-hidden {
display: none !important;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
/* <DEPRECATED> */ .p-CommandPalette, /* </DEPRECATED> */
.lm-CommandPalette {
display: flex;
flex-direction: column;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
/* <DEPRECATED> */ .p-CommandPalette-search, /* </DEPRECATED> */
.lm-CommandPalette-search {
flex: 0 0 auto;
}
/* <DEPRECATED> */ .p-CommandPalette-content, /* </DEPRECATED> */
.lm-CommandPalette-content {
flex: 1 1 auto;
margin: 0;
padding: 0;
min-height: 0;
overflow: auto;
list-style-type: none;
}
/* <DEPRECATED> */ .p-CommandPalette-header, /* </DEPRECATED> */
.lm-CommandPalette-header {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
/* <DEPRECATED> */ .p-CommandPalette-item, /* </DEPRECATED> */
.lm-CommandPalette-item {
display: flex;
flex-direction: row;
}
/* <DEPRECATED> */ .p-CommandPalette-itemIcon, /* </DEPRECATED> */
.lm-CommandPalette-itemIcon {
flex: 0 0 auto;
}
/* <DEPRECATED> */ .p-CommandPalette-itemContent, /* </DEPRECATED> */
.lm-CommandPalette-itemContent {
flex: 1 1 auto;
overflow: hidden;
}
/* <DEPRECATED> */ .p-CommandPalette-itemShortcut, /* </DEPRECATED> */
.lm-CommandPalette-itemShortcut {
flex: 0 0 auto;
}
/* <DEPRECATED> */ .p-CommandPalette-itemLabel, /* </DEPRECATED> */
.lm-CommandPalette-itemLabel {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.lm-close-icon {
border:1px solid transparent;
background-color: transparent;
position: absolute;
z-index:1;
right:3%;
top: 0;
bottom: 0;
margin: auto;
padding: 7px 0;
display: none;
vertical-align: middle;
outline: 0;
cursor: pointer;
}
.lm-close-icon:after {
content: "X";
display: block;
width: 15px;
height: 15px;
text-align: center;
color:#000;
font-weight: normal;
font-size: 12px;
cursor: pointer;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
/* <DEPRECATED> */ .p-DockPanel, /* </DEPRECATED> */
.lm-DockPanel {
z-index: 0;
}
/* <DEPRECATED> */ .p-DockPanel-widget, /* </DEPRECATED> */
.lm-DockPanel-widget {
z-index: 0;
}
/* <DEPRECATED> */ .p-DockPanel-tabBar, /* </DEPRECATED> */
.lm-DockPanel-tabBar {
z-index: 1;
}
/* <DEPRECATED> */ .p-DockPanel-handle, /* </DEPRECATED> */
.lm-DockPanel-handle {
z-index: 2;
}
/* <DEPRECATED> */ .p-DockPanel-handle.p-mod-hidden, /* </DEPRECATED> */
.lm-DockPanel-handle.lm-mod-hidden {
display: none !important;
}
/* <DEPRECATED> */ .p-DockPanel-handle:after, /* </DEPRECATED> */
.lm-DockPanel-handle:after {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: '';
}
/* <DEPRECATED> */
.p-DockPanel-handle[data-orientation='horizontal'],
/* </DEPRECATED> */
.lm-DockPanel-handle[data-orientation='horizontal'] {
cursor: ew-resize;
}
/* <DEPRECATED> */
.p-DockPanel-handle[data-orientation='vertical'],
/* </DEPRECATED> */
.lm-DockPanel-handle[data-orientation='vertical'] {
cursor: ns-resize;
}
/* <DEPRECATED> */
.p-DockPanel-handle[data-orientation='horizontal']:after,
/* </DEPRECATED> */
.lm-DockPanel-handle[data-orientation='horizontal']:after {
left: 50%;
min-width: 8px;
transform: translateX(-50%);
}
/* <DEPRECATED> */
.p-DockPanel-handle[data-orientation='vertical']:after,
/* </DEPRECATED> */
.lm-DockPanel-handle[data-orientation='vertical']:after {
top: 50%;
min-height: 8px;
transform: translateY(-50%);
}
/* <DEPRECATED> */ .p-DockPanel-overlay, /* </DEPRECATED> */
.lm-DockPanel-overlay {
z-index: 3;
box-sizing: border-box;
pointer-events: none;
}
/* <DEPRECATED> */ .p-DockPanel-overlay.p-mod-hidden, /* </DEPRECATED> */
.lm-DockPanel-overlay.lm-mod-hidden {
display: none !important;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
/* <DEPRECATED> */ .p-Menu, /* </DEPRECATED> */
.lm-Menu {
z-index: 10000;
position: absolute;
white-space: nowrap;
overflow-x: hidden;
overflow-y: auto;
outline: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
/* <DEPRECATED> */ .p-Menu-content, /* </DEPRECATED> */
.lm-Menu-content {
margin: 0;
padding: 0;
display: table;
list-style-type: none;
}
/* <DEPRECATED> */ .p-Menu-item, /* </DEPRECATED> */
.lm-Menu-item {
display: table-row;
}
/* <DEPRECATED> */
.p-Menu-item.p-mod-hidden,
.p-Menu-item.p-mod-collapsed,
/* </DEPRECATED> */
.lm-Menu-item.lm-mod-hidden,
.lm-Menu-item.lm-mod-collapsed {
display: none !important;
}
/* <DEPRECATED> */
.p-Menu-itemIcon,
.p-Menu-itemSubmenuIcon,
/* </DEPRECATED> */
.lm-Menu-itemIcon,
.lm-Menu-itemSubmenuIcon {
display: table-cell;
text-align: center;
}
/* <DEPRECATED> */ .p-Menu-itemLabel, /* </DEPRECATED> */
.lm-Menu-itemLabel {
display: table-cell;
text-align: left;
}
/* <DEPRECATED> */ .p-Menu-itemShortcut, /* </DEPRECATED> */
.lm-Menu-itemShortcut {
display: table-cell;
text-align: right;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
/* <DEPRECATED> */ .p-MenuBar, /* </DEPRECATED> */
.lm-MenuBar {
outline: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
/* <DEPRECATED> */ .p-MenuBar-content, /* </DEPRECATED> */
.lm-MenuBar-content {
margin: 0;
padding: 0;
display: flex;
flex-direction: row;
list-style-type: none;
}
/* <DEPRECATED> */ .p--MenuBar-item, /* </DEPRECATED> */
.lm-MenuBar-item {
box-sizing: border-box;
}
/* <DEPRECATED> */
.p-MenuBar-itemIcon,
.p-MenuBar-itemLabel,
/* </DEPRECATED> */
.lm-MenuBar-itemIcon,
.lm-MenuBar-itemLabel {
display: inline-block;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
/* <DEPRECATED> */ .p-ScrollBar, /* </DEPRECATED> */
.lm-ScrollBar {
display: flex;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
/* <DEPRECATED> */
.p-ScrollBar[data-orientation='horizontal'],
/* </DEPRECATED> */
.lm-ScrollBar[data-orientation='horizontal'] {
flex-direction: row;
}
/* <DEPRECATED> */
.p-ScrollBar[data-orientation='vertical'],
/* </DEPRECATED> */
.lm-ScrollBar[data-orientation='vertical'] {
flex-direction: column;
}
/* <DEPRECATED> */ .p-ScrollBar-button, /* </DEPRECATED> */
.lm-ScrollBar-button {
box-sizing: border-box;
flex: 0 0 auto;
}
/* <DEPRECATED> */ .p-ScrollBar-track, /* </DEPRECATED> */
.lm-ScrollBar-track {
box-sizing: border-box;
position: relative;
overflow: hidden;
flex: 1 1 auto;
}
/* <DEPRECATED> */ .p-ScrollBar-thumb, /* </DEPRECATED> */
.lm-ScrollBar-thumb {
box-sizing: border-box;
position: absolute;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
/* <DEPRECATED> */ .p-SplitPanel-child, /* </DEPRECATED> */
.lm-SplitPanel-child {
z-index: 0;
}
/* <DEPRECATED> */ .p-SplitPanel-handle, /* </DEPRECATED> */
.lm-SplitPanel-handle {
z-index: 1;
}
/* <DEPRECATED> */ .p-SplitPanel-handle.p-mod-hidden, /* </DEPRECATED> */
.lm-SplitPanel-handle.lm-mod-hidden {
display: none !important;
}
/* <DEPRECATED> */ .p-SplitPanel-handle:after, /* </DEPRECATED> */
.lm-SplitPanel-handle:after {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: '';
}
/* <DEPRECATED> */
.p-SplitPanel[data-orientation='horizontal'] > .p-SplitPanel-handle,
/* </DEPRECATED> */
.lm-SplitPanel[data-orientation='horizontal'] > .lm-SplitPanel-handle {
cursor: ew-resize;
}
/* <DEPRECATED> */
.p-SplitPanel[data-orientation='vertical'] > .p-SplitPanel-handle,
/* </DEPRECATED> */
.lm-SplitPanel[data-orientation='vertical'] > .lm-SplitPanel-handle {
cursor: ns-resize;
}
/* <DEPRECATED> */
.p-SplitPanel[data-orientation='horizontal'] > .p-SplitPanel-handle:after,
/* </DEPRECATED> */
.lm-SplitPanel[data-orientation='horizontal'] > .lm-SplitPanel-handle:after {
left: 50%;
min-width: 8px;
transform: translateX(-50%);
}
/* <DEPRECATED> */
.p-SplitPanel[data-orientation='vertical'] > .p-SplitPanel-handle:after,
/* </DEPRECATED> */
.lm-SplitPanel[data-orientation='vertical'] > .lm-SplitPanel-handle:after {
top: 50%;
min-height: 8px;
transform: translateY(-50%);
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
/* <DEPRECATED> */ .p-TabBar, /* </DEPRECATED> */
.lm-TabBar {
display: flex;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
/* <DEPRECATED> */ .p-TabBar[data-orientation='horizontal'], /* </DEPRECATED> */
.lm-TabBar[data-orientation='horizontal'] {
flex-direction: row;
align-items: flex-end;
}
/* <DEPRECATED> */ .p-TabBar[data-orientation='vertical'], /* </DEPRECATED> */
.lm-TabBar[data-orientation='vertical'] {
flex-direction: column;
align-items: flex-end;
}
/* <DEPRECATED> */ .p-TabBar-content, /* </DEPRECATED> */
.lm-TabBar-content {
margin: 0;
padding: 0;
display: flex;
flex: 1 1 auto;
list-style-type: none;
}
/* <DEPRECATED> */
.p-TabBar[data-orientation='horizontal'] > .p-TabBar-content,
/* </DEPRECATED> */
.lm-TabBar[data-orientation='horizontal'] > .lm-TabBar-content {
flex-direction: row;
}
/* <DEPRECATED> */
.p-TabBar[data-orientation='vertical'] > .p-TabBar-content,
/* </DEPRECATED> */
.lm-TabBar[data-orientation='vertical'] > .lm-TabBar-content {
flex-direction: column;
}
/* <DEPRECATED> */ .p-TabBar-tab, /* </DEPRECATED> */
.lm-TabBar-tab {
display: flex;
flex-direction: row;
box-sizing: border-box;
overflow: hidden;
}
/* <DEPRECATED> */
.p-TabBar-tabIcon,
.p-TabBar-tabCloseIcon,
/* </DEPRECATED> */
.lm-TabBar-tabIcon,
.lm-TabBar-tabCloseIcon {
flex: 0 0 auto;
}
/* <DEPRECATED> */ .p-TabBar-tabLabel, /* </DEPRECATED> */
.lm-TabBar-tabLabel {
flex: 1 1 auto;
overflow: hidden;
white-space: nowrap;
}
.lm-TabBar-tabInput {
user-select: all;
width: 100%;
box-sizing : border-box;
}
/* <DEPRECATED> */ .p-TabBar-tab.p-mod-hidden, /* </DEPRECATED> */
.lm-TabBar-tab.lm-mod-hidden {
display: none !important;
}
.lm-TabBar-addButton.lm-mod-hidden {
display: none !important;
}
/* <DEPRECATED> */ .p-TabBar.p-mod-dragging .p-TabBar-tab, /* </DEPRECATED> */
.lm-TabBar.lm-mod-dragging .lm-TabBar-tab {
position: relative;
}
/* <DEPRECATED> */
.p-TabBar.p-mod-dragging[data-orientation='horizontal'] .p-TabBar-tab,
/* </DEPRECATED> */
.lm-TabBar.lm-mod-dragging[data-orientation='horizontal'] .lm-TabBar-tab {
left: 0;
transition: left 150ms ease;
}
/* <DEPRECATED> */
.p-TabBar.p-mod-dragging[data-orientation='vertical'] .p-TabBar-tab,
/* </DEPRECATED> */
.lm-TabBar.lm-mod-dragging[data-orientation='vertical'] .lm-TabBar-tab {
top: 0;
transition: top 150ms ease;
}
/* <DEPRECATED> */
.p-TabBar.p-mod-dragging .p-TabBar-tab.p-mod-dragging,
/* </DEPRECATED> */
.lm-TabBar.lm-mod-dragging .lm-TabBar-tab.lm-mod-dragging {
transition: none;
}
.lm-TabBar-tabLabel .lm-TabBar-tabInput {
user-select: all;
width: 100%;
box-sizing : border-box;
background: inherit;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
/* <DEPRECATED> */ .p-TabPanel-tabBar, /* </DEPRECATED> */
.lm-TabPanel-tabBar {
z-index: 1;
}
/* <DEPRECATED> */ .p-TabPanel-stackedPanel, /* </DEPRECATED> */
.lm-TabPanel-stackedPanel {
z-index: 0;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
@charset "UTF-8";
html{
-webkit-box-sizing:border-box;
box-sizing:border-box; }
*,
*::before,
*::after{
-webkit-box-sizing:inherit;
box-sizing:inherit; }
body{
font-size:14px;
font-weight:400;
letter-spacing:0;
line-height:1.28581;
text-transform:none;
color:#182026;
font-family:-apple-system, "BlinkMacSystemFont", "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Open Sans", "Helvetica Neue", "Icons16", sans-serif; }
p{
margin-bottom:10px;
margin-top:0; }
small{
font-size:12px; }
strong{
font-weight:600; }
::-moz-selection{
background:rgba(125, 188, 255, 0.6); }
::selection{
background:rgba(125, 188, 255, 0.6); }
.bp3-heading{
color:#182026;
font-weight:600;
margin:0 0 10px;
padding:0; }
.bp3-dark .bp3-heading{
color:#f5f8fa; }
h1.bp3-heading, .bp3-running-text h1{
font-size:36px;
line-height:40px; }
h2.bp3-heading, .bp3-running-text h2{
font-size:28px;
line-height:32px; }
h3.bp3-heading, .bp3-running-text h3{
font-size:22px;
line-height:25px; }
h4.bp3-heading, .bp3-running-text h4{
font-size:18px;
line-height:21px; }
h5.bp3-heading, .bp3-running-text h5{
font-size:16px;
line-height:19px; }
h6.bp3-heading, .bp3-running-text h6{
font-size:14px;
line-height:16px; }
.bp3-ui-text{
font-size:14px;
font-weight:400;
letter-spacing:0;
line-height:1.28581;
text-transform:none; }
.bp3-monospace-text{
font-family:monospace;
text-transform:none; }
.bp3-text-muted{
color:#5c7080; }
.bp3-dark .bp3-text-muted{
color:#a7b6c2; }
.bp3-text-disabled{
color:rgba(92, 112, 128, 0.6); }
.bp3-dark .bp3-text-disabled{
color:rgba(167, 182, 194, 0.6); }
.bp3-text-overflow-ellipsis{
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
word-wrap:normal; }
.bp3-running-text{
font-size:14px;
line-height:1.5; }
.bp3-running-text h1{
color:#182026;
font-weight:600;
margin-bottom:20px;
margin-top:40px; }
.bp3-dark .bp3-running-text h1{
color:#f5f8fa; }
.bp3-running-text h2{
color:#182026;
font-weight:600;
margin-bottom:20px;
margin-top:40px; }
.bp3-dark .bp3-running-text h2{
color:#f5f8fa; }
.bp3-running-text h3{
color:#182026;
font-weight:600;
margin-bottom:20px;
margin-top:40px; }
.bp3-dark .bp3-running-text h3{
color:#f5f8fa; }
.bp3-running-text h4{
color:#182026;
font-weight:600;
margin-bottom:20px;
margin-top:40px; }
.bp3-dark .bp3-running-text h4{
color:#f5f8fa; }
.bp3-running-text h5{
color:#182026;
font-weight:600;
margin-bottom:20px;
margin-top:40px; }
.bp3-dark .bp3-running-text h5{
color:#f5f8fa; }
.bp3-running-text h6{
color:#182026;
font-weight:600;
margin-bottom:20px;
margin-top:40px; }
.bp3-dark .bp3-running-text h6{
color:#f5f8fa; }
.bp3-running-text hr{
border:none;
border-bottom:1px solid rgba(16, 22, 26, 0.15);
margin:20px 0; }
.bp3-dark .bp3-running-text hr{
border-color:rgba(255, 255, 255, 0.15); }
.bp3-running-text p{
margin:0 0 10px;
padding:0; }
.bp3-text-large{
font-size:16px; }
.bp3-text-small{
font-size:12px; }
a{
color:#106ba3;
text-decoration:none; }
a:hover{
color:#106ba3;
cursor:pointer;
text-decoration:underline; }
a .bp3-icon, a .bp3-icon-standard, a .bp3-icon-large{
color:inherit; }
a code,
.bp3-dark a code{
color:inherit; }
.bp3-dark a,
.bp3-dark a:hover{
color:#48aff0; }
.bp3-dark a .bp3-icon, .bp3-dark a .bp3-icon-standard, .bp3-dark a .bp3-icon-large,
.bp3-dark a:hover .bp3-icon,
.bp3-dark a:hover .bp3-icon-standard,
.bp3-dark a:hover .bp3-icon-large{
color:inherit; }
.bp3-running-text code, .bp3-code{
font-family:monospace;
text-transform:none;
background:rgba(255, 255, 255, 0.7);
border-radius:3px;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2);
color:#5c7080;
font-size:smaller;
padding:2px 5px; }
.bp3-dark .bp3-running-text code, .bp3-running-text .bp3-dark code, .bp3-dark .bp3-code{
background:rgba(16, 22, 26, 0.3);
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4);
color:#a7b6c2; }
.bp3-running-text a > code, a > .bp3-code{
color:#137cbd; }
.bp3-dark .bp3-running-text a > code, .bp3-running-text .bp3-dark a > code, .bp3-dark a > .bp3-code{
color:inherit; }
.bp3-running-text pre, .bp3-code-block{
font-family:monospace;
text-transform:none;
background:rgba(255, 255, 255, 0.7);
border-radius:3px;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.15);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.15);
color:#182026;
display:block;
font-size:13px;
line-height:1.4;
margin:10px 0;
padding:13px 15px 12px;
word-break:break-all;
word-wrap:break-word; }
.bp3-dark .bp3-running-text pre, .bp3-running-text .bp3-dark pre, .bp3-dark .bp3-code-block{
background:rgba(16, 22, 26, 0.3);
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4);
color:#f5f8fa; }
.bp3-running-text pre > code, .bp3-code-block > code{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:inherit;
font-size:inherit;
padding:0; }
.bp3-running-text kbd, .bp3-key{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
background:#ffffff;
border-radius:3px;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2);
color:#5c7080;
display:-webkit-inline-box;
display:-ms-inline-flexbox;
display:inline-flex;
font-family:inherit;
font-size:12px;
height:24px;
-webkit-box-pack:center;
-ms-flex-pack:center;
justify-content:center;
line-height:24px;
min-width:24px;
padding:3px 6px;
vertical-align:middle; }
.bp3-running-text kbd .bp3-icon, .bp3-key .bp3-icon, .bp3-running-text kbd .bp3-icon-standard, .bp3-key .bp3-icon-standard, .bp3-running-text kbd .bp3-icon-large, .bp3-key .bp3-icon-large{
margin-right:5px; }
.bp3-dark .bp3-running-text kbd, .bp3-running-text .bp3-dark kbd, .bp3-dark .bp3-key{
background:#394b59;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.4);
color:#a7b6c2; }
.bp3-running-text blockquote, .bp3-blockquote{
border-left:solid 4px rgba(167, 182, 194, 0.5);
margin:0 0 10px;
padding:0 20px; }
.bp3-dark .bp3-running-text blockquote, .bp3-running-text .bp3-dark blockquote, .bp3-dark .bp3-blockquote{
border-color:rgba(115, 134, 148, 0.5); }
.bp3-running-text ul,
.bp3-running-text ol, .bp3-list{
margin:10px 0;
padding-left:30px; }
.bp3-running-text ul li:not(:last-child), .bp3-running-text ol li:not(:last-child), .bp3-list li:not(:last-child){
margin-bottom:5px; }
.bp3-running-text ul ol, .bp3-running-text ol ol, .bp3-list ol,
.bp3-running-text ul ul,
.bp3-running-text ol ul,
.bp3-list ul{
margin-top:5px; }
.bp3-list-unstyled{
list-style:none;
margin:0;
padding:0; }
.bp3-list-unstyled li{
padding:0; }
.bp3-rtl{
text-align:right; }
.bp3-dark{
color:#f5f8fa; }
:focus{
outline:rgba(19, 124, 189, 0.6) auto 2px;
outline-offset:2px;
-moz-outline-radius:6px; }
.bp3-focus-disabled :focus{
outline:none !important; }
.bp3-focus-disabled :focus ~ .bp3-control-indicator{
outline:none !important; }
.bp3-alert{
max-width:400px;
padding:20px; }
.bp3-alert-body{
display:-webkit-box;
display:-ms-flexbox;
display:flex; }
.bp3-alert-body .bp3-icon{
font-size:40px;
margin-right:20px;
margin-top:0; }
.bp3-alert-contents{
word-break:break-word; }
.bp3-alert-footer{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:horizontal;
-webkit-box-direction:reverse;
-ms-flex-direction:row-reverse;
flex-direction:row-reverse;
margin-top:10px; }
.bp3-alert-footer .bp3-button{
margin-left:10px; }
.bp3-breadcrumbs{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
cursor:default;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
height:30px;
list-style:none;
margin:0;
padding:0; }
.bp3-breadcrumbs > li{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
display:-webkit-box;
display:-ms-flexbox;
display:flex; }
.bp3-breadcrumbs > li::after{
background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M10.71 7.29l-4-4a1.003 1.003 0 00-1.42 1.42L8.59 8 5.3 11.29c-.19.18-.3.43-.3.71a1.003 1.003 0 001.71.71l4-4c.18-.18.29-.43.29-.71 0-.28-.11-.53-.29-.71z' fill='%235C7080'/%3e%3c/svg%3e");
content:"";
display:block;
height:16px;
margin:0 5px;
width:16px; }
.bp3-breadcrumbs > li:last-of-type::after{
display:none; }
.bp3-breadcrumb,
.bp3-breadcrumb-current,
.bp3-breadcrumbs-collapsed{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
display:-webkit-inline-box;
display:-ms-inline-flexbox;
display:inline-flex;
font-size:16px; }
.bp3-breadcrumb,
.bp3-breadcrumbs-collapsed{
color:#5c7080; }
.bp3-breadcrumb:hover{
text-decoration:none; }
.bp3-breadcrumb.bp3-disabled{
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-breadcrumb .bp3-icon{
margin-right:5px; }
.bp3-breadcrumb-current{
color:inherit;
font-weight:600; }
.bp3-breadcrumb-current .bp3-input{
font-size:inherit;
font-weight:inherit;
vertical-align:baseline; }
.bp3-breadcrumbs-collapsed{
background:#ced9e0;
border:none;
border-radius:3px;
cursor:pointer;
margin-right:2px;
padding:1px 5px;
vertical-align:text-bottom; }
.bp3-breadcrumbs-collapsed::before{
background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cg fill='%235C7080'%3e%3ccircle cx='2' cy='8.03' r='2'/%3e%3ccircle cx='14' cy='8.03' r='2'/%3e%3ccircle cx='8' cy='8.03' r='2'/%3e%3c/g%3e%3c/svg%3e") center no-repeat;
content:"";
display:block;
height:16px;
width:16px; }
.bp3-breadcrumbs-collapsed:hover{
background:#bfccd6;
color:#182026;
text-decoration:none; }
.bp3-dark .bp3-breadcrumb,
.bp3-dark .bp3-breadcrumbs-collapsed{
color:#a7b6c2; }
.bp3-dark .bp3-breadcrumbs > li::after{
color:#a7b6c2; }
.bp3-dark .bp3-breadcrumb.bp3-disabled{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-breadcrumb-current{
color:#f5f8fa; }
.bp3-dark .bp3-breadcrumbs-collapsed{
background:rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-breadcrumbs-collapsed:hover{
background:rgba(16, 22, 26, 0.6);
color:#f5f8fa; }
.bp3-button{
display:-webkit-inline-box;
display:-ms-inline-flexbox;
display:inline-flex;
-webkit-box-orient:horizontal;
-webkit-box-direction:normal;
-ms-flex-direction:row;
flex-direction:row;
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
border:none;
border-radius:3px;
cursor:pointer;
font-size:14px;
-webkit-box-pack:center;
-ms-flex-pack:center;
justify-content:center;
padding:5px 10px;
text-align:left;
vertical-align:middle;
min-height:30px;
min-width:30px; }
.bp3-button > *{
-webkit-box-flex:0;
-ms-flex-positive:0;
flex-grow:0;
-ms-flex-negative:0;
flex-shrink:0; }
.bp3-button > .bp3-fill{
-webkit-box-flex:1;
-ms-flex-positive:1;
flex-grow:1;
-ms-flex-negative:1;
flex-shrink:1; }
.bp3-button::before,
.bp3-button > *{
margin-right:7px; }
.bp3-button:empty::before,
.bp3-button > :last-child{
margin-right:0; }
.bp3-button:empty{
padding:0 !important; }
.bp3-button:disabled, .bp3-button.bp3-disabled{
cursor:not-allowed; }
.bp3-button.bp3-fill{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
width:100%; }
.bp3-button.bp3-align-right,
.bp3-align-right .bp3-button{
text-align:right; }
.bp3-button.bp3-align-left,
.bp3-align-left .bp3-button{
text-align:left; }
.bp3-button:not([class*="bp3-intent-"]){
background-color:#f5f8fa;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.8)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0));
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
color:#182026; }
.bp3-button:not([class*="bp3-intent-"]):hover{
background-clip:padding-box;
background-color:#ebf1f5;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1); }
.bp3-button:not([class*="bp3-intent-"]):active, .bp3-button:not([class*="bp3-intent-"]).bp3-active{
background-color:#d8e1e8;
background-image:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-button:not([class*="bp3-intent-"]):disabled, .bp3-button:not([class*="bp3-intent-"]).bp3-disabled{
background-color:rgba(206, 217, 224, 0.5);
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed;
outline:none; }
.bp3-button:not([class*="bp3-intent-"]):disabled.bp3-active, .bp3-button:not([class*="bp3-intent-"]):disabled.bp3-active:hover, .bp3-button:not([class*="bp3-intent-"]).bp3-disabled.bp3-active, .bp3-button:not([class*="bp3-intent-"]).bp3-disabled.bp3-active:hover{
background:rgba(206, 217, 224, 0.7); }
.bp3-button.bp3-intent-primary{
background-color:#137cbd;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.1)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
color:#ffffff; }
.bp3-button.bp3-intent-primary:hover, .bp3-button.bp3-intent-primary:active, .bp3-button.bp3-intent-primary.bp3-active{
color:#ffffff; }
.bp3-button.bp3-intent-primary:hover{
background-color:#106ba3;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2); }
.bp3-button.bp3-intent-primary:active, .bp3-button.bp3-intent-primary.bp3-active{
background-color:#0e5a8a;
background-image:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-button.bp3-intent-primary:disabled, .bp3-button.bp3-intent-primary.bp3-disabled{
background-color:rgba(19, 124, 189, 0.5);
background-image:none;
border-color:transparent;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(255, 255, 255, 0.6); }
.bp3-button.bp3-intent-success{
background-color:#0f9960;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.1)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
color:#ffffff; }
.bp3-button.bp3-intent-success:hover, .bp3-button.bp3-intent-success:active, .bp3-button.bp3-intent-success.bp3-active{
color:#ffffff; }
.bp3-button.bp3-intent-success:hover{
background-color:#0d8050;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2); }
.bp3-button.bp3-intent-success:active, .bp3-button.bp3-intent-success.bp3-active{
background-color:#0a6640;
background-image:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-button.bp3-intent-success:disabled, .bp3-button.bp3-intent-success.bp3-disabled{
background-color:rgba(15, 153, 96, 0.5);
background-image:none;
border-color:transparent;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(255, 255, 255, 0.6); }
.bp3-button.bp3-intent-warning{
background-color:#d9822b;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.1)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
color:#ffffff; }
.bp3-button.bp3-intent-warning:hover, .bp3-button.bp3-intent-warning:active, .bp3-button.bp3-intent-warning.bp3-active{
color:#ffffff; }
.bp3-button.bp3-intent-warning:hover{
background-color:#bf7326;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2); }
.bp3-button.bp3-intent-warning:active, .bp3-button.bp3-intent-warning.bp3-active{
background-color:#a66321;
background-image:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-button.bp3-intent-warning:disabled, .bp3-button.bp3-intent-warning.bp3-disabled{
background-color:rgba(217, 130, 43, 0.5);
background-image:none;
border-color:transparent;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(255, 255, 255, 0.6); }
.bp3-button.bp3-intent-danger{
background-color:#db3737;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.1)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
color:#ffffff; }
.bp3-button.bp3-intent-danger:hover, .bp3-button.bp3-intent-danger:active, .bp3-button.bp3-intent-danger.bp3-active{
color:#ffffff; }
.bp3-button.bp3-intent-danger:hover{
background-color:#c23030;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2); }
.bp3-button.bp3-intent-danger:active, .bp3-button.bp3-intent-danger.bp3-active{
background-color:#a82a2a;
background-image:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-button.bp3-intent-danger:disabled, .bp3-button.bp3-intent-danger.bp3-disabled{
background-color:rgba(219, 55, 55, 0.5);
background-image:none;
border-color:transparent;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(255, 255, 255, 0.6); }
.bp3-button[class*="bp3-intent-"] .bp3-button-spinner .bp3-spinner-head{
stroke:#ffffff; }
.bp3-button.bp3-large,
.bp3-large .bp3-button{
min-height:40px;
min-width:40px;
font-size:16px;
padding:5px 15px; }
.bp3-button.bp3-large::before,
.bp3-button.bp3-large > *,
.bp3-large .bp3-button::before,
.bp3-large .bp3-button > *{
margin-right:10px; }
.bp3-button.bp3-large:empty::before,
.bp3-button.bp3-large > :last-child,
.bp3-large .bp3-button:empty::before,
.bp3-large .bp3-button > :last-child{
margin-right:0; }
.bp3-button.bp3-small,
.bp3-small .bp3-button{
min-height:24px;
min-width:24px;
padding:0 7px; }
.bp3-button.bp3-loading{
position:relative; }
.bp3-button.bp3-loading[class*="bp3-icon-"]::before{
visibility:hidden; }
.bp3-button.bp3-loading .bp3-button-spinner{
margin:0;
position:absolute; }
.bp3-button.bp3-loading > :not(.bp3-button-spinner){
visibility:hidden; }
.bp3-button[class*="bp3-icon-"]::before{
font-family:"Icons16", sans-serif;
font-size:16px;
font-style:normal;
font-weight:400;
line-height:1;
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased;
color:#5c7080; }
.bp3-button .bp3-icon, .bp3-button .bp3-icon-standard, .bp3-button .bp3-icon-large{
color:#5c7080; }
.bp3-button .bp3-icon.bp3-align-right, .bp3-button .bp3-icon-standard.bp3-align-right, .bp3-button .bp3-icon-large.bp3-align-right{
margin-left:7px; }
.bp3-button .bp3-icon:first-child:last-child,
.bp3-button .bp3-spinner + .bp3-icon:last-child{
margin:0 -7px; }
.bp3-dark .bp3-button:not([class*="bp3-intent-"]){
background-color:#394b59;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.05)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0));
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
color:#f5f8fa; }
.bp3-dark .bp3-button:not([class*="bp3-intent-"]):hover, .bp3-dark .bp3-button:not([class*="bp3-intent-"]):active, .bp3-dark .bp3-button:not([class*="bp3-intent-"]).bp3-active{
color:#f5f8fa; }
.bp3-dark .bp3-button:not([class*="bp3-intent-"]):hover{
background-color:#30404d;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-button:not([class*="bp3-intent-"]):active, .bp3-dark .bp3-button:not([class*="bp3-intent-"]).bp3-active{
background-color:#202b33;
background-image:none;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-button:not([class*="bp3-intent-"]):disabled, .bp3-dark .bp3-button:not([class*="bp3-intent-"]).bp3-disabled{
background-color:rgba(57, 75, 89, 0.5);
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-button:not([class*="bp3-intent-"]):disabled.bp3-active, .bp3-dark .bp3-button:not([class*="bp3-intent-"]).bp3-disabled.bp3-active{
background:rgba(57, 75, 89, 0.7); }
.bp3-dark .bp3-button:not([class*="bp3-intent-"]) .bp3-button-spinner .bp3-spinner-head{
background:rgba(16, 22, 26, 0.5);
stroke:#8a9ba8; }
.bp3-dark .bp3-button:not([class*="bp3-intent-"])[class*="bp3-icon-"]::before{
color:#a7b6c2; }
.bp3-dark .bp3-button:not([class*="bp3-intent-"]) .bp3-icon, .bp3-dark .bp3-button:not([class*="bp3-intent-"]) .bp3-icon-standard, .bp3-dark .bp3-button:not([class*="bp3-intent-"]) .bp3-icon-large{
color:#a7b6c2; }
.bp3-dark .bp3-button[class*="bp3-intent-"]{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-button[class*="bp3-intent-"]:hover{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-button[class*="bp3-intent-"]:active, .bp3-dark .bp3-button[class*="bp3-intent-"].bp3-active{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-button[class*="bp3-intent-"]:disabled, .bp3-dark .bp3-button[class*="bp3-intent-"].bp3-disabled{
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(255, 255, 255, 0.3); }
.bp3-dark .bp3-button[class*="bp3-intent-"] .bp3-button-spinner .bp3-spinner-head{
stroke:#8a9ba8; }
.bp3-button:disabled::before,
.bp3-button:disabled .bp3-icon, .bp3-button:disabled .bp3-icon-standard, .bp3-button:disabled .bp3-icon-large, .bp3-button.bp3-disabled::before,
.bp3-button.bp3-disabled .bp3-icon, .bp3-button.bp3-disabled .bp3-icon-standard, .bp3-button.bp3-disabled .bp3-icon-large, .bp3-button[class*="bp3-intent-"]::before,
.bp3-button[class*="bp3-intent-"] .bp3-icon, .bp3-button[class*="bp3-intent-"] .bp3-icon-standard, .bp3-button[class*="bp3-intent-"] .bp3-icon-large{
color:inherit !important; }
.bp3-button.bp3-minimal{
background:none;
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-button.bp3-minimal:hover{
background:rgba(167, 182, 194, 0.3);
-webkit-box-shadow:none;
box-shadow:none;
color:#182026;
text-decoration:none; }
.bp3-button.bp3-minimal:active, .bp3-button.bp3-minimal.bp3-active{
background:rgba(115, 134, 148, 0.3);
-webkit-box-shadow:none;
box-shadow:none;
color:#182026; }
.bp3-button.bp3-minimal:disabled, .bp3-button.bp3-minimal:disabled:hover, .bp3-button.bp3-minimal.bp3-disabled, .bp3-button.bp3-minimal.bp3-disabled:hover{
background:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-button.bp3-minimal:disabled.bp3-active, .bp3-button.bp3-minimal:disabled:hover.bp3-active, .bp3-button.bp3-minimal.bp3-disabled.bp3-active, .bp3-button.bp3-minimal.bp3-disabled:hover.bp3-active{
background:rgba(115, 134, 148, 0.3); }
.bp3-dark .bp3-button.bp3-minimal{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:inherit; }
.bp3-dark .bp3-button.bp3-minimal:hover, .bp3-dark .bp3-button.bp3-minimal:active, .bp3-dark .bp3-button.bp3-minimal.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-button.bp3-minimal:hover{
background:rgba(138, 155, 168, 0.15); }
.bp3-dark .bp3-button.bp3-minimal:active, .bp3-dark .bp3-button.bp3-minimal.bp3-active{
background:rgba(138, 155, 168, 0.3);
color:#f5f8fa; }
.bp3-dark .bp3-button.bp3-minimal:disabled, .bp3-dark .bp3-button.bp3-minimal:disabled:hover, .bp3-dark .bp3-button.bp3-minimal.bp3-disabled, .bp3-dark .bp3-button.bp3-minimal.bp3-disabled:hover{
background:none;
color:rgba(167, 182, 194, 0.6);
cursor:not-allowed; }
.bp3-dark .bp3-button.bp3-minimal:disabled.bp3-active, .bp3-dark .bp3-button.bp3-minimal:disabled:hover.bp3-active, .bp3-dark .bp3-button.bp3-minimal.bp3-disabled.bp3-active, .bp3-dark .bp3-button.bp3-minimal.bp3-disabled:hover.bp3-active{
background:rgba(138, 155, 168, 0.3); }
.bp3-button.bp3-minimal.bp3-intent-primary{
color:#106ba3; }
.bp3-button.bp3-minimal.bp3-intent-primary:hover, .bp3-button.bp3-minimal.bp3-intent-primary:active, .bp3-button.bp3-minimal.bp3-intent-primary.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#106ba3; }
.bp3-button.bp3-minimal.bp3-intent-primary:hover{
background:rgba(19, 124, 189, 0.15);
color:#106ba3; }
.bp3-button.bp3-minimal.bp3-intent-primary:active, .bp3-button.bp3-minimal.bp3-intent-primary.bp3-active{
background:rgba(19, 124, 189, 0.3);
color:#106ba3; }
.bp3-button.bp3-minimal.bp3-intent-primary:disabled, .bp3-button.bp3-minimal.bp3-intent-primary.bp3-disabled{
background:none;
color:rgba(16, 107, 163, 0.5); }
.bp3-button.bp3-minimal.bp3-intent-primary:disabled.bp3-active, .bp3-button.bp3-minimal.bp3-intent-primary.bp3-disabled.bp3-active{
background:rgba(19, 124, 189, 0.3); }
.bp3-button.bp3-minimal.bp3-intent-primary .bp3-button-spinner .bp3-spinner-head{
stroke:#106ba3; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-primary{
color:#48aff0; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-primary:hover{
background:rgba(19, 124, 189, 0.2);
color:#48aff0; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-primary:active, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-primary.bp3-active{
background:rgba(19, 124, 189, 0.3);
color:#48aff0; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-primary:disabled, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-primary.bp3-disabled{
background:none;
color:rgba(72, 175, 240, 0.5); }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-primary:disabled.bp3-active, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-primary.bp3-disabled.bp3-active{
background:rgba(19, 124, 189, 0.3); }
.bp3-button.bp3-minimal.bp3-intent-success{
color:#0d8050; }
.bp3-button.bp3-minimal.bp3-intent-success:hover, .bp3-button.bp3-minimal.bp3-intent-success:active, .bp3-button.bp3-minimal.bp3-intent-success.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#0d8050; }
.bp3-button.bp3-minimal.bp3-intent-success:hover{
background:rgba(15, 153, 96, 0.15);
color:#0d8050; }
.bp3-button.bp3-minimal.bp3-intent-success:active, .bp3-button.bp3-minimal.bp3-intent-success.bp3-active{
background:rgba(15, 153, 96, 0.3);
color:#0d8050; }
.bp3-button.bp3-minimal.bp3-intent-success:disabled, .bp3-button.bp3-minimal.bp3-intent-success.bp3-disabled{
background:none;
color:rgba(13, 128, 80, 0.5); }
.bp3-button.bp3-minimal.bp3-intent-success:disabled.bp3-active, .bp3-button.bp3-minimal.bp3-intent-success.bp3-disabled.bp3-active{
background:rgba(15, 153, 96, 0.3); }
.bp3-button.bp3-minimal.bp3-intent-success .bp3-button-spinner .bp3-spinner-head{
stroke:#0d8050; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-success{
color:#3dcc91; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-success:hover{
background:rgba(15, 153, 96, 0.2);
color:#3dcc91; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-success:active, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-success.bp3-active{
background:rgba(15, 153, 96, 0.3);
color:#3dcc91; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-success:disabled, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-success.bp3-disabled{
background:none;
color:rgba(61, 204, 145, 0.5); }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-success:disabled.bp3-active, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-success.bp3-disabled.bp3-active{
background:rgba(15, 153, 96, 0.3); }
.bp3-button.bp3-minimal.bp3-intent-warning{
color:#bf7326; }
.bp3-button.bp3-minimal.bp3-intent-warning:hover, .bp3-button.bp3-minimal.bp3-intent-warning:active, .bp3-button.bp3-minimal.bp3-intent-warning.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#bf7326; }
.bp3-button.bp3-minimal.bp3-intent-warning:hover{
background:rgba(217, 130, 43, 0.15);
color:#bf7326; }
.bp3-button.bp3-minimal.bp3-intent-warning:active, .bp3-button.bp3-minimal.bp3-intent-warning.bp3-active{
background:rgba(217, 130, 43, 0.3);
color:#bf7326; }
.bp3-button.bp3-minimal.bp3-intent-warning:disabled, .bp3-button.bp3-minimal.bp3-intent-warning.bp3-disabled{
background:none;
color:rgba(191, 115, 38, 0.5); }
.bp3-button.bp3-minimal.bp3-intent-warning:disabled.bp3-active, .bp3-button.bp3-minimal.bp3-intent-warning.bp3-disabled.bp3-active{
background:rgba(217, 130, 43, 0.3); }
.bp3-button.bp3-minimal.bp3-intent-warning .bp3-button-spinner .bp3-spinner-head{
stroke:#bf7326; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-warning{
color:#ffb366; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-warning:hover{
background:rgba(217, 130, 43, 0.2);
color:#ffb366; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-warning:active, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-warning.bp3-active{
background:rgba(217, 130, 43, 0.3);
color:#ffb366; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-warning:disabled, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-warning.bp3-disabled{
background:none;
color:rgba(255, 179, 102, 0.5); }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-warning:disabled.bp3-active, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-warning.bp3-disabled.bp3-active{
background:rgba(217, 130, 43, 0.3); }
.bp3-button.bp3-minimal.bp3-intent-danger{
color:#c23030; }
.bp3-button.bp3-minimal.bp3-intent-danger:hover, .bp3-button.bp3-minimal.bp3-intent-danger:active, .bp3-button.bp3-minimal.bp3-intent-danger.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#c23030; }
.bp3-button.bp3-minimal.bp3-intent-danger:hover{
background:rgba(219, 55, 55, 0.15);
color:#c23030; }
.bp3-button.bp3-minimal.bp3-intent-danger:active, .bp3-button.bp3-minimal.bp3-intent-danger.bp3-active{
background:rgba(219, 55, 55, 0.3);
color:#c23030; }
.bp3-button.bp3-minimal.bp3-intent-danger:disabled, .bp3-button.bp3-minimal.bp3-intent-danger.bp3-disabled{
background:none;
color:rgba(194, 48, 48, 0.5); }
.bp3-button.bp3-minimal.bp3-intent-danger:disabled.bp3-active, .bp3-button.bp3-minimal.bp3-intent-danger.bp3-disabled.bp3-active{
background:rgba(219, 55, 55, 0.3); }
.bp3-button.bp3-minimal.bp3-intent-danger .bp3-button-spinner .bp3-spinner-head{
stroke:#c23030; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-danger{
color:#ff7373; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-danger:hover{
background:rgba(219, 55, 55, 0.2);
color:#ff7373; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-danger:active, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-danger.bp3-active{
background:rgba(219, 55, 55, 0.3);
color:#ff7373; }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-danger:disabled, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-danger.bp3-disabled{
background:none;
color:rgba(255, 115, 115, 0.5); }
.bp3-dark .bp3-button.bp3-minimal.bp3-intent-danger:disabled.bp3-active, .bp3-dark .bp3-button.bp3-minimal.bp3-intent-danger.bp3-disabled.bp3-active{
background:rgba(219, 55, 55, 0.3); }
.bp3-button.bp3-outlined{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
border:1px solid rgba(24, 32, 38, 0.2);
-webkit-box-sizing:border-box;
box-sizing:border-box; }
.bp3-button.bp3-outlined:hover{
background:rgba(167, 182, 194, 0.3);
-webkit-box-shadow:none;
box-shadow:none;
color:#182026;
text-decoration:none; }
.bp3-button.bp3-outlined:active, .bp3-button.bp3-outlined.bp3-active{
background:rgba(115, 134, 148, 0.3);
-webkit-box-shadow:none;
box-shadow:none;
color:#182026; }
.bp3-button.bp3-outlined:disabled, .bp3-button.bp3-outlined:disabled:hover, .bp3-button.bp3-outlined.bp3-disabled, .bp3-button.bp3-outlined.bp3-disabled:hover{
background:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-button.bp3-outlined:disabled.bp3-active, .bp3-button.bp3-outlined:disabled:hover.bp3-active, .bp3-button.bp3-outlined.bp3-disabled.bp3-active, .bp3-button.bp3-outlined.bp3-disabled:hover.bp3-active{
background:rgba(115, 134, 148, 0.3); }
.bp3-dark .bp3-button.bp3-outlined{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:inherit; }
.bp3-dark .bp3-button.bp3-outlined:hover, .bp3-dark .bp3-button.bp3-outlined:active, .bp3-dark .bp3-button.bp3-outlined.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-button.bp3-outlined:hover{
background:rgba(138, 155, 168, 0.15); }
.bp3-dark .bp3-button.bp3-outlined:active, .bp3-dark .bp3-button.bp3-outlined.bp3-active{
background:rgba(138, 155, 168, 0.3);
color:#f5f8fa; }
.bp3-dark .bp3-button.bp3-outlined:disabled, .bp3-dark .bp3-button.bp3-outlined:disabled:hover, .bp3-dark .bp3-button.bp3-outlined.bp3-disabled, .bp3-dark .bp3-button.bp3-outlined.bp3-disabled:hover{
background:none;
color:rgba(167, 182, 194, 0.6);
cursor:not-allowed; }
.bp3-dark .bp3-button.bp3-outlined:disabled.bp3-active, .bp3-dark .bp3-button.bp3-outlined:disabled:hover.bp3-active, .bp3-dark .bp3-button.bp3-outlined.bp3-disabled.bp3-active, .bp3-dark .bp3-button.bp3-outlined.bp3-disabled:hover.bp3-active{
background:rgba(138, 155, 168, 0.3); }
.bp3-button.bp3-outlined.bp3-intent-primary{
color:#106ba3; }
.bp3-button.bp3-outlined.bp3-intent-primary:hover, .bp3-button.bp3-outlined.bp3-intent-primary:active, .bp3-button.bp3-outlined.bp3-intent-primary.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#106ba3; }
.bp3-button.bp3-outlined.bp3-intent-primary:hover{
background:rgba(19, 124, 189, 0.15);
color:#106ba3; }
.bp3-button.bp3-outlined.bp3-intent-primary:active, .bp3-button.bp3-outlined.bp3-intent-primary.bp3-active{
background:rgba(19, 124, 189, 0.3);
color:#106ba3; }
.bp3-button.bp3-outlined.bp3-intent-primary:disabled, .bp3-button.bp3-outlined.bp3-intent-primary.bp3-disabled{
background:none;
color:rgba(16, 107, 163, 0.5); }
.bp3-button.bp3-outlined.bp3-intent-primary:disabled.bp3-active, .bp3-button.bp3-outlined.bp3-intent-primary.bp3-disabled.bp3-active{
background:rgba(19, 124, 189, 0.3); }
.bp3-button.bp3-outlined.bp3-intent-primary .bp3-button-spinner .bp3-spinner-head{
stroke:#106ba3; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary{
color:#48aff0; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary:hover{
background:rgba(19, 124, 189, 0.2);
color:#48aff0; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary:active, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary.bp3-active{
background:rgba(19, 124, 189, 0.3);
color:#48aff0; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary:disabled, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary.bp3-disabled{
background:none;
color:rgba(72, 175, 240, 0.5); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary:disabled.bp3-active, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary.bp3-disabled.bp3-active{
background:rgba(19, 124, 189, 0.3); }
.bp3-button.bp3-outlined.bp3-intent-success{
color:#0d8050; }
.bp3-button.bp3-outlined.bp3-intent-success:hover, .bp3-button.bp3-outlined.bp3-intent-success:active, .bp3-button.bp3-outlined.bp3-intent-success.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#0d8050; }
.bp3-button.bp3-outlined.bp3-intent-success:hover{
background:rgba(15, 153, 96, 0.15);
color:#0d8050; }
.bp3-button.bp3-outlined.bp3-intent-success:active, .bp3-button.bp3-outlined.bp3-intent-success.bp3-active{
background:rgba(15, 153, 96, 0.3);
color:#0d8050; }
.bp3-button.bp3-outlined.bp3-intent-success:disabled, .bp3-button.bp3-outlined.bp3-intent-success.bp3-disabled{
background:none;
color:rgba(13, 128, 80, 0.5); }
.bp3-button.bp3-outlined.bp3-intent-success:disabled.bp3-active, .bp3-button.bp3-outlined.bp3-intent-success.bp3-disabled.bp3-active{
background:rgba(15, 153, 96, 0.3); }
.bp3-button.bp3-outlined.bp3-intent-success .bp3-button-spinner .bp3-spinner-head{
stroke:#0d8050; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-success{
color:#3dcc91; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-success:hover{
background:rgba(15, 153, 96, 0.2);
color:#3dcc91; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-success:active, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-success.bp3-active{
background:rgba(15, 153, 96, 0.3);
color:#3dcc91; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-success:disabled, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-success.bp3-disabled{
background:none;
color:rgba(61, 204, 145, 0.5); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-success:disabled.bp3-active, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-success.bp3-disabled.bp3-active{
background:rgba(15, 153, 96, 0.3); }
.bp3-button.bp3-outlined.bp3-intent-warning{
color:#bf7326; }
.bp3-button.bp3-outlined.bp3-intent-warning:hover, .bp3-button.bp3-outlined.bp3-intent-warning:active, .bp3-button.bp3-outlined.bp3-intent-warning.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#bf7326; }
.bp3-button.bp3-outlined.bp3-intent-warning:hover{
background:rgba(217, 130, 43, 0.15);
color:#bf7326; }
.bp3-button.bp3-outlined.bp3-intent-warning:active, .bp3-button.bp3-outlined.bp3-intent-warning.bp3-active{
background:rgba(217, 130, 43, 0.3);
color:#bf7326; }
.bp3-button.bp3-outlined.bp3-intent-warning:disabled, .bp3-button.bp3-outlined.bp3-intent-warning.bp3-disabled{
background:none;
color:rgba(191, 115, 38, 0.5); }
.bp3-button.bp3-outlined.bp3-intent-warning:disabled.bp3-active, .bp3-button.bp3-outlined.bp3-intent-warning.bp3-disabled.bp3-active{
background:rgba(217, 130, 43, 0.3); }
.bp3-button.bp3-outlined.bp3-intent-warning .bp3-button-spinner .bp3-spinner-head{
stroke:#bf7326; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning{
color:#ffb366; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning:hover{
background:rgba(217, 130, 43, 0.2);
color:#ffb366; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning:active, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning.bp3-active{
background:rgba(217, 130, 43, 0.3);
color:#ffb366; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning:disabled, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning.bp3-disabled{
background:none;
color:rgba(255, 179, 102, 0.5); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning:disabled.bp3-active, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning.bp3-disabled.bp3-active{
background:rgba(217, 130, 43, 0.3); }
.bp3-button.bp3-outlined.bp3-intent-danger{
color:#c23030; }
.bp3-button.bp3-outlined.bp3-intent-danger:hover, .bp3-button.bp3-outlined.bp3-intent-danger:active, .bp3-button.bp3-outlined.bp3-intent-danger.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#c23030; }
.bp3-button.bp3-outlined.bp3-intent-danger:hover{
background:rgba(219, 55, 55, 0.15);
color:#c23030; }
.bp3-button.bp3-outlined.bp3-intent-danger:active, .bp3-button.bp3-outlined.bp3-intent-danger.bp3-active{
background:rgba(219, 55, 55, 0.3);
color:#c23030; }
.bp3-button.bp3-outlined.bp3-intent-danger:disabled, .bp3-button.bp3-outlined.bp3-intent-danger.bp3-disabled{
background:none;
color:rgba(194, 48, 48, 0.5); }
.bp3-button.bp3-outlined.bp3-intent-danger:disabled.bp3-active, .bp3-button.bp3-outlined.bp3-intent-danger.bp3-disabled.bp3-active{
background:rgba(219, 55, 55, 0.3); }
.bp3-button.bp3-outlined.bp3-intent-danger .bp3-button-spinner .bp3-spinner-head{
stroke:#c23030; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger{
color:#ff7373; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger:hover{
background:rgba(219, 55, 55, 0.2);
color:#ff7373; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger:active, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger.bp3-active{
background:rgba(219, 55, 55, 0.3);
color:#ff7373; }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger:disabled, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger.bp3-disabled{
background:none;
color:rgba(255, 115, 115, 0.5); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger:disabled.bp3-active, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger.bp3-disabled.bp3-active{
background:rgba(219, 55, 55, 0.3); }
.bp3-button.bp3-outlined:disabled, .bp3-button.bp3-outlined.bp3-disabled, .bp3-button.bp3-outlined:disabled:hover, .bp3-button.bp3-outlined.bp3-disabled:hover{
border-color:rgba(92, 112, 128, 0.1); }
.bp3-dark .bp3-button.bp3-outlined{
border-color:rgba(255, 255, 255, 0.4); }
.bp3-dark .bp3-button.bp3-outlined:disabled, .bp3-dark .bp3-button.bp3-outlined:disabled:hover, .bp3-dark .bp3-button.bp3-outlined.bp3-disabled, .bp3-dark .bp3-button.bp3-outlined.bp3-disabled:hover{
border-color:rgba(255, 255, 255, 0.2); }
.bp3-button.bp3-outlined.bp3-intent-primary{
border-color:rgba(16, 107, 163, 0.6); }
.bp3-button.bp3-outlined.bp3-intent-primary:disabled, .bp3-button.bp3-outlined.bp3-intent-primary.bp3-disabled{
border-color:rgba(16, 107, 163, 0.2); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary{
border-color:rgba(72, 175, 240, 0.6); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary:disabled, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-primary.bp3-disabled{
border-color:rgba(72, 175, 240, 0.2); }
.bp3-button.bp3-outlined.bp3-intent-success{
border-color:rgba(13, 128, 80, 0.6); }
.bp3-button.bp3-outlined.bp3-intent-success:disabled, .bp3-button.bp3-outlined.bp3-intent-success.bp3-disabled{
border-color:rgba(13, 128, 80, 0.2); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-success{
border-color:rgba(61, 204, 145, 0.6); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-success:disabled, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-success.bp3-disabled{
border-color:rgba(61, 204, 145, 0.2); }
.bp3-button.bp3-outlined.bp3-intent-warning{
border-color:rgba(191, 115, 38, 0.6); }
.bp3-button.bp3-outlined.bp3-intent-warning:disabled, .bp3-button.bp3-outlined.bp3-intent-warning.bp3-disabled{
border-color:rgba(191, 115, 38, 0.2); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning{
border-color:rgba(255, 179, 102, 0.6); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning:disabled, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-warning.bp3-disabled{
border-color:rgba(255, 179, 102, 0.2); }
.bp3-button.bp3-outlined.bp3-intent-danger{
border-color:rgba(194, 48, 48, 0.6); }
.bp3-button.bp3-outlined.bp3-intent-danger:disabled, .bp3-button.bp3-outlined.bp3-intent-danger.bp3-disabled{
border-color:rgba(194, 48, 48, 0.2); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger{
border-color:rgba(255, 115, 115, 0.6); }
.bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger:disabled, .bp3-dark .bp3-button.bp3-outlined.bp3-intent-danger.bp3-disabled{
border-color:rgba(255, 115, 115, 0.2); }
a.bp3-button{
text-align:center;
text-decoration:none;
-webkit-transition:none;
transition:none; }
a.bp3-button, a.bp3-button:hover, a.bp3-button:active{
color:#182026; }
a.bp3-button.bp3-disabled{
color:rgba(92, 112, 128, 0.6); }
.bp3-button-text{
-webkit-box-flex:0;
-ms-flex:0 1 auto;
flex:0 1 auto; }
.bp3-button.bp3-align-left .bp3-button-text, .bp3-button.bp3-align-right .bp3-button-text,
.bp3-button-group.bp3-align-left .bp3-button-text,
.bp3-button-group.bp3-align-right .bp3-button-text{
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto; }
.bp3-button-group{
display:-webkit-inline-box;
display:-ms-inline-flexbox;
display:inline-flex; }
.bp3-button-group .bp3-button{
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
position:relative;
z-index:4; }
.bp3-button-group .bp3-button:focus{
z-index:5; }
.bp3-button-group .bp3-button:hover{
z-index:6; }
.bp3-button-group .bp3-button:active, .bp3-button-group .bp3-button.bp3-active{
z-index:7; }
.bp3-button-group .bp3-button:disabled, .bp3-button-group .bp3-button.bp3-disabled{
z-index:3; }
.bp3-button-group .bp3-button[class*="bp3-intent-"]{
z-index:9; }
.bp3-button-group .bp3-button[class*="bp3-intent-"]:focus{
z-index:10; }
.bp3-button-group .bp3-button[class*="bp3-intent-"]:hover{
z-index:11; }
.bp3-button-group .bp3-button[class*="bp3-intent-"]:active, .bp3-button-group .bp3-button[class*="bp3-intent-"].bp3-active{
z-index:12; }
.bp3-button-group .bp3-button[class*="bp3-intent-"]:disabled, .bp3-button-group .bp3-button[class*="bp3-intent-"].bp3-disabled{
z-index:8; }
.bp3-button-group:not(.bp3-minimal) > .bp3-popover-wrapper:not(:first-child) .bp3-button,
.bp3-button-group:not(.bp3-minimal) > .bp3-button:not(:first-child){
border-bottom-left-radius:0;
border-top-left-radius:0; }
.bp3-button-group:not(.bp3-minimal) > .bp3-popover-wrapper:not(:last-child) .bp3-button,
.bp3-button-group:not(.bp3-minimal) > .bp3-button:not(:last-child){
border-bottom-right-radius:0;
border-top-right-radius:0;
margin-right:-1px; }
.bp3-button-group.bp3-minimal .bp3-button{
background:none;
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-button-group.bp3-minimal .bp3-button:hover{
background:rgba(167, 182, 194, 0.3);
-webkit-box-shadow:none;
box-shadow:none;
color:#182026;
text-decoration:none; }
.bp3-button-group.bp3-minimal .bp3-button:active, .bp3-button-group.bp3-minimal .bp3-button.bp3-active{
background:rgba(115, 134, 148, 0.3);
-webkit-box-shadow:none;
box-shadow:none;
color:#182026; }
.bp3-button-group.bp3-minimal .bp3-button:disabled, .bp3-button-group.bp3-minimal .bp3-button:disabled:hover, .bp3-button-group.bp3-minimal .bp3-button.bp3-disabled, .bp3-button-group.bp3-minimal .bp3-button.bp3-disabled:hover{
background:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-button-group.bp3-minimal .bp3-button:disabled.bp3-active, .bp3-button-group.bp3-minimal .bp3-button:disabled:hover.bp3-active, .bp3-button-group.bp3-minimal .bp3-button.bp3-disabled.bp3-active, .bp3-button-group.bp3-minimal .bp3-button.bp3-disabled:hover.bp3-active{
background:rgba(115, 134, 148, 0.3); }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:inherit; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button:hover, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button:active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button:hover{
background:rgba(138, 155, 168, 0.15); }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button:active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-active{
background:rgba(138, 155, 168, 0.3);
color:#f5f8fa; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button:disabled, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button:disabled:hover, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-disabled, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-disabled:hover{
background:none;
color:rgba(167, 182, 194, 0.6);
cursor:not-allowed; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button:disabled.bp3-active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button:disabled:hover.bp3-active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-disabled.bp3-active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-disabled:hover.bp3-active{
background:rgba(138, 155, 168, 0.3); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary{
color:#106ba3; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary:hover, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary:active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#106ba3; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary:hover{
background:rgba(19, 124, 189, 0.15);
color:#106ba3; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary:active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary.bp3-active{
background:rgba(19, 124, 189, 0.3);
color:#106ba3; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary:disabled, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary.bp3-disabled{
background:none;
color:rgba(16, 107, 163, 0.5); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary:disabled.bp3-active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary.bp3-disabled.bp3-active{
background:rgba(19, 124, 189, 0.3); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary .bp3-button-spinner .bp3-spinner-head{
stroke:#106ba3; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary{
color:#48aff0; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary:hover{
background:rgba(19, 124, 189, 0.2);
color:#48aff0; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary:active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary.bp3-active{
background:rgba(19, 124, 189, 0.3);
color:#48aff0; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary:disabled, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary.bp3-disabled{
background:none;
color:rgba(72, 175, 240, 0.5); }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary:disabled.bp3-active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-primary.bp3-disabled.bp3-active{
background:rgba(19, 124, 189, 0.3); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success{
color:#0d8050; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success:hover, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success:active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#0d8050; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success:hover{
background:rgba(15, 153, 96, 0.15);
color:#0d8050; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success:active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success.bp3-active{
background:rgba(15, 153, 96, 0.3);
color:#0d8050; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success:disabled, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success.bp3-disabled{
background:none;
color:rgba(13, 128, 80, 0.5); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success:disabled.bp3-active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success.bp3-disabled.bp3-active{
background:rgba(15, 153, 96, 0.3); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success .bp3-button-spinner .bp3-spinner-head{
stroke:#0d8050; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success{
color:#3dcc91; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success:hover{
background:rgba(15, 153, 96, 0.2);
color:#3dcc91; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success:active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success.bp3-active{
background:rgba(15, 153, 96, 0.3);
color:#3dcc91; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success:disabled, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success.bp3-disabled{
background:none;
color:rgba(61, 204, 145, 0.5); }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success:disabled.bp3-active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-success.bp3-disabled.bp3-active{
background:rgba(15, 153, 96, 0.3); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning{
color:#bf7326; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning:hover, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning:active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#bf7326; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning:hover{
background:rgba(217, 130, 43, 0.15);
color:#bf7326; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning:active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning.bp3-active{
background:rgba(217, 130, 43, 0.3);
color:#bf7326; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning:disabled, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning.bp3-disabled{
background:none;
color:rgba(191, 115, 38, 0.5); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning:disabled.bp3-active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning.bp3-disabled.bp3-active{
background:rgba(217, 130, 43, 0.3); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning .bp3-button-spinner .bp3-spinner-head{
stroke:#bf7326; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning{
color:#ffb366; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning:hover{
background:rgba(217, 130, 43, 0.2);
color:#ffb366; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning:active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning.bp3-active{
background:rgba(217, 130, 43, 0.3);
color:#ffb366; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning:disabled, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning.bp3-disabled{
background:none;
color:rgba(255, 179, 102, 0.5); }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning:disabled.bp3-active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-warning.bp3-disabled.bp3-active{
background:rgba(217, 130, 43, 0.3); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger{
color:#c23030; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger:hover, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger:active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#c23030; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger:hover{
background:rgba(219, 55, 55, 0.15);
color:#c23030; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger:active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger.bp3-active{
background:rgba(219, 55, 55, 0.3);
color:#c23030; }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger:disabled, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger.bp3-disabled{
background:none;
color:rgba(194, 48, 48, 0.5); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger:disabled.bp3-active, .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger.bp3-disabled.bp3-active{
background:rgba(219, 55, 55, 0.3); }
.bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger .bp3-button-spinner .bp3-spinner-head{
stroke:#c23030; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger{
color:#ff7373; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger:hover{
background:rgba(219, 55, 55, 0.2);
color:#ff7373; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger:active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger.bp3-active{
background:rgba(219, 55, 55, 0.3);
color:#ff7373; }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger:disabled, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger.bp3-disabled{
background:none;
color:rgba(255, 115, 115, 0.5); }
.bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger:disabled.bp3-active, .bp3-dark .bp3-button-group.bp3-minimal .bp3-button.bp3-intent-danger.bp3-disabled.bp3-active{
background:rgba(219, 55, 55, 0.3); }
.bp3-button-group .bp3-popover-wrapper,
.bp3-button-group .bp3-popover-target{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto; }
.bp3-button-group.bp3-fill{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
width:100%; }
.bp3-button-group .bp3-button.bp3-fill,
.bp3-button-group.bp3-fill .bp3-button:not(.bp3-fixed){
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto; }
.bp3-button-group.bp3-vertical{
-webkit-box-align:stretch;
-ms-flex-align:stretch;
align-items:stretch;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column;
vertical-align:top; }
.bp3-button-group.bp3-vertical.bp3-fill{
height:100%;
width:unset; }
.bp3-button-group.bp3-vertical .bp3-button{
margin-right:0 !important;
width:100%; }
.bp3-button-group.bp3-vertical:not(.bp3-minimal) > .bp3-popover-wrapper:first-child .bp3-button,
.bp3-button-group.bp3-vertical:not(.bp3-minimal) > .bp3-button:first-child{
border-radius:3px 3px 0 0; }
.bp3-button-group.bp3-vertical:not(.bp3-minimal) > .bp3-popover-wrapper:last-child .bp3-button,
.bp3-button-group.bp3-vertical:not(.bp3-minimal) > .bp3-button:last-child{
border-radius:0 0 3px 3px; }
.bp3-button-group.bp3-vertical:not(.bp3-minimal) > .bp3-popover-wrapper:not(:last-child) .bp3-button,
.bp3-button-group.bp3-vertical:not(.bp3-minimal) > .bp3-button:not(:last-child){
margin-bottom:-1px; }
.bp3-button-group.bp3-align-left .bp3-button{
text-align:left; }
.bp3-dark .bp3-button-group:not(.bp3-minimal) > .bp3-popover-wrapper:not(:last-child) .bp3-button,
.bp3-dark .bp3-button-group:not(.bp3-minimal) > .bp3-button:not(:last-child){
margin-right:1px; }
.bp3-dark .bp3-button-group.bp3-vertical > .bp3-popover-wrapper:not(:last-child) .bp3-button,
.bp3-dark .bp3-button-group.bp3-vertical > .bp3-button:not(:last-child){
margin-bottom:1px; }
.bp3-callout{
font-size:14px;
line-height:1.5;
background-color:rgba(138, 155, 168, 0.15);
border-radius:3px;
padding:10px 12px 9px;
position:relative;
width:100%; }
.bp3-callout[class*="bp3-icon-"]{
padding-left:40px; }
.bp3-callout[class*="bp3-icon-"]::before{
font-family:"Icons20", sans-serif;
font-size:20px;
font-style:normal;
font-weight:400;
line-height:1;
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased;
color:#5c7080;
left:10px;
position:absolute;
top:10px; }
.bp3-callout.bp3-callout-icon{
padding-left:40px; }
.bp3-callout.bp3-callout-icon > .bp3-icon:first-child{
color:#5c7080;
left:10px;
position:absolute;
top:10px; }
.bp3-callout .bp3-heading{
line-height:20px;
margin-bottom:5px;
margin-top:0; }
.bp3-callout .bp3-heading:last-child{
margin-bottom:0; }
.bp3-dark .bp3-callout{
background-color:rgba(138, 155, 168, 0.2); }
.bp3-dark .bp3-callout[class*="bp3-icon-"]::before{
color:#a7b6c2; }
.bp3-callout.bp3-intent-primary{
background-color:rgba(19, 124, 189, 0.15); }
.bp3-callout.bp3-intent-primary[class*="bp3-icon-"]::before,
.bp3-callout.bp3-intent-primary > .bp3-icon:first-child,
.bp3-callout.bp3-intent-primary .bp3-heading{
color:#106ba3; }
.bp3-dark .bp3-callout.bp3-intent-primary{
background-color:rgba(19, 124, 189, 0.25); }
.bp3-dark .bp3-callout.bp3-intent-primary[class*="bp3-icon-"]::before,
.bp3-dark .bp3-callout.bp3-intent-primary > .bp3-icon:first-child,
.bp3-dark .bp3-callout.bp3-intent-primary .bp3-heading{
color:#48aff0; }
.bp3-callout.bp3-intent-success{
background-color:rgba(15, 153, 96, 0.15); }
.bp3-callout.bp3-intent-success[class*="bp3-icon-"]::before,
.bp3-callout.bp3-intent-success > .bp3-icon:first-child,
.bp3-callout.bp3-intent-success .bp3-heading{
color:#0d8050; }
.bp3-dark .bp3-callout.bp3-intent-success{
background-color:rgba(15, 153, 96, 0.25); }
.bp3-dark .bp3-callout.bp3-intent-success[class*="bp3-icon-"]::before,
.bp3-dark .bp3-callout.bp3-intent-success > .bp3-icon:first-child,
.bp3-dark .bp3-callout.bp3-intent-success .bp3-heading{
color:#3dcc91; }
.bp3-callout.bp3-intent-warning{
background-color:rgba(217, 130, 43, 0.15); }
.bp3-callout.bp3-intent-warning[class*="bp3-icon-"]::before,
.bp3-callout.bp3-intent-warning > .bp3-icon:first-child,
.bp3-callout.bp3-intent-warning .bp3-heading{
color:#bf7326; }
.bp3-dark .bp3-callout.bp3-intent-warning{
background-color:rgba(217, 130, 43, 0.25); }
.bp3-dark .bp3-callout.bp3-intent-warning[class*="bp3-icon-"]::before,
.bp3-dark .bp3-callout.bp3-intent-warning > .bp3-icon:first-child,
.bp3-dark .bp3-callout.bp3-intent-warning .bp3-heading{
color:#ffb366; }
.bp3-callout.bp3-intent-danger{
background-color:rgba(219, 55, 55, 0.15); }
.bp3-callout.bp3-intent-danger[class*="bp3-icon-"]::before,
.bp3-callout.bp3-intent-danger > .bp3-icon:first-child,
.bp3-callout.bp3-intent-danger .bp3-heading{
color:#c23030; }
.bp3-dark .bp3-callout.bp3-intent-danger{
background-color:rgba(219, 55, 55, 0.25); }
.bp3-dark .bp3-callout.bp3-intent-danger[class*="bp3-icon-"]::before,
.bp3-dark .bp3-callout.bp3-intent-danger > .bp3-icon:first-child,
.bp3-dark .bp3-callout.bp3-intent-danger .bp3-heading{
color:#ff7373; }
.bp3-running-text .bp3-callout{
margin:20px 0; }
.bp3-card{
background-color:#ffffff;
border-radius:3px;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.15), 0 0 0 rgba(16, 22, 26, 0), 0 0 0 rgba(16, 22, 26, 0);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.15), 0 0 0 rgba(16, 22, 26, 0), 0 0 0 rgba(16, 22, 26, 0);
padding:20px;
-webkit-transition:-webkit-transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-box-shadow 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:-webkit-transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-box-shadow 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9), box-shadow 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9), box-shadow 200ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-box-shadow 200ms cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-card.bp3-dark,
.bp3-dark .bp3-card{
background-color:#30404d;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4), 0 0 0 rgba(16, 22, 26, 0), 0 0 0 rgba(16, 22, 26, 0);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4), 0 0 0 rgba(16, 22, 26, 0), 0 0 0 rgba(16, 22, 26, 0); }
.bp3-elevation-0{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.15), 0 0 0 rgba(16, 22, 26, 0), 0 0 0 rgba(16, 22, 26, 0);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.15), 0 0 0 rgba(16, 22, 26, 0), 0 0 0 rgba(16, 22, 26, 0); }
.bp3-elevation-0.bp3-dark,
.bp3-dark .bp3-elevation-0{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4), 0 0 0 rgba(16, 22, 26, 0), 0 0 0 rgba(16, 22, 26, 0);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4), 0 0 0 rgba(16, 22, 26, 0), 0 0 0 rgba(16, 22, 26, 0); }
.bp3-elevation-1{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-elevation-1.bp3-dark,
.bp3-dark .bp3-elevation-1{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-elevation-2{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 1px 1px rgba(16, 22, 26, 0.2), 0 2px 6px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 1px 1px rgba(16, 22, 26, 0.2), 0 2px 6px rgba(16, 22, 26, 0.2); }
.bp3-elevation-2.bp3-dark,
.bp3-dark .bp3-elevation-2{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 1px 1px rgba(16, 22, 26, 0.4), 0 2px 6px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 1px 1px rgba(16, 22, 26, 0.4), 0 2px 6px rgba(16, 22, 26, 0.4); }
.bp3-elevation-3{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2); }
.bp3-elevation-3.bp3-dark,
.bp3-dark .bp3-elevation-3{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4); }
.bp3-elevation-4{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 4px 8px rgba(16, 22, 26, 0.2), 0 18px 46px 6px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 4px 8px rgba(16, 22, 26, 0.2), 0 18px 46px 6px rgba(16, 22, 26, 0.2); }
.bp3-elevation-4.bp3-dark,
.bp3-dark .bp3-elevation-4{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 4px 8px rgba(16, 22, 26, 0.4), 0 18px 46px 6px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 4px 8px rgba(16, 22, 26, 0.4), 0 18px 46px 6px rgba(16, 22, 26, 0.4); }
.bp3-card.bp3-interactive:hover{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
cursor:pointer; }
.bp3-card.bp3-interactive:hover.bp3-dark,
.bp3-dark .bp3-card.bp3-interactive:hover{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4); }
.bp3-card.bp3-interactive:active{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2);
opacity:0.9;
-webkit-transition-duration:0;
transition-duration:0; }
.bp3-card.bp3-interactive:active.bp3-dark,
.bp3-dark .bp3-card.bp3-interactive:active{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-collapse{
height:0;
overflow-y:hidden;
-webkit-transition:height 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:height 200ms cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-collapse .bp3-collapse-body{
-webkit-transition:-webkit-transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:-webkit-transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-collapse .bp3-collapse-body[aria-hidden="true"]{
display:none; }
.bp3-context-menu .bp3-popover-target{
display:block; }
.bp3-context-menu-popover-target{
position:fixed; }
.bp3-divider{
border-bottom:1px solid rgba(16, 22, 26, 0.15);
border-right:1px solid rgba(16, 22, 26, 0.15);
margin:5px; }
.bp3-dark .bp3-divider{
border-color:rgba(16, 22, 26, 0.4); }
.bp3-dialog-container{
opacity:1;
-webkit-transform:scale(1);
transform:scale(1);
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack:center;
-ms-flex-pack:center;
justify-content:center;
min-height:100%;
pointer-events:none;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none;
width:100%; }
.bp3-dialog-container.bp3-overlay-enter > .bp3-dialog, .bp3-dialog-container.bp3-overlay-appear > .bp3-dialog{
opacity:0;
-webkit-transform:scale(0.5);
transform:scale(0.5); }
.bp3-dialog-container.bp3-overlay-enter-active > .bp3-dialog, .bp3-dialog-container.bp3-overlay-appear-active > .bp3-dialog{
opacity:1;
-webkit-transform:scale(1);
transform:scale(1);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:300ms;
transition-duration:300ms;
-webkit-transition-property:opacity, -webkit-transform;
transition-property:opacity, -webkit-transform;
transition-property:opacity, transform;
transition-property:opacity, transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11);
transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11); }
.bp3-dialog-container.bp3-overlay-exit > .bp3-dialog{
opacity:1;
-webkit-transform:scale(1);
transform:scale(1); }
.bp3-dialog-container.bp3-overlay-exit-active > .bp3-dialog{
opacity:0;
-webkit-transform:scale(0.5);
transform:scale(0.5);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:300ms;
transition-duration:300ms;
-webkit-transition-property:opacity, -webkit-transform;
transition-property:opacity, -webkit-transform;
transition-property:opacity, transform;
transition-property:opacity, transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11);
transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11); }
.bp3-dialog{
background:#ebf1f5;
border-radius:6px;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 4px 8px rgba(16, 22, 26, 0.2), 0 18px 46px 6px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 4px 8px rgba(16, 22, 26, 0.2), 0 18px 46px 6px rgba(16, 22, 26, 0.2);
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column;
margin:30px 0;
padding-bottom:20px;
pointer-events:all;
-webkit-user-select:text;
-moz-user-select:text;
-ms-user-select:text;
user-select:text;
width:500px; }
.bp3-dialog:focus{
outline:0; }
.bp3-dialog.bp3-dark,
.bp3-dark .bp3-dialog{
background:#293742;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 4px 8px rgba(16, 22, 26, 0.4), 0 18px 46px 6px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 4px 8px rgba(16, 22, 26, 0.4), 0 18px 46px 6px rgba(16, 22, 26, 0.4);
color:#f5f8fa; }
.bp3-dialog-header{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
background:#ffffff;
border-radius:6px 6px 0 0;
-webkit-box-shadow:0 1px 0 rgba(16, 22, 26, 0.15);
box-shadow:0 1px 0 rgba(16, 22, 26, 0.15);
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
min-height:40px;
padding-left:20px;
padding-right:5px;
z-index:30; }
.bp3-dialog-header .bp3-icon-large,
.bp3-dialog-header .bp3-icon{
color:#5c7080;
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
margin-right:10px; }
.bp3-dialog-header .bp3-heading{
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
word-wrap:normal;
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto;
line-height:inherit;
margin:0; }
.bp3-dialog-header .bp3-heading:last-child{
margin-right:20px; }
.bp3-dark .bp3-dialog-header{
background:#30404d;
-webkit-box-shadow:0 1px 0 rgba(16, 22, 26, 0.4);
box-shadow:0 1px 0 rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-dialog-header .bp3-icon-large,
.bp3-dark .bp3-dialog-header .bp3-icon{
color:#a7b6c2; }
.bp3-dialog-body{
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto;
line-height:18px;
margin:20px; }
.bp3-dialog-footer{
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
margin:0 20px; }
.bp3-dialog-footer-actions{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack:end;
-ms-flex-pack:end;
justify-content:flex-end; }
.bp3-dialog-footer-actions .bp3-button{
margin-left:10px; }
.bp3-multistep-dialog-panels{
display:-webkit-box;
display:-ms-flexbox;
display:flex; }
.bp3-multistep-dialog-left-panel{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-flex:1;
-ms-flex:1;
flex:1;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column; }
.bp3-dark .bp3-multistep-dialog-left-panel{
background:#202b33; }
.bp3-multistep-dialog-right-panel{
background-color:#f5f8fa;
border-left:1px solid rgba(16, 22, 26, 0.15);
border-radius:0 0 6px 0;
-webkit-box-flex:3;
-ms-flex:3;
flex:3;
min-width:0; }
.bp3-dark .bp3-multistep-dialog-right-panel{
background-color:#293742;
border-left:1px solid rgba(16, 22, 26, 0.4); }
.bp3-multistep-dialog-footer{
background-color:#ffffff;
border-radius:0 0 6px 0;
border-top:1px solid rgba(16, 22, 26, 0.15);
padding:10px; }
.bp3-dark .bp3-multistep-dialog-footer{
background:#30404d;
border-top:1px solid rgba(16, 22, 26, 0.4); }
.bp3-dialog-step-container{
background-color:#f5f8fa;
border-bottom:1px solid rgba(16, 22, 26, 0.15); }
.bp3-dark .bp3-dialog-step-container{
background:#293742;
border-bottom:1px solid rgba(16, 22, 26, 0.4); }
.bp3-dialog-step-container.bp3-dialog-step-viewed{
background-color:#ffffff; }
.bp3-dark .bp3-dialog-step-container.bp3-dialog-step-viewed{
background:#30404d; }
.bp3-dialog-step{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
background-color:#f5f8fa;
border-radius:6px;
cursor:not-allowed;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
margin:4px;
padding:6px 14px; }
.bp3-dark .bp3-dialog-step{
background:#293742; }
.bp3-dialog-step-viewed .bp3-dialog-step{
background-color:#ffffff;
cursor:pointer; }
.bp3-dark .bp3-dialog-step-viewed .bp3-dialog-step{
background:#30404d; }
.bp3-dialog-step:hover{
background-color:#f5f8fa; }
.bp3-dark .bp3-dialog-step:hover{
background:#293742; }
.bp3-dialog-step-icon{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
background-color:rgba(92, 112, 128, 0.6);
border-radius:50%;
color:#ffffff;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
height:25px;
-webkit-box-pack:center;
-ms-flex-pack:center;
justify-content:center;
width:25px; }
.bp3-dark .bp3-dialog-step-icon{
background-color:rgba(167, 182, 194, 0.6); }
.bp3-active.bp3-dialog-step-viewed .bp3-dialog-step-icon{
background-color:#2b95d6; }
.bp3-dialog-step-viewed .bp3-dialog-step-icon{
background-color:#8a9ba8; }
.bp3-dialog-step-title{
color:rgba(92, 112, 128, 0.6);
-webkit-box-flex:1;
-ms-flex:1;
flex:1;
padding-left:10px; }
.bp3-dark .bp3-dialog-step-title{
color:rgba(167, 182, 194, 0.6); }
.bp3-active.bp3-dialog-step-viewed .bp3-dialog-step-title{
color:#2b95d6; }
.bp3-dialog-step-viewed:not(.bp3-active) .bp3-dialog-step-title{
color:#182026; }
.bp3-dark .bp3-dialog-step-viewed:not(.bp3-active) .bp3-dialog-step-title{
color:#f5f8fa; }
.bp3-drawer{
background:#ffffff;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 4px 8px rgba(16, 22, 26, 0.2), 0 18px 46px 6px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 4px 8px rgba(16, 22, 26, 0.2), 0 18px 46px 6px rgba(16, 22, 26, 0.2);
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column;
margin:0;
padding:0; }
.bp3-drawer:focus{
outline:0; }
.bp3-drawer.bp3-position-top{
height:50%;
left:0;
right:0;
top:0; }
.bp3-drawer.bp3-position-top.bp3-overlay-enter, .bp3-drawer.bp3-position-top.bp3-overlay-appear{
-webkit-transform:translateY(-100%);
transform:translateY(-100%); }
.bp3-drawer.bp3-position-top.bp3-overlay-enter-active, .bp3-drawer.bp3-position-top.bp3-overlay-appear-active{
-webkit-transform:translateY(0);
transform:translateY(0);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer.bp3-position-top.bp3-overlay-exit{
-webkit-transform:translateY(0);
transform:translateY(0); }
.bp3-drawer.bp3-position-top.bp3-overlay-exit-active{
-webkit-transform:translateY(-100%);
transform:translateY(-100%);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer.bp3-position-bottom{
bottom:0;
height:50%;
left:0;
right:0; }
.bp3-drawer.bp3-position-bottom.bp3-overlay-enter, .bp3-drawer.bp3-position-bottom.bp3-overlay-appear{
-webkit-transform:translateY(100%);
transform:translateY(100%); }
.bp3-drawer.bp3-position-bottom.bp3-overlay-enter-active, .bp3-drawer.bp3-position-bottom.bp3-overlay-appear-active{
-webkit-transform:translateY(0);
transform:translateY(0);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer.bp3-position-bottom.bp3-overlay-exit{
-webkit-transform:translateY(0);
transform:translateY(0); }
.bp3-drawer.bp3-position-bottom.bp3-overlay-exit-active{
-webkit-transform:translateY(100%);
transform:translateY(100%);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer.bp3-position-left{
bottom:0;
left:0;
top:0;
width:50%; }
.bp3-drawer.bp3-position-left.bp3-overlay-enter, .bp3-drawer.bp3-position-left.bp3-overlay-appear{
-webkit-transform:translateX(-100%);
transform:translateX(-100%); }
.bp3-drawer.bp3-position-left.bp3-overlay-enter-active, .bp3-drawer.bp3-position-left.bp3-overlay-appear-active{
-webkit-transform:translateX(0);
transform:translateX(0);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer.bp3-position-left.bp3-overlay-exit{
-webkit-transform:translateX(0);
transform:translateX(0); }
.bp3-drawer.bp3-position-left.bp3-overlay-exit-active{
-webkit-transform:translateX(-100%);
transform:translateX(-100%);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer.bp3-position-right{
bottom:0;
right:0;
top:0;
width:50%; }
.bp3-drawer.bp3-position-right.bp3-overlay-enter, .bp3-drawer.bp3-position-right.bp3-overlay-appear{
-webkit-transform:translateX(100%);
transform:translateX(100%); }
.bp3-drawer.bp3-position-right.bp3-overlay-enter-active, .bp3-drawer.bp3-position-right.bp3-overlay-appear-active{
-webkit-transform:translateX(0);
transform:translateX(0);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer.bp3-position-right.bp3-overlay-exit{
-webkit-transform:translateX(0);
transform:translateX(0); }
.bp3-drawer.bp3-position-right.bp3-overlay-exit-active{
-webkit-transform:translateX(100%);
transform:translateX(100%);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right):not(.bp3-vertical){
bottom:0;
right:0;
top:0;
width:50%; }
.bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right):not(.bp3-vertical).bp3-overlay-enter, .bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right):not(.bp3-vertical).bp3-overlay-appear{
-webkit-transform:translateX(100%);
transform:translateX(100%); }
.bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right):not(.bp3-vertical).bp3-overlay-enter-active, .bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right):not(.bp3-vertical).bp3-overlay-appear-active{
-webkit-transform:translateX(0);
transform:translateX(0);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right):not(.bp3-vertical).bp3-overlay-exit{
-webkit-transform:translateX(0);
transform:translateX(0); }
.bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right):not(.bp3-vertical).bp3-overlay-exit-active{
-webkit-transform:translateX(100%);
transform:translateX(100%);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right).bp3-vertical{
bottom:0;
height:50%;
left:0;
right:0; }
.bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right).bp3-vertical.bp3-overlay-enter, .bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right).bp3-vertical.bp3-overlay-appear{
-webkit-transform:translateY(100%);
transform:translateY(100%); }
.bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right).bp3-vertical.bp3-overlay-enter-active, .bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right).bp3-vertical.bp3-overlay-appear-active{
-webkit-transform:translateY(0);
transform:translateY(0);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right).bp3-vertical.bp3-overlay-exit{
-webkit-transform:translateY(0);
transform:translateY(0); }
.bp3-drawer:not(.bp3-position-top):not(.bp3-position-bottom):not(.bp3-position-left):not(
.bp3-position-right).bp3-vertical.bp3-overlay-exit-active{
-webkit-transform:translateY(100%);
transform:translateY(100%);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-drawer.bp3-dark,
.bp3-dark .bp3-drawer{
background:#30404d;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 4px 8px rgba(16, 22, 26, 0.4), 0 18px 46px 6px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 4px 8px rgba(16, 22, 26, 0.4), 0 18px 46px 6px rgba(16, 22, 26, 0.4);
color:#f5f8fa; }
.bp3-drawer-header{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
border-radius:0;
-webkit-box-shadow:0 1px 0 rgba(16, 22, 26, 0.15);
box-shadow:0 1px 0 rgba(16, 22, 26, 0.15);
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
min-height:40px;
padding:5px;
padding-left:20px;
position:relative; }
.bp3-drawer-header .bp3-icon-large,
.bp3-drawer-header .bp3-icon{
color:#5c7080;
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
margin-right:10px; }
.bp3-drawer-header .bp3-heading{
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
word-wrap:normal;
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto;
line-height:inherit;
margin:0; }
.bp3-drawer-header .bp3-heading:last-child{
margin-right:20px; }
.bp3-dark .bp3-drawer-header{
-webkit-box-shadow:0 1px 0 rgba(16, 22, 26, 0.4);
box-shadow:0 1px 0 rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-drawer-header .bp3-icon-large,
.bp3-dark .bp3-drawer-header .bp3-icon{
color:#a7b6c2; }
.bp3-drawer-body{
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto;
line-height:18px;
overflow:auto; }
.bp3-drawer-footer{
-webkit-box-shadow:inset 0 1px 0 rgba(16, 22, 26, 0.15);
box-shadow:inset 0 1px 0 rgba(16, 22, 26, 0.15);
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
padding:10px 20px;
position:relative; }
.bp3-dark .bp3-drawer-footer{
-webkit-box-shadow:inset 0 1px 0 rgba(16, 22, 26, 0.4);
box-shadow:inset 0 1px 0 rgba(16, 22, 26, 0.4); }
.bp3-editable-text{
cursor:text;
display:inline-block;
max-width:100%;
position:relative;
vertical-align:top;
white-space:nowrap; }
.bp3-editable-text::before{
bottom:-3px;
left:-3px;
position:absolute;
right:-3px;
top:-3px;
border-radius:3px;
content:"";
-webkit-transition:background-color 100ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:background-color 100ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:background-color 100ms cubic-bezier(0.4, 1, 0.75, 0.9), box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:background-color 100ms cubic-bezier(0.4, 1, 0.75, 0.9), box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-editable-text:hover::before{
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.15);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.15); }
.bp3-editable-text.bp3-editable-text-editing::before{
background-color:#ffffff;
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-editable-text.bp3-disabled::before{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-editable-text.bp3-intent-primary .bp3-editable-text-input,
.bp3-editable-text.bp3-intent-primary .bp3-editable-text-content{
color:#137cbd; }
.bp3-editable-text.bp3-intent-primary:hover::before{
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(19, 124, 189, 0.4);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(19, 124, 189, 0.4); }
.bp3-editable-text.bp3-intent-primary.bp3-editable-text-editing::before{
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-editable-text.bp3-intent-success .bp3-editable-text-input,
.bp3-editable-text.bp3-intent-success .bp3-editable-text-content{
color:#0f9960; }
.bp3-editable-text.bp3-intent-success:hover::before{
-webkit-box-shadow:0 0 0 0 rgba(15, 153, 96, 0), 0 0 0 0 rgba(15, 153, 96, 0), inset 0 0 0 1px rgba(15, 153, 96, 0.4);
box-shadow:0 0 0 0 rgba(15, 153, 96, 0), 0 0 0 0 rgba(15, 153, 96, 0), inset 0 0 0 1px rgba(15, 153, 96, 0.4); }
.bp3-editable-text.bp3-intent-success.bp3-editable-text-editing::before{
-webkit-box-shadow:0 0 0 1px #0f9960, 0 0 0 3px rgba(15, 153, 96, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #0f9960, 0 0 0 3px rgba(15, 153, 96, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-editable-text.bp3-intent-warning .bp3-editable-text-input,
.bp3-editable-text.bp3-intent-warning .bp3-editable-text-content{
color:#d9822b; }
.bp3-editable-text.bp3-intent-warning:hover::before{
-webkit-box-shadow:0 0 0 0 rgba(217, 130, 43, 0), 0 0 0 0 rgba(217, 130, 43, 0), inset 0 0 0 1px rgba(217, 130, 43, 0.4);
box-shadow:0 0 0 0 rgba(217, 130, 43, 0), 0 0 0 0 rgba(217, 130, 43, 0), inset 0 0 0 1px rgba(217, 130, 43, 0.4); }
.bp3-editable-text.bp3-intent-warning.bp3-editable-text-editing::before{
-webkit-box-shadow:0 0 0 1px #d9822b, 0 0 0 3px rgba(217, 130, 43, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #d9822b, 0 0 0 3px rgba(217, 130, 43, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-editable-text.bp3-intent-danger .bp3-editable-text-input,
.bp3-editable-text.bp3-intent-danger .bp3-editable-text-content{
color:#db3737; }
.bp3-editable-text.bp3-intent-danger:hover::before{
-webkit-box-shadow:0 0 0 0 rgba(219, 55, 55, 0), 0 0 0 0 rgba(219, 55, 55, 0), inset 0 0 0 1px rgba(219, 55, 55, 0.4);
box-shadow:0 0 0 0 rgba(219, 55, 55, 0), 0 0 0 0 rgba(219, 55, 55, 0), inset 0 0 0 1px rgba(219, 55, 55, 0.4); }
.bp3-editable-text.bp3-intent-danger.bp3-editable-text-editing::before{
-webkit-box-shadow:0 0 0 1px #db3737, 0 0 0 3px rgba(219, 55, 55, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #db3737, 0 0 0 3px rgba(219, 55, 55, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-editable-text:hover::before{
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(255, 255, 255, 0.15);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(255, 255, 255, 0.15); }
.bp3-dark .bp3-editable-text.bp3-editable-text-editing::before{
background-color:rgba(16, 22, 26, 0.3);
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-editable-text.bp3-disabled::before{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-editable-text.bp3-intent-primary .bp3-editable-text-content{
color:#48aff0; }
.bp3-dark .bp3-editable-text.bp3-intent-primary:hover::before{
-webkit-box-shadow:0 0 0 0 rgba(72, 175, 240, 0), 0 0 0 0 rgba(72, 175, 240, 0), inset 0 0 0 1px rgba(72, 175, 240, 0.4);
box-shadow:0 0 0 0 rgba(72, 175, 240, 0), 0 0 0 0 rgba(72, 175, 240, 0), inset 0 0 0 1px rgba(72, 175, 240, 0.4); }
.bp3-dark .bp3-editable-text.bp3-intent-primary.bp3-editable-text-editing::before{
-webkit-box-shadow:0 0 0 1px #48aff0, 0 0 0 3px rgba(72, 175, 240, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #48aff0, 0 0 0 3px rgba(72, 175, 240, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-editable-text.bp3-intent-success .bp3-editable-text-content{
color:#3dcc91; }
.bp3-dark .bp3-editable-text.bp3-intent-success:hover::before{
-webkit-box-shadow:0 0 0 0 rgba(61, 204, 145, 0), 0 0 0 0 rgba(61, 204, 145, 0), inset 0 0 0 1px rgba(61, 204, 145, 0.4);
box-shadow:0 0 0 0 rgba(61, 204, 145, 0), 0 0 0 0 rgba(61, 204, 145, 0), inset 0 0 0 1px rgba(61, 204, 145, 0.4); }
.bp3-dark .bp3-editable-text.bp3-intent-success.bp3-editable-text-editing::before{
-webkit-box-shadow:0 0 0 1px #3dcc91, 0 0 0 3px rgba(61, 204, 145, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #3dcc91, 0 0 0 3px rgba(61, 204, 145, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-editable-text.bp3-intent-warning .bp3-editable-text-content{
color:#ffb366; }
.bp3-dark .bp3-editable-text.bp3-intent-warning:hover::before{
-webkit-box-shadow:0 0 0 0 rgba(255, 179, 102, 0), 0 0 0 0 rgba(255, 179, 102, 0), inset 0 0 0 1px rgba(255, 179, 102, 0.4);
box-shadow:0 0 0 0 rgba(255, 179, 102, 0), 0 0 0 0 rgba(255, 179, 102, 0), inset 0 0 0 1px rgba(255, 179, 102, 0.4); }
.bp3-dark .bp3-editable-text.bp3-intent-warning.bp3-editable-text-editing::before{
-webkit-box-shadow:0 0 0 1px #ffb366, 0 0 0 3px rgba(255, 179, 102, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #ffb366, 0 0 0 3px rgba(255, 179, 102, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-editable-text.bp3-intent-danger .bp3-editable-text-content{
color:#ff7373; }
.bp3-dark .bp3-editable-text.bp3-intent-danger:hover::before{
-webkit-box-shadow:0 0 0 0 rgba(255, 115, 115, 0), 0 0 0 0 rgba(255, 115, 115, 0), inset 0 0 0 1px rgba(255, 115, 115, 0.4);
box-shadow:0 0 0 0 rgba(255, 115, 115, 0), 0 0 0 0 rgba(255, 115, 115, 0), inset 0 0 0 1px rgba(255, 115, 115, 0.4); }
.bp3-dark .bp3-editable-text.bp3-intent-danger.bp3-editable-text-editing::before{
-webkit-box-shadow:0 0 0 1px #ff7373, 0 0 0 3px rgba(255, 115, 115, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #ff7373, 0 0 0 3px rgba(255, 115, 115, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-editable-text-input,
.bp3-editable-text-content{
color:inherit;
display:inherit;
font:inherit;
letter-spacing:inherit;
max-width:inherit;
min-width:inherit;
position:relative;
resize:none;
text-transform:inherit;
vertical-align:top; }
.bp3-editable-text-input{
background:none;
border:none;
-webkit-box-shadow:none;
box-shadow:none;
padding:0;
white-space:pre-wrap;
width:100%; }
.bp3-editable-text-input::-webkit-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-editable-text-input::-moz-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-editable-text-input:-ms-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-editable-text-input::-ms-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-editable-text-input::placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-editable-text-input:focus{
outline:none; }
.bp3-editable-text-input::-ms-clear{
display:none; }
.bp3-editable-text-content{
overflow:hidden;
padding-right:2px;
text-overflow:ellipsis;
white-space:pre; }
.bp3-editable-text-editing > .bp3-editable-text-content{
left:0;
position:absolute;
visibility:hidden; }
.bp3-editable-text-placeholder > .bp3-editable-text-content{
color:rgba(92, 112, 128, 0.6); }
.bp3-dark .bp3-editable-text-placeholder > .bp3-editable-text-content{
color:rgba(167, 182, 194, 0.6); }
.bp3-editable-text.bp3-multiline{
display:block; }
.bp3-editable-text.bp3-multiline .bp3-editable-text-content{
overflow:auto;
white-space:pre-wrap;
word-wrap:break-word; }
.bp3-divider{
border-bottom:1px solid rgba(16, 22, 26, 0.15);
border-right:1px solid rgba(16, 22, 26, 0.15);
margin:5px; }
.bp3-dark .bp3-divider{
border-color:rgba(16, 22, 26, 0.4); }
.bp3-control-group{
-webkit-transform:translateZ(0);
transform:translateZ(0);
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:horizontal;
-webkit-box-direction:normal;
-ms-flex-direction:row;
flex-direction:row;
-webkit-box-align:stretch;
-ms-flex-align:stretch;
align-items:stretch; }
.bp3-control-group > *{
-webkit-box-flex:0;
-ms-flex-positive:0;
flex-grow:0;
-ms-flex-negative:0;
flex-shrink:0; }
.bp3-control-group > .bp3-fill{
-webkit-box-flex:1;
-ms-flex-positive:1;
flex-grow:1;
-ms-flex-negative:1;
flex-shrink:1; }
.bp3-control-group .bp3-button,
.bp3-control-group .bp3-html-select,
.bp3-control-group .bp3-input,
.bp3-control-group .bp3-select{
position:relative; }
.bp3-control-group .bp3-input{
border-radius:inherit;
z-index:2; }
.bp3-control-group .bp3-input:focus{
border-radius:3px;
z-index:14; }
.bp3-control-group .bp3-input[class*="bp3-intent"]{
z-index:13; }
.bp3-control-group .bp3-input[class*="bp3-intent"]:focus{
z-index:15; }
.bp3-control-group .bp3-input[readonly], .bp3-control-group .bp3-input:disabled, .bp3-control-group .bp3-input.bp3-disabled{
z-index:1; }
.bp3-control-group .bp3-input-group[class*="bp3-intent"] .bp3-input{
z-index:13; }
.bp3-control-group .bp3-input-group[class*="bp3-intent"] .bp3-input:focus{
z-index:15; }
.bp3-control-group .bp3-button,
.bp3-control-group .bp3-html-select select,
.bp3-control-group .bp3-select select{
-webkit-transform:translateZ(0);
transform:translateZ(0);
border-radius:inherit;
z-index:4; }
.bp3-control-group .bp3-button:focus,
.bp3-control-group .bp3-html-select select:focus,
.bp3-control-group .bp3-select select:focus{
z-index:5; }
.bp3-control-group .bp3-button:hover,
.bp3-control-group .bp3-html-select select:hover,
.bp3-control-group .bp3-select select:hover{
z-index:6; }
.bp3-control-group .bp3-button:active,
.bp3-control-group .bp3-html-select select:active,
.bp3-control-group .bp3-select select:active{
z-index:7; }
.bp3-control-group .bp3-button[readonly], .bp3-control-group .bp3-button:disabled, .bp3-control-group .bp3-button.bp3-disabled,
.bp3-control-group .bp3-html-select select[readonly],
.bp3-control-group .bp3-html-select select:disabled,
.bp3-control-group .bp3-html-select select.bp3-disabled,
.bp3-control-group .bp3-select select[readonly],
.bp3-control-group .bp3-select select:disabled,
.bp3-control-group .bp3-select select.bp3-disabled{
z-index:3; }
.bp3-control-group .bp3-button[class*="bp3-intent"],
.bp3-control-group .bp3-html-select select[class*="bp3-intent"],
.bp3-control-group .bp3-select select[class*="bp3-intent"]{
z-index:9; }
.bp3-control-group .bp3-button[class*="bp3-intent"]:focus,
.bp3-control-group .bp3-html-select select[class*="bp3-intent"]:focus,
.bp3-control-group .bp3-select select[class*="bp3-intent"]:focus{
z-index:10; }
.bp3-control-group .bp3-button[class*="bp3-intent"]:hover,
.bp3-control-group .bp3-html-select select[class*="bp3-intent"]:hover,
.bp3-control-group .bp3-select select[class*="bp3-intent"]:hover{
z-index:11; }
.bp3-control-group .bp3-button[class*="bp3-intent"]:active,
.bp3-control-group .bp3-html-select select[class*="bp3-intent"]:active,
.bp3-control-group .bp3-select select[class*="bp3-intent"]:active{
z-index:12; }
.bp3-control-group .bp3-button[class*="bp3-intent"][readonly], .bp3-control-group .bp3-button[class*="bp3-intent"]:disabled, .bp3-control-group .bp3-button[class*="bp3-intent"].bp3-disabled,
.bp3-control-group .bp3-html-select select[class*="bp3-intent"][readonly],
.bp3-control-group .bp3-html-select select[class*="bp3-intent"]:disabled,
.bp3-control-group .bp3-html-select select[class*="bp3-intent"].bp3-disabled,
.bp3-control-group .bp3-select select[class*="bp3-intent"][readonly],
.bp3-control-group .bp3-select select[class*="bp3-intent"]:disabled,
.bp3-control-group .bp3-select select[class*="bp3-intent"].bp3-disabled{
z-index:8; }
.bp3-control-group .bp3-input-group > .bp3-icon,
.bp3-control-group .bp3-input-group > .bp3-button,
.bp3-control-group .bp3-input-group > .bp3-input-left-container,
.bp3-control-group .bp3-input-group > .bp3-input-action{
z-index:16; }
.bp3-control-group .bp3-select::after,
.bp3-control-group .bp3-html-select::after,
.bp3-control-group .bp3-select > .bp3-icon,
.bp3-control-group .bp3-html-select > .bp3-icon{
z-index:17; }
.bp3-control-group .bp3-select:focus-within{
z-index:5; }
.bp3-control-group:not(.bp3-vertical) > *:not(.bp3-divider){
margin-right:-1px; }
.bp3-control-group:not(.bp3-vertical) > .bp3-divider:not(:first-child){
margin-left:6px; }
.bp3-dark .bp3-control-group:not(.bp3-vertical) > *:not(.bp3-divider){
margin-right:0; }
.bp3-dark .bp3-control-group:not(.bp3-vertical) > .bp3-button + .bp3-button{
margin-left:1px; }
.bp3-control-group .bp3-popover-wrapper,
.bp3-control-group .bp3-popover-target{
border-radius:inherit; }
.bp3-control-group > :first-child{
border-radius:3px 0 0 3px; }
.bp3-control-group > :last-child{
border-radius:0 3px 3px 0;
margin-right:0; }
.bp3-control-group > :only-child{
border-radius:3px;
margin-right:0; }
.bp3-control-group .bp3-input-group .bp3-button{
border-radius:3px; }
.bp3-control-group .bp3-numeric-input:not(:first-child) .bp3-input-group{
border-bottom-left-radius:0;
border-top-left-radius:0; }
.bp3-control-group.bp3-fill{
width:100%; }
.bp3-control-group > .bp3-fill{
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto; }
.bp3-control-group.bp3-fill > *:not(.bp3-fixed){
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto; }
.bp3-control-group.bp3-vertical{
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column; }
.bp3-control-group.bp3-vertical > *{
margin-top:-1px; }
.bp3-control-group.bp3-vertical > :first-child{
border-radius:3px 3px 0 0;
margin-top:0; }
.bp3-control-group.bp3-vertical > :last-child{
border-radius:0 0 3px 3px; }
.bp3-control{
cursor:pointer;
display:block;
margin-bottom:10px;
position:relative;
text-transform:none; }
.bp3-control input:checked ~ .bp3-control-indicator{
background-color:#137cbd;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.1)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
color:#ffffff; }
.bp3-control:hover input:checked ~ .bp3-control-indicator{
background-color:#106ba3;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2); }
.bp3-control input:not(:disabled):active:checked ~ .bp3-control-indicator{
background:#0e5a8a;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-control input:disabled:checked ~ .bp3-control-indicator{
background:rgba(19, 124, 189, 0.5);
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-control input:checked ~ .bp3-control-indicator{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-control:hover input:checked ~ .bp3-control-indicator{
background-color:#106ba3;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-control input:not(:disabled):active:checked ~ .bp3-control-indicator{
background-color:#0e5a8a;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-control input:disabled:checked ~ .bp3-control-indicator{
background:rgba(14, 90, 138, 0.5);
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-control:not(.bp3-align-right){
padding-left:26px; }
.bp3-control:not(.bp3-align-right) .bp3-control-indicator{
margin-left:-26px; }
.bp3-control.bp3-align-right{
padding-right:26px; }
.bp3-control.bp3-align-right .bp3-control-indicator{
margin-right:-26px; }
.bp3-control.bp3-disabled{
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-control.bp3-inline{
display:inline-block;
margin-right:20px; }
.bp3-control input{
left:0;
opacity:0;
position:absolute;
top:0;
z-index:-1; }
.bp3-control .bp3-control-indicator{
background-clip:padding-box;
background-color:#f5f8fa;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.8)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0));
border:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
cursor:pointer;
display:inline-block;
font-size:16px;
height:1em;
margin-right:10px;
margin-top:-3px;
position:relative;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none;
vertical-align:middle;
width:1em; }
.bp3-control .bp3-control-indicator::before{
content:"";
display:block;
height:1em;
width:1em; }
.bp3-control:hover .bp3-control-indicator{
background-color:#ebf1f5; }
.bp3-control input:not(:disabled):active ~ .bp3-control-indicator{
background:#d8e1e8;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-control input:disabled ~ .bp3-control-indicator{
background:rgba(206, 217, 224, 0.5);
-webkit-box-shadow:none;
box-shadow:none;
cursor:not-allowed; }
.bp3-control input:focus ~ .bp3-control-indicator{
outline:rgba(19, 124, 189, 0.6) auto 2px;
outline-offset:2px;
-moz-outline-radius:6px; }
.bp3-control.bp3-align-right .bp3-control-indicator{
float:right;
margin-left:10px;
margin-top:1px; }
.bp3-control.bp3-large{
font-size:16px; }
.bp3-control.bp3-large:not(.bp3-align-right){
padding-left:30px; }
.bp3-control.bp3-large:not(.bp3-align-right) .bp3-control-indicator{
margin-left:-30px; }
.bp3-control.bp3-large.bp3-align-right{
padding-right:30px; }
.bp3-control.bp3-large.bp3-align-right .bp3-control-indicator{
margin-right:-30px; }
.bp3-control.bp3-large .bp3-control-indicator{
font-size:20px; }
.bp3-control.bp3-large.bp3-align-right .bp3-control-indicator{
margin-top:0; }
.bp3-control.bp3-checkbox input:indeterminate ~ .bp3-control-indicator{
background-color:#137cbd;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.1)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0));
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
color:#ffffff; }
.bp3-control.bp3-checkbox:hover input:indeterminate ~ .bp3-control-indicator{
background-color:#106ba3;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 -1px 0 rgba(16, 22, 26, 0.2); }
.bp3-control.bp3-checkbox input:not(:disabled):active:indeterminate ~ .bp3-control-indicator{
background:#0e5a8a;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-control.bp3-checkbox input:disabled:indeterminate ~ .bp3-control-indicator{
background:rgba(19, 124, 189, 0.5);
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-control.bp3-checkbox input:indeterminate ~ .bp3-control-indicator{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-control.bp3-checkbox:hover input:indeterminate ~ .bp3-control-indicator{
background-color:#106ba3;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-control.bp3-checkbox input:not(:disabled):active:indeterminate ~ .bp3-control-indicator{
background-color:#0e5a8a;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-control.bp3-checkbox input:disabled:indeterminate ~ .bp3-control-indicator{
background:rgba(14, 90, 138, 0.5);
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-control.bp3-checkbox .bp3-control-indicator{
border-radius:3px; }
.bp3-control.bp3-checkbox input:checked ~ .bp3-control-indicator::before{
background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M12 5c-.28 0-.53.11-.71.29L7 9.59l-2.29-2.3a1.003 1.003 0 00-1.42 1.42l3 3c.18.18.43.29.71.29s.53-.11.71-.29l5-5A1.003 1.003 0 0012 5z' fill='white'/%3e%3c/svg%3e"); }
.bp3-control.bp3-checkbox input:indeterminate ~ .bp3-control-indicator::before{
background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M11 7H5c-.55 0-1 .45-1 1s.45 1 1 1h6c.55 0 1-.45 1-1s-.45-1-1-1z' fill='white'/%3e%3c/svg%3e"); }
.bp3-control.bp3-radio .bp3-control-indicator{
border-radius:50%; }
.bp3-control.bp3-radio input:checked ~ .bp3-control-indicator::before{
background-image:radial-gradient(#ffffff, #ffffff 28%, transparent 32%); }
.bp3-control.bp3-radio input:checked:disabled ~ .bp3-control-indicator::before{
opacity:0.5; }
.bp3-control.bp3-radio input:focus ~ .bp3-control-indicator{
-moz-outline-radius:16px; }
.bp3-control.bp3-switch input ~ .bp3-control-indicator{
background:rgba(167, 182, 194, 0.5); }
.bp3-control.bp3-switch:hover input ~ .bp3-control-indicator{
background:rgba(115, 134, 148, 0.5); }
.bp3-control.bp3-switch input:not(:disabled):active ~ .bp3-control-indicator{
background:rgba(92, 112, 128, 0.5); }
.bp3-control.bp3-switch input:disabled ~ .bp3-control-indicator{
background:rgba(206, 217, 224, 0.5); }
.bp3-control.bp3-switch input:disabled ~ .bp3-control-indicator::before{
background:rgba(255, 255, 255, 0.8); }
.bp3-control.bp3-switch input:checked ~ .bp3-control-indicator{
background:#137cbd; }
.bp3-control.bp3-switch:hover input:checked ~ .bp3-control-indicator{
background:#106ba3; }
.bp3-control.bp3-switch input:checked:not(:disabled):active ~ .bp3-control-indicator{
background:#0e5a8a; }
.bp3-control.bp3-switch input:checked:disabled ~ .bp3-control-indicator{
background:rgba(19, 124, 189, 0.5); }
.bp3-control.bp3-switch input:checked:disabled ~ .bp3-control-indicator::before{
background:rgba(255, 255, 255, 0.8); }
.bp3-control.bp3-switch:not(.bp3-align-right){
padding-left:38px; }
.bp3-control.bp3-switch:not(.bp3-align-right) .bp3-control-indicator{
margin-left:-38px; }
.bp3-control.bp3-switch.bp3-align-right{
padding-right:38px; }
.bp3-control.bp3-switch.bp3-align-right .bp3-control-indicator{
margin-right:-38px; }
.bp3-control.bp3-switch .bp3-control-indicator{
border:none;
border-radius:1.75em;
-webkit-box-shadow:none !important;
box-shadow:none !important;
min-width:1.75em;
-webkit-transition:background-color 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:background-color 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
width:auto; }
.bp3-control.bp3-switch .bp3-control-indicator::before{
background:#ffffff;
border-radius:50%;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 1px 1px rgba(16, 22, 26, 0.2);
height:calc(1em - 4px);
left:0;
margin:2px;
position:absolute;
-webkit-transition:left 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:left 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
width:calc(1em - 4px); }
.bp3-control.bp3-switch input:checked ~ .bp3-control-indicator::before{
left:calc(100% - 1em); }
.bp3-control.bp3-switch.bp3-large:not(.bp3-align-right){
padding-left:45px; }
.bp3-control.bp3-switch.bp3-large:not(.bp3-align-right) .bp3-control-indicator{
margin-left:-45px; }
.bp3-control.bp3-switch.bp3-large.bp3-align-right{
padding-right:45px; }
.bp3-control.bp3-switch.bp3-large.bp3-align-right .bp3-control-indicator{
margin-right:-45px; }
.bp3-dark .bp3-control.bp3-switch input ~ .bp3-control-indicator{
background:rgba(16, 22, 26, 0.5); }
.bp3-dark .bp3-control.bp3-switch:hover input ~ .bp3-control-indicator{
background:rgba(16, 22, 26, 0.7); }
.bp3-dark .bp3-control.bp3-switch input:not(:disabled):active ~ .bp3-control-indicator{
background:rgba(16, 22, 26, 0.9); }
.bp3-dark .bp3-control.bp3-switch input:disabled ~ .bp3-control-indicator{
background:rgba(57, 75, 89, 0.5); }
.bp3-dark .bp3-control.bp3-switch input:disabled ~ .bp3-control-indicator::before{
background:rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-control.bp3-switch input:checked ~ .bp3-control-indicator{
background:#137cbd; }
.bp3-dark .bp3-control.bp3-switch:hover input:checked ~ .bp3-control-indicator{
background:#106ba3; }
.bp3-dark .bp3-control.bp3-switch input:checked:not(:disabled):active ~ .bp3-control-indicator{
background:#0e5a8a; }
.bp3-dark .bp3-control.bp3-switch input:checked:disabled ~ .bp3-control-indicator{
background:rgba(14, 90, 138, 0.5); }
.bp3-dark .bp3-control.bp3-switch input:checked:disabled ~ .bp3-control-indicator::before{
background:rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-control.bp3-switch .bp3-control-indicator::before{
background:#394b59;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-control.bp3-switch input:checked ~ .bp3-control-indicator::before{
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-control.bp3-switch .bp3-switch-inner-text{
font-size:0.7em;
text-align:center; }
.bp3-control.bp3-switch .bp3-control-indicator-child:first-child{
line-height:0;
margin-left:0.5em;
margin-right:1.2em;
visibility:hidden; }
.bp3-control.bp3-switch .bp3-control-indicator-child:last-child{
line-height:1em;
margin-left:1.2em;
margin-right:0.5em;
visibility:visible; }
.bp3-control.bp3-switch input:checked ~ .bp3-control-indicator .bp3-control-indicator-child:first-child{
line-height:1em;
visibility:visible; }
.bp3-control.bp3-switch input:checked ~ .bp3-control-indicator .bp3-control-indicator-child:last-child{
line-height:0;
visibility:hidden; }
.bp3-dark .bp3-control{
color:#f5f8fa; }
.bp3-dark .bp3-control.bp3-disabled{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-control .bp3-control-indicator{
background-color:#394b59;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.05)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0));
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-control:hover .bp3-control-indicator{
background-color:#30404d; }
.bp3-dark .bp3-control input:not(:disabled):active ~ .bp3-control-indicator{
background:#202b33;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-control input:disabled ~ .bp3-control-indicator{
background:rgba(57, 75, 89, 0.5);
-webkit-box-shadow:none;
box-shadow:none;
cursor:not-allowed; }
.bp3-dark .bp3-control.bp3-checkbox input:disabled:checked ~ .bp3-control-indicator, .bp3-dark .bp3-control.bp3-checkbox input:disabled:indeterminate ~ .bp3-control-indicator{
color:rgba(167, 182, 194, 0.6); }
.bp3-file-input{
cursor:pointer;
display:inline-block;
height:30px;
position:relative; }
.bp3-file-input input{
margin:0;
min-width:200px;
opacity:0; }
.bp3-file-input input:disabled + .bp3-file-upload-input,
.bp3-file-input input.bp3-disabled + .bp3-file-upload-input{
background:rgba(206, 217, 224, 0.5);
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed;
resize:none; }
.bp3-file-input input:disabled + .bp3-file-upload-input::after,
.bp3-file-input input.bp3-disabled + .bp3-file-upload-input::after{
background-color:rgba(206, 217, 224, 0.5);
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed;
outline:none; }
.bp3-file-input input:disabled + .bp3-file-upload-input::after.bp3-active, .bp3-file-input input:disabled + .bp3-file-upload-input::after.bp3-active:hover,
.bp3-file-input input.bp3-disabled + .bp3-file-upload-input::after.bp3-active,
.bp3-file-input input.bp3-disabled + .bp3-file-upload-input::after.bp3-active:hover{
background:rgba(206, 217, 224, 0.7); }
.bp3-dark .bp3-file-input input:disabled + .bp3-file-upload-input, .bp3-dark
.bp3-file-input input.bp3-disabled + .bp3-file-upload-input{
background:rgba(57, 75, 89, 0.5);
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-file-input input:disabled + .bp3-file-upload-input::after, .bp3-dark
.bp3-file-input input.bp3-disabled + .bp3-file-upload-input::after{
background-color:rgba(57, 75, 89, 0.5);
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-file-input input:disabled + .bp3-file-upload-input::after.bp3-active, .bp3-dark
.bp3-file-input input.bp3-disabled + .bp3-file-upload-input::after.bp3-active{
background:rgba(57, 75, 89, 0.7); }
.bp3-file-input.bp3-file-input-has-selection .bp3-file-upload-input{
color:#182026; }
.bp3-dark .bp3-file-input.bp3-file-input-has-selection .bp3-file-upload-input{
color:#f5f8fa; }
.bp3-file-input.bp3-fill{
width:100%; }
.bp3-file-input.bp3-large,
.bp3-large .bp3-file-input{
height:40px; }
.bp3-file-input .bp3-file-upload-input-custom-text::after{
content:attr(bp3-button-text); }
.bp3-file-upload-input{
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
background:#ffffff;
border:none;
border-radius:3px;
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
color:#182026;
font-size:14px;
font-weight:400;
height:30px;
line-height:30px;
outline:none;
padding:0 10px;
-webkit-transition:-webkit-box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:-webkit-box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
vertical-align:middle;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
word-wrap:normal;
color:rgba(92, 112, 128, 0.6);
left:0;
padding-right:80px;
position:absolute;
right:0;
top:0;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none; }
.bp3-file-upload-input::-webkit-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-file-upload-input::-moz-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-file-upload-input:-ms-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-file-upload-input::-ms-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-file-upload-input::placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-file-upload-input:focus, .bp3-file-upload-input.bp3-active{
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-file-upload-input[type="search"], .bp3-file-upload-input.bp3-round{
border-radius:30px;
-webkit-box-sizing:border-box;
box-sizing:border-box;
padding-left:10px; }
.bp3-file-upload-input[readonly]{
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.15);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.15); }
.bp3-file-upload-input:disabled, .bp3-file-upload-input.bp3-disabled{
background:rgba(206, 217, 224, 0.5);
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed;
resize:none; }
.bp3-file-upload-input::after{
background-color:#f5f8fa;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.8)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0));
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
color:#182026;
min-height:24px;
min-width:24px;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
word-wrap:normal;
border-radius:3px;
content:"Browse";
line-height:24px;
margin:3px;
position:absolute;
right:0;
text-align:center;
top:0;
width:70px; }
.bp3-file-upload-input::after:hover{
background-clip:padding-box;
background-color:#ebf1f5;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1); }
.bp3-file-upload-input::after:active, .bp3-file-upload-input::after.bp3-active{
background-color:#d8e1e8;
background-image:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-file-upload-input::after:disabled, .bp3-file-upload-input::after.bp3-disabled{
background-color:rgba(206, 217, 224, 0.5);
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed;
outline:none; }
.bp3-file-upload-input::after:disabled.bp3-active, .bp3-file-upload-input::after:disabled.bp3-active:hover, .bp3-file-upload-input::after.bp3-disabled.bp3-active, .bp3-file-upload-input::after.bp3-disabled.bp3-active:hover{
background:rgba(206, 217, 224, 0.7); }
.bp3-file-upload-input:hover::after{
background-clip:padding-box;
background-color:#ebf1f5;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1); }
.bp3-file-upload-input:active::after{
background-color:#d8e1e8;
background-image:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-large .bp3-file-upload-input{
font-size:16px;
height:40px;
line-height:40px;
padding-right:95px; }
.bp3-large .bp3-file-upload-input[type="search"], .bp3-large .bp3-file-upload-input.bp3-round{
padding:0 15px; }
.bp3-large .bp3-file-upload-input::after{
min-height:30px;
min-width:30px;
line-height:30px;
margin:5px;
width:85px; }
.bp3-dark .bp3-file-upload-input{
background:rgba(16, 22, 26, 0.3);
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
color:#f5f8fa;
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-file-upload-input::-webkit-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-file-upload-input::-moz-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-file-upload-input:-ms-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-file-upload-input::-ms-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-file-upload-input::placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-file-upload-input:focus{
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #137cbd, 0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-file-upload-input[readonly]{
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-file-upload-input:disabled, .bp3-dark .bp3-file-upload-input.bp3-disabled{
background:rgba(57, 75, 89, 0.5);
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-file-upload-input::after{
background-color:#394b59;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.05)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0));
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
color:#f5f8fa; }
.bp3-dark .bp3-file-upload-input::after:hover, .bp3-dark .bp3-file-upload-input::after:active, .bp3-dark .bp3-file-upload-input::after.bp3-active{
color:#f5f8fa; }
.bp3-dark .bp3-file-upload-input::after:hover{
background-color:#30404d;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-file-upload-input::after:active, .bp3-dark .bp3-file-upload-input::after.bp3-active{
background-color:#202b33;
background-image:none;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-file-upload-input::after:disabled, .bp3-dark .bp3-file-upload-input::after.bp3-disabled{
background-color:rgba(57, 75, 89, 0.5);
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-file-upload-input::after:disabled.bp3-active, .bp3-dark .bp3-file-upload-input::after.bp3-disabled.bp3-active{
background:rgba(57, 75, 89, 0.7); }
.bp3-dark .bp3-file-upload-input::after .bp3-button-spinner .bp3-spinner-head{
background:rgba(16, 22, 26, 0.5);
stroke:#8a9ba8; }
.bp3-dark .bp3-file-upload-input:hover::after{
background-color:#30404d;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-file-upload-input:active::after{
background-color:#202b33;
background-image:none;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-file-upload-input::after{
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1); }
.bp3-form-group{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column;
margin:0 0 15px; }
.bp3-form-group label.bp3-label{
margin-bottom:5px; }
.bp3-form-group .bp3-control{
margin-top:7px; }
.bp3-form-group .bp3-form-helper-text{
color:#5c7080;
font-size:12px;
margin-top:5px; }
.bp3-form-group.bp3-intent-primary .bp3-form-helper-text{
color:#106ba3; }
.bp3-form-group.bp3-intent-success .bp3-form-helper-text{
color:#0d8050; }
.bp3-form-group.bp3-intent-warning .bp3-form-helper-text{
color:#bf7326; }
.bp3-form-group.bp3-intent-danger .bp3-form-helper-text{
color:#c23030; }
.bp3-form-group.bp3-inline{
-webkit-box-align:start;
-ms-flex-align:start;
align-items:flex-start;
-webkit-box-orient:horizontal;
-webkit-box-direction:normal;
-ms-flex-direction:row;
flex-direction:row; }
.bp3-form-group.bp3-inline.bp3-large label.bp3-label{
line-height:40px;
margin:0 10px 0 0; }
.bp3-form-group.bp3-inline label.bp3-label{
line-height:30px;
margin:0 10px 0 0; }
.bp3-form-group.bp3-disabled .bp3-label,
.bp3-form-group.bp3-disabled .bp3-text-muted,
.bp3-form-group.bp3-disabled .bp3-form-helper-text{
color:rgba(92, 112, 128, 0.6) !important; }
.bp3-dark .bp3-form-group.bp3-intent-primary .bp3-form-helper-text{
color:#48aff0; }
.bp3-dark .bp3-form-group.bp3-intent-success .bp3-form-helper-text{
color:#3dcc91; }
.bp3-dark .bp3-form-group.bp3-intent-warning .bp3-form-helper-text{
color:#ffb366; }
.bp3-dark .bp3-form-group.bp3-intent-danger .bp3-form-helper-text{
color:#ff7373; }
.bp3-dark .bp3-form-group .bp3-form-helper-text{
color:#a7b6c2; }
.bp3-dark .bp3-form-group.bp3-disabled .bp3-label,
.bp3-dark .bp3-form-group.bp3-disabled .bp3-text-muted,
.bp3-dark .bp3-form-group.bp3-disabled .bp3-form-helper-text{
color:rgba(167, 182, 194, 0.6) !important; }
.bp3-input-group{
display:block;
position:relative; }
.bp3-input-group .bp3-input{
position:relative;
width:100%; }
.bp3-input-group .bp3-input:not(:first-child){
padding-left:30px; }
.bp3-input-group .bp3-input:not(:last-child){
padding-right:30px; }
.bp3-input-group .bp3-input-action,
.bp3-input-group > .bp3-input-left-container,
.bp3-input-group > .bp3-button,
.bp3-input-group > .bp3-icon{
position:absolute;
top:0; }
.bp3-input-group .bp3-input-action:first-child,
.bp3-input-group > .bp3-input-left-container:first-child,
.bp3-input-group > .bp3-button:first-child,
.bp3-input-group > .bp3-icon:first-child{
left:0; }
.bp3-input-group .bp3-input-action:last-child,
.bp3-input-group > .bp3-input-left-container:last-child,
.bp3-input-group > .bp3-button:last-child,
.bp3-input-group > .bp3-icon:last-child{
right:0; }
.bp3-input-group .bp3-button{
min-height:24px;
min-width:24px;
margin:3px;
padding:0 7px; }
.bp3-input-group .bp3-button:empty{
padding:0; }
.bp3-input-group > .bp3-input-left-container,
.bp3-input-group > .bp3-icon{
z-index:1; }
.bp3-input-group > .bp3-input-left-container > .bp3-icon,
.bp3-input-group > .bp3-icon{
color:#5c7080; }
.bp3-input-group > .bp3-input-left-container > .bp3-icon:empty,
.bp3-input-group > .bp3-icon:empty{
font-family:"Icons16", sans-serif;
font-size:16px;
font-style:normal;
font-weight:400;
line-height:1;
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased; }
.bp3-input-group > .bp3-input-left-container > .bp3-icon,
.bp3-input-group > .bp3-icon,
.bp3-input-group .bp3-input-action > .bp3-spinner{
margin:7px; }
.bp3-input-group .bp3-tag{
margin:5px; }
.bp3-input-group .bp3-input:not(:focus) + .bp3-button.bp3-minimal:not(:hover):not(:focus),
.bp3-input-group .bp3-input:not(:focus) + .bp3-input-action .bp3-button.bp3-minimal:not(:hover):not(:focus){
color:#5c7080; }
.bp3-dark .bp3-input-group .bp3-input:not(:focus) + .bp3-button.bp3-minimal:not(:hover):not(:focus), .bp3-dark
.bp3-input-group .bp3-input:not(:focus) + .bp3-input-action .bp3-button.bp3-minimal:not(:hover):not(:focus){
color:#a7b6c2; }
.bp3-input-group .bp3-input:not(:focus) + .bp3-button.bp3-minimal:not(:hover):not(:focus) .bp3-icon, .bp3-input-group .bp3-input:not(:focus) + .bp3-button.bp3-minimal:not(:hover):not(:focus) .bp3-icon-standard, .bp3-input-group .bp3-input:not(:focus) + .bp3-button.bp3-minimal:not(:hover):not(:focus) .bp3-icon-large,
.bp3-input-group .bp3-input:not(:focus) + .bp3-input-action .bp3-button.bp3-minimal:not(:hover):not(:focus) .bp3-icon,
.bp3-input-group .bp3-input:not(:focus) + .bp3-input-action .bp3-button.bp3-minimal:not(:hover):not(:focus) .bp3-icon-standard,
.bp3-input-group .bp3-input:not(:focus) + .bp3-input-action .bp3-button.bp3-minimal:not(:hover):not(:focus) .bp3-icon-large{
color:#5c7080; }
.bp3-input-group .bp3-input:not(:focus) + .bp3-button.bp3-minimal:disabled,
.bp3-input-group .bp3-input:not(:focus) + .bp3-input-action .bp3-button.bp3-minimal:disabled{
color:rgba(92, 112, 128, 0.6) !important; }
.bp3-input-group .bp3-input:not(:focus) + .bp3-button.bp3-minimal:disabled .bp3-icon, .bp3-input-group .bp3-input:not(:focus) + .bp3-button.bp3-minimal:disabled .bp3-icon-standard, .bp3-input-group .bp3-input:not(:focus) + .bp3-button.bp3-minimal:disabled .bp3-icon-large,
.bp3-input-group .bp3-input:not(:focus) + .bp3-input-action .bp3-button.bp3-minimal:disabled .bp3-icon,
.bp3-input-group .bp3-input:not(:focus) + .bp3-input-action .bp3-button.bp3-minimal:disabled .bp3-icon-standard,
.bp3-input-group .bp3-input:not(:focus) + .bp3-input-action .bp3-button.bp3-minimal:disabled .bp3-icon-large{
color:rgba(92, 112, 128, 0.6) !important; }
.bp3-input-group.bp3-disabled{
cursor:not-allowed; }
.bp3-input-group.bp3-disabled .bp3-icon{
color:rgba(92, 112, 128, 0.6); }
.bp3-input-group.bp3-large .bp3-button{
min-height:30px;
min-width:30px;
margin:5px; }
.bp3-input-group.bp3-large > .bp3-input-left-container > .bp3-icon,
.bp3-input-group.bp3-large > .bp3-icon,
.bp3-input-group.bp3-large .bp3-input-action > .bp3-spinner{
margin:12px; }
.bp3-input-group.bp3-large .bp3-input{
font-size:16px;
height:40px;
line-height:40px; }
.bp3-input-group.bp3-large .bp3-input[type="search"], .bp3-input-group.bp3-large .bp3-input.bp3-round{
padding:0 15px; }
.bp3-input-group.bp3-large .bp3-input:not(:first-child){
padding-left:40px; }
.bp3-input-group.bp3-large .bp3-input:not(:last-child){
padding-right:40px; }
.bp3-input-group.bp3-small .bp3-button{
min-height:20px;
min-width:20px;
margin:2px; }
.bp3-input-group.bp3-small .bp3-tag{
min-height:20px;
min-width:20px;
margin:2px; }
.bp3-input-group.bp3-small > .bp3-input-left-container > .bp3-icon,
.bp3-input-group.bp3-small > .bp3-icon,
.bp3-input-group.bp3-small .bp3-input-action > .bp3-spinner{
margin:4px; }
.bp3-input-group.bp3-small .bp3-input{
font-size:12px;
height:24px;
line-height:24px;
padding-left:8px;
padding-right:8px; }
.bp3-input-group.bp3-small .bp3-input[type="search"], .bp3-input-group.bp3-small .bp3-input.bp3-round{
padding:0 12px; }
.bp3-input-group.bp3-small .bp3-input:not(:first-child){
padding-left:24px; }
.bp3-input-group.bp3-small .bp3-input:not(:last-child){
padding-right:24px; }
.bp3-input-group.bp3-fill{
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto;
width:100%; }
.bp3-input-group.bp3-round .bp3-button,
.bp3-input-group.bp3-round .bp3-input,
.bp3-input-group.bp3-round .bp3-tag{
border-radius:30px; }
.bp3-dark .bp3-input-group .bp3-icon{
color:#a7b6c2; }
.bp3-dark .bp3-input-group.bp3-disabled .bp3-icon{
color:rgba(167, 182, 194, 0.6); }
.bp3-input-group.bp3-intent-primary .bp3-input{
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px #137cbd, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px #137cbd, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input-group.bp3-intent-primary .bp3-input:focus{
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input-group.bp3-intent-primary .bp3-input[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #137cbd;
box-shadow:inset 0 0 0 1px #137cbd; }
.bp3-input-group.bp3-intent-primary .bp3-input:disabled, .bp3-input-group.bp3-intent-primary .bp3-input.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-input-group.bp3-intent-primary > .bp3-icon{
color:#106ba3; }
.bp3-dark .bp3-input-group.bp3-intent-primary > .bp3-icon{
color:#48aff0; }
.bp3-input-group.bp3-intent-success .bp3-input{
-webkit-box-shadow:0 0 0 0 rgba(15, 153, 96, 0), 0 0 0 0 rgba(15, 153, 96, 0), inset 0 0 0 1px #0f9960, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 0 rgba(15, 153, 96, 0), 0 0 0 0 rgba(15, 153, 96, 0), inset 0 0 0 1px #0f9960, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input-group.bp3-intent-success .bp3-input:focus{
-webkit-box-shadow:0 0 0 1px #0f9960, 0 0 0 3px rgba(15, 153, 96, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #0f9960, 0 0 0 3px rgba(15, 153, 96, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input-group.bp3-intent-success .bp3-input[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #0f9960;
box-shadow:inset 0 0 0 1px #0f9960; }
.bp3-input-group.bp3-intent-success .bp3-input:disabled, .bp3-input-group.bp3-intent-success .bp3-input.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-input-group.bp3-intent-success > .bp3-icon{
color:#0d8050; }
.bp3-dark .bp3-input-group.bp3-intent-success > .bp3-icon{
color:#3dcc91; }
.bp3-input-group.bp3-intent-warning .bp3-input{
-webkit-box-shadow:0 0 0 0 rgba(217, 130, 43, 0), 0 0 0 0 rgba(217, 130, 43, 0), inset 0 0 0 1px #d9822b, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 0 rgba(217, 130, 43, 0), 0 0 0 0 rgba(217, 130, 43, 0), inset 0 0 0 1px #d9822b, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input-group.bp3-intent-warning .bp3-input:focus{
-webkit-box-shadow:0 0 0 1px #d9822b, 0 0 0 3px rgba(217, 130, 43, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #d9822b, 0 0 0 3px rgba(217, 130, 43, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input-group.bp3-intent-warning .bp3-input[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #d9822b;
box-shadow:inset 0 0 0 1px #d9822b; }
.bp3-input-group.bp3-intent-warning .bp3-input:disabled, .bp3-input-group.bp3-intent-warning .bp3-input.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-input-group.bp3-intent-warning > .bp3-icon{
color:#bf7326; }
.bp3-dark .bp3-input-group.bp3-intent-warning > .bp3-icon{
color:#ffb366; }
.bp3-input-group.bp3-intent-danger .bp3-input{
-webkit-box-shadow:0 0 0 0 rgba(219, 55, 55, 0), 0 0 0 0 rgba(219, 55, 55, 0), inset 0 0 0 1px #db3737, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 0 rgba(219, 55, 55, 0), 0 0 0 0 rgba(219, 55, 55, 0), inset 0 0 0 1px #db3737, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input-group.bp3-intent-danger .bp3-input:focus{
-webkit-box-shadow:0 0 0 1px #db3737, 0 0 0 3px rgba(219, 55, 55, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #db3737, 0 0 0 3px rgba(219, 55, 55, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input-group.bp3-intent-danger .bp3-input[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #db3737;
box-shadow:inset 0 0 0 1px #db3737; }
.bp3-input-group.bp3-intent-danger .bp3-input:disabled, .bp3-input-group.bp3-intent-danger .bp3-input.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-input-group.bp3-intent-danger > .bp3-icon{
color:#c23030; }
.bp3-dark .bp3-input-group.bp3-intent-danger > .bp3-icon{
color:#ff7373; }
.bp3-input{
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
background:#ffffff;
border:none;
border-radius:3px;
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
color:#182026;
font-size:14px;
font-weight:400;
height:30px;
line-height:30px;
outline:none;
padding:0 10px;
-webkit-transition:-webkit-box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:-webkit-box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-box-shadow 100ms cubic-bezier(0.4, 1, 0.75, 0.9);
vertical-align:middle; }
.bp3-input::-webkit-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-input::-moz-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-input:-ms-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-input::-ms-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-input::placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-input:focus, .bp3-input.bp3-active{
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input[type="search"], .bp3-input.bp3-round{
border-radius:30px;
-webkit-box-sizing:border-box;
box-sizing:border-box;
padding-left:10px; }
.bp3-input[readonly]{
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.15);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.15); }
.bp3-input:disabled, .bp3-input.bp3-disabled{
background:rgba(206, 217, 224, 0.5);
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed;
resize:none; }
.bp3-input.bp3-large{
font-size:16px;
height:40px;
line-height:40px; }
.bp3-input.bp3-large[type="search"], .bp3-input.bp3-large.bp3-round{
padding:0 15px; }
.bp3-input.bp3-small{
font-size:12px;
height:24px;
line-height:24px;
padding-left:8px;
padding-right:8px; }
.bp3-input.bp3-small[type="search"], .bp3-input.bp3-small.bp3-round{
padding:0 12px; }
.bp3-input.bp3-fill{
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto;
width:100%; }
.bp3-dark .bp3-input{
background:rgba(16, 22, 26, 0.3);
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
color:#f5f8fa; }
.bp3-dark .bp3-input::-webkit-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-input::-moz-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-input:-ms-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-input::-ms-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-input::placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-input:focus{
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #137cbd, 0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-input[readonly]{
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-input:disabled, .bp3-dark .bp3-input.bp3-disabled{
background:rgba(57, 75, 89, 0.5);
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(167, 182, 194, 0.6); }
.bp3-input.bp3-intent-primary{
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px #137cbd, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px #137cbd, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input.bp3-intent-primary:focus{
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input.bp3-intent-primary[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #137cbd;
box-shadow:inset 0 0 0 1px #137cbd; }
.bp3-input.bp3-intent-primary:disabled, .bp3-input.bp3-intent-primary.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-input.bp3-intent-primary{
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px #137cbd, inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px #137cbd, inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-input.bp3-intent-primary:focus{
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #137cbd, 0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-input.bp3-intent-primary[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #137cbd;
box-shadow:inset 0 0 0 1px #137cbd; }
.bp3-dark .bp3-input.bp3-intent-primary:disabled, .bp3-dark .bp3-input.bp3-intent-primary.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-input.bp3-intent-success{
-webkit-box-shadow:0 0 0 0 rgba(15, 153, 96, 0), 0 0 0 0 rgba(15, 153, 96, 0), inset 0 0 0 1px #0f9960, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 0 rgba(15, 153, 96, 0), 0 0 0 0 rgba(15, 153, 96, 0), inset 0 0 0 1px #0f9960, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input.bp3-intent-success:focus{
-webkit-box-shadow:0 0 0 1px #0f9960, 0 0 0 3px rgba(15, 153, 96, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #0f9960, 0 0 0 3px rgba(15, 153, 96, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input.bp3-intent-success[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #0f9960;
box-shadow:inset 0 0 0 1px #0f9960; }
.bp3-input.bp3-intent-success:disabled, .bp3-input.bp3-intent-success.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-input.bp3-intent-success{
-webkit-box-shadow:0 0 0 0 rgba(15, 153, 96, 0), 0 0 0 0 rgba(15, 153, 96, 0), 0 0 0 0 rgba(15, 153, 96, 0), inset 0 0 0 1px #0f9960, inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 0 rgba(15, 153, 96, 0), 0 0 0 0 rgba(15, 153, 96, 0), 0 0 0 0 rgba(15, 153, 96, 0), inset 0 0 0 1px #0f9960, inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-input.bp3-intent-success:focus{
-webkit-box-shadow:0 0 0 1px #0f9960, 0 0 0 1px #0f9960, 0 0 0 3px rgba(15, 153, 96, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #0f9960, 0 0 0 1px #0f9960, 0 0 0 3px rgba(15, 153, 96, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-input.bp3-intent-success[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #0f9960;
box-shadow:inset 0 0 0 1px #0f9960; }
.bp3-dark .bp3-input.bp3-intent-success:disabled, .bp3-dark .bp3-input.bp3-intent-success.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-input.bp3-intent-warning{
-webkit-box-shadow:0 0 0 0 rgba(217, 130, 43, 0), 0 0 0 0 rgba(217, 130, 43, 0), inset 0 0 0 1px #d9822b, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 0 rgba(217, 130, 43, 0), 0 0 0 0 rgba(217, 130, 43, 0), inset 0 0 0 1px #d9822b, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input.bp3-intent-warning:focus{
-webkit-box-shadow:0 0 0 1px #d9822b, 0 0 0 3px rgba(217, 130, 43, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #d9822b, 0 0 0 3px rgba(217, 130, 43, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input.bp3-intent-warning[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #d9822b;
box-shadow:inset 0 0 0 1px #d9822b; }
.bp3-input.bp3-intent-warning:disabled, .bp3-input.bp3-intent-warning.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-input.bp3-intent-warning{
-webkit-box-shadow:0 0 0 0 rgba(217, 130, 43, 0), 0 0 0 0 rgba(217, 130, 43, 0), 0 0 0 0 rgba(217, 130, 43, 0), inset 0 0 0 1px #d9822b, inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 0 rgba(217, 130, 43, 0), 0 0 0 0 rgba(217, 130, 43, 0), 0 0 0 0 rgba(217, 130, 43, 0), inset 0 0 0 1px #d9822b, inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-input.bp3-intent-warning:focus{
-webkit-box-shadow:0 0 0 1px #d9822b, 0 0 0 1px #d9822b, 0 0 0 3px rgba(217, 130, 43, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #d9822b, 0 0 0 1px #d9822b, 0 0 0 3px rgba(217, 130, 43, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-input.bp3-intent-warning[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #d9822b;
box-shadow:inset 0 0 0 1px #d9822b; }
.bp3-dark .bp3-input.bp3-intent-warning:disabled, .bp3-dark .bp3-input.bp3-intent-warning.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-input.bp3-intent-danger{
-webkit-box-shadow:0 0 0 0 rgba(219, 55, 55, 0), 0 0 0 0 rgba(219, 55, 55, 0), inset 0 0 0 1px #db3737, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 0 rgba(219, 55, 55, 0), 0 0 0 0 rgba(219, 55, 55, 0), inset 0 0 0 1px #db3737, inset 0 0 0 1px rgba(16, 22, 26, 0.15), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input.bp3-intent-danger:focus{
-webkit-box-shadow:0 0 0 1px #db3737, 0 0 0 3px rgba(219, 55, 55, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #db3737, 0 0 0 3px rgba(219, 55, 55, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-input.bp3-intent-danger[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #db3737;
box-shadow:inset 0 0 0 1px #db3737; }
.bp3-input.bp3-intent-danger:disabled, .bp3-input.bp3-intent-danger.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-input.bp3-intent-danger{
-webkit-box-shadow:0 0 0 0 rgba(219, 55, 55, 0), 0 0 0 0 rgba(219, 55, 55, 0), 0 0 0 0 rgba(219, 55, 55, 0), inset 0 0 0 1px #db3737, inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 0 rgba(219, 55, 55, 0), 0 0 0 0 rgba(219, 55, 55, 0), 0 0 0 0 rgba(219, 55, 55, 0), inset 0 0 0 1px #db3737, inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-input.bp3-intent-danger:focus{
-webkit-box-shadow:0 0 0 1px #db3737, 0 0 0 1px #db3737, 0 0 0 3px rgba(219, 55, 55, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #db3737, 0 0 0 1px #db3737, 0 0 0 3px rgba(219, 55, 55, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-input.bp3-intent-danger[readonly]{
-webkit-box-shadow:inset 0 0 0 1px #db3737;
box-shadow:inset 0 0 0 1px #db3737; }
.bp3-dark .bp3-input.bp3-intent-danger:disabled, .bp3-dark .bp3-input.bp3-intent-danger.bp3-disabled{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-input::-ms-clear{
display:none; }
textarea.bp3-input{
max-width:100%;
padding:10px; }
textarea.bp3-input, textarea.bp3-input.bp3-large, textarea.bp3-input.bp3-small{
height:auto;
line-height:inherit; }
textarea.bp3-input.bp3-small{
padding:8px; }
.bp3-dark textarea.bp3-input{
background:rgba(16, 22, 26, 0.3);
-webkit-box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), 0 0 0 0 rgba(19, 124, 189, 0), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
color:#f5f8fa; }
.bp3-dark textarea.bp3-input::-webkit-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark textarea.bp3-input::-moz-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark textarea.bp3-input:-ms-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark textarea.bp3-input::-ms-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark textarea.bp3-input::placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark textarea.bp3-input:focus{
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #137cbd, 0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark textarea.bp3-input[readonly]{
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark textarea.bp3-input:disabled, .bp3-dark textarea.bp3-input.bp3-disabled{
background:rgba(57, 75, 89, 0.5);
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(167, 182, 194, 0.6); }
label.bp3-label{
display:block;
margin-bottom:15px;
margin-top:0; }
label.bp3-label .bp3-html-select,
label.bp3-label .bp3-input,
label.bp3-label .bp3-select,
label.bp3-label .bp3-slider,
label.bp3-label .bp3-popover-wrapper{
display:block;
margin-top:5px;
text-transform:none; }
label.bp3-label .bp3-button-group{
margin-top:5px; }
label.bp3-label .bp3-select select,
label.bp3-label .bp3-html-select select{
font-weight:400;
vertical-align:top;
width:100%; }
label.bp3-label.bp3-disabled,
label.bp3-label.bp3-disabled .bp3-text-muted{
color:rgba(92, 112, 128, 0.6); }
label.bp3-label.bp3-inline{
line-height:30px; }
label.bp3-label.bp3-inline .bp3-html-select,
label.bp3-label.bp3-inline .bp3-input,
label.bp3-label.bp3-inline .bp3-input-group,
label.bp3-label.bp3-inline .bp3-select,
label.bp3-label.bp3-inline .bp3-popover-wrapper{
display:inline-block;
margin:0 0 0 5px;
vertical-align:top; }
label.bp3-label.bp3-inline .bp3-button-group{
margin:0 0 0 5px; }
label.bp3-label.bp3-inline .bp3-input-group .bp3-input{
margin-left:0; }
label.bp3-label.bp3-inline.bp3-large{
line-height:40px; }
label.bp3-label:not(.bp3-inline) .bp3-popover-target{
display:block; }
.bp3-dark label.bp3-label{
color:#f5f8fa; }
.bp3-dark label.bp3-label.bp3-disabled,
.bp3-dark label.bp3-label.bp3-disabled .bp3-text-muted{
color:rgba(167, 182, 194, 0.6); }
.bp3-numeric-input .bp3-button-group.bp3-vertical > .bp3-button{
-webkit-box-flex:1;
-ms-flex:1 1 14px;
flex:1 1 14px;
min-height:0;
padding:0;
width:30px; }
.bp3-numeric-input .bp3-button-group.bp3-vertical > .bp3-button:first-child{
border-radius:0 3px 0 0; }
.bp3-numeric-input .bp3-button-group.bp3-vertical > .bp3-button:last-child{
border-radius:0 0 3px 0; }
.bp3-numeric-input .bp3-button-group.bp3-vertical:first-child > .bp3-button:first-child{
border-radius:3px 0 0 0; }
.bp3-numeric-input .bp3-button-group.bp3-vertical:first-child > .bp3-button:last-child{
border-radius:0 0 0 3px; }
.bp3-numeric-input.bp3-large .bp3-button-group.bp3-vertical > .bp3-button{
width:40px; }
form{
display:block; }
.bp3-html-select select,
.bp3-select select{
display:-webkit-inline-box;
display:-ms-inline-flexbox;
display:inline-flex;
-webkit-box-orient:horizontal;
-webkit-box-direction:normal;
-ms-flex-direction:row;
flex-direction:row;
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
border:none;
border-radius:3px;
cursor:pointer;
font-size:14px;
-webkit-box-pack:center;
-ms-flex-pack:center;
justify-content:center;
padding:5px 10px;
text-align:left;
vertical-align:middle;
background-color:#f5f8fa;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.8)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0));
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
color:#182026;
-moz-appearance:none;
-webkit-appearance:none;
border-radius:3px;
height:30px;
padding:0 25px 0 10px;
width:100%; }
.bp3-html-select select > *, .bp3-select select > *{
-webkit-box-flex:0;
-ms-flex-positive:0;
flex-grow:0;
-ms-flex-negative:0;
flex-shrink:0; }
.bp3-html-select select > .bp3-fill, .bp3-select select > .bp3-fill{
-webkit-box-flex:1;
-ms-flex-positive:1;
flex-grow:1;
-ms-flex-negative:1;
flex-shrink:1; }
.bp3-html-select select::before,
.bp3-select select::before, .bp3-html-select select > *, .bp3-select select > *{
margin-right:7px; }
.bp3-html-select select:empty::before,
.bp3-select select:empty::before,
.bp3-html-select select > :last-child,
.bp3-select select > :last-child{
margin-right:0; }
.bp3-html-select select:hover,
.bp3-select select:hover{
background-clip:padding-box;
background-color:#ebf1f5;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1); }
.bp3-html-select select:active,
.bp3-select select:active, .bp3-html-select select.bp3-active,
.bp3-select select.bp3-active{
background-color:#d8e1e8;
background-image:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-html-select select:disabled,
.bp3-select select:disabled, .bp3-html-select select.bp3-disabled,
.bp3-select select.bp3-disabled{
background-color:rgba(206, 217, 224, 0.5);
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed;
outline:none; }
.bp3-html-select select:disabled.bp3-active,
.bp3-select select:disabled.bp3-active, .bp3-html-select select:disabled.bp3-active:hover,
.bp3-select select:disabled.bp3-active:hover, .bp3-html-select select.bp3-disabled.bp3-active,
.bp3-select select.bp3-disabled.bp3-active, .bp3-html-select select.bp3-disabled.bp3-active:hover,
.bp3-select select.bp3-disabled.bp3-active:hover{
background:rgba(206, 217, 224, 0.7); }
.bp3-html-select.bp3-minimal select,
.bp3-select.bp3-minimal select{
background:none;
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-html-select.bp3-minimal select:hover,
.bp3-select.bp3-minimal select:hover{
background:rgba(167, 182, 194, 0.3);
-webkit-box-shadow:none;
box-shadow:none;
color:#182026;
text-decoration:none; }
.bp3-html-select.bp3-minimal select:active,
.bp3-select.bp3-minimal select:active, .bp3-html-select.bp3-minimal select.bp3-active,
.bp3-select.bp3-minimal select.bp3-active{
background:rgba(115, 134, 148, 0.3);
-webkit-box-shadow:none;
box-shadow:none;
color:#182026; }
.bp3-html-select.bp3-minimal select:disabled,
.bp3-select.bp3-minimal select:disabled, .bp3-html-select.bp3-minimal select:disabled:hover,
.bp3-select.bp3-minimal select:disabled:hover, .bp3-html-select.bp3-minimal select.bp3-disabled,
.bp3-select.bp3-minimal select.bp3-disabled, .bp3-html-select.bp3-minimal select.bp3-disabled:hover,
.bp3-select.bp3-minimal select.bp3-disabled:hover{
background:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-html-select.bp3-minimal select:disabled.bp3-active,
.bp3-select.bp3-minimal select:disabled.bp3-active, .bp3-html-select.bp3-minimal select:disabled:hover.bp3-active,
.bp3-select.bp3-minimal select:disabled:hover.bp3-active, .bp3-html-select.bp3-minimal select.bp3-disabled.bp3-active,
.bp3-select.bp3-minimal select.bp3-disabled.bp3-active, .bp3-html-select.bp3-minimal select.bp3-disabled:hover.bp3-active,
.bp3-select.bp3-minimal select.bp3-disabled:hover.bp3-active{
background:rgba(115, 134, 148, 0.3); }
.bp3-dark .bp3-html-select.bp3-minimal select, .bp3-html-select.bp3-minimal .bp3-dark select,
.bp3-dark .bp3-select.bp3-minimal select, .bp3-select.bp3-minimal .bp3-dark select{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:inherit; }
.bp3-dark .bp3-html-select.bp3-minimal select:hover, .bp3-html-select.bp3-minimal .bp3-dark select:hover,
.bp3-dark .bp3-select.bp3-minimal select:hover, .bp3-select.bp3-minimal .bp3-dark select:hover, .bp3-dark .bp3-html-select.bp3-minimal select:active, .bp3-html-select.bp3-minimal .bp3-dark select:active,
.bp3-dark .bp3-select.bp3-minimal select:active, .bp3-select.bp3-minimal .bp3-dark select:active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-html-select.bp3-minimal select:hover, .bp3-html-select.bp3-minimal .bp3-dark select:hover,
.bp3-dark .bp3-select.bp3-minimal select:hover, .bp3-select.bp3-minimal .bp3-dark select:hover{
background:rgba(138, 155, 168, 0.15); }
.bp3-dark .bp3-html-select.bp3-minimal select:active, .bp3-html-select.bp3-minimal .bp3-dark select:active,
.bp3-dark .bp3-select.bp3-minimal select:active, .bp3-select.bp3-minimal .bp3-dark select:active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-active{
background:rgba(138, 155, 168, 0.3);
color:#f5f8fa; }
.bp3-dark .bp3-html-select.bp3-minimal select:disabled, .bp3-html-select.bp3-minimal .bp3-dark select:disabled,
.bp3-dark .bp3-select.bp3-minimal select:disabled, .bp3-select.bp3-minimal .bp3-dark select:disabled, .bp3-dark .bp3-html-select.bp3-minimal select:disabled:hover, .bp3-html-select.bp3-minimal .bp3-dark select:disabled:hover,
.bp3-dark .bp3-select.bp3-minimal select:disabled:hover, .bp3-select.bp3-minimal .bp3-dark select:disabled:hover, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-disabled, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-disabled,
.bp3-dark .bp3-select.bp3-minimal select.bp3-disabled, .bp3-select.bp3-minimal .bp3-dark select.bp3-disabled, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-disabled:hover, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-disabled:hover,
.bp3-dark .bp3-select.bp3-minimal select.bp3-disabled:hover, .bp3-select.bp3-minimal .bp3-dark select.bp3-disabled:hover{
background:none;
color:rgba(167, 182, 194, 0.6);
cursor:not-allowed; }
.bp3-dark .bp3-html-select.bp3-minimal select:disabled.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select:disabled.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select:disabled.bp3-active, .bp3-select.bp3-minimal .bp3-dark select:disabled.bp3-active, .bp3-dark .bp3-html-select.bp3-minimal select:disabled:hover.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select:disabled:hover.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select:disabled:hover.bp3-active, .bp3-select.bp3-minimal .bp3-dark select:disabled:hover.bp3-active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-disabled.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-disabled.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-disabled.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-disabled.bp3-active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-disabled:hover.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-disabled:hover.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-disabled:hover.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-disabled:hover.bp3-active{
background:rgba(138, 155, 168, 0.3); }
.bp3-html-select.bp3-minimal select.bp3-intent-primary,
.bp3-select.bp3-minimal select.bp3-intent-primary{
color:#106ba3; }
.bp3-html-select.bp3-minimal select.bp3-intent-primary:hover,
.bp3-select.bp3-minimal select.bp3-intent-primary:hover, .bp3-html-select.bp3-minimal select.bp3-intent-primary:active,
.bp3-select.bp3-minimal select.bp3-intent-primary:active, .bp3-html-select.bp3-minimal select.bp3-intent-primary.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-primary.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#106ba3; }
.bp3-html-select.bp3-minimal select.bp3-intent-primary:hover,
.bp3-select.bp3-minimal select.bp3-intent-primary:hover{
background:rgba(19, 124, 189, 0.15);
color:#106ba3; }
.bp3-html-select.bp3-minimal select.bp3-intent-primary:active,
.bp3-select.bp3-minimal select.bp3-intent-primary:active, .bp3-html-select.bp3-minimal select.bp3-intent-primary.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-primary.bp3-active{
background:rgba(19, 124, 189, 0.3);
color:#106ba3; }
.bp3-html-select.bp3-minimal select.bp3-intent-primary:disabled,
.bp3-select.bp3-minimal select.bp3-intent-primary:disabled, .bp3-html-select.bp3-minimal select.bp3-intent-primary.bp3-disabled,
.bp3-select.bp3-minimal select.bp3-intent-primary.bp3-disabled{
background:none;
color:rgba(16, 107, 163, 0.5); }
.bp3-html-select.bp3-minimal select.bp3-intent-primary:disabled.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-primary:disabled.bp3-active, .bp3-html-select.bp3-minimal select.bp3-intent-primary.bp3-disabled.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-primary.bp3-disabled.bp3-active{
background:rgba(19, 124, 189, 0.3); }
.bp3-html-select.bp3-minimal select.bp3-intent-primary .bp3-button-spinner .bp3-spinner-head, .bp3-select.bp3-minimal select.bp3-intent-primary .bp3-button-spinner .bp3-spinner-head{
stroke:#106ba3; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-primary, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-primary,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-primary, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-primary{
color:#48aff0; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-primary:hover, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-primary:hover,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-primary:hover, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-primary:hover{
background:rgba(19, 124, 189, 0.2);
color:#48aff0; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-primary:active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-primary:active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-primary:active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-primary:active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-primary.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-primary.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-primary.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-primary.bp3-active{
background:rgba(19, 124, 189, 0.3);
color:#48aff0; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-primary:disabled, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-primary:disabled,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-primary:disabled, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-primary:disabled, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-primary.bp3-disabled, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-primary.bp3-disabled,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-primary.bp3-disabled, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-primary.bp3-disabled{
background:none;
color:rgba(72, 175, 240, 0.5); }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-primary:disabled.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-primary:disabled.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-primary:disabled.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-primary:disabled.bp3-active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-primary.bp3-disabled.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-primary.bp3-disabled.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-primary.bp3-disabled.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-primary.bp3-disabled.bp3-active{
background:rgba(19, 124, 189, 0.3); }
.bp3-html-select.bp3-minimal select.bp3-intent-success,
.bp3-select.bp3-minimal select.bp3-intent-success{
color:#0d8050; }
.bp3-html-select.bp3-minimal select.bp3-intent-success:hover,
.bp3-select.bp3-minimal select.bp3-intent-success:hover, .bp3-html-select.bp3-minimal select.bp3-intent-success:active,
.bp3-select.bp3-minimal select.bp3-intent-success:active, .bp3-html-select.bp3-minimal select.bp3-intent-success.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-success.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#0d8050; }
.bp3-html-select.bp3-minimal select.bp3-intent-success:hover,
.bp3-select.bp3-minimal select.bp3-intent-success:hover{
background:rgba(15, 153, 96, 0.15);
color:#0d8050; }
.bp3-html-select.bp3-minimal select.bp3-intent-success:active,
.bp3-select.bp3-minimal select.bp3-intent-success:active, .bp3-html-select.bp3-minimal select.bp3-intent-success.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-success.bp3-active{
background:rgba(15, 153, 96, 0.3);
color:#0d8050; }
.bp3-html-select.bp3-minimal select.bp3-intent-success:disabled,
.bp3-select.bp3-minimal select.bp3-intent-success:disabled, .bp3-html-select.bp3-minimal select.bp3-intent-success.bp3-disabled,
.bp3-select.bp3-minimal select.bp3-intent-success.bp3-disabled{
background:none;
color:rgba(13, 128, 80, 0.5); }
.bp3-html-select.bp3-minimal select.bp3-intent-success:disabled.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-success:disabled.bp3-active, .bp3-html-select.bp3-minimal select.bp3-intent-success.bp3-disabled.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-success.bp3-disabled.bp3-active{
background:rgba(15, 153, 96, 0.3); }
.bp3-html-select.bp3-minimal select.bp3-intent-success .bp3-button-spinner .bp3-spinner-head, .bp3-select.bp3-minimal select.bp3-intent-success .bp3-button-spinner .bp3-spinner-head{
stroke:#0d8050; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-success, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-success,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-success, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-success{
color:#3dcc91; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-success:hover, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-success:hover,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-success:hover, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-success:hover{
background:rgba(15, 153, 96, 0.2);
color:#3dcc91; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-success:active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-success:active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-success:active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-success:active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-success.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-success.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-success.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-success.bp3-active{
background:rgba(15, 153, 96, 0.3);
color:#3dcc91; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-success:disabled, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-success:disabled,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-success:disabled, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-success:disabled, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-success.bp3-disabled, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-success.bp3-disabled,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-success.bp3-disabled, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-success.bp3-disabled{
background:none;
color:rgba(61, 204, 145, 0.5); }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-success:disabled.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-success:disabled.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-success:disabled.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-success:disabled.bp3-active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-success.bp3-disabled.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-success.bp3-disabled.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-success.bp3-disabled.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-success.bp3-disabled.bp3-active{
background:rgba(15, 153, 96, 0.3); }
.bp3-html-select.bp3-minimal select.bp3-intent-warning,
.bp3-select.bp3-minimal select.bp3-intent-warning{
color:#bf7326; }
.bp3-html-select.bp3-minimal select.bp3-intent-warning:hover,
.bp3-select.bp3-minimal select.bp3-intent-warning:hover, .bp3-html-select.bp3-minimal select.bp3-intent-warning:active,
.bp3-select.bp3-minimal select.bp3-intent-warning:active, .bp3-html-select.bp3-minimal select.bp3-intent-warning.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-warning.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#bf7326; }
.bp3-html-select.bp3-minimal select.bp3-intent-warning:hover,
.bp3-select.bp3-minimal select.bp3-intent-warning:hover{
background:rgba(217, 130, 43, 0.15);
color:#bf7326; }
.bp3-html-select.bp3-minimal select.bp3-intent-warning:active,
.bp3-select.bp3-minimal select.bp3-intent-warning:active, .bp3-html-select.bp3-minimal select.bp3-intent-warning.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-warning.bp3-active{
background:rgba(217, 130, 43, 0.3);
color:#bf7326; }
.bp3-html-select.bp3-minimal select.bp3-intent-warning:disabled,
.bp3-select.bp3-minimal select.bp3-intent-warning:disabled, .bp3-html-select.bp3-minimal select.bp3-intent-warning.bp3-disabled,
.bp3-select.bp3-minimal select.bp3-intent-warning.bp3-disabled{
background:none;
color:rgba(191, 115, 38, 0.5); }
.bp3-html-select.bp3-minimal select.bp3-intent-warning:disabled.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-warning:disabled.bp3-active, .bp3-html-select.bp3-minimal select.bp3-intent-warning.bp3-disabled.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-warning.bp3-disabled.bp3-active{
background:rgba(217, 130, 43, 0.3); }
.bp3-html-select.bp3-minimal select.bp3-intent-warning .bp3-button-spinner .bp3-spinner-head, .bp3-select.bp3-minimal select.bp3-intent-warning .bp3-button-spinner .bp3-spinner-head{
stroke:#bf7326; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-warning, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-warning,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-warning, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-warning{
color:#ffb366; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-warning:hover, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-warning:hover,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-warning:hover, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-warning:hover{
background:rgba(217, 130, 43, 0.2);
color:#ffb366; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-warning:active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-warning:active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-warning:active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-warning:active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-warning.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-warning.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-warning.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-warning.bp3-active{
background:rgba(217, 130, 43, 0.3);
color:#ffb366; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-warning:disabled, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-warning:disabled,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-warning:disabled, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-warning:disabled, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-warning.bp3-disabled, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-warning.bp3-disabled,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-warning.bp3-disabled, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-warning.bp3-disabled{
background:none;
color:rgba(255, 179, 102, 0.5); }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-warning:disabled.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-warning:disabled.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-warning:disabled.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-warning:disabled.bp3-active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-warning.bp3-disabled.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-warning.bp3-disabled.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-warning.bp3-disabled.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-warning.bp3-disabled.bp3-active{
background:rgba(217, 130, 43, 0.3); }
.bp3-html-select.bp3-minimal select.bp3-intent-danger,
.bp3-select.bp3-minimal select.bp3-intent-danger{
color:#c23030; }
.bp3-html-select.bp3-minimal select.bp3-intent-danger:hover,
.bp3-select.bp3-minimal select.bp3-intent-danger:hover, .bp3-html-select.bp3-minimal select.bp3-intent-danger:active,
.bp3-select.bp3-minimal select.bp3-intent-danger:active, .bp3-html-select.bp3-minimal select.bp3-intent-danger.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-danger.bp3-active{
background:none;
-webkit-box-shadow:none;
box-shadow:none;
color:#c23030; }
.bp3-html-select.bp3-minimal select.bp3-intent-danger:hover,
.bp3-select.bp3-minimal select.bp3-intent-danger:hover{
background:rgba(219, 55, 55, 0.15);
color:#c23030; }
.bp3-html-select.bp3-minimal select.bp3-intent-danger:active,
.bp3-select.bp3-minimal select.bp3-intent-danger:active, .bp3-html-select.bp3-minimal select.bp3-intent-danger.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-danger.bp3-active{
background:rgba(219, 55, 55, 0.3);
color:#c23030; }
.bp3-html-select.bp3-minimal select.bp3-intent-danger:disabled,
.bp3-select.bp3-minimal select.bp3-intent-danger:disabled, .bp3-html-select.bp3-minimal select.bp3-intent-danger.bp3-disabled,
.bp3-select.bp3-minimal select.bp3-intent-danger.bp3-disabled{
background:none;
color:rgba(194, 48, 48, 0.5); }
.bp3-html-select.bp3-minimal select.bp3-intent-danger:disabled.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-danger:disabled.bp3-active, .bp3-html-select.bp3-minimal select.bp3-intent-danger.bp3-disabled.bp3-active,
.bp3-select.bp3-minimal select.bp3-intent-danger.bp3-disabled.bp3-active{
background:rgba(219, 55, 55, 0.3); }
.bp3-html-select.bp3-minimal select.bp3-intent-danger .bp3-button-spinner .bp3-spinner-head, .bp3-select.bp3-minimal select.bp3-intent-danger .bp3-button-spinner .bp3-spinner-head{
stroke:#c23030; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-danger, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-danger,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-danger, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-danger{
color:#ff7373; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-danger:hover, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-danger:hover,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-danger:hover, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-danger:hover{
background:rgba(219, 55, 55, 0.2);
color:#ff7373; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-danger:active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-danger:active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-danger:active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-danger:active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-danger.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-danger.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-danger.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-danger.bp3-active{
background:rgba(219, 55, 55, 0.3);
color:#ff7373; }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-danger:disabled, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-danger:disabled,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-danger:disabled, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-danger:disabled, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-danger.bp3-disabled, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-danger.bp3-disabled,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-danger.bp3-disabled, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-danger.bp3-disabled{
background:none;
color:rgba(255, 115, 115, 0.5); }
.bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-danger:disabled.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-danger:disabled.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-danger:disabled.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-danger:disabled.bp3-active, .bp3-dark .bp3-html-select.bp3-minimal select.bp3-intent-danger.bp3-disabled.bp3-active, .bp3-html-select.bp3-minimal .bp3-dark select.bp3-intent-danger.bp3-disabled.bp3-active,
.bp3-dark .bp3-select.bp3-minimal select.bp3-intent-danger.bp3-disabled.bp3-active, .bp3-select.bp3-minimal .bp3-dark select.bp3-intent-danger.bp3-disabled.bp3-active{
background:rgba(219, 55, 55, 0.3); }
.bp3-html-select.bp3-large select,
.bp3-select.bp3-large select{
font-size:16px;
height:40px;
padding-right:35px; }
.bp3-dark .bp3-html-select select, .bp3-dark .bp3-select select{
background-color:#394b59;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.05)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0));
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
color:#f5f8fa; }
.bp3-dark .bp3-html-select select:hover, .bp3-dark .bp3-select select:hover, .bp3-dark .bp3-html-select select:active, .bp3-dark .bp3-select select:active, .bp3-dark .bp3-html-select select.bp3-active, .bp3-dark .bp3-select select.bp3-active{
color:#f5f8fa; }
.bp3-dark .bp3-html-select select:hover, .bp3-dark .bp3-select select:hover{
background-color:#30404d;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-html-select select:active, .bp3-dark .bp3-select select:active, .bp3-dark .bp3-html-select select.bp3-active, .bp3-dark .bp3-select select.bp3-active{
background-color:#202b33;
background-image:none;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-html-select select:disabled, .bp3-dark .bp3-select select:disabled, .bp3-dark .bp3-html-select select.bp3-disabled, .bp3-dark .bp3-select select.bp3-disabled{
background-color:rgba(57, 75, 89, 0.5);
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-html-select select:disabled.bp3-active, .bp3-dark .bp3-select select:disabled.bp3-active, .bp3-dark .bp3-html-select select.bp3-disabled.bp3-active, .bp3-dark .bp3-select select.bp3-disabled.bp3-active{
background:rgba(57, 75, 89, 0.7); }
.bp3-dark .bp3-html-select select .bp3-button-spinner .bp3-spinner-head, .bp3-dark .bp3-select select .bp3-button-spinner .bp3-spinner-head{
background:rgba(16, 22, 26, 0.5);
stroke:#8a9ba8; }
.bp3-html-select select:disabled,
.bp3-select select:disabled{
background-color:rgba(206, 217, 224, 0.5);
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-html-select .bp3-icon,
.bp3-select .bp3-icon, .bp3-select::after{
color:#5c7080;
pointer-events:none;
position:absolute;
right:7px;
top:7px; }
.bp3-html-select .bp3-disabled.bp3-icon,
.bp3-select .bp3-disabled.bp3-icon, .bp3-disabled.bp3-select::after{
color:rgba(92, 112, 128, 0.6); }
.bp3-html-select,
.bp3-select{
display:inline-block;
letter-spacing:normal;
position:relative;
vertical-align:middle; }
.bp3-html-select select::-ms-expand,
.bp3-select select::-ms-expand{
display:none; }
.bp3-html-select .bp3-icon,
.bp3-select .bp3-icon{
color:#5c7080; }
.bp3-html-select .bp3-icon:hover,
.bp3-select .bp3-icon:hover{
color:#182026; }
.bp3-dark .bp3-html-select .bp3-icon, .bp3-dark
.bp3-select .bp3-icon{
color:#a7b6c2; }
.bp3-dark .bp3-html-select .bp3-icon:hover, .bp3-dark
.bp3-select .bp3-icon:hover{
color:#f5f8fa; }
.bp3-html-select.bp3-large::after,
.bp3-html-select.bp3-large .bp3-icon,
.bp3-select.bp3-large::after,
.bp3-select.bp3-large .bp3-icon{
right:12px;
top:12px; }
.bp3-html-select.bp3-fill,
.bp3-html-select.bp3-fill select,
.bp3-select.bp3-fill,
.bp3-select.bp3-fill select{
width:100%; }
.bp3-dark .bp3-html-select option, .bp3-dark
.bp3-select option{
background-color:#30404d;
color:#f5f8fa; }
.bp3-dark .bp3-html-select option:disabled, .bp3-dark
.bp3-select option:disabled{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-html-select::after, .bp3-dark
.bp3-select::after{
color:#a7b6c2; }
.bp3-select::after{
font-family:"Icons16", sans-serif;
font-size:16px;
font-style:normal;
font-weight:400;
line-height:1;
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased;
content:""; }
.bp3-running-text table, table.bp3-html-table{
border-spacing:0;
font-size:14px; }
.bp3-running-text table th, table.bp3-html-table th,
.bp3-running-text table td,
table.bp3-html-table td{
padding:11px;
text-align:left;
vertical-align:top; }
.bp3-running-text table th, table.bp3-html-table th{
color:#182026;
font-weight:600; }
.bp3-running-text table td,
table.bp3-html-table td{
color:#182026; }
.bp3-running-text table tbody tr:first-child th, table.bp3-html-table tbody tr:first-child th,
.bp3-running-text table tbody tr:first-child td,
table.bp3-html-table tbody tr:first-child td,
.bp3-running-text table tfoot tr:first-child th,
table.bp3-html-table tfoot tr:first-child th,
.bp3-running-text table tfoot tr:first-child td,
table.bp3-html-table tfoot tr:first-child td{
-webkit-box-shadow:inset 0 1px 0 0 rgba(16, 22, 26, 0.15);
box-shadow:inset 0 1px 0 0 rgba(16, 22, 26, 0.15); }
.bp3-dark .bp3-running-text table th, .bp3-running-text .bp3-dark table th, .bp3-dark table.bp3-html-table th{
color:#f5f8fa; }
.bp3-dark .bp3-running-text table td, .bp3-running-text .bp3-dark table td, .bp3-dark table.bp3-html-table td{
color:#f5f8fa; }
.bp3-dark .bp3-running-text table tbody tr:first-child th, .bp3-running-text .bp3-dark table tbody tr:first-child th, .bp3-dark table.bp3-html-table tbody tr:first-child th,
.bp3-dark .bp3-running-text table tbody tr:first-child td,
.bp3-running-text .bp3-dark table tbody tr:first-child td,
.bp3-dark table.bp3-html-table tbody tr:first-child td,
.bp3-dark .bp3-running-text table tfoot tr:first-child th,
.bp3-running-text .bp3-dark table tfoot tr:first-child th,
.bp3-dark table.bp3-html-table tfoot tr:first-child th,
.bp3-dark .bp3-running-text table tfoot tr:first-child td,
.bp3-running-text .bp3-dark table tfoot tr:first-child td,
.bp3-dark table.bp3-html-table tfoot tr:first-child td{
-webkit-box-shadow:inset 0 1px 0 0 rgba(255, 255, 255, 0.15);
box-shadow:inset 0 1px 0 0 rgba(255, 255, 255, 0.15); }
table.bp3-html-table.bp3-html-table-condensed th,
table.bp3-html-table.bp3-html-table-condensed td, table.bp3-html-table.bp3-small th,
table.bp3-html-table.bp3-small td{
padding-bottom:6px;
padding-top:6px; }
table.bp3-html-table.bp3-html-table-striped tbody tr:nth-child(odd) td{
background:rgba(191, 204, 214, 0.15); }
table.bp3-html-table.bp3-html-table-bordered th:not(:first-child){
-webkit-box-shadow:inset 1px 0 0 0 rgba(16, 22, 26, 0.15);
box-shadow:inset 1px 0 0 0 rgba(16, 22, 26, 0.15); }
table.bp3-html-table.bp3-html-table-bordered tbody tr td,
table.bp3-html-table.bp3-html-table-bordered tfoot tr td{
-webkit-box-shadow:inset 0 1px 0 0 rgba(16, 22, 26, 0.15);
box-shadow:inset 0 1px 0 0 rgba(16, 22, 26, 0.15); }
table.bp3-html-table.bp3-html-table-bordered tbody tr td:not(:first-child),
table.bp3-html-table.bp3-html-table-bordered tfoot tr td:not(:first-child){
-webkit-box-shadow:inset 1px 1px 0 0 rgba(16, 22, 26, 0.15);
box-shadow:inset 1px 1px 0 0 rgba(16, 22, 26, 0.15); }
table.bp3-html-table.bp3-html-table-bordered.bp3-html-table-striped tbody tr:not(:first-child) td{
-webkit-box-shadow:none;
box-shadow:none; }
table.bp3-html-table.bp3-html-table-bordered.bp3-html-table-striped tbody tr:not(:first-child) td:not(:first-child){
-webkit-box-shadow:inset 1px 0 0 0 rgba(16, 22, 26, 0.15);
box-shadow:inset 1px 0 0 0 rgba(16, 22, 26, 0.15); }
table.bp3-html-table.bp3-interactive tbody tr:hover td{
background-color:rgba(191, 204, 214, 0.3);
cursor:pointer; }
table.bp3-html-table.bp3-interactive tbody tr:active td{
background-color:rgba(191, 204, 214, 0.4); }
.bp3-dark table.bp3-html-table{ }
.bp3-dark table.bp3-html-table.bp3-html-table-striped tbody tr:nth-child(odd) td{
background:rgba(92, 112, 128, 0.15); }
.bp3-dark table.bp3-html-table.bp3-html-table-bordered th:not(:first-child){
-webkit-box-shadow:inset 1px 0 0 0 rgba(255, 255, 255, 0.15);
box-shadow:inset 1px 0 0 0 rgba(255, 255, 255, 0.15); }
.bp3-dark table.bp3-html-table.bp3-html-table-bordered tbody tr td,
.bp3-dark table.bp3-html-table.bp3-html-table-bordered tfoot tr td{
-webkit-box-shadow:inset 0 1px 0 0 rgba(255, 255, 255, 0.15);
box-shadow:inset 0 1px 0 0 rgba(255, 255, 255, 0.15); }
.bp3-dark table.bp3-html-table.bp3-html-table-bordered tbody tr td:not(:first-child),
.bp3-dark table.bp3-html-table.bp3-html-table-bordered tfoot tr td:not(:first-child){
-webkit-box-shadow:inset 1px 1px 0 0 rgba(255, 255, 255, 0.15);
box-shadow:inset 1px 1px 0 0 rgba(255, 255, 255, 0.15); }
.bp3-dark table.bp3-html-table.bp3-html-table-bordered.bp3-html-table-striped tbody tr:not(:first-child) td{
-webkit-box-shadow:inset 1px 0 0 0 rgba(255, 255, 255, 0.15);
box-shadow:inset 1px 0 0 0 rgba(255, 255, 255, 0.15); }
.bp3-dark table.bp3-html-table.bp3-html-table-bordered.bp3-html-table-striped tbody tr:not(:first-child) td:first-child{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark table.bp3-html-table.bp3-interactive tbody tr:hover td{
background-color:rgba(92, 112, 128, 0.3);
cursor:pointer; }
.bp3-dark table.bp3-html-table.bp3-interactive tbody tr:active td{
background-color:rgba(92, 112, 128, 0.4); }
.bp3-key-combo{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:horizontal;
-webkit-box-direction:normal;
-ms-flex-direction:row;
flex-direction:row;
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center; }
.bp3-key-combo > *{
-webkit-box-flex:0;
-ms-flex-positive:0;
flex-grow:0;
-ms-flex-negative:0;
flex-shrink:0; }
.bp3-key-combo > .bp3-fill{
-webkit-box-flex:1;
-ms-flex-positive:1;
flex-grow:1;
-ms-flex-negative:1;
flex-shrink:1; }
.bp3-key-combo::before,
.bp3-key-combo > *{
margin-right:5px; }
.bp3-key-combo:empty::before,
.bp3-key-combo > :last-child{
margin-right:0; }
.bp3-hotkey-dialog{
padding-bottom:0;
top:40px; }
.bp3-hotkey-dialog .bp3-dialog-body{
margin:0;
padding:0; }
.bp3-hotkey-dialog .bp3-hotkey-label{
-webkit-box-flex:1;
-ms-flex-positive:1;
flex-grow:1; }
.bp3-hotkey-column{
margin:auto;
max-height:80vh;
overflow-y:auto;
padding:30px; }
.bp3-hotkey-column .bp3-heading{
margin-bottom:20px; }
.bp3-hotkey-column .bp3-heading:not(:first-child){
margin-top:40px; }
.bp3-hotkey{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack:justify;
-ms-flex-pack:justify;
justify-content:space-between;
margin-left:0;
margin-right:0; }
.bp3-hotkey:not(:last-child){
margin-bottom:10px; }
.bp3-icon{
display:inline-block;
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
vertical-align:text-bottom; }
.bp3-icon:not(:empty)::before{
content:"" !important;
content:unset !important; }
.bp3-icon > svg{
display:block; }
.bp3-icon > svg:not([fill]){
fill:currentColor; }
.bp3-icon.bp3-intent-primary, .bp3-icon-standard.bp3-intent-primary, .bp3-icon-large.bp3-intent-primary{
color:#106ba3; }
.bp3-dark .bp3-icon.bp3-intent-primary, .bp3-dark .bp3-icon-standard.bp3-intent-primary, .bp3-dark .bp3-icon-large.bp3-intent-primary{
color:#48aff0; }
.bp3-icon.bp3-intent-success, .bp3-icon-standard.bp3-intent-success, .bp3-icon-large.bp3-intent-success{
color:#0d8050; }
.bp3-dark .bp3-icon.bp3-intent-success, .bp3-dark .bp3-icon-standard.bp3-intent-success, .bp3-dark .bp3-icon-large.bp3-intent-success{
color:#3dcc91; }
.bp3-icon.bp3-intent-warning, .bp3-icon-standard.bp3-intent-warning, .bp3-icon-large.bp3-intent-warning{
color:#bf7326; }
.bp3-dark .bp3-icon.bp3-intent-warning, .bp3-dark .bp3-icon-standard.bp3-intent-warning, .bp3-dark .bp3-icon-large.bp3-intent-warning{
color:#ffb366; }
.bp3-icon.bp3-intent-danger, .bp3-icon-standard.bp3-intent-danger, .bp3-icon-large.bp3-intent-danger{
color:#c23030; }
.bp3-dark .bp3-icon.bp3-intent-danger, .bp3-dark .bp3-icon-standard.bp3-intent-danger, .bp3-dark .bp3-icon-large.bp3-intent-danger{
color:#ff7373; }
span.bp3-icon-standard{
font-family:"Icons16", sans-serif;
font-size:16px;
font-style:normal;
font-weight:400;
line-height:1;
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased;
display:inline-block; }
span.bp3-icon-large{
font-family:"Icons20", sans-serif;
font-size:20px;
font-style:normal;
font-weight:400;
line-height:1;
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased;
display:inline-block; }
span.bp3-icon:empty{
font-family:"Icons20";
font-size:inherit;
font-style:normal;
font-weight:400;
line-height:1; }
span.bp3-icon:empty::before{
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased; }
.bp3-icon-add::before{
content:""; }
.bp3-icon-add-column-left::before{
content:""; }
.bp3-icon-add-column-right::before{
content:""; }
.bp3-icon-add-row-bottom::before{
content:""; }
.bp3-icon-add-row-top::before{
content:""; }
.bp3-icon-add-to-artifact::before{
content:""; }
.bp3-icon-add-to-folder::before{
content:""; }
.bp3-icon-airplane::before{
content:""; }
.bp3-icon-align-center::before{
content:""; }
.bp3-icon-align-justify::before{
content:""; }
.bp3-icon-align-left::before{
content:""; }
.bp3-icon-align-right::before{
content:""; }
.bp3-icon-alignment-bottom::before{
content:""; }
.bp3-icon-alignment-horizontal-center::before{
content:""; }
.bp3-icon-alignment-left::before{
content:""; }
.bp3-icon-alignment-right::before{
content:""; }
.bp3-icon-alignment-top::before{
content:""; }
.bp3-icon-alignment-vertical-center::before{
content:""; }
.bp3-icon-annotation::before{
content:""; }
.bp3-icon-application::before{
content:""; }
.bp3-icon-applications::before{
content:""; }
.bp3-icon-archive::before{
content:""; }
.bp3-icon-arrow-bottom-left::before{
content:"↙"; }
.bp3-icon-arrow-bottom-right::before{
content:"↘"; }
.bp3-icon-arrow-down::before{
content:"↓"; }
.bp3-icon-arrow-left::before{
content:"←"; }
.bp3-icon-arrow-right::before{
content:"→"; }
.bp3-icon-arrow-top-left::before{
content:"↖"; }
.bp3-icon-arrow-top-right::before{
content:"↗"; }
.bp3-icon-arrow-up::before{
content:"↑"; }
.bp3-icon-arrows-horizontal::before{
content:"↔"; }
.bp3-icon-arrows-vertical::before{
content:"↕"; }
.bp3-icon-asterisk::before{
content:"*"; }
.bp3-icon-automatic-updates::before{
content:""; }
.bp3-icon-badge::before{
content:""; }
.bp3-icon-ban-circle::before{
content:""; }
.bp3-icon-bank-account::before{
content:""; }
.bp3-icon-barcode::before{
content:""; }
.bp3-icon-blank::before{
content:""; }
.bp3-icon-blocked-person::before{
content:""; }
.bp3-icon-bold::before{
content:""; }
.bp3-icon-book::before{
content:""; }
.bp3-icon-bookmark::before{
content:""; }
.bp3-icon-box::before{
content:""; }
.bp3-icon-briefcase::before{
content:""; }
.bp3-icon-bring-data::before{
content:""; }
.bp3-icon-build::before{
content:""; }
.bp3-icon-calculator::before{
content:""; }
.bp3-icon-calendar::before{
content:""; }
.bp3-icon-camera::before{
content:""; }
.bp3-icon-caret-down::before{
content:"⌄"; }
.bp3-icon-caret-left::before{
content:"〈"; }
.bp3-icon-caret-right::before{
content:"〉"; }
.bp3-icon-caret-up::before{
content:"⌃"; }
.bp3-icon-cell-tower::before{
content:""; }
.bp3-icon-changes::before{
content:""; }
.bp3-icon-chart::before{
content:""; }
.bp3-icon-chat::before{
content:""; }
.bp3-icon-chevron-backward::before{
content:""; }
.bp3-icon-chevron-down::before{
content:""; }
.bp3-icon-chevron-forward::before{
content:""; }
.bp3-icon-chevron-left::before{
content:""; }
.bp3-icon-chevron-right::before{
content:""; }
.bp3-icon-chevron-up::before{
content:""; }
.bp3-icon-circle::before{
content:""; }
.bp3-icon-circle-arrow-down::before{
content:""; }
.bp3-icon-circle-arrow-left::before{
content:""; }
.bp3-icon-circle-arrow-right::before{
content:""; }
.bp3-icon-circle-arrow-up::before{
content:""; }
.bp3-icon-citation::before{
content:""; }
.bp3-icon-clean::before{
content:""; }
.bp3-icon-clipboard::before{
content:""; }
.bp3-icon-cloud::before{
content:"☁"; }
.bp3-icon-cloud-download::before{
content:""; }
.bp3-icon-cloud-upload::before{
content:""; }
.bp3-icon-code::before{
content:""; }
.bp3-icon-code-block::before{
content:""; }
.bp3-icon-cog::before{
content:""; }
.bp3-icon-collapse-all::before{
content:""; }
.bp3-icon-column-layout::before{
content:""; }
.bp3-icon-comment::before{
content:""; }
.bp3-icon-comparison::before{
content:""; }
.bp3-icon-compass::before{
content:""; }
.bp3-icon-compressed::before{
content:""; }
.bp3-icon-confirm::before{
content:""; }
.bp3-icon-console::before{
content:""; }
.bp3-icon-contrast::before{
content:""; }
.bp3-icon-control::before{
content:""; }
.bp3-icon-credit-card::before{
content:""; }
.bp3-icon-cross::before{
content:"✗"; }
.bp3-icon-crown::before{
content:""; }
.bp3-icon-cube::before{
content:""; }
.bp3-icon-cube-add::before{
content:""; }
.bp3-icon-cube-remove::before{
content:""; }
.bp3-icon-curved-range-chart::before{
content:""; }
.bp3-icon-cut::before{
content:""; }
.bp3-icon-dashboard::before{
content:""; }
.bp3-icon-data-lineage::before{
content:""; }
.bp3-icon-database::before{
content:""; }
.bp3-icon-delete::before{
content:""; }
.bp3-icon-delta::before{
content:"Δ"; }
.bp3-icon-derive-column::before{
content:""; }
.bp3-icon-desktop::before{
content:""; }
.bp3-icon-diagnosis::before{
content:""; }
.bp3-icon-diagram-tree::before{
content:""; }
.bp3-icon-direction-left::before{
content:""; }
.bp3-icon-direction-right::before{
content:""; }
.bp3-icon-disable::before{
content:""; }
.bp3-icon-document::before{
content:""; }
.bp3-icon-document-open::before{
content:""; }
.bp3-icon-document-share::before{
content:""; }
.bp3-icon-dollar::before{
content:"$"; }
.bp3-icon-dot::before{
content:"•"; }
.bp3-icon-double-caret-horizontal::before{
content:""; }
.bp3-icon-double-caret-vertical::before{
content:""; }
.bp3-icon-double-chevron-down::before{
content:""; }
.bp3-icon-double-chevron-left::before{
content:""; }
.bp3-icon-double-chevron-right::before{
content:""; }
.bp3-icon-double-chevron-up::before{
content:""; }
.bp3-icon-doughnut-chart::before{
content:""; }
.bp3-icon-download::before{
content:""; }
.bp3-icon-drag-handle-horizontal::before{
content:""; }
.bp3-icon-drag-handle-vertical::before{
content:""; }
.bp3-icon-draw::before{
content:""; }
.bp3-icon-drive-time::before{
content:""; }
.bp3-icon-duplicate::before{
content:""; }
.bp3-icon-edit::before{
content:"✎"; }
.bp3-icon-eject::before{
content:"⏏"; }
.bp3-icon-endorsed::before{
content:""; }
.bp3-icon-envelope::before{
content:"✉"; }
.bp3-icon-equals::before{
content:""; }
.bp3-icon-eraser::before{
content:""; }
.bp3-icon-error::before{
content:""; }
.bp3-icon-euro::before{
content:"€"; }
.bp3-icon-exchange::before{
content:""; }
.bp3-icon-exclude-row::before{
content:""; }
.bp3-icon-expand-all::before{
content:""; }
.bp3-icon-export::before{
content:""; }
.bp3-icon-eye-off::before{
content:""; }
.bp3-icon-eye-on::before{
content:""; }
.bp3-icon-eye-open::before{
content:""; }
.bp3-icon-fast-backward::before{
content:""; }
.bp3-icon-fast-forward::before{
content:""; }
.bp3-icon-feed::before{
content:""; }
.bp3-icon-feed-subscribed::before{
content:""; }
.bp3-icon-film::before{
content:""; }
.bp3-icon-filter::before{
content:""; }
.bp3-icon-filter-keep::before{
content:""; }
.bp3-icon-filter-list::before{
content:""; }
.bp3-icon-filter-open::before{
content:""; }
.bp3-icon-filter-remove::before{
content:""; }
.bp3-icon-flag::before{
content:"⚑"; }
.bp3-icon-flame::before{
content:""; }
.bp3-icon-flash::before{
content:""; }
.bp3-icon-floppy-disk::before{
content:""; }
.bp3-icon-flow-branch::before{
content:""; }
.bp3-icon-flow-end::before{
content:""; }
.bp3-icon-flow-linear::before{
content:""; }
.bp3-icon-flow-review::before{
content:""; }
.bp3-icon-flow-review-branch::before{
content:""; }
.bp3-icon-flows::before{
content:""; }
.bp3-icon-folder-close::before{
content:""; }
.bp3-icon-folder-new::before{
content:""; }
.bp3-icon-folder-open::before{
content:""; }
.bp3-icon-folder-shared::before{
content:""; }
.bp3-icon-folder-shared-open::before{
content:""; }
.bp3-icon-follower::before{
content:""; }
.bp3-icon-following::before{
content:""; }
.bp3-icon-font::before{
content:""; }
.bp3-icon-fork::before{
content:""; }
.bp3-icon-form::before{
content:""; }
.bp3-icon-full-circle::before{
content:""; }
.bp3-icon-full-stacked-chart::before{
content:""; }
.bp3-icon-fullscreen::before{
content:""; }
.bp3-icon-function::before{
content:""; }
.bp3-icon-gantt-chart::before{
content:""; }
.bp3-icon-geolocation::before{
content:""; }
.bp3-icon-geosearch::before{
content:""; }
.bp3-icon-git-branch::before{
content:""; }
.bp3-icon-git-commit::before{
content:""; }
.bp3-icon-git-merge::before{
content:""; }
.bp3-icon-git-new-branch::before{
content:""; }
.bp3-icon-git-pull::before{
content:""; }
.bp3-icon-git-push::before{
content:""; }
.bp3-icon-git-repo::before{
content:""; }
.bp3-icon-glass::before{
content:""; }
.bp3-icon-globe::before{
content:""; }
.bp3-icon-globe-network::before{
content:""; }
.bp3-icon-graph::before{
content:""; }
.bp3-icon-graph-remove::before{
content:""; }
.bp3-icon-greater-than::before{
content:""; }
.bp3-icon-greater-than-or-equal-to::before{
content:""; }
.bp3-icon-grid::before{
content:""; }
.bp3-icon-grid-view::before{
content:""; }
.bp3-icon-group-objects::before{
content:""; }
.bp3-icon-grouped-bar-chart::before{
content:""; }
.bp3-icon-hand::before{
content:""; }
.bp3-icon-hand-down::before{
content:""; }
.bp3-icon-hand-left::before{
content:""; }
.bp3-icon-hand-right::before{
content:""; }
.bp3-icon-hand-up::before{
content:""; }
.bp3-icon-header::before{
content:""; }
.bp3-icon-header-one::before{
content:""; }
.bp3-icon-header-two::before{
content:""; }
.bp3-icon-headset::before{
content:""; }
.bp3-icon-heart::before{
content:"♥"; }
.bp3-icon-heart-broken::before{
content:""; }
.bp3-icon-heat-grid::before{
content:""; }
.bp3-icon-heatmap::before{
content:""; }
.bp3-icon-help::before{
content:"?"; }
.bp3-icon-helper-management::before{
content:""; }
.bp3-icon-highlight::before{
content:""; }
.bp3-icon-history::before{
content:""; }
.bp3-icon-home::before{
content:"⌂"; }
.bp3-icon-horizontal-bar-chart::before{
content:""; }
.bp3-icon-horizontal-bar-chart-asc::before{
content:""; }
.bp3-icon-horizontal-bar-chart-desc::before{
content:""; }
.bp3-icon-horizontal-distribution::before{
content:""; }
.bp3-icon-id-number::before{
content:""; }
.bp3-icon-image-rotate-left::before{
content:""; }
.bp3-icon-image-rotate-right::before{
content:""; }
.bp3-icon-import::before{
content:""; }
.bp3-icon-inbox::before{
content:""; }
.bp3-icon-inbox-filtered::before{
content:""; }
.bp3-icon-inbox-geo::before{
content:""; }
.bp3-icon-inbox-search::before{
content:""; }
.bp3-icon-inbox-update::before{
content:""; }
.bp3-icon-info-sign::before{
content:"ℹ"; }
.bp3-icon-inheritance::before{
content:""; }
.bp3-icon-inner-join::before{
content:""; }
.bp3-icon-insert::before{
content:""; }
.bp3-icon-intersection::before{
content:""; }
.bp3-icon-ip-address::before{
content:""; }
.bp3-icon-issue::before{
content:""; }
.bp3-icon-issue-closed::before{
content:""; }
.bp3-icon-issue-new::before{
content:""; }
.bp3-icon-italic::before{
content:""; }
.bp3-icon-join-table::before{
content:""; }
.bp3-icon-key::before{
content:""; }
.bp3-icon-key-backspace::before{
content:""; }
.bp3-icon-key-command::before{
content:""; }
.bp3-icon-key-control::before{
content:""; }
.bp3-icon-key-delete::before{
content:""; }
.bp3-icon-key-enter::before{
content:""; }
.bp3-icon-key-escape::before{
content:""; }
.bp3-icon-key-option::before{
content:""; }
.bp3-icon-key-shift::before{
content:""; }
.bp3-icon-key-tab::before{
content:""; }
.bp3-icon-known-vehicle::before{
content:""; }
.bp3-icon-lab-test::before{
content:""; }
.bp3-icon-label::before{
content:""; }
.bp3-icon-layer::before{
content:""; }
.bp3-icon-layers::before{
content:""; }
.bp3-icon-layout::before{
content:""; }
.bp3-icon-layout-auto::before{
content:""; }
.bp3-icon-layout-balloon::before{
content:""; }
.bp3-icon-layout-circle::before{
content:""; }
.bp3-icon-layout-grid::before{
content:""; }
.bp3-icon-layout-group-by::before{
content:""; }
.bp3-icon-layout-hierarchy::before{
content:""; }
.bp3-icon-layout-linear::before{
content:""; }
.bp3-icon-layout-skew-grid::before{
content:""; }
.bp3-icon-layout-sorted-clusters::before{
content:""; }
.bp3-icon-learning::before{
content:""; }
.bp3-icon-left-join::before{
content:""; }
.bp3-icon-less-than::before{
content:""; }
.bp3-icon-less-than-or-equal-to::before{
content:""; }
.bp3-icon-lifesaver::before{
content:""; }
.bp3-icon-lightbulb::before{
content:""; }
.bp3-icon-link::before{
content:""; }
.bp3-icon-list::before{
content:"☰"; }
.bp3-icon-list-columns::before{
content:""; }
.bp3-icon-list-detail-view::before{
content:""; }
.bp3-icon-locate::before{
content:""; }
.bp3-icon-lock::before{
content:""; }
.bp3-icon-log-in::before{
content:""; }
.bp3-icon-log-out::before{
content:""; }
.bp3-icon-manual::before{
content:""; }
.bp3-icon-manually-entered-data::before{
content:""; }
.bp3-icon-map::before{
content:""; }
.bp3-icon-map-create::before{
content:""; }
.bp3-icon-map-marker::before{
content:""; }
.bp3-icon-maximize::before{
content:""; }
.bp3-icon-media::before{
content:""; }
.bp3-icon-menu::before{
content:""; }
.bp3-icon-menu-closed::before{
content:""; }
.bp3-icon-menu-open::before{
content:""; }
.bp3-icon-merge-columns::before{
content:""; }
.bp3-icon-merge-links::before{
content:""; }
.bp3-icon-minimize::before{
content:""; }
.bp3-icon-minus::before{
content:"−"; }
.bp3-icon-mobile-phone::before{
content:""; }
.bp3-icon-mobile-video::before{
content:""; }
.bp3-icon-moon::before{
content:""; }
.bp3-icon-more::before{
content:""; }
.bp3-icon-mountain::before{
content:""; }
.bp3-icon-move::before{
content:""; }
.bp3-icon-mugshot::before{
content:""; }
.bp3-icon-multi-select::before{
content:""; }
.bp3-icon-music::before{
content:""; }
.bp3-icon-new-drawing::before{
content:""; }
.bp3-icon-new-grid-item::before{
content:""; }
.bp3-icon-new-layer::before{
content:""; }
.bp3-icon-new-layers::before{
content:""; }
.bp3-icon-new-link::before{
content:""; }
.bp3-icon-new-object::before{
content:""; }
.bp3-icon-new-person::before{
content:""; }
.bp3-icon-new-prescription::before{
content:""; }
.bp3-icon-new-text-box::before{
content:""; }
.bp3-icon-ninja::before{
content:""; }
.bp3-icon-not-equal-to::before{
content:""; }
.bp3-icon-notifications::before{
content:""; }
.bp3-icon-notifications-updated::before{
content:""; }
.bp3-icon-numbered-list::before{
content:""; }
.bp3-icon-numerical::before{
content:""; }
.bp3-icon-office::before{
content:""; }
.bp3-icon-offline::before{
content:""; }
.bp3-icon-oil-field::before{
content:""; }
.bp3-icon-one-column::before{
content:""; }
.bp3-icon-outdated::before{
content:""; }
.bp3-icon-page-layout::before{
content:""; }
.bp3-icon-panel-stats::before{
content:""; }
.bp3-icon-panel-table::before{
content:""; }
.bp3-icon-paperclip::before{
content:""; }
.bp3-icon-paragraph::before{
content:""; }
.bp3-icon-path::before{
content:""; }
.bp3-icon-path-search::before{
content:""; }
.bp3-icon-pause::before{
content:""; }
.bp3-icon-people::before{
content:""; }
.bp3-icon-percentage::before{
content:""; }
.bp3-icon-person::before{
content:""; }
.bp3-icon-phone::before{
content:"☎"; }
.bp3-icon-pie-chart::before{
content:""; }
.bp3-icon-pin::before{
content:""; }
.bp3-icon-pivot::before{
content:""; }
.bp3-icon-pivot-table::before{
content:""; }
.bp3-icon-play::before{
content:""; }
.bp3-icon-plus::before{
content:"+"; }
.bp3-icon-polygon-filter::before{
content:""; }
.bp3-icon-power::before{
content:""; }
.bp3-icon-predictive-analysis::before{
content:""; }
.bp3-icon-prescription::before{
content:""; }
.bp3-icon-presentation::before{
content:""; }
.bp3-icon-print::before{
content:"⎙"; }
.bp3-icon-projects::before{
content:""; }
.bp3-icon-properties::before{
content:""; }
.bp3-icon-property::before{
content:""; }
.bp3-icon-publish-function::before{
content:""; }
.bp3-icon-pulse::before{
content:""; }
.bp3-icon-random::before{
content:""; }
.bp3-icon-record::before{
content:""; }
.bp3-icon-redo::before{
content:""; }
.bp3-icon-refresh::before{
content:""; }
.bp3-icon-regression-chart::before{
content:""; }
.bp3-icon-remove::before{
content:""; }
.bp3-icon-remove-column::before{
content:""; }
.bp3-icon-remove-column-left::before{
content:""; }
.bp3-icon-remove-column-right::before{
content:""; }
.bp3-icon-remove-row-bottom::before{
content:""; }
.bp3-icon-remove-row-top::before{
content:""; }
.bp3-icon-repeat::before{
content:""; }
.bp3-icon-reset::before{
content:""; }
.bp3-icon-resolve::before{
content:""; }
.bp3-icon-rig::before{
content:""; }
.bp3-icon-right-join::before{
content:""; }
.bp3-icon-ring::before{
content:""; }
.bp3-icon-rotate-document::before{
content:""; }
.bp3-icon-rotate-page::before{
content:""; }
.bp3-icon-satellite::before{
content:""; }
.bp3-icon-saved::before{
content:""; }
.bp3-icon-scatter-plot::before{
content:""; }
.bp3-icon-search::before{
content:""; }
.bp3-icon-search-around::before{
content:""; }
.bp3-icon-search-template::before{
content:""; }
.bp3-icon-search-text::before{
content:""; }
.bp3-icon-segmented-control::before{
content:""; }
.bp3-icon-select::before{
content:""; }
.bp3-icon-selection::before{
content:"⦿"; }
.bp3-icon-send-to::before{
content:""; }
.bp3-icon-send-to-graph::before{
content:""; }
.bp3-icon-send-to-map::before{
content:""; }
.bp3-icon-series-add::before{
content:""; }
.bp3-icon-series-configuration::before{
content:""; }
.bp3-icon-series-derived::before{
content:""; }
.bp3-icon-series-filtered::before{
content:""; }
.bp3-icon-series-search::before{
content:""; }
.bp3-icon-settings::before{
content:""; }
.bp3-icon-share::before{
content:""; }
.bp3-icon-shield::before{
content:""; }
.bp3-icon-shop::before{
content:""; }
.bp3-icon-shopping-cart::before{
content:""; }
.bp3-icon-signal-search::before{
content:""; }
.bp3-icon-sim-card::before{
content:""; }
.bp3-icon-slash::before{
content:""; }
.bp3-icon-small-cross::before{
content:""; }
.bp3-icon-small-minus::before{
content:""; }
.bp3-icon-small-plus::before{
content:""; }
.bp3-icon-small-tick::before{
content:""; }
.bp3-icon-snowflake::before{
content:""; }
.bp3-icon-social-media::before{
content:""; }
.bp3-icon-sort::before{
content:""; }
.bp3-icon-sort-alphabetical::before{
content:""; }
.bp3-icon-sort-alphabetical-desc::before{
content:""; }
.bp3-icon-sort-asc::before{
content:""; }
.bp3-icon-sort-desc::before{
content:""; }
.bp3-icon-sort-numerical::before{
content:""; }
.bp3-icon-sort-numerical-desc::before{
content:""; }
.bp3-icon-split-columns::before{
content:""; }
.bp3-icon-square::before{
content:""; }
.bp3-icon-stacked-chart::before{
content:""; }
.bp3-icon-star::before{
content:"★"; }
.bp3-icon-star-empty::before{
content:"☆"; }
.bp3-icon-step-backward::before{
content:""; }
.bp3-icon-step-chart::before{
content:""; }
.bp3-icon-step-forward::before{
content:""; }
.bp3-icon-stop::before{
content:""; }
.bp3-icon-stopwatch::before{
content:""; }
.bp3-icon-strikethrough::before{
content:""; }
.bp3-icon-style::before{
content:""; }
.bp3-icon-swap-horizontal::before{
content:""; }
.bp3-icon-swap-vertical::before{
content:""; }
.bp3-icon-symbol-circle::before{
content:""; }
.bp3-icon-symbol-cross::before{
content:""; }
.bp3-icon-symbol-diamond::before{
content:""; }
.bp3-icon-symbol-square::before{
content:""; }
.bp3-icon-symbol-triangle-down::before{
content:""; }
.bp3-icon-symbol-triangle-up::before{
content:""; }
.bp3-icon-tag::before{
content:""; }
.bp3-icon-take-action::before{
content:""; }
.bp3-icon-taxi::before{
content:""; }
.bp3-icon-text-highlight::before{
content:""; }
.bp3-icon-th::before{
content:""; }
.bp3-icon-th-derived::before{
content:""; }
.bp3-icon-th-disconnect::before{
content:""; }
.bp3-icon-th-filtered::before{
content:""; }
.bp3-icon-th-list::before{
content:""; }
.bp3-icon-thumbs-down::before{
content:""; }
.bp3-icon-thumbs-up::before{
content:""; }
.bp3-icon-tick::before{
content:"✓"; }
.bp3-icon-tick-circle::before{
content:""; }
.bp3-icon-time::before{
content:"⏲"; }
.bp3-icon-timeline-area-chart::before{
content:""; }
.bp3-icon-timeline-bar-chart::before{
content:""; }
.bp3-icon-timeline-events::before{
content:""; }
.bp3-icon-timeline-line-chart::before{
content:""; }
.bp3-icon-tint::before{
content:""; }
.bp3-icon-torch::before{
content:""; }
.bp3-icon-tractor::before{
content:""; }
.bp3-icon-train::before{
content:""; }
.bp3-icon-translate::before{
content:""; }
.bp3-icon-trash::before{
content:""; }
.bp3-icon-tree::before{
content:""; }
.bp3-icon-trending-down::before{
content:""; }
.bp3-icon-trending-up::before{
content:""; }
.bp3-icon-truck::before{
content:""; }
.bp3-icon-two-columns::before{
content:""; }
.bp3-icon-unarchive::before{
content:""; }
.bp3-icon-underline::before{
content:"⎁"; }
.bp3-icon-undo::before{
content:"⎌"; }
.bp3-icon-ungroup-objects::before{
content:""; }
.bp3-icon-unknown-vehicle::before{
content:""; }
.bp3-icon-unlock::before{
content:""; }
.bp3-icon-unpin::before{
content:""; }
.bp3-icon-unresolve::before{
content:""; }
.bp3-icon-updated::before{
content:""; }
.bp3-icon-upload::before{
content:""; }
.bp3-icon-user::before{
content:""; }
.bp3-icon-variable::before{
content:""; }
.bp3-icon-vertical-bar-chart-asc::before{
content:""; }
.bp3-icon-vertical-bar-chart-desc::before{
content:""; }
.bp3-icon-vertical-distribution::before{
content:""; }
.bp3-icon-video::before{
content:""; }
.bp3-icon-volume-down::before{
content:""; }
.bp3-icon-volume-off::before{
content:""; }
.bp3-icon-volume-up::before{
content:""; }
.bp3-icon-walk::before{
content:""; }
.bp3-icon-warning-sign::before{
content:""; }
.bp3-icon-waterfall-chart::before{
content:""; }
.bp3-icon-widget::before{
content:""; }
.bp3-icon-widget-button::before{
content:""; }
.bp3-icon-widget-footer::before{
content:""; }
.bp3-icon-widget-header::before{
content:""; }
.bp3-icon-wrench::before{
content:""; }
.bp3-icon-zoom-in::before{
content:""; }
.bp3-icon-zoom-out::before{
content:""; }
.bp3-icon-zoom-to-fit::before{
content:""; }
.bp3-submenu > .bp3-popover-wrapper{
display:block; }
.bp3-submenu .bp3-popover-target{
display:block; }
.bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-menu-item{ }
.bp3-submenu.bp3-popover{
-webkit-box-shadow:none;
box-shadow:none;
padding:0 5px; }
.bp3-submenu.bp3-popover > .bp3-popover-content{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-submenu.bp3-popover, .bp3-submenu.bp3-popover.bp3-dark{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-dark .bp3-submenu.bp3-popover > .bp3-popover-content, .bp3-submenu.bp3-popover.bp3-dark > .bp3-popover-content{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4); }
.bp3-menu{
background:#ffffff;
border-radius:3px;
color:#182026;
list-style:none;
margin:0;
min-width:180px;
padding:5px;
text-align:left; }
.bp3-menu-divider{
border-top:1px solid rgba(16, 22, 26, 0.15);
display:block;
margin:5px; }
.bp3-dark .bp3-menu-divider{
border-top-color:rgba(255, 255, 255, 0.15); }
.bp3-menu-item{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:horizontal;
-webkit-box-direction:normal;
-ms-flex-direction:row;
flex-direction:row;
-webkit-box-align:start;
-ms-flex-align:start;
align-items:flex-start;
border-radius:2px;
color:inherit;
line-height:20px;
padding:5px 7px;
text-decoration:none;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none; }
.bp3-menu-item > *{
-webkit-box-flex:0;
-ms-flex-positive:0;
flex-grow:0;
-ms-flex-negative:0;
flex-shrink:0; }
.bp3-menu-item > .bp3-fill{
-webkit-box-flex:1;
-ms-flex-positive:1;
flex-grow:1;
-ms-flex-negative:1;
flex-shrink:1; }
.bp3-menu-item::before,
.bp3-menu-item > *{
margin-right:7px; }
.bp3-menu-item:empty::before,
.bp3-menu-item > :last-child{
margin-right:0; }
.bp3-menu-item > .bp3-fill{
word-break:break-word; }
.bp3-menu-item:hover, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-menu-item{
background-color:rgba(167, 182, 194, 0.3);
cursor:pointer;
text-decoration:none; }
.bp3-menu-item.bp3-disabled{
background-color:inherit;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-dark .bp3-menu-item{
color:inherit; }
.bp3-dark .bp3-menu-item:hover, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-menu-item, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-menu-item{
background-color:rgba(138, 155, 168, 0.15);
color:inherit; }
.bp3-dark .bp3-menu-item.bp3-disabled{
background-color:inherit;
color:rgba(167, 182, 194, 0.6); }
.bp3-menu-item.bp3-intent-primary{
color:#106ba3; }
.bp3-menu-item.bp3-intent-primary .bp3-icon{
color:inherit; }
.bp3-menu-item.bp3-intent-primary::before, .bp3-menu-item.bp3-intent-primary::after,
.bp3-menu-item.bp3-intent-primary .bp3-menu-item-label{
color:#106ba3; }
.bp3-menu-item.bp3-intent-primary:hover, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item, .bp3-menu-item.bp3-intent-primary.bp3-active{
background-color:#137cbd; }
.bp3-menu-item.bp3-intent-primary:active{
background-color:#106ba3; }
.bp3-menu-item.bp3-intent-primary:hover, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item, .bp3-menu-item.bp3-intent-primary:hover::before, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item::before, .bp3-menu-item.bp3-intent-primary:hover::after, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item::after,
.bp3-menu-item.bp3-intent-primary:hover .bp3-menu-item-label,
.bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item .bp3-menu-item-label, .bp3-menu-item.bp3-intent-primary:active, .bp3-menu-item.bp3-intent-primary:active::before, .bp3-menu-item.bp3-intent-primary:active::after,
.bp3-menu-item.bp3-intent-primary:active .bp3-menu-item-label, .bp3-menu-item.bp3-intent-primary.bp3-active, .bp3-menu-item.bp3-intent-primary.bp3-active::before, .bp3-menu-item.bp3-intent-primary.bp3-active::after,
.bp3-menu-item.bp3-intent-primary.bp3-active .bp3-menu-item-label{
color:#ffffff; }
.bp3-menu-item.bp3-intent-success{
color:#0d8050; }
.bp3-menu-item.bp3-intent-success .bp3-icon{
color:inherit; }
.bp3-menu-item.bp3-intent-success::before, .bp3-menu-item.bp3-intent-success::after,
.bp3-menu-item.bp3-intent-success .bp3-menu-item-label{
color:#0d8050; }
.bp3-menu-item.bp3-intent-success:hover, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item, .bp3-menu-item.bp3-intent-success.bp3-active{
background-color:#0f9960; }
.bp3-menu-item.bp3-intent-success:active{
background-color:#0d8050; }
.bp3-menu-item.bp3-intent-success:hover, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item, .bp3-menu-item.bp3-intent-success:hover::before, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item::before, .bp3-menu-item.bp3-intent-success:hover::after, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item::after,
.bp3-menu-item.bp3-intent-success:hover .bp3-menu-item-label,
.bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item .bp3-menu-item-label, .bp3-menu-item.bp3-intent-success:active, .bp3-menu-item.bp3-intent-success:active::before, .bp3-menu-item.bp3-intent-success:active::after,
.bp3-menu-item.bp3-intent-success:active .bp3-menu-item-label, .bp3-menu-item.bp3-intent-success.bp3-active, .bp3-menu-item.bp3-intent-success.bp3-active::before, .bp3-menu-item.bp3-intent-success.bp3-active::after,
.bp3-menu-item.bp3-intent-success.bp3-active .bp3-menu-item-label{
color:#ffffff; }
.bp3-menu-item.bp3-intent-warning{
color:#bf7326; }
.bp3-menu-item.bp3-intent-warning .bp3-icon{
color:inherit; }
.bp3-menu-item.bp3-intent-warning::before, .bp3-menu-item.bp3-intent-warning::after,
.bp3-menu-item.bp3-intent-warning .bp3-menu-item-label{
color:#bf7326; }
.bp3-menu-item.bp3-intent-warning:hover, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item, .bp3-menu-item.bp3-intent-warning.bp3-active{
background-color:#d9822b; }
.bp3-menu-item.bp3-intent-warning:active{
background-color:#bf7326; }
.bp3-menu-item.bp3-intent-warning:hover, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item, .bp3-menu-item.bp3-intent-warning:hover::before, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item::before, .bp3-menu-item.bp3-intent-warning:hover::after, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item::after,
.bp3-menu-item.bp3-intent-warning:hover .bp3-menu-item-label,
.bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item .bp3-menu-item-label, .bp3-menu-item.bp3-intent-warning:active, .bp3-menu-item.bp3-intent-warning:active::before, .bp3-menu-item.bp3-intent-warning:active::after,
.bp3-menu-item.bp3-intent-warning:active .bp3-menu-item-label, .bp3-menu-item.bp3-intent-warning.bp3-active, .bp3-menu-item.bp3-intent-warning.bp3-active::before, .bp3-menu-item.bp3-intent-warning.bp3-active::after,
.bp3-menu-item.bp3-intent-warning.bp3-active .bp3-menu-item-label{
color:#ffffff; }
.bp3-menu-item.bp3-intent-danger{
color:#c23030; }
.bp3-menu-item.bp3-intent-danger .bp3-icon{
color:inherit; }
.bp3-menu-item.bp3-intent-danger::before, .bp3-menu-item.bp3-intent-danger::after,
.bp3-menu-item.bp3-intent-danger .bp3-menu-item-label{
color:#c23030; }
.bp3-menu-item.bp3-intent-danger:hover, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item, .bp3-menu-item.bp3-intent-danger.bp3-active{
background-color:#db3737; }
.bp3-menu-item.bp3-intent-danger:active{
background-color:#c23030; }
.bp3-menu-item.bp3-intent-danger:hover, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item, .bp3-menu-item.bp3-intent-danger:hover::before, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item::before, .bp3-menu-item.bp3-intent-danger:hover::after, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item::after,
.bp3-menu-item.bp3-intent-danger:hover .bp3-menu-item-label,
.bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item .bp3-menu-item-label, .bp3-menu-item.bp3-intent-danger:active, .bp3-menu-item.bp3-intent-danger:active::before, .bp3-menu-item.bp3-intent-danger:active::after,
.bp3-menu-item.bp3-intent-danger:active .bp3-menu-item-label, .bp3-menu-item.bp3-intent-danger.bp3-active, .bp3-menu-item.bp3-intent-danger.bp3-active::before, .bp3-menu-item.bp3-intent-danger.bp3-active::after,
.bp3-menu-item.bp3-intent-danger.bp3-active .bp3-menu-item-label{
color:#ffffff; }
.bp3-menu-item::before{
font-family:"Icons16", sans-serif;
font-size:16px;
font-style:normal;
font-weight:400;
line-height:1;
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased;
margin-right:7px; }
.bp3-menu-item::before,
.bp3-menu-item > .bp3-icon{
color:#5c7080;
margin-top:2px; }
.bp3-menu-item .bp3-menu-item-label{
color:#5c7080; }
.bp3-menu-item:hover, .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-menu-item{
color:inherit; }
.bp3-menu-item.bp3-active, .bp3-menu-item:active{
background-color:rgba(115, 134, 148, 0.3); }
.bp3-menu-item.bp3-disabled{
background-color:inherit !important;
color:rgba(92, 112, 128, 0.6) !important;
cursor:not-allowed !important;
outline:none !important; }
.bp3-menu-item.bp3-disabled::before,
.bp3-menu-item.bp3-disabled > .bp3-icon,
.bp3-menu-item.bp3-disabled .bp3-menu-item-label{
color:rgba(92, 112, 128, 0.6) !important; }
.bp3-large .bp3-menu-item{
font-size:16px;
line-height:22px;
padding:9px 7px; }
.bp3-large .bp3-menu-item .bp3-icon{
margin-top:3px; }
.bp3-large .bp3-menu-item::before{
font-family:"Icons20", sans-serif;
font-size:20px;
font-style:normal;
font-weight:400;
line-height:1;
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased;
margin-right:10px;
margin-top:1px; }
button.bp3-menu-item{
background:none;
border:none;
text-align:left;
width:100%; }
.bp3-menu-header{
border-top:1px solid rgba(16, 22, 26, 0.15);
display:block;
margin:5px;
cursor:default;
padding-left:2px; }
.bp3-dark .bp3-menu-header{
border-top-color:rgba(255, 255, 255, 0.15); }
.bp3-menu-header:first-of-type{
border-top:none; }
.bp3-menu-header > h6{
color:#182026;
font-weight:600;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
word-wrap:normal;
line-height:17px;
margin:0;
padding:10px 7px 0 1px; }
.bp3-dark .bp3-menu-header > h6{
color:#f5f8fa; }
.bp3-menu-header:first-of-type > h6{
padding-top:0; }
.bp3-large .bp3-menu-header > h6{
font-size:18px;
padding-bottom:5px;
padding-top:15px; }
.bp3-large .bp3-menu-header:first-of-type > h6{
padding-top:0; }
.bp3-dark .bp3-menu{
background:#30404d;
color:#f5f8fa; }
.bp3-dark .bp3-menu-item{ }
.bp3-dark .bp3-menu-item.bp3-intent-primary{
color:#48aff0; }
.bp3-dark .bp3-menu-item.bp3-intent-primary .bp3-icon{
color:inherit; }
.bp3-dark .bp3-menu-item.bp3-intent-primary::before, .bp3-dark .bp3-menu-item.bp3-intent-primary::after,
.bp3-dark .bp3-menu-item.bp3-intent-primary .bp3-menu-item-label{
color:#48aff0; }
.bp3-dark .bp3-menu-item.bp3-intent-primary:hover, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item, .bp3-dark .bp3-menu-item.bp3-intent-primary.bp3-active{
background-color:#137cbd; }
.bp3-dark .bp3-menu-item.bp3-intent-primary:active{
background-color:#106ba3; }
.bp3-dark .bp3-menu-item.bp3-intent-primary:hover, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item, .bp3-dark .bp3-menu-item.bp3-intent-primary:hover::before, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item::before, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item::before, .bp3-dark .bp3-menu-item.bp3-intent-primary:hover::after, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item::after, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item::after,
.bp3-dark .bp3-menu-item.bp3-intent-primary:hover .bp3-menu-item-label,
.bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item .bp3-menu-item-label,
.bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-primary.bp3-menu-item .bp3-menu-item-label, .bp3-dark .bp3-menu-item.bp3-intent-primary:active, .bp3-dark .bp3-menu-item.bp3-intent-primary:active::before, .bp3-dark .bp3-menu-item.bp3-intent-primary:active::after,
.bp3-dark .bp3-menu-item.bp3-intent-primary:active .bp3-menu-item-label, .bp3-dark .bp3-menu-item.bp3-intent-primary.bp3-active, .bp3-dark .bp3-menu-item.bp3-intent-primary.bp3-active::before, .bp3-dark .bp3-menu-item.bp3-intent-primary.bp3-active::after,
.bp3-dark .bp3-menu-item.bp3-intent-primary.bp3-active .bp3-menu-item-label{
color:#ffffff; }
.bp3-dark .bp3-menu-item.bp3-intent-success{
color:#3dcc91; }
.bp3-dark .bp3-menu-item.bp3-intent-success .bp3-icon{
color:inherit; }
.bp3-dark .bp3-menu-item.bp3-intent-success::before, .bp3-dark .bp3-menu-item.bp3-intent-success::after,
.bp3-dark .bp3-menu-item.bp3-intent-success .bp3-menu-item-label{
color:#3dcc91; }
.bp3-dark .bp3-menu-item.bp3-intent-success:hover, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item, .bp3-dark .bp3-menu-item.bp3-intent-success.bp3-active{
background-color:#0f9960; }
.bp3-dark .bp3-menu-item.bp3-intent-success:active{
background-color:#0d8050; }
.bp3-dark .bp3-menu-item.bp3-intent-success:hover, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item, .bp3-dark .bp3-menu-item.bp3-intent-success:hover::before, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item::before, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item::before, .bp3-dark .bp3-menu-item.bp3-intent-success:hover::after, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item::after, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item::after,
.bp3-dark .bp3-menu-item.bp3-intent-success:hover .bp3-menu-item-label,
.bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item .bp3-menu-item-label,
.bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-success.bp3-menu-item .bp3-menu-item-label, .bp3-dark .bp3-menu-item.bp3-intent-success:active, .bp3-dark .bp3-menu-item.bp3-intent-success:active::before, .bp3-dark .bp3-menu-item.bp3-intent-success:active::after,
.bp3-dark .bp3-menu-item.bp3-intent-success:active .bp3-menu-item-label, .bp3-dark .bp3-menu-item.bp3-intent-success.bp3-active, .bp3-dark .bp3-menu-item.bp3-intent-success.bp3-active::before, .bp3-dark .bp3-menu-item.bp3-intent-success.bp3-active::after,
.bp3-dark .bp3-menu-item.bp3-intent-success.bp3-active .bp3-menu-item-label{
color:#ffffff; }
.bp3-dark .bp3-menu-item.bp3-intent-warning{
color:#ffb366; }
.bp3-dark .bp3-menu-item.bp3-intent-warning .bp3-icon{
color:inherit; }
.bp3-dark .bp3-menu-item.bp3-intent-warning::before, .bp3-dark .bp3-menu-item.bp3-intent-warning::after,
.bp3-dark .bp3-menu-item.bp3-intent-warning .bp3-menu-item-label{
color:#ffb366; }
.bp3-dark .bp3-menu-item.bp3-intent-warning:hover, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item, .bp3-dark .bp3-menu-item.bp3-intent-warning.bp3-active{
background-color:#d9822b; }
.bp3-dark .bp3-menu-item.bp3-intent-warning:active{
background-color:#bf7326; }
.bp3-dark .bp3-menu-item.bp3-intent-warning:hover, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item, .bp3-dark .bp3-menu-item.bp3-intent-warning:hover::before, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item::before, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item::before, .bp3-dark .bp3-menu-item.bp3-intent-warning:hover::after, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item::after, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item::after,
.bp3-dark .bp3-menu-item.bp3-intent-warning:hover .bp3-menu-item-label,
.bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item .bp3-menu-item-label,
.bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-warning.bp3-menu-item .bp3-menu-item-label, .bp3-dark .bp3-menu-item.bp3-intent-warning:active, .bp3-dark .bp3-menu-item.bp3-intent-warning:active::before, .bp3-dark .bp3-menu-item.bp3-intent-warning:active::after,
.bp3-dark .bp3-menu-item.bp3-intent-warning:active .bp3-menu-item-label, .bp3-dark .bp3-menu-item.bp3-intent-warning.bp3-active, .bp3-dark .bp3-menu-item.bp3-intent-warning.bp3-active::before, .bp3-dark .bp3-menu-item.bp3-intent-warning.bp3-active::after,
.bp3-dark .bp3-menu-item.bp3-intent-warning.bp3-active .bp3-menu-item-label{
color:#ffffff; }
.bp3-dark .bp3-menu-item.bp3-intent-danger{
color:#ff7373; }
.bp3-dark .bp3-menu-item.bp3-intent-danger .bp3-icon{
color:inherit; }
.bp3-dark .bp3-menu-item.bp3-intent-danger::before, .bp3-dark .bp3-menu-item.bp3-intent-danger::after,
.bp3-dark .bp3-menu-item.bp3-intent-danger .bp3-menu-item-label{
color:#ff7373; }
.bp3-dark .bp3-menu-item.bp3-intent-danger:hover, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item, .bp3-dark .bp3-menu-item.bp3-intent-danger.bp3-active{
background-color:#db3737; }
.bp3-dark .bp3-menu-item.bp3-intent-danger:active{
background-color:#c23030; }
.bp3-dark .bp3-menu-item.bp3-intent-danger:hover, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item, .bp3-dark .bp3-menu-item.bp3-intent-danger:hover::before, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item::before, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item::before, .bp3-dark .bp3-menu-item.bp3-intent-danger:hover::after, .bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item::after, .bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item::after,
.bp3-dark .bp3-menu-item.bp3-intent-danger:hover .bp3-menu-item-label,
.bp3-dark .bp3-submenu .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item .bp3-menu-item-label,
.bp3-submenu .bp3-dark .bp3-popover-target.bp3-popover-open > .bp3-intent-danger.bp3-menu-item .bp3-menu-item-label, .bp3-dark .bp3-menu-item.bp3-intent-danger:active, .bp3-dark .bp3-menu-item.bp3-intent-danger:active::before, .bp3-dark .bp3-menu-item.bp3-intent-danger:active::after,
.bp3-dark .bp3-menu-item.bp3-intent-danger:active .bp3-menu-item-label, .bp3-dark .bp3-menu-item.bp3-intent-danger.bp3-active, .bp3-dark .bp3-menu-item.bp3-intent-danger.bp3-active::before, .bp3-dark .bp3-menu-item.bp3-intent-danger.bp3-active::after,
.bp3-dark .bp3-menu-item.bp3-intent-danger.bp3-active .bp3-menu-item-label{
color:#ffffff; }
.bp3-dark .bp3-menu-item::before,
.bp3-dark .bp3-menu-item > .bp3-icon{
color:#a7b6c2; }
.bp3-dark .bp3-menu-item .bp3-menu-item-label{
color:#a7b6c2; }
.bp3-dark .bp3-menu-item.bp3-active, .bp3-dark .bp3-menu-item:active{
background-color:rgba(138, 155, 168, 0.3); }
.bp3-dark .bp3-menu-item.bp3-disabled{
color:rgba(167, 182, 194, 0.6) !important; }
.bp3-dark .bp3-menu-item.bp3-disabled::before,
.bp3-dark .bp3-menu-item.bp3-disabled > .bp3-icon,
.bp3-dark .bp3-menu-item.bp3-disabled .bp3-menu-item-label{
color:rgba(167, 182, 194, 0.6) !important; }
.bp3-dark .bp3-menu-divider,
.bp3-dark .bp3-menu-header{
border-color:rgba(255, 255, 255, 0.15); }
.bp3-dark .bp3-menu-header > h6{
color:#f5f8fa; }
.bp3-label .bp3-menu{
margin-top:5px; }
.bp3-navbar{
background-color:#ffffff;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.2);
height:50px;
padding:0 15px;
position:relative;
width:100%;
z-index:10; }
.bp3-navbar.bp3-dark,
.bp3-dark .bp3-navbar{
background-color:#394b59; }
.bp3-navbar.bp3-dark{
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-navbar{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 0 0 rgba(16, 22, 26, 0), 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-navbar.bp3-fixed-top{
left:0;
position:fixed;
right:0;
top:0; }
.bp3-navbar-heading{
font-size:16px;
margin-right:15px; }
.bp3-navbar-group{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
height:50px; }
.bp3-navbar-group.bp3-align-left{
float:left; }
.bp3-navbar-group.bp3-align-right{
float:right; }
.bp3-navbar-divider{
border-left:1px solid rgba(16, 22, 26, 0.15);
height:20px;
margin:0 10px; }
.bp3-dark .bp3-navbar-divider{
border-left-color:rgba(255, 255, 255, 0.15); }
.bp3-non-ideal-state{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column;
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
height:100%;
-webkit-box-pack:center;
-ms-flex-pack:center;
justify-content:center;
text-align:center;
width:100%; }
.bp3-non-ideal-state > *{
-webkit-box-flex:0;
-ms-flex-positive:0;
flex-grow:0;
-ms-flex-negative:0;
flex-shrink:0; }
.bp3-non-ideal-state > .bp3-fill{
-webkit-box-flex:1;
-ms-flex-positive:1;
flex-grow:1;
-ms-flex-negative:1;
flex-shrink:1; }
.bp3-non-ideal-state::before,
.bp3-non-ideal-state > *{
margin-bottom:20px; }
.bp3-non-ideal-state:empty::before,
.bp3-non-ideal-state > :last-child{
margin-bottom:0; }
.bp3-non-ideal-state > *{
max-width:400px; }
.bp3-non-ideal-state-visual{
color:rgba(92, 112, 128, 0.6);
font-size:60px; }
.bp3-dark .bp3-non-ideal-state-visual{
color:rgba(167, 182, 194, 0.6); }
.bp3-overflow-list{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-ms-flex-wrap:nowrap;
flex-wrap:nowrap;
min-width:0; }
.bp3-overflow-list-spacer{
-ms-flex-negative:1;
flex-shrink:1;
width:1px; }
body.bp3-overlay-open{
overflow:hidden; }
.bp3-overlay{
bottom:0;
left:0;
position:static;
right:0;
top:0;
z-index:20; }
.bp3-overlay:not(.bp3-overlay-open){
pointer-events:none; }
.bp3-overlay.bp3-overlay-container{
overflow:hidden;
position:fixed; }
.bp3-overlay.bp3-overlay-container.bp3-overlay-inline{
position:absolute; }
.bp3-overlay.bp3-overlay-scroll-container{
overflow:auto;
position:fixed; }
.bp3-overlay.bp3-overlay-scroll-container.bp3-overlay-inline{
position:absolute; }
.bp3-overlay.bp3-overlay-inline{
display:inline;
overflow:visible; }
.bp3-overlay-content{
position:fixed;
z-index:20; }
.bp3-overlay-inline .bp3-overlay-content,
.bp3-overlay-scroll-container .bp3-overlay-content{
position:absolute; }
.bp3-overlay-backdrop{
bottom:0;
left:0;
position:fixed;
right:0;
top:0;
opacity:1;
background-color:rgba(16, 22, 26, 0.7);
overflow:auto;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none;
z-index:20; }
.bp3-overlay-backdrop.bp3-overlay-enter, .bp3-overlay-backdrop.bp3-overlay-appear{
opacity:0; }
.bp3-overlay-backdrop.bp3-overlay-enter-active, .bp3-overlay-backdrop.bp3-overlay-appear-active{
opacity:1;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-property:opacity;
transition-property:opacity;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-overlay-backdrop.bp3-overlay-exit{
opacity:1; }
.bp3-overlay-backdrop.bp3-overlay-exit-active{
opacity:0;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-property:opacity;
transition-property:opacity;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-overlay-backdrop:focus{
outline:none; }
.bp3-overlay-inline .bp3-overlay-backdrop{
position:absolute; }
.bp3-panel-stack{
overflow:hidden;
position:relative; }
.bp3-panel-stack-header{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
-webkit-box-shadow:0 1px rgba(16, 22, 26, 0.15);
box-shadow:0 1px rgba(16, 22, 26, 0.15);
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-ms-flex-negative:0;
flex-shrink:0;
height:30px;
z-index:1; }
.bp3-dark .bp3-panel-stack-header{
-webkit-box-shadow:0 1px rgba(255, 255, 255, 0.15);
box-shadow:0 1px rgba(255, 255, 255, 0.15); }
.bp3-panel-stack-header > span{
-webkit-box-align:stretch;
-ms-flex-align:stretch;
align-items:stretch;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-flex:1;
-ms-flex:1;
flex:1; }
.bp3-panel-stack-header .bp3-heading{
margin:0 5px; }
.bp3-button.bp3-panel-stack-header-back{
margin-left:5px;
padding-left:0;
white-space:nowrap; }
.bp3-button.bp3-panel-stack-header-back .bp3-icon{
margin:0 2px; }
.bp3-panel-stack-view{
bottom:0;
left:0;
position:absolute;
right:0;
top:0;
background-color:#ffffff;
border-right:1px solid rgba(16, 22, 26, 0.15);
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column;
margin-right:-1px;
overflow-y:auto;
z-index:1; }
.bp3-dark .bp3-panel-stack-view{
background-color:#30404d; }
.bp3-panel-stack-view:nth-last-child(n + 4){
display:none; }
.bp3-panel-stack-push .bp3-panel-stack-enter, .bp3-panel-stack-push .bp3-panel-stack-appear{
-webkit-transform:translateX(100%);
transform:translateX(100%);
opacity:0; }
.bp3-panel-stack-push .bp3-panel-stack-enter-active, .bp3-panel-stack-push .bp3-panel-stack-appear-active{
-webkit-transform:translate(0%);
transform:translate(0%);
opacity:1;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:400ms;
transition-duration:400ms;
-webkit-transition-property:opacity, -webkit-transform;
transition-property:opacity, -webkit-transform;
transition-property:transform, opacity;
transition-property:transform, opacity, -webkit-transform;
-webkit-transition-timing-function:ease;
transition-timing-function:ease; }
.bp3-panel-stack-push .bp3-panel-stack-exit{
-webkit-transform:translate(0%);
transform:translate(0%);
opacity:1; }
.bp3-panel-stack-push .bp3-panel-stack-exit-active{
-webkit-transform:translateX(-50%);
transform:translateX(-50%);
opacity:0;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:400ms;
transition-duration:400ms;
-webkit-transition-property:opacity, -webkit-transform;
transition-property:opacity, -webkit-transform;
transition-property:transform, opacity;
transition-property:transform, opacity, -webkit-transform;
-webkit-transition-timing-function:ease;
transition-timing-function:ease; }
.bp3-panel-stack-pop .bp3-panel-stack-enter, .bp3-panel-stack-pop .bp3-panel-stack-appear{
-webkit-transform:translateX(-50%);
transform:translateX(-50%);
opacity:0; }
.bp3-panel-stack-pop .bp3-panel-stack-enter-active, .bp3-panel-stack-pop .bp3-panel-stack-appear-active{
-webkit-transform:translate(0%);
transform:translate(0%);
opacity:1;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:400ms;
transition-duration:400ms;
-webkit-transition-property:opacity, -webkit-transform;
transition-property:opacity, -webkit-transform;
transition-property:transform, opacity;
transition-property:transform, opacity, -webkit-transform;
-webkit-transition-timing-function:ease;
transition-timing-function:ease; }
.bp3-panel-stack-pop .bp3-panel-stack-exit{
-webkit-transform:translate(0%);
transform:translate(0%);
opacity:1; }
.bp3-panel-stack-pop .bp3-panel-stack-exit-active{
-webkit-transform:translateX(100%);
transform:translateX(100%);
opacity:0;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:400ms;
transition-duration:400ms;
-webkit-transition-property:opacity, -webkit-transform;
transition-property:opacity, -webkit-transform;
transition-property:transform, opacity;
transition-property:transform, opacity, -webkit-transform;
-webkit-transition-timing-function:ease;
transition-timing-function:ease; }
.bp3-panel-stack2{
overflow:hidden;
position:relative; }
.bp3-panel-stack2-header{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
-webkit-box-shadow:0 1px rgba(16, 22, 26, 0.15);
box-shadow:0 1px rgba(16, 22, 26, 0.15);
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-ms-flex-negative:0;
flex-shrink:0;
height:30px;
z-index:1; }
.bp3-dark .bp3-panel-stack2-header{
-webkit-box-shadow:0 1px rgba(255, 255, 255, 0.15);
box-shadow:0 1px rgba(255, 255, 255, 0.15); }
.bp3-panel-stack2-header > span{
-webkit-box-align:stretch;
-ms-flex-align:stretch;
align-items:stretch;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-flex:1;
-ms-flex:1;
flex:1; }
.bp3-panel-stack2-header .bp3-heading{
margin:0 5px; }
.bp3-button.bp3-panel-stack2-header-back{
margin-left:5px;
padding-left:0;
white-space:nowrap; }
.bp3-button.bp3-panel-stack2-header-back .bp3-icon{
margin:0 2px; }
.bp3-panel-stack2-view{
bottom:0;
left:0;
position:absolute;
right:0;
top:0;
background-color:#ffffff;
border-right:1px solid rgba(16, 22, 26, 0.15);
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column;
margin-right:-1px;
overflow-y:auto;
z-index:1; }
.bp3-dark .bp3-panel-stack2-view{
background-color:#30404d; }
.bp3-panel-stack2-view:nth-last-child(n + 4){
display:none; }
.bp3-panel-stack2-push .bp3-panel-stack2-enter, .bp3-panel-stack2-push .bp3-panel-stack2-appear{
-webkit-transform:translateX(100%);
transform:translateX(100%);
opacity:0; }
.bp3-panel-stack2-push .bp3-panel-stack2-enter-active, .bp3-panel-stack2-push .bp3-panel-stack2-appear-active{
-webkit-transform:translate(0%);
transform:translate(0%);
opacity:1;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:400ms;
transition-duration:400ms;
-webkit-transition-property:opacity, -webkit-transform;
transition-property:opacity, -webkit-transform;
transition-property:transform, opacity;
transition-property:transform, opacity, -webkit-transform;
-webkit-transition-timing-function:ease;
transition-timing-function:ease; }
.bp3-panel-stack2-push .bp3-panel-stack2-exit{
-webkit-transform:translate(0%);
transform:translate(0%);
opacity:1; }
.bp3-panel-stack2-push .bp3-panel-stack2-exit-active{
-webkit-transform:translateX(-50%);
transform:translateX(-50%);
opacity:0;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:400ms;
transition-duration:400ms;
-webkit-transition-property:opacity, -webkit-transform;
transition-property:opacity, -webkit-transform;
transition-property:transform, opacity;
transition-property:transform, opacity, -webkit-transform;
-webkit-transition-timing-function:ease;
transition-timing-function:ease; }
.bp3-panel-stack2-pop .bp3-panel-stack2-enter, .bp3-panel-stack2-pop .bp3-panel-stack2-appear{
-webkit-transform:translateX(-50%);
transform:translateX(-50%);
opacity:0; }
.bp3-panel-stack2-pop .bp3-panel-stack2-enter-active, .bp3-panel-stack2-pop .bp3-panel-stack2-appear-active{
-webkit-transform:translate(0%);
transform:translate(0%);
opacity:1;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:400ms;
transition-duration:400ms;
-webkit-transition-property:opacity, -webkit-transform;
transition-property:opacity, -webkit-transform;
transition-property:transform, opacity;
transition-property:transform, opacity, -webkit-transform;
-webkit-transition-timing-function:ease;
transition-timing-function:ease; }
.bp3-panel-stack2-pop .bp3-panel-stack2-exit{
-webkit-transform:translate(0%);
transform:translate(0%);
opacity:1; }
.bp3-panel-stack2-pop .bp3-panel-stack2-exit-active{
-webkit-transform:translateX(100%);
transform:translateX(100%);
opacity:0;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:400ms;
transition-duration:400ms;
-webkit-transition-property:opacity, -webkit-transform;
transition-property:opacity, -webkit-transform;
transition-property:transform, opacity;
transition-property:transform, opacity, -webkit-transform;
-webkit-transition-timing-function:ease;
transition-timing-function:ease; }
.bp3-popover{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
-webkit-transform:scale(1);
transform:scale(1);
border-radius:3px;
display:inline-block;
z-index:20; }
.bp3-popover .bp3-popover-arrow{
height:30px;
position:absolute;
width:30px; }
.bp3-popover .bp3-popover-arrow::before{
height:20px;
margin:5px;
width:20px; }
.bp3-tether-element-attached-bottom.bp3-tether-target-attached-top > .bp3-popover{
margin-bottom:17px;
margin-top:-17px; }
.bp3-tether-element-attached-bottom.bp3-tether-target-attached-top > .bp3-popover > .bp3-popover-arrow{
bottom:-11px; }
.bp3-tether-element-attached-bottom.bp3-tether-target-attached-top > .bp3-popover > .bp3-popover-arrow svg{
-webkit-transform:rotate(-90deg);
transform:rotate(-90deg); }
.bp3-tether-element-attached-left.bp3-tether-target-attached-right > .bp3-popover{
margin-left:17px; }
.bp3-tether-element-attached-left.bp3-tether-target-attached-right > .bp3-popover > .bp3-popover-arrow{
left:-11px; }
.bp3-tether-element-attached-left.bp3-tether-target-attached-right > .bp3-popover > .bp3-popover-arrow svg{
-webkit-transform:rotate(0);
transform:rotate(0); }
.bp3-tether-element-attached-top.bp3-tether-target-attached-bottom > .bp3-popover{
margin-top:17px; }
.bp3-tether-element-attached-top.bp3-tether-target-attached-bottom > .bp3-popover > .bp3-popover-arrow{
top:-11px; }
.bp3-tether-element-attached-top.bp3-tether-target-attached-bottom > .bp3-popover > .bp3-popover-arrow svg{
-webkit-transform:rotate(90deg);
transform:rotate(90deg); }
.bp3-tether-element-attached-right.bp3-tether-target-attached-left > .bp3-popover{
margin-left:-17px;
margin-right:17px; }
.bp3-tether-element-attached-right.bp3-tether-target-attached-left > .bp3-popover > .bp3-popover-arrow{
right:-11px; }
.bp3-tether-element-attached-right.bp3-tether-target-attached-left > .bp3-popover > .bp3-popover-arrow svg{
-webkit-transform:rotate(180deg);
transform:rotate(180deg); }
.bp3-tether-element-attached-middle > .bp3-popover > .bp3-popover-arrow{
top:50%;
-webkit-transform:translateY(-50%);
transform:translateY(-50%); }
.bp3-tether-element-attached-center > .bp3-popover > .bp3-popover-arrow{
right:50%;
-webkit-transform:translateX(50%);
transform:translateX(50%); }
.bp3-tether-element-attached-top.bp3-tether-target-attached-top > .bp3-popover > .bp3-popover-arrow{
top:-0.3934px; }
.bp3-tether-element-attached-right.bp3-tether-target-attached-right > .bp3-popover > .bp3-popover-arrow{
right:-0.3934px; }
.bp3-tether-element-attached-left.bp3-tether-target-attached-left > .bp3-popover > .bp3-popover-arrow{
left:-0.3934px; }
.bp3-tether-element-attached-bottom.bp3-tether-target-attached-bottom > .bp3-popover > .bp3-popover-arrow{
bottom:-0.3934px; }
.bp3-tether-element-attached-top.bp3-tether-element-attached-left > .bp3-popover{
-webkit-transform-origin:top left;
transform-origin:top left; }
.bp3-tether-element-attached-top.bp3-tether-element-attached-center > .bp3-popover{
-webkit-transform-origin:top center;
transform-origin:top center; }
.bp3-tether-element-attached-top.bp3-tether-element-attached-right > .bp3-popover{
-webkit-transform-origin:top right;
transform-origin:top right; }
.bp3-tether-element-attached-middle.bp3-tether-element-attached-left > .bp3-popover{
-webkit-transform-origin:center left;
transform-origin:center left; }
.bp3-tether-element-attached-middle.bp3-tether-element-attached-center > .bp3-popover{
-webkit-transform-origin:center center;
transform-origin:center center; }
.bp3-tether-element-attached-middle.bp3-tether-element-attached-right > .bp3-popover{
-webkit-transform-origin:center right;
transform-origin:center right; }
.bp3-tether-element-attached-bottom.bp3-tether-element-attached-left > .bp3-popover{
-webkit-transform-origin:bottom left;
transform-origin:bottom left; }
.bp3-tether-element-attached-bottom.bp3-tether-element-attached-center > .bp3-popover{
-webkit-transform-origin:bottom center;
transform-origin:bottom center; }
.bp3-tether-element-attached-bottom.bp3-tether-element-attached-right > .bp3-popover{
-webkit-transform-origin:bottom right;
transform-origin:bottom right; }
.bp3-popover .bp3-popover-content{
background:#ffffff;
color:inherit; }
.bp3-popover .bp3-popover-arrow::before{
-webkit-box-shadow:1px 1px 6px rgba(16, 22, 26, 0.2);
box-shadow:1px 1px 6px rgba(16, 22, 26, 0.2); }
.bp3-popover .bp3-popover-arrow-border{
fill:#10161a;
fill-opacity:0.1; }
.bp3-popover .bp3-popover-arrow-fill{
fill:#ffffff; }
.bp3-popover-enter > .bp3-popover, .bp3-popover-appear > .bp3-popover{
-webkit-transform:scale(0.3);
transform:scale(0.3); }
.bp3-popover-enter-active > .bp3-popover, .bp3-popover-appear-active > .bp3-popover{
-webkit-transform:scale(1);
transform:scale(1);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:300ms;
transition-duration:300ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11);
transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11); }
.bp3-popover-exit > .bp3-popover{
-webkit-transform:scale(1);
transform:scale(1); }
.bp3-popover-exit-active > .bp3-popover{
-webkit-transform:scale(0.3);
transform:scale(0.3);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:300ms;
transition-duration:300ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11);
transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11); }
.bp3-popover .bp3-popover-content{
border-radius:3px;
position:relative; }
.bp3-popover.bp3-popover-content-sizing .bp3-popover-content{
max-width:350px;
padding:20px; }
.bp3-popover-target + .bp3-overlay .bp3-popover.bp3-popover-content-sizing{
width:350px; }
.bp3-popover.bp3-minimal{
margin:0 !important; }
.bp3-popover.bp3-minimal .bp3-popover-arrow{
display:none; }
.bp3-popover.bp3-minimal.bp3-popover{
-webkit-transform:scale(1);
transform:scale(1); }
.bp3-popover-enter > .bp3-popover.bp3-minimal.bp3-popover, .bp3-popover-appear > .bp3-popover.bp3-minimal.bp3-popover{
-webkit-transform:scale(1);
transform:scale(1); }
.bp3-popover-enter-active > .bp3-popover.bp3-minimal.bp3-popover, .bp3-popover-appear-active > .bp3-popover.bp3-minimal.bp3-popover{
-webkit-transform:scale(1);
transform:scale(1);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-popover-exit > .bp3-popover.bp3-minimal.bp3-popover{
-webkit-transform:scale(1);
transform:scale(1); }
.bp3-popover-exit-active > .bp3-popover.bp3-minimal.bp3-popover{
-webkit-transform:scale(1);
transform:scale(1);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-popover.bp3-dark,
.bp3-dark .bp3-popover{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4); }
.bp3-popover.bp3-dark .bp3-popover-content,
.bp3-dark .bp3-popover .bp3-popover-content{
background:#30404d;
color:inherit; }
.bp3-popover.bp3-dark .bp3-popover-arrow::before,
.bp3-dark .bp3-popover .bp3-popover-arrow::before{
-webkit-box-shadow:1px 1px 6px rgba(16, 22, 26, 0.4);
box-shadow:1px 1px 6px rgba(16, 22, 26, 0.4); }
.bp3-popover.bp3-dark .bp3-popover-arrow-border,
.bp3-dark .bp3-popover .bp3-popover-arrow-border{
fill:#10161a;
fill-opacity:0.2; }
.bp3-popover.bp3-dark .bp3-popover-arrow-fill,
.bp3-dark .bp3-popover .bp3-popover-arrow-fill{
fill:#30404d; }
.bp3-popover-arrow::before{
border-radius:2px;
content:"";
display:block;
position:absolute;
-webkit-transform:rotate(45deg);
transform:rotate(45deg); }
.bp3-tether-pinned .bp3-popover-arrow{
display:none; }
.bp3-popover-backdrop{
background:rgba(255, 255, 255, 0); }
.bp3-transition-container{
opacity:1;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
z-index:20; }
.bp3-transition-container.bp3-popover-enter, .bp3-transition-container.bp3-popover-appear{
opacity:0; }
.bp3-transition-container.bp3-popover-enter-active, .bp3-transition-container.bp3-popover-appear-active{
opacity:1;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:opacity;
transition-property:opacity;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-transition-container.bp3-popover-exit{
opacity:1; }
.bp3-transition-container.bp3-popover-exit-active{
opacity:0;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:opacity;
transition-property:opacity;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-transition-container:focus{
outline:none; }
.bp3-transition-container.bp3-popover-leave .bp3-popover-content{
pointer-events:none; }
.bp3-transition-container[data-x-out-of-boundaries]{
display:none; }
span.bp3-popover-target{
display:inline-block; }
.bp3-popover-wrapper.bp3-fill{
width:100%; }
.bp3-portal{
left:0;
position:absolute;
right:0;
top:0; }
@-webkit-keyframes linear-progress-bar-stripes{
from{
background-position:0 0; }
to{
background-position:30px 0; } }
@keyframes linear-progress-bar-stripes{
from{
background-position:0 0; }
to{
background-position:30px 0; } }
.bp3-progress-bar{
background:rgba(92, 112, 128, 0.2);
border-radius:40px;
display:block;
height:8px;
overflow:hidden;
position:relative;
width:100%; }
.bp3-progress-bar .bp3-progress-meter{
background:linear-gradient(-45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%);
background-color:rgba(92, 112, 128, 0.8);
background-size:30px 30px;
border-radius:40px;
height:100%;
position:absolute;
-webkit-transition:width 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:width 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
width:100%; }
.bp3-progress-bar:not(.bp3-no-animation):not(.bp3-no-stripes) .bp3-progress-meter{
animation:linear-progress-bar-stripes 300ms linear infinite reverse; }
.bp3-progress-bar.bp3-no-stripes .bp3-progress-meter{
background-image:none; }
.bp3-dark .bp3-progress-bar{
background:rgba(16, 22, 26, 0.5); }
.bp3-dark .bp3-progress-bar .bp3-progress-meter{
background-color:#8a9ba8; }
.bp3-progress-bar.bp3-intent-primary .bp3-progress-meter{
background-color:#137cbd; }
.bp3-progress-bar.bp3-intent-success .bp3-progress-meter{
background-color:#0f9960; }
.bp3-progress-bar.bp3-intent-warning .bp3-progress-meter{
background-color:#d9822b; }
.bp3-progress-bar.bp3-intent-danger .bp3-progress-meter{
background-color:#db3737; }
@-webkit-keyframes skeleton-glow{
from{
background:rgba(206, 217, 224, 0.2);
border-color:rgba(206, 217, 224, 0.2); }
to{
background:rgba(92, 112, 128, 0.2);
border-color:rgba(92, 112, 128, 0.2); } }
@keyframes skeleton-glow{
from{
background:rgba(206, 217, 224, 0.2);
border-color:rgba(206, 217, 224, 0.2); }
to{
background:rgba(92, 112, 128, 0.2);
border-color:rgba(92, 112, 128, 0.2); } }
.bp3-skeleton{
-webkit-animation:1000ms linear infinite alternate skeleton-glow;
animation:1000ms linear infinite alternate skeleton-glow;
background:rgba(206, 217, 224, 0.2);
background-clip:padding-box !important;
border-color:rgba(206, 217, 224, 0.2) !important;
border-radius:2px;
-webkit-box-shadow:none !important;
box-shadow:none !important;
color:transparent !important;
cursor:default;
pointer-events:none;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none; }
.bp3-skeleton::before, .bp3-skeleton::after,
.bp3-skeleton *{
visibility:hidden !important; }
.bp3-slider{
height:40px;
min-width:150px;
width:100%;
cursor:default;
outline:none;
position:relative;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none; }
.bp3-slider:hover{
cursor:pointer; }
.bp3-slider:active{
cursor:-webkit-grabbing;
cursor:grabbing; }
.bp3-slider.bp3-disabled{
cursor:not-allowed;
opacity:0.5; }
.bp3-slider.bp3-slider-unlabeled{
height:16px; }
.bp3-slider-track,
.bp3-slider-progress{
height:6px;
left:0;
right:0;
top:5px;
position:absolute; }
.bp3-slider-track{
border-radius:3px;
overflow:hidden; }
.bp3-slider-progress{
background:rgba(92, 112, 128, 0.2); }
.bp3-dark .bp3-slider-progress{
background:rgba(16, 22, 26, 0.5); }
.bp3-slider-progress.bp3-intent-primary{
background-color:#137cbd; }
.bp3-slider-progress.bp3-intent-success{
background-color:#0f9960; }
.bp3-slider-progress.bp3-intent-warning{
background-color:#d9822b; }
.bp3-slider-progress.bp3-intent-danger{
background-color:#db3737; }
.bp3-slider-handle{
background-color:#f5f8fa;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.8)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0));
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
color:#182026;
border-radius:3px;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 1px 1px rgba(16, 22, 26, 0.2);
cursor:pointer;
height:16px;
left:0;
position:absolute;
top:0;
width:16px; }
.bp3-slider-handle:hover{
background-clip:padding-box;
background-color:#ebf1f5;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1); }
.bp3-slider-handle:active, .bp3-slider-handle.bp3-active{
background-color:#d8e1e8;
background-image:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-slider-handle:disabled, .bp3-slider-handle.bp3-disabled{
background-color:rgba(206, 217, 224, 0.5);
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed;
outline:none; }
.bp3-slider-handle:disabled.bp3-active, .bp3-slider-handle:disabled.bp3-active:hover, .bp3-slider-handle.bp3-disabled.bp3-active, .bp3-slider-handle.bp3-disabled.bp3-active:hover{
background:rgba(206, 217, 224, 0.7); }
.bp3-slider-handle:focus{
z-index:1; }
.bp3-slider-handle:hover{
background-clip:padding-box;
background-color:#ebf1f5;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 -1px 0 rgba(16, 22, 26, 0.1);
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 1px 1px rgba(16, 22, 26, 0.2);
cursor:-webkit-grab;
cursor:grab;
z-index:2; }
.bp3-slider-handle.bp3-active{
background-color:#d8e1e8;
background-image:none;
-webkit-box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:inset 0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 2px rgba(16, 22, 26, 0.2);
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 1px rgba(16, 22, 26, 0.1);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), inset 0 1px 1px rgba(16, 22, 26, 0.1);
cursor:-webkit-grabbing;
cursor:grabbing; }
.bp3-disabled .bp3-slider-handle{
background:#bfccd6;
-webkit-box-shadow:none;
box-shadow:none;
pointer-events:none; }
.bp3-dark .bp3-slider-handle{
background-color:#394b59;
background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.05)), to(rgba(255, 255, 255, 0)));
background-image:linear-gradient(to bottom, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0));
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
color:#f5f8fa; }
.bp3-dark .bp3-slider-handle:hover, .bp3-dark .bp3-slider-handle:active, .bp3-dark .bp3-slider-handle.bp3-active{
color:#f5f8fa; }
.bp3-dark .bp3-slider-handle:hover{
background-color:#30404d;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-slider-handle:active, .bp3-dark .bp3-slider-handle.bp3-active{
background-color:#202b33;
background-image:none;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.6), inset 0 1px 2px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-slider-handle:disabled, .bp3-dark .bp3-slider-handle.bp3-disabled{
background-color:rgba(57, 75, 89, 0.5);
background-image:none;
-webkit-box-shadow:none;
box-shadow:none;
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-slider-handle:disabled.bp3-active, .bp3-dark .bp3-slider-handle.bp3-disabled.bp3-active{
background:rgba(57, 75, 89, 0.7); }
.bp3-dark .bp3-slider-handle .bp3-button-spinner .bp3-spinner-head{
background:rgba(16, 22, 26, 0.5);
stroke:#8a9ba8; }
.bp3-dark .bp3-slider-handle, .bp3-dark .bp3-slider-handle:hover{
background-color:#394b59; }
.bp3-dark .bp3-slider-handle.bp3-active{
background-color:#293742; }
.bp3-dark .bp3-disabled .bp3-slider-handle{
background:#5c7080;
border-color:#5c7080;
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-slider-handle .bp3-slider-label{
background:#394b59;
border-radius:3px;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
color:#f5f8fa;
margin-left:8px; }
.bp3-dark .bp3-slider-handle .bp3-slider-label{
background:#e1e8ed;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4);
color:#394b59; }
.bp3-disabled .bp3-slider-handle .bp3-slider-label{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-slider-handle.bp3-start, .bp3-slider-handle.bp3-end{
width:8px; }
.bp3-slider-handle.bp3-start{
border-bottom-right-radius:0;
border-top-right-radius:0; }
.bp3-slider-handle.bp3-end{
border-bottom-left-radius:0;
border-top-left-radius:0;
margin-left:8px; }
.bp3-slider-handle.bp3-end .bp3-slider-label{
margin-left:0; }
.bp3-slider-label{
-webkit-transform:translate(-50%, 20px);
transform:translate(-50%, 20px);
display:inline-block;
font-size:12px;
line-height:1;
padding:2px 5px;
position:absolute;
vertical-align:top; }
.bp3-slider.bp3-vertical{
height:150px;
min-width:40px;
width:40px; }
.bp3-slider.bp3-vertical .bp3-slider-track,
.bp3-slider.bp3-vertical .bp3-slider-progress{
bottom:0;
height:auto;
left:5px;
top:0;
width:6px; }
.bp3-slider.bp3-vertical .bp3-slider-progress{
top:auto; }
.bp3-slider.bp3-vertical .bp3-slider-label{
-webkit-transform:translate(20px, 50%);
transform:translate(20px, 50%); }
.bp3-slider.bp3-vertical .bp3-slider-handle{
top:auto; }
.bp3-slider.bp3-vertical .bp3-slider-handle .bp3-slider-label{
margin-left:0;
margin-top:-8px; }
.bp3-slider.bp3-vertical .bp3-slider-handle.bp3-end, .bp3-slider.bp3-vertical .bp3-slider-handle.bp3-start{
height:8px;
margin-left:0;
width:16px; }
.bp3-slider.bp3-vertical .bp3-slider-handle.bp3-start{
border-bottom-right-radius:3px;
border-top-left-radius:0; }
.bp3-slider.bp3-vertical .bp3-slider-handle.bp3-start .bp3-slider-label{
-webkit-transform:translate(20px);
transform:translate(20px); }
.bp3-slider.bp3-vertical .bp3-slider-handle.bp3-end{
border-bottom-left-radius:0;
border-bottom-right-radius:0;
border-top-left-radius:3px;
margin-bottom:8px; }
@-webkit-keyframes pt-spinner-animation{
from{
-webkit-transform:rotate(0deg);
transform:rotate(0deg); }
to{
-webkit-transform:rotate(360deg);
transform:rotate(360deg); } }
@keyframes pt-spinner-animation{
from{
-webkit-transform:rotate(0deg);
transform:rotate(0deg); }
to{
-webkit-transform:rotate(360deg);
transform:rotate(360deg); } }
.bp3-spinner{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-pack:center;
-ms-flex-pack:center;
justify-content:center;
overflow:visible;
vertical-align:middle; }
.bp3-spinner svg{
display:block; }
.bp3-spinner path{
fill-opacity:0; }
.bp3-spinner .bp3-spinner-head{
stroke:rgba(92, 112, 128, 0.8);
stroke-linecap:round;
-webkit-transform-origin:center;
transform-origin:center;
-webkit-transition:stroke-dashoffset 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:stroke-dashoffset 200ms cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-spinner .bp3-spinner-track{
stroke:rgba(92, 112, 128, 0.2); }
.bp3-spinner-animation{
-webkit-animation:pt-spinner-animation 500ms linear infinite;
animation:pt-spinner-animation 500ms linear infinite; }
.bp3-no-spin > .bp3-spinner-animation{
-webkit-animation:none;
animation:none; }
.bp3-dark .bp3-spinner .bp3-spinner-head{
stroke:#8a9ba8; }
.bp3-dark .bp3-spinner .bp3-spinner-track{
stroke:rgba(16, 22, 26, 0.5); }
.bp3-spinner.bp3-intent-primary .bp3-spinner-head{
stroke:#137cbd; }
.bp3-spinner.bp3-intent-success .bp3-spinner-head{
stroke:#0f9960; }
.bp3-spinner.bp3-intent-warning .bp3-spinner-head{
stroke:#d9822b; }
.bp3-spinner.bp3-intent-danger .bp3-spinner-head{
stroke:#db3737; }
.bp3-tabs.bp3-vertical{
display:-webkit-box;
display:-ms-flexbox;
display:flex; }
.bp3-tabs.bp3-vertical > .bp3-tab-list{
-webkit-box-align:start;
-ms-flex-align:start;
align-items:flex-start;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column; }
.bp3-tabs.bp3-vertical > .bp3-tab-list .bp3-tab{
border-radius:3px;
padding:0 10px;
width:100%; }
.bp3-tabs.bp3-vertical > .bp3-tab-list .bp3-tab[aria-selected="true"]{
background-color:rgba(19, 124, 189, 0.2);
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-tabs.bp3-vertical > .bp3-tab-list .bp3-tab-indicator-wrapper .bp3-tab-indicator{
background-color:rgba(19, 124, 189, 0.2);
border-radius:3px;
bottom:0;
height:auto;
left:0;
right:0;
top:0; }
.bp3-tabs.bp3-vertical > .bp3-tab-panel{
margin-top:0;
padding-left:20px; }
.bp3-tab-list{
-webkit-box-align:end;
-ms-flex-align:end;
align-items:flex-end;
border:none;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
list-style:none;
margin:0;
padding:0;
position:relative; }
.bp3-tab-list > *:not(:last-child){
margin-right:20px; }
.bp3-tab{
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
word-wrap:normal;
color:#182026;
cursor:pointer;
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
font-size:14px;
line-height:30px;
max-width:100%;
position:relative;
vertical-align:top; }
.bp3-tab a{
color:inherit;
display:block;
text-decoration:none; }
.bp3-tab-indicator-wrapper ~ .bp3-tab{
background-color:transparent !important;
-webkit-box-shadow:none !important;
box-shadow:none !important; }
.bp3-tab[aria-disabled="true"]{
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-tab[aria-selected="true"]{
border-radius:0;
-webkit-box-shadow:inset 0 -3px 0 #106ba3;
box-shadow:inset 0 -3px 0 #106ba3; }
.bp3-tab[aria-selected="true"], .bp3-tab:not([aria-disabled="true"]):hover{
color:#106ba3; }
.bp3-tab:focus{
-moz-outline-radius:0; }
.bp3-large > .bp3-tab{
font-size:16px;
line-height:40px; }
.bp3-tab-panel{
margin-top:20px; }
.bp3-tab-panel[aria-hidden="true"]{
display:none; }
.bp3-tab-indicator-wrapper{
left:0;
pointer-events:none;
position:absolute;
top:0;
-webkit-transform:translateX(0), translateY(0);
transform:translateX(0), translateY(0);
-webkit-transition:height, width, -webkit-transform;
transition:height, width, -webkit-transform;
transition:height, transform, width;
transition:height, transform, width, -webkit-transform;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-tab-indicator-wrapper .bp3-tab-indicator{
background-color:#106ba3;
bottom:0;
height:3px;
left:0;
position:absolute;
right:0; }
.bp3-tab-indicator-wrapper.bp3-no-animation{
-webkit-transition:none;
transition:none; }
.bp3-dark .bp3-tab{
color:#f5f8fa; }
.bp3-dark .bp3-tab[aria-disabled="true"]{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-tab[aria-selected="true"]{
-webkit-box-shadow:inset 0 -3px 0 #48aff0;
box-shadow:inset 0 -3px 0 #48aff0; }
.bp3-dark .bp3-tab[aria-selected="true"], .bp3-dark .bp3-tab:not([aria-disabled="true"]):hover{
color:#48aff0; }
.bp3-dark .bp3-tab-indicator{
background-color:#48aff0; }
.bp3-flex-expander{
-webkit-box-flex:1;
-ms-flex:1 1;
flex:1 1; }
.bp3-tag{
display:-webkit-inline-box;
display:-ms-inline-flexbox;
display:inline-flex;
-webkit-box-orient:horizontal;
-webkit-box-direction:normal;
-ms-flex-direction:row;
flex-direction:row;
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
background-color:#5c7080;
border:none;
border-radius:3px;
-webkit-box-shadow:none;
box-shadow:none;
color:#f5f8fa;
font-size:12px;
line-height:16px;
max-width:100%;
min-height:20px;
min-width:20px;
padding:2px 6px;
position:relative; }
.bp3-tag.bp3-interactive{
cursor:pointer; }
.bp3-tag.bp3-interactive:hover{
background-color:rgba(92, 112, 128, 0.85); }
.bp3-tag.bp3-interactive.bp3-active, .bp3-tag.bp3-interactive:active{
background-color:rgba(92, 112, 128, 0.7); }
.bp3-tag > *{
-webkit-box-flex:0;
-ms-flex-positive:0;
flex-grow:0;
-ms-flex-negative:0;
flex-shrink:0; }
.bp3-tag > .bp3-fill{
-webkit-box-flex:1;
-ms-flex-positive:1;
flex-grow:1;
-ms-flex-negative:1;
flex-shrink:1; }
.bp3-tag::before,
.bp3-tag > *{
margin-right:4px; }
.bp3-tag:empty::before,
.bp3-tag > :last-child{
margin-right:0; }
.bp3-tag:focus{
outline:rgba(19, 124, 189, 0.6) auto 2px;
outline-offset:0;
-moz-outline-radius:6px; }
.bp3-tag.bp3-round{
border-radius:30px;
padding-left:8px;
padding-right:8px; }
.bp3-dark .bp3-tag{
background-color:#bfccd6;
color:#182026; }
.bp3-dark .bp3-tag.bp3-interactive{
cursor:pointer; }
.bp3-dark .bp3-tag.bp3-interactive:hover{
background-color:rgba(191, 204, 214, 0.85); }
.bp3-dark .bp3-tag.bp3-interactive.bp3-active, .bp3-dark .bp3-tag.bp3-interactive:active{
background-color:rgba(191, 204, 214, 0.7); }
.bp3-dark .bp3-tag > .bp3-icon, .bp3-dark .bp3-tag .bp3-icon-standard, .bp3-dark .bp3-tag .bp3-icon-large{
fill:currentColor; }
.bp3-tag > .bp3-icon, .bp3-tag .bp3-icon-standard, .bp3-tag .bp3-icon-large{
fill:#ffffff; }
.bp3-tag.bp3-large,
.bp3-large .bp3-tag{
font-size:14px;
line-height:20px;
min-height:30px;
min-width:30px;
padding:5px 10px; }
.bp3-tag.bp3-large::before,
.bp3-tag.bp3-large > *,
.bp3-large .bp3-tag::before,
.bp3-large .bp3-tag > *{
margin-right:7px; }
.bp3-tag.bp3-large:empty::before,
.bp3-tag.bp3-large > :last-child,
.bp3-large .bp3-tag:empty::before,
.bp3-large .bp3-tag > :last-child{
margin-right:0; }
.bp3-tag.bp3-large.bp3-round,
.bp3-large .bp3-tag.bp3-round{
padding-left:12px;
padding-right:12px; }
.bp3-tag.bp3-intent-primary{
background:#137cbd;
color:#ffffff; }
.bp3-tag.bp3-intent-primary.bp3-interactive{
cursor:pointer; }
.bp3-tag.bp3-intent-primary.bp3-interactive:hover{
background-color:rgba(19, 124, 189, 0.85); }
.bp3-tag.bp3-intent-primary.bp3-interactive.bp3-active, .bp3-tag.bp3-intent-primary.bp3-interactive:active{
background-color:rgba(19, 124, 189, 0.7); }
.bp3-tag.bp3-intent-success{
background:#0f9960;
color:#ffffff; }
.bp3-tag.bp3-intent-success.bp3-interactive{
cursor:pointer; }
.bp3-tag.bp3-intent-success.bp3-interactive:hover{
background-color:rgba(15, 153, 96, 0.85); }
.bp3-tag.bp3-intent-success.bp3-interactive.bp3-active, .bp3-tag.bp3-intent-success.bp3-interactive:active{
background-color:rgba(15, 153, 96, 0.7); }
.bp3-tag.bp3-intent-warning{
background:#d9822b;
color:#ffffff; }
.bp3-tag.bp3-intent-warning.bp3-interactive{
cursor:pointer; }
.bp3-tag.bp3-intent-warning.bp3-interactive:hover{
background-color:rgba(217, 130, 43, 0.85); }
.bp3-tag.bp3-intent-warning.bp3-interactive.bp3-active, .bp3-tag.bp3-intent-warning.bp3-interactive:active{
background-color:rgba(217, 130, 43, 0.7); }
.bp3-tag.bp3-intent-danger{
background:#db3737;
color:#ffffff; }
.bp3-tag.bp3-intent-danger.bp3-interactive{
cursor:pointer; }
.bp3-tag.bp3-intent-danger.bp3-interactive:hover{
background-color:rgba(219, 55, 55, 0.85); }
.bp3-tag.bp3-intent-danger.bp3-interactive.bp3-active, .bp3-tag.bp3-intent-danger.bp3-interactive:active{
background-color:rgba(219, 55, 55, 0.7); }
.bp3-tag.bp3-fill{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
width:100%; }
.bp3-tag.bp3-minimal > .bp3-icon, .bp3-tag.bp3-minimal .bp3-icon-standard, .bp3-tag.bp3-minimal .bp3-icon-large{
fill:#5c7080; }
.bp3-tag.bp3-minimal:not([class*="bp3-intent-"]){
background-color:rgba(138, 155, 168, 0.2);
color:#182026; }
.bp3-tag.bp3-minimal:not([class*="bp3-intent-"]).bp3-interactive{
cursor:pointer; }
.bp3-tag.bp3-minimal:not([class*="bp3-intent-"]).bp3-interactive:hover{
background-color:rgba(92, 112, 128, 0.3); }
.bp3-tag.bp3-minimal:not([class*="bp3-intent-"]).bp3-interactive.bp3-active, .bp3-tag.bp3-minimal:not([class*="bp3-intent-"]).bp3-interactive:active{
background-color:rgba(92, 112, 128, 0.4); }
.bp3-dark .bp3-tag.bp3-minimal:not([class*="bp3-intent-"]){
color:#f5f8fa; }
.bp3-dark .bp3-tag.bp3-minimal:not([class*="bp3-intent-"]).bp3-interactive{
cursor:pointer; }
.bp3-dark .bp3-tag.bp3-minimal:not([class*="bp3-intent-"]).bp3-interactive:hover{
background-color:rgba(191, 204, 214, 0.3); }
.bp3-dark .bp3-tag.bp3-minimal:not([class*="bp3-intent-"]).bp3-interactive.bp3-active, .bp3-dark .bp3-tag.bp3-minimal:not([class*="bp3-intent-"]).bp3-interactive:active{
background-color:rgba(191, 204, 214, 0.4); }
.bp3-dark .bp3-tag.bp3-minimal:not([class*="bp3-intent-"]) > .bp3-icon, .bp3-dark .bp3-tag.bp3-minimal:not([class*="bp3-intent-"]) .bp3-icon-standard, .bp3-dark .bp3-tag.bp3-minimal:not([class*="bp3-intent-"]) .bp3-icon-large{
fill:#a7b6c2; }
.bp3-tag.bp3-minimal.bp3-intent-primary{
background-color:rgba(19, 124, 189, 0.15);
color:#106ba3; }
.bp3-tag.bp3-minimal.bp3-intent-primary.bp3-interactive{
cursor:pointer; }
.bp3-tag.bp3-minimal.bp3-intent-primary.bp3-interactive:hover{
background-color:rgba(19, 124, 189, 0.25); }
.bp3-tag.bp3-minimal.bp3-intent-primary.bp3-interactive.bp3-active, .bp3-tag.bp3-minimal.bp3-intent-primary.bp3-interactive:active{
background-color:rgba(19, 124, 189, 0.35); }
.bp3-tag.bp3-minimal.bp3-intent-primary > .bp3-icon, .bp3-tag.bp3-minimal.bp3-intent-primary .bp3-icon-standard, .bp3-tag.bp3-minimal.bp3-intent-primary .bp3-icon-large{
fill:#137cbd; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-primary{
background-color:rgba(19, 124, 189, 0.25);
color:#48aff0; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-primary.bp3-interactive{
cursor:pointer; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-primary.bp3-interactive:hover{
background-color:rgba(19, 124, 189, 0.35); }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-primary.bp3-interactive.bp3-active, .bp3-dark .bp3-tag.bp3-minimal.bp3-intent-primary.bp3-interactive:active{
background-color:rgba(19, 124, 189, 0.45); }
.bp3-tag.bp3-minimal.bp3-intent-success{
background-color:rgba(15, 153, 96, 0.15);
color:#0d8050; }
.bp3-tag.bp3-minimal.bp3-intent-success.bp3-interactive{
cursor:pointer; }
.bp3-tag.bp3-minimal.bp3-intent-success.bp3-interactive:hover{
background-color:rgba(15, 153, 96, 0.25); }
.bp3-tag.bp3-minimal.bp3-intent-success.bp3-interactive.bp3-active, .bp3-tag.bp3-minimal.bp3-intent-success.bp3-interactive:active{
background-color:rgba(15, 153, 96, 0.35); }
.bp3-tag.bp3-minimal.bp3-intent-success > .bp3-icon, .bp3-tag.bp3-minimal.bp3-intent-success .bp3-icon-standard, .bp3-tag.bp3-minimal.bp3-intent-success .bp3-icon-large{
fill:#0f9960; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-success{
background-color:rgba(15, 153, 96, 0.25);
color:#3dcc91; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-success.bp3-interactive{
cursor:pointer; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-success.bp3-interactive:hover{
background-color:rgba(15, 153, 96, 0.35); }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-success.bp3-interactive.bp3-active, .bp3-dark .bp3-tag.bp3-minimal.bp3-intent-success.bp3-interactive:active{
background-color:rgba(15, 153, 96, 0.45); }
.bp3-tag.bp3-minimal.bp3-intent-warning{
background-color:rgba(217, 130, 43, 0.15);
color:#bf7326; }
.bp3-tag.bp3-minimal.bp3-intent-warning.bp3-interactive{
cursor:pointer; }
.bp3-tag.bp3-minimal.bp3-intent-warning.bp3-interactive:hover{
background-color:rgba(217, 130, 43, 0.25); }
.bp3-tag.bp3-minimal.bp3-intent-warning.bp3-interactive.bp3-active, .bp3-tag.bp3-minimal.bp3-intent-warning.bp3-interactive:active{
background-color:rgba(217, 130, 43, 0.35); }
.bp3-tag.bp3-minimal.bp3-intent-warning > .bp3-icon, .bp3-tag.bp3-minimal.bp3-intent-warning .bp3-icon-standard, .bp3-tag.bp3-minimal.bp3-intent-warning .bp3-icon-large{
fill:#d9822b; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-warning{
background-color:rgba(217, 130, 43, 0.25);
color:#ffb366; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-warning.bp3-interactive{
cursor:pointer; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-warning.bp3-interactive:hover{
background-color:rgba(217, 130, 43, 0.35); }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-warning.bp3-interactive.bp3-active, .bp3-dark .bp3-tag.bp3-minimal.bp3-intent-warning.bp3-interactive:active{
background-color:rgba(217, 130, 43, 0.45); }
.bp3-tag.bp3-minimal.bp3-intent-danger{
background-color:rgba(219, 55, 55, 0.15);
color:#c23030; }
.bp3-tag.bp3-minimal.bp3-intent-danger.bp3-interactive{
cursor:pointer; }
.bp3-tag.bp3-minimal.bp3-intent-danger.bp3-interactive:hover{
background-color:rgba(219, 55, 55, 0.25); }
.bp3-tag.bp3-minimal.bp3-intent-danger.bp3-interactive.bp3-active, .bp3-tag.bp3-minimal.bp3-intent-danger.bp3-interactive:active{
background-color:rgba(219, 55, 55, 0.35); }
.bp3-tag.bp3-minimal.bp3-intent-danger > .bp3-icon, .bp3-tag.bp3-minimal.bp3-intent-danger .bp3-icon-standard, .bp3-tag.bp3-minimal.bp3-intent-danger .bp3-icon-large{
fill:#db3737; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-danger{
background-color:rgba(219, 55, 55, 0.25);
color:#ff7373; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-danger.bp3-interactive{
cursor:pointer; }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-danger.bp3-interactive:hover{
background-color:rgba(219, 55, 55, 0.35); }
.bp3-dark .bp3-tag.bp3-minimal.bp3-intent-danger.bp3-interactive.bp3-active, .bp3-dark .bp3-tag.bp3-minimal.bp3-intent-danger.bp3-interactive:active{
background-color:rgba(219, 55, 55, 0.45); }
.bp3-tag-remove{
background:none;
border:none;
color:inherit;
cursor:pointer;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
margin-bottom:-2px;
margin-right:-6px !important;
margin-top:-2px;
opacity:0.5;
padding:2px;
padding-left:0; }
.bp3-tag-remove:hover{
background:none;
opacity:0.8;
text-decoration:none; }
.bp3-tag-remove:active{
opacity:1; }
.bp3-tag-remove:empty::before{
font-family:"Icons16", sans-serif;
font-size:16px;
font-style:normal;
font-weight:400;
line-height:1;
-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased;
content:""; }
.bp3-large .bp3-tag-remove{
margin-right:-10px !important;
padding:0 5px 0 0; }
.bp3-large .bp3-tag-remove:empty::before{
font-family:"Icons20", sans-serif;
font-size:20px;
font-style:normal;
font-weight:400;
line-height:1; }
.bp3-tag-input{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:horizontal;
-webkit-box-direction:normal;
-ms-flex-direction:row;
flex-direction:row;
-webkit-box-align:start;
-ms-flex-align:start;
align-items:flex-start;
cursor:text;
height:auto;
line-height:inherit;
min-height:30px;
padding-left:5px;
padding-right:0; }
.bp3-tag-input > *{
-webkit-box-flex:0;
-ms-flex-positive:0;
flex-grow:0;
-ms-flex-negative:0;
flex-shrink:0; }
.bp3-tag-input > .bp3-tag-input-values{
-webkit-box-flex:1;
-ms-flex-positive:1;
flex-grow:1;
-ms-flex-negative:1;
flex-shrink:1; }
.bp3-tag-input .bp3-tag-input-icon{
color:#5c7080;
margin-left:2px;
margin-right:7px;
margin-top:7px; }
.bp3-tag-input .bp3-tag-input-values{
display:-webkit-box;
display:-ms-flexbox;
display:flex;
-webkit-box-orient:horizontal;
-webkit-box-direction:normal;
-ms-flex-direction:row;
flex-direction:row;
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
-ms-flex-item-align:stretch;
align-self:stretch;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
margin-right:7px;
margin-top:5px;
min-width:0; }
.bp3-tag-input .bp3-tag-input-values > *{
-webkit-box-flex:0;
-ms-flex-positive:0;
flex-grow:0;
-ms-flex-negative:0;
flex-shrink:0; }
.bp3-tag-input .bp3-tag-input-values > .bp3-fill{
-webkit-box-flex:1;
-ms-flex-positive:1;
flex-grow:1;
-ms-flex-negative:1;
flex-shrink:1; }
.bp3-tag-input .bp3-tag-input-values::before,
.bp3-tag-input .bp3-tag-input-values > *{
margin-right:5px; }
.bp3-tag-input .bp3-tag-input-values:empty::before,
.bp3-tag-input .bp3-tag-input-values > :last-child{
margin-right:0; }
.bp3-tag-input .bp3-tag-input-values:first-child .bp3-input-ghost:first-child{
padding-left:5px; }
.bp3-tag-input .bp3-tag-input-values > *{
margin-bottom:5px; }
.bp3-tag-input .bp3-tag{
overflow-wrap:break-word; }
.bp3-tag-input .bp3-tag.bp3-active{
outline:rgba(19, 124, 189, 0.6) auto 2px;
outline-offset:0;
-moz-outline-radius:6px; }
.bp3-tag-input .bp3-input-ghost{
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto;
line-height:20px;
width:80px; }
.bp3-tag-input .bp3-input-ghost:disabled, .bp3-tag-input .bp3-input-ghost.bp3-disabled{
cursor:not-allowed; }
.bp3-tag-input .bp3-button,
.bp3-tag-input .bp3-spinner{
margin:3px;
margin-left:0; }
.bp3-tag-input .bp3-button{
min-height:24px;
min-width:24px;
padding:0 7px; }
.bp3-tag-input.bp3-large{
height:auto;
min-height:40px; }
.bp3-tag-input.bp3-large::before,
.bp3-tag-input.bp3-large > *{
margin-right:10px; }
.bp3-tag-input.bp3-large:empty::before,
.bp3-tag-input.bp3-large > :last-child{
margin-right:0; }
.bp3-tag-input.bp3-large .bp3-tag-input-icon{
margin-left:5px;
margin-top:10px; }
.bp3-tag-input.bp3-large .bp3-input-ghost{
line-height:30px; }
.bp3-tag-input.bp3-large .bp3-button{
min-height:30px;
min-width:30px;
padding:5px 10px;
margin:5px;
margin-left:0; }
.bp3-tag-input.bp3-large .bp3-spinner{
margin:8px;
margin-left:0; }
.bp3-tag-input.bp3-active{
background-color:#ffffff;
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-tag-input.bp3-active.bp3-intent-primary{
-webkit-box-shadow:0 0 0 1px #106ba3, 0 0 0 3px rgba(16, 107, 163, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #106ba3, 0 0 0 3px rgba(16, 107, 163, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-tag-input.bp3-active.bp3-intent-success{
-webkit-box-shadow:0 0 0 1px #0d8050, 0 0 0 3px rgba(13, 128, 80, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #0d8050, 0 0 0 3px rgba(13, 128, 80, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-tag-input.bp3-active.bp3-intent-warning{
-webkit-box-shadow:0 0 0 1px #bf7326, 0 0 0 3px rgba(191, 115, 38, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #bf7326, 0 0 0 3px rgba(191, 115, 38, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-tag-input.bp3-active.bp3-intent-danger{
-webkit-box-shadow:0 0 0 1px #c23030, 0 0 0 3px rgba(194, 48, 48, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px #c23030, 0 0 0 3px rgba(194, 48, 48, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.2); }
.bp3-dark .bp3-tag-input .bp3-tag-input-icon, .bp3-tag-input.bp3-dark .bp3-tag-input-icon{
color:#a7b6c2; }
.bp3-dark .bp3-tag-input .bp3-input-ghost, .bp3-tag-input.bp3-dark .bp3-input-ghost{
color:#f5f8fa; }
.bp3-dark .bp3-tag-input .bp3-input-ghost::-webkit-input-placeholder, .bp3-tag-input.bp3-dark .bp3-input-ghost::-webkit-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-tag-input .bp3-input-ghost::-moz-placeholder, .bp3-tag-input.bp3-dark .bp3-input-ghost::-moz-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-tag-input .bp3-input-ghost:-ms-input-placeholder, .bp3-tag-input.bp3-dark .bp3-input-ghost:-ms-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-tag-input .bp3-input-ghost::-ms-input-placeholder, .bp3-tag-input.bp3-dark .bp3-input-ghost::-ms-input-placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-tag-input .bp3-input-ghost::placeholder, .bp3-tag-input.bp3-dark .bp3-input-ghost::placeholder{
color:rgba(167, 182, 194, 0.6); }
.bp3-dark .bp3-tag-input.bp3-active, .bp3-tag-input.bp3-dark.bp3-active{
background-color:rgba(16, 22, 26, 0.3);
-webkit-box-shadow:0 0 0 1px #137cbd, 0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #137cbd, 0 0 0 1px #137cbd, 0 0 0 3px rgba(19, 124, 189, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-tag-input.bp3-active.bp3-intent-primary, .bp3-tag-input.bp3-dark.bp3-active.bp3-intent-primary{
-webkit-box-shadow:0 0 0 1px #106ba3, 0 0 0 3px rgba(16, 107, 163, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #106ba3, 0 0 0 3px rgba(16, 107, 163, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-tag-input.bp3-active.bp3-intent-success, .bp3-tag-input.bp3-dark.bp3-active.bp3-intent-success{
-webkit-box-shadow:0 0 0 1px #0d8050, 0 0 0 3px rgba(13, 128, 80, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #0d8050, 0 0 0 3px rgba(13, 128, 80, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-tag-input.bp3-active.bp3-intent-warning, .bp3-tag-input.bp3-dark.bp3-active.bp3-intent-warning{
-webkit-box-shadow:0 0 0 1px #bf7326, 0 0 0 3px rgba(191, 115, 38, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #bf7326, 0 0 0 3px rgba(191, 115, 38, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-dark .bp3-tag-input.bp3-active.bp3-intent-danger, .bp3-tag-input.bp3-dark.bp3-active.bp3-intent-danger{
-webkit-box-shadow:0 0 0 1px #c23030, 0 0 0 3px rgba(194, 48, 48, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px #c23030, 0 0 0 3px rgba(194, 48, 48, 0.3), inset 0 0 0 1px rgba(16, 22, 26, 0.3), inset 0 1px 1px rgba(16, 22, 26, 0.4); }
.bp3-input-ghost{
background:none;
border:none;
-webkit-box-shadow:none;
box-shadow:none;
padding:0; }
.bp3-input-ghost::-webkit-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-input-ghost::-moz-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-input-ghost:-ms-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-input-ghost::-ms-input-placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-input-ghost::placeholder{
color:rgba(92, 112, 128, 0.6);
opacity:1; }
.bp3-input-ghost:focus{
outline:none !important; }
.bp3-toast{
-webkit-box-align:start;
-ms-flex-align:start;
align-items:flex-start;
background-color:#ffffff;
border-radius:3px;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
display:-webkit-box;
display:-ms-flexbox;
display:flex;
margin:20px 0 0;
max-width:500px;
min-width:300px;
pointer-events:all;
position:relative !important; }
.bp3-toast.bp3-toast-enter, .bp3-toast.bp3-toast-appear{
-webkit-transform:translateY(-40px);
transform:translateY(-40px); }
.bp3-toast.bp3-toast-enter-active, .bp3-toast.bp3-toast-appear-active{
-webkit-transform:translateY(0);
transform:translateY(0);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:300ms;
transition-duration:300ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11);
transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11); }
.bp3-toast.bp3-toast-enter ~ .bp3-toast, .bp3-toast.bp3-toast-appear ~ .bp3-toast{
-webkit-transform:translateY(-40px);
transform:translateY(-40px); }
.bp3-toast.bp3-toast-enter-active ~ .bp3-toast, .bp3-toast.bp3-toast-appear-active ~ .bp3-toast{
-webkit-transform:translateY(0);
transform:translateY(0);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:300ms;
transition-duration:300ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11);
transition-timing-function:cubic-bezier(0.54, 1.12, 0.38, 1.11); }
.bp3-toast.bp3-toast-exit{
opacity:1;
-webkit-filter:blur(0);
filter:blur(0); }
.bp3-toast.bp3-toast-exit-active{
opacity:0;
-webkit-filter:blur(10px);
filter:blur(10px);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:300ms;
transition-duration:300ms;
-webkit-transition-property:opacity, -webkit-filter;
transition-property:opacity, -webkit-filter;
transition-property:opacity, filter;
transition-property:opacity, filter, -webkit-filter;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-toast.bp3-toast-exit ~ .bp3-toast{
-webkit-transform:translateY(0);
transform:translateY(0); }
.bp3-toast.bp3-toast-exit-active ~ .bp3-toast{
-webkit-transform:translateY(-40px);
transform:translateY(-40px);
-webkit-transition-delay:50ms;
transition-delay:50ms;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-toast .bp3-button-group{
-webkit-box-flex:0;
-ms-flex:0 0 auto;
flex:0 0 auto;
padding:5px;
padding-left:0; }
.bp3-toast > .bp3-icon{
color:#5c7080;
margin:12px;
margin-right:0; }
.bp3-toast.bp3-dark,
.bp3-dark .bp3-toast{
background-color:#394b59;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4); }
.bp3-toast.bp3-dark > .bp3-icon,
.bp3-dark .bp3-toast > .bp3-icon{
color:#a7b6c2; }
.bp3-toast[class*="bp3-intent-"] a{
color:rgba(255, 255, 255, 0.7); }
.bp3-toast[class*="bp3-intent-"] a:hover{
color:#ffffff; }
.bp3-toast[class*="bp3-intent-"] > .bp3-icon{
color:#ffffff; }
.bp3-toast[class*="bp3-intent-"] .bp3-button, .bp3-toast[class*="bp3-intent-"] .bp3-button::before,
.bp3-toast[class*="bp3-intent-"] .bp3-button .bp3-icon, .bp3-toast[class*="bp3-intent-"] .bp3-button:active{
color:rgba(255, 255, 255, 0.7) !important; }
.bp3-toast[class*="bp3-intent-"] .bp3-button:focus{
outline-color:rgba(255, 255, 255, 0.5); }
.bp3-toast[class*="bp3-intent-"] .bp3-button:hover{
background-color:rgba(255, 255, 255, 0.15) !important;
color:#ffffff !important; }
.bp3-toast[class*="bp3-intent-"] .bp3-button:active{
background-color:rgba(255, 255, 255, 0.3) !important;
color:#ffffff !important; }
.bp3-toast[class*="bp3-intent-"] .bp3-button::after{
background:rgba(255, 255, 255, 0.3) !important; }
.bp3-toast.bp3-intent-primary{
background-color:#137cbd;
color:#ffffff; }
.bp3-toast.bp3-intent-success{
background-color:#0f9960;
color:#ffffff; }
.bp3-toast.bp3-intent-warning{
background-color:#d9822b;
color:#ffffff; }
.bp3-toast.bp3-intent-danger{
background-color:#db3737;
color:#ffffff; }
.bp3-toast-message{
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto;
padding:11px;
word-break:break-word; }
.bp3-toast-container{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
display:-webkit-box !important;
display:-ms-flexbox !important;
display:flex !important;
-webkit-box-orient:vertical;
-webkit-box-direction:normal;
-ms-flex-direction:column;
flex-direction:column;
left:0;
overflow:hidden;
padding:0 20px 20px;
pointer-events:none;
right:0;
z-index:40; }
.bp3-toast-container.bp3-toast-container-in-portal{
position:fixed; }
.bp3-toast-container.bp3-toast-container-inline{
position:absolute; }
.bp3-toast-container.bp3-toast-container-top{
top:0; }
.bp3-toast-container.bp3-toast-container-bottom{
bottom:0;
-webkit-box-orient:vertical;
-webkit-box-direction:reverse;
-ms-flex-direction:column-reverse;
flex-direction:column-reverse;
top:auto; }
.bp3-toast-container.bp3-toast-container-left{
-webkit-box-align:start;
-ms-flex-align:start;
align-items:flex-start; }
.bp3-toast-container.bp3-toast-container-right{
-webkit-box-align:end;
-ms-flex-align:end;
align-items:flex-end; }
.bp3-toast-container-bottom .bp3-toast.bp3-toast-enter:not(.bp3-toast-enter-active),
.bp3-toast-container-bottom .bp3-toast.bp3-toast-enter:not(.bp3-toast-enter-active) ~ .bp3-toast, .bp3-toast-container-bottom .bp3-toast.bp3-toast-appear:not(.bp3-toast-appear-active),
.bp3-toast-container-bottom .bp3-toast.bp3-toast-appear:not(.bp3-toast-appear-active) ~ .bp3-toast,
.bp3-toast-container-bottom .bp3-toast.bp3-toast-exit-active ~ .bp3-toast,
.bp3-toast-container-bottom .bp3-toast.bp3-toast-leave-active ~ .bp3-toast{
-webkit-transform:translateY(60px);
transform:translateY(60px); }
.bp3-tooltip{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 2px 4px rgba(16, 22, 26, 0.2), 0 8px 24px rgba(16, 22, 26, 0.2);
-webkit-transform:scale(1);
transform:scale(1); }
.bp3-tooltip .bp3-popover-arrow{
height:22px;
position:absolute;
width:22px; }
.bp3-tooltip .bp3-popover-arrow::before{
height:14px;
margin:4px;
width:14px; }
.bp3-tether-element-attached-bottom.bp3-tether-target-attached-top > .bp3-tooltip{
margin-bottom:11px;
margin-top:-11px; }
.bp3-tether-element-attached-bottom.bp3-tether-target-attached-top > .bp3-tooltip > .bp3-popover-arrow{
bottom:-8px; }
.bp3-tether-element-attached-bottom.bp3-tether-target-attached-top > .bp3-tooltip > .bp3-popover-arrow svg{
-webkit-transform:rotate(-90deg);
transform:rotate(-90deg); }
.bp3-tether-element-attached-left.bp3-tether-target-attached-right > .bp3-tooltip{
margin-left:11px; }
.bp3-tether-element-attached-left.bp3-tether-target-attached-right > .bp3-tooltip > .bp3-popover-arrow{
left:-8px; }
.bp3-tether-element-attached-left.bp3-tether-target-attached-right > .bp3-tooltip > .bp3-popover-arrow svg{
-webkit-transform:rotate(0);
transform:rotate(0); }
.bp3-tether-element-attached-top.bp3-tether-target-attached-bottom > .bp3-tooltip{
margin-top:11px; }
.bp3-tether-element-attached-top.bp3-tether-target-attached-bottom > .bp3-tooltip > .bp3-popover-arrow{
top:-8px; }
.bp3-tether-element-attached-top.bp3-tether-target-attached-bottom > .bp3-tooltip > .bp3-popover-arrow svg{
-webkit-transform:rotate(90deg);
transform:rotate(90deg); }
.bp3-tether-element-attached-right.bp3-tether-target-attached-left > .bp3-tooltip{
margin-left:-11px;
margin-right:11px; }
.bp3-tether-element-attached-right.bp3-tether-target-attached-left > .bp3-tooltip > .bp3-popover-arrow{
right:-8px; }
.bp3-tether-element-attached-right.bp3-tether-target-attached-left > .bp3-tooltip > .bp3-popover-arrow svg{
-webkit-transform:rotate(180deg);
transform:rotate(180deg); }
.bp3-tether-element-attached-middle > .bp3-tooltip > .bp3-popover-arrow{
top:50%;
-webkit-transform:translateY(-50%);
transform:translateY(-50%); }
.bp3-tether-element-attached-center > .bp3-tooltip > .bp3-popover-arrow{
right:50%;
-webkit-transform:translateX(50%);
transform:translateX(50%); }
.bp3-tether-element-attached-top.bp3-tether-target-attached-top > .bp3-tooltip > .bp3-popover-arrow{
top:-0.22183px; }
.bp3-tether-element-attached-right.bp3-tether-target-attached-right > .bp3-tooltip > .bp3-popover-arrow{
right:-0.22183px; }
.bp3-tether-element-attached-left.bp3-tether-target-attached-left > .bp3-tooltip > .bp3-popover-arrow{
left:-0.22183px; }
.bp3-tether-element-attached-bottom.bp3-tether-target-attached-bottom > .bp3-tooltip > .bp3-popover-arrow{
bottom:-0.22183px; }
.bp3-tether-element-attached-top.bp3-tether-element-attached-left > .bp3-tooltip{
-webkit-transform-origin:top left;
transform-origin:top left; }
.bp3-tether-element-attached-top.bp3-tether-element-attached-center > .bp3-tooltip{
-webkit-transform-origin:top center;
transform-origin:top center; }
.bp3-tether-element-attached-top.bp3-tether-element-attached-right > .bp3-tooltip{
-webkit-transform-origin:top right;
transform-origin:top right; }
.bp3-tether-element-attached-middle.bp3-tether-element-attached-left > .bp3-tooltip{
-webkit-transform-origin:center left;
transform-origin:center left; }
.bp3-tether-element-attached-middle.bp3-tether-element-attached-center > .bp3-tooltip{
-webkit-transform-origin:center center;
transform-origin:center center; }
.bp3-tether-element-attached-middle.bp3-tether-element-attached-right > .bp3-tooltip{
-webkit-transform-origin:center right;
transform-origin:center right; }
.bp3-tether-element-attached-bottom.bp3-tether-element-attached-left > .bp3-tooltip{
-webkit-transform-origin:bottom left;
transform-origin:bottom left; }
.bp3-tether-element-attached-bottom.bp3-tether-element-attached-center > .bp3-tooltip{
-webkit-transform-origin:bottom center;
transform-origin:bottom center; }
.bp3-tether-element-attached-bottom.bp3-tether-element-attached-right > .bp3-tooltip{
-webkit-transform-origin:bottom right;
transform-origin:bottom right; }
.bp3-tooltip .bp3-popover-content{
background:#394b59;
color:#f5f8fa; }
.bp3-tooltip .bp3-popover-arrow::before{
-webkit-box-shadow:1px 1px 6px rgba(16, 22, 26, 0.2);
box-shadow:1px 1px 6px rgba(16, 22, 26, 0.2); }
.bp3-tooltip .bp3-popover-arrow-border{
fill:#10161a;
fill-opacity:0.1; }
.bp3-tooltip .bp3-popover-arrow-fill{
fill:#394b59; }
.bp3-popover-enter > .bp3-tooltip, .bp3-popover-appear > .bp3-tooltip{
-webkit-transform:scale(0.8);
transform:scale(0.8); }
.bp3-popover-enter-active > .bp3-tooltip, .bp3-popover-appear-active > .bp3-tooltip{
-webkit-transform:scale(1);
transform:scale(1);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-popover-exit > .bp3-tooltip{
-webkit-transform:scale(1);
transform:scale(1); }
.bp3-popover-exit-active > .bp3-tooltip{
-webkit-transform:scale(0.8);
transform:scale(0.8);
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:100ms;
transition-duration:100ms;
-webkit-transition-property:-webkit-transform;
transition-property:-webkit-transform;
transition-property:transform;
transition-property:transform, -webkit-transform;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-tooltip .bp3-popover-content{
padding:10px 12px; }
.bp3-tooltip.bp3-dark,
.bp3-dark .bp3-tooltip{
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 2px 4px rgba(16, 22, 26, 0.4), 0 8px 24px rgba(16, 22, 26, 0.4); }
.bp3-tooltip.bp3-dark .bp3-popover-content,
.bp3-dark .bp3-tooltip .bp3-popover-content{
background:#e1e8ed;
color:#394b59; }
.bp3-tooltip.bp3-dark .bp3-popover-arrow::before,
.bp3-dark .bp3-tooltip .bp3-popover-arrow::before{
-webkit-box-shadow:1px 1px 6px rgba(16, 22, 26, 0.4);
box-shadow:1px 1px 6px rgba(16, 22, 26, 0.4); }
.bp3-tooltip.bp3-dark .bp3-popover-arrow-border,
.bp3-dark .bp3-tooltip .bp3-popover-arrow-border{
fill:#10161a;
fill-opacity:0.2; }
.bp3-tooltip.bp3-dark .bp3-popover-arrow-fill,
.bp3-dark .bp3-tooltip .bp3-popover-arrow-fill{
fill:#e1e8ed; }
.bp3-tooltip.bp3-intent-primary .bp3-popover-content{
background:#137cbd;
color:#ffffff; }
.bp3-tooltip.bp3-intent-primary .bp3-popover-arrow-fill{
fill:#137cbd; }
.bp3-tooltip.bp3-intent-success .bp3-popover-content{
background:#0f9960;
color:#ffffff; }
.bp3-tooltip.bp3-intent-success .bp3-popover-arrow-fill{
fill:#0f9960; }
.bp3-tooltip.bp3-intent-warning .bp3-popover-content{
background:#d9822b;
color:#ffffff; }
.bp3-tooltip.bp3-intent-warning .bp3-popover-arrow-fill{
fill:#d9822b; }
.bp3-tooltip.bp3-intent-danger .bp3-popover-content{
background:#db3737;
color:#ffffff; }
.bp3-tooltip.bp3-intent-danger .bp3-popover-arrow-fill{
fill:#db3737; }
.bp3-tooltip-indicator{
border-bottom:dotted 1px;
cursor:help; }
.bp3-tree .bp3-icon, .bp3-tree .bp3-icon-standard, .bp3-tree .bp3-icon-large{
color:#5c7080; }
.bp3-tree .bp3-icon.bp3-intent-primary, .bp3-tree .bp3-icon-standard.bp3-intent-primary, .bp3-tree .bp3-icon-large.bp3-intent-primary{
color:#137cbd; }
.bp3-tree .bp3-icon.bp3-intent-success, .bp3-tree .bp3-icon-standard.bp3-intent-success, .bp3-tree .bp3-icon-large.bp3-intent-success{
color:#0f9960; }
.bp3-tree .bp3-icon.bp3-intent-warning, .bp3-tree .bp3-icon-standard.bp3-intent-warning, .bp3-tree .bp3-icon-large.bp3-intent-warning{
color:#d9822b; }
.bp3-tree .bp3-icon.bp3-intent-danger, .bp3-tree .bp3-icon-standard.bp3-intent-danger, .bp3-tree .bp3-icon-large.bp3-intent-danger{
color:#db3737; }
.bp3-tree-node-list{
list-style:none;
margin:0;
padding-left:0; }
.bp3-tree-root{
background-color:transparent;
cursor:default;
padding-left:0;
position:relative; }
.bp3-tree-node-content-0{
padding-left:0px; }
.bp3-tree-node-content-1{
padding-left:23px; }
.bp3-tree-node-content-2{
padding-left:46px; }
.bp3-tree-node-content-3{
padding-left:69px; }
.bp3-tree-node-content-4{
padding-left:92px; }
.bp3-tree-node-content-5{
padding-left:115px; }
.bp3-tree-node-content-6{
padding-left:138px; }
.bp3-tree-node-content-7{
padding-left:161px; }
.bp3-tree-node-content-8{
padding-left:184px; }
.bp3-tree-node-content-9{
padding-left:207px; }
.bp3-tree-node-content-10{
padding-left:230px; }
.bp3-tree-node-content-11{
padding-left:253px; }
.bp3-tree-node-content-12{
padding-left:276px; }
.bp3-tree-node-content-13{
padding-left:299px; }
.bp3-tree-node-content-14{
padding-left:322px; }
.bp3-tree-node-content-15{
padding-left:345px; }
.bp3-tree-node-content-16{
padding-left:368px; }
.bp3-tree-node-content-17{
padding-left:391px; }
.bp3-tree-node-content-18{
padding-left:414px; }
.bp3-tree-node-content-19{
padding-left:437px; }
.bp3-tree-node-content-20{
padding-left:460px; }
.bp3-tree-node-content{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
display:-webkit-box;
display:-ms-flexbox;
display:flex;
height:30px;
padding-right:5px;
width:100%; }
.bp3-tree-node-content:hover{
background-color:rgba(191, 204, 214, 0.4); }
.bp3-tree-node-caret,
.bp3-tree-node-caret-none{
min-width:30px; }
.bp3-tree-node-caret{
color:#5c7080;
cursor:pointer;
padding:7px;
-webkit-transform:rotate(0deg);
transform:rotate(0deg);
-webkit-transition:-webkit-transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:-webkit-transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9);
transition:transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9), -webkit-transform 200ms cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-tree-node-caret:hover{
color:#182026; }
.bp3-dark .bp3-tree-node-caret{
color:#a7b6c2; }
.bp3-dark .bp3-tree-node-caret:hover{
color:#f5f8fa; }
.bp3-tree-node-caret.bp3-tree-node-caret-open{
-webkit-transform:rotate(90deg);
transform:rotate(90deg); }
.bp3-tree-node-caret.bp3-icon-standard::before{
content:""; }
.bp3-tree-node-icon{
margin-right:7px;
position:relative; }
.bp3-tree-node-label{
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
word-wrap:normal;
-webkit-box-flex:1;
-ms-flex:1 1 auto;
flex:1 1 auto;
position:relative;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none; }
.bp3-tree-node-label span{
display:inline; }
.bp3-tree-node-secondary-label{
padding:0 5px;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none; }
.bp3-tree-node-secondary-label .bp3-popover-wrapper,
.bp3-tree-node-secondary-label .bp3-popover-target{
-webkit-box-align:center;
-ms-flex-align:center;
align-items:center;
display:-webkit-box;
display:-ms-flexbox;
display:flex; }
.bp3-tree-node.bp3-disabled .bp3-tree-node-content{
background-color:inherit;
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-tree-node.bp3-disabled .bp3-tree-node-caret,
.bp3-tree-node.bp3-disabled .bp3-tree-node-icon{
color:rgba(92, 112, 128, 0.6);
cursor:not-allowed; }
.bp3-tree-node.bp3-tree-node-selected > .bp3-tree-node-content{
background-color:#137cbd; }
.bp3-tree-node.bp3-tree-node-selected > .bp3-tree-node-content,
.bp3-tree-node.bp3-tree-node-selected > .bp3-tree-node-content .bp3-icon, .bp3-tree-node.bp3-tree-node-selected > .bp3-tree-node-content .bp3-icon-standard, .bp3-tree-node.bp3-tree-node-selected > .bp3-tree-node-content .bp3-icon-large{
color:#ffffff; }
.bp3-tree-node.bp3-tree-node-selected > .bp3-tree-node-content .bp3-tree-node-caret::before{
color:rgba(255, 255, 255, 0.7); }
.bp3-tree-node.bp3-tree-node-selected > .bp3-tree-node-content .bp3-tree-node-caret:hover::before{
color:#ffffff; }
.bp3-dark .bp3-tree-node-content:hover{
background-color:rgba(92, 112, 128, 0.3); }
.bp3-dark .bp3-tree .bp3-icon, .bp3-dark .bp3-tree .bp3-icon-standard, .bp3-dark .bp3-tree .bp3-icon-large{
color:#a7b6c2; }
.bp3-dark .bp3-tree .bp3-icon.bp3-intent-primary, .bp3-dark .bp3-tree .bp3-icon-standard.bp3-intent-primary, .bp3-dark .bp3-tree .bp3-icon-large.bp3-intent-primary{
color:#137cbd; }
.bp3-dark .bp3-tree .bp3-icon.bp3-intent-success, .bp3-dark .bp3-tree .bp3-icon-standard.bp3-intent-success, .bp3-dark .bp3-tree .bp3-icon-large.bp3-intent-success{
color:#0f9960; }
.bp3-dark .bp3-tree .bp3-icon.bp3-intent-warning, .bp3-dark .bp3-tree .bp3-icon-standard.bp3-intent-warning, .bp3-dark .bp3-tree .bp3-icon-large.bp3-intent-warning{
color:#d9822b; }
.bp3-dark .bp3-tree .bp3-icon.bp3-intent-danger, .bp3-dark .bp3-tree .bp3-icon-standard.bp3-intent-danger, .bp3-dark .bp3-tree .bp3-icon-large.bp3-intent-danger{
color:#db3737; }
.bp3-dark .bp3-tree-node.bp3-tree-node-selected > .bp3-tree-node-content{
background-color:#137cbd; }
.bp3-omnibar{
-webkit-filter:blur(0);
filter:blur(0);
opacity:1;
background-color:#ffffff;
border-radius:3px;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 4px 8px rgba(16, 22, 26, 0.2), 0 18px 46px 6px rgba(16, 22, 26, 0.2);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.1), 0 4px 8px rgba(16, 22, 26, 0.2), 0 18px 46px 6px rgba(16, 22, 26, 0.2);
left:calc(50% - 250px);
top:20vh;
width:500px;
z-index:21; }
.bp3-omnibar.bp3-overlay-enter, .bp3-omnibar.bp3-overlay-appear{
-webkit-filter:blur(20px);
filter:blur(20px);
opacity:0.2; }
.bp3-omnibar.bp3-overlay-enter-active, .bp3-omnibar.bp3-overlay-appear-active{
-webkit-filter:blur(0);
filter:blur(0);
opacity:1;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-property:opacity, -webkit-filter;
transition-property:opacity, -webkit-filter;
transition-property:filter, opacity;
transition-property:filter, opacity, -webkit-filter;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-omnibar.bp3-overlay-exit{
-webkit-filter:blur(0);
filter:blur(0);
opacity:1; }
.bp3-omnibar.bp3-overlay-exit-active{
-webkit-filter:blur(20px);
filter:blur(20px);
opacity:0.2;
-webkit-transition-delay:0;
transition-delay:0;
-webkit-transition-duration:200ms;
transition-duration:200ms;
-webkit-transition-property:opacity, -webkit-filter;
transition-property:opacity, -webkit-filter;
transition-property:filter, opacity;
transition-property:filter, opacity, -webkit-filter;
-webkit-transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9);
transition-timing-function:cubic-bezier(0.4, 1, 0.75, 0.9); }
.bp3-omnibar .bp3-input{
background-color:transparent;
border-radius:0; }
.bp3-omnibar .bp3-input, .bp3-omnibar .bp3-input:focus{
-webkit-box-shadow:none;
box-shadow:none; }
.bp3-omnibar .bp3-menu{
background-color:transparent;
border-radius:0;
-webkit-box-shadow:inset 0 1px 0 rgba(16, 22, 26, 0.15);
box-shadow:inset 0 1px 0 rgba(16, 22, 26, 0.15);
max-height:calc(60vh - 40px);
overflow:auto; }
.bp3-omnibar .bp3-menu:empty{
display:none; }
.bp3-dark .bp3-omnibar, .bp3-omnibar.bp3-dark{
background-color:#30404d;
-webkit-box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 4px 8px rgba(16, 22, 26, 0.4), 0 18px 46px 6px rgba(16, 22, 26, 0.4);
box-shadow:0 0 0 1px rgba(16, 22, 26, 0.2), 0 4px 8px rgba(16, 22, 26, 0.4), 0 18px 46px 6px rgba(16, 22, 26, 0.4); }
.bp3-omnibar-overlay .bp3-overlay-backdrop{
background-color:rgba(16, 22, 26, 0.2); }
.bp3-select-popover .bp3-popover-content{
padding:5px; }
.bp3-select-popover .bp3-input-group{
margin-bottom:0; }
.bp3-select-popover .bp3-menu{
max-height:300px;
max-width:400px;
overflow:auto;
padding:0; }
.bp3-select-popover .bp3-menu:not(:first-child){
padding-top:5px; }
.bp3-multi-select{
min-width:150px; }
.bp3-multi-select-popover .bp3-menu{
max-height:300px;
max-width:400px;
overflow:auto; }
.bp3-select-popover .bp3-popover-content{
padding:5px; }
.bp3-select-popover .bp3-input-group{
margin-bottom:0; }
.bp3-select-popover .bp3-menu{
max-height:300px;
max-width:400px;
overflow:auto;
padding:0; }
.bp3-select-popover .bp3-menu:not(:first-child){
padding-top:5px; }
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/* This file was auto-generated by ensureUiComponents() in @jupyterlab/buildutils */
/**
* (DEPRECATED) Support for consuming icons as CSS background images
*/
/* Icons urls */
:root {
--jp-icon-add: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTE5IDEzaC02djZoLTJ2LTZINXYtMmg2VjVoMnY2aDZ2MnoiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-bug: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxwYXRoIGQ9Ik0yMCA4aC0yLjgxYy0uNDUtLjc4LTEuMDctMS40NS0xLjgyLTEuOTZMMTcgNC40MSAxNS41OSAzbC0yLjE3IDIuMTdDMTIuOTYgNS4wNiAxMi40OSA1IDEyIDVjLS40OSAwLS45Ni4wNi0xLjQxLjE3TDguNDEgMyA3IDQuNDFsMS42MiAxLjYzQzcuODggNi41NSA3LjI2IDcuMjIgNi44MSA4SDR2MmgyLjA5Yy0uMDUuMzMtLjA5LjY2LS4wOSAxdjFINHYyaDJ2MWMwIC4zNC4wNC42Ny4wOSAxSDR2MmgyLjgxYzEuMDQgMS43OSAyLjk3IDMgNS4xOSAzczQuMTUtMS4yMSA1LjE5LTNIMjB2LTJoLTIuMDljLjA1LS4zMy4wOS0uNjYuMDktMXYtMWgydi0yaC0ydi0xYzAtLjM0LS4wNC0uNjctLjA5LTFIMjBWOHptLTYgOGgtNHYtMmg0djJ6bTAtNGgtNHYtMmg0djJ6Ii8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-build: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTE0LjkgMTcuNDVDMTYuMjUgMTcuNDUgMTcuMzUgMTYuMzUgMTcuMzUgMTVDMTcuMzUgMTMuNjUgMTYuMjUgMTIuNTUgMTQuOSAxMi41NUMxMy41NCAxMi41NSAxMi40NSAxMy42NSAxMi40NSAxNUMxMi40NSAxNi4zNSAxMy41NCAxNy40NSAxNC45IDE3LjQ1Wk0yMC4xIDE1LjY4TDIxLjU4IDE2Ljg0QzIxLjcxIDE2Ljk1IDIxLjc1IDE3LjEzIDIxLjY2IDE3LjI5TDIwLjI2IDE5LjcxQzIwLjE3IDE5Ljg2IDIwIDE5LjkyIDE5LjgzIDE5Ljg2TDE4LjA5IDE5LjE2QzE3LjczIDE5LjQ0IDE3LjMzIDE5LjY3IDE2LjkxIDE5Ljg1TDE2LjY0IDIxLjdDMTYuNjIgMjEuODcgMTYuNDcgMjIgMTYuMyAyMkgxMy41QzEzLjMyIDIyIDEzLjE4IDIxLjg3IDEzLjE1IDIxLjdMMTIuODkgMTkuODVDMTIuNDYgMTkuNjcgMTIuMDcgMTkuNDQgMTEuNzEgMTkuMTZMOS45NjAwMiAxOS44NkM5LjgxMDAyIDE5LjkyIDkuNjIwMDIgMTkuODYgOS41NDAwMiAxOS43MUw4LjE0MDAyIDE3LjI5QzguMDUwMDIgMTcuMTMgOC4wOTAwMiAxNi45NSA4LjIyMDAyIDE2Ljg0TDkuNzAwMDIgMTUuNjhMOS42NTAwMSAxNUw5LjcwMDAyIDE0LjMxTDguMjIwMDIgMTMuMTZDOC4wOTAwMiAxMy4wNSA4LjA1MDAyIDEyLjg2IDguMTQwMDIgMTIuNzFMOS41NDAwMiAxMC4yOUM5LjYyMDAyIDEwLjEzIDkuODEwMDIgMTAuMDcgOS45NjAwMiAxMC4xM0wxMS43MSAxMC44NEMxMi4wNyAxMC41NiAxMi40NiAxMC4zMiAxMi44OSAxMC4xNUwxMy4xNSA4LjI4OTk4QzEzLjE4IDguMTI5OTggMTMuMzIgNy45OTk5OCAxMy41IDcuOTk5OThIMTYuM0MxNi40NyA3Ljk5OTk4IDE2LjYyIDguMTI5OTggMTYuNjQgOC4yODk5OEwxNi45MSAxMC4xNUMxNy4zMyAxMC4zMiAxNy43MyAxMC41NiAxOC4wOSAxMC44NEwxOS44MyAxMC4xM0MyMCAxMC4wNyAyMC4xNyAxMC4xMyAyMC4yNiAxMC4yOUwyMS42NiAxMi43MUMyMS43NSAxMi44NiAyMS43MSAxMy4wNSAyMS41OCAxMy4xNkwyMC4xIDE0LjMxTDIwLjE1IDE1TDIwLjEgMTUuNjhaIi8+CiAgICA8cGF0aCBkPSJNNy4zMjk2NiA3LjQ0NDU0QzguMDgzMSA3LjAwOTU0IDguMzM5MzIgNi4wNTMzMiA3LjkwNDMyIDUuMjk5ODhDNy40NjkzMiA0LjU0NjQzIDYuNTA4MSA0LjI4MTU2IDUuNzU0NjYgNC43MTY1NkM1LjM5MTc2IDQuOTI2MDggNS4xMjY5NSA1LjI3MTE4IDUuMDE4NDkgNS42NzU5NEM0LjkxMDA0IDYuMDgwNzEgNC45NjY4MiA2LjUxMTk4IDUuMTc2MzQgNi44NzQ4OEM1LjYxMTM0IDcuNjI4MzIgNi41NzYyMiA3Ljg3OTU0IDcuMzI5NjYgNy40NDQ1NFpNOS42NTcxOCA0Ljc5NTkzTDEwLjg2NzIgNC45NTE3OUMxMC45NjI4IDQuOTc3NDEgMTEuMDQwMiA1LjA3MTMzIDExLjAzODIgNS4xODc5M0wxMS4wMzg4IDYuOTg4OTNDMTEuMDQ1NSA3LjEwMDU0IDEwLjk2MTYgNy4xOTUxOCAxMC44NTUgNy4yMTA1NEw5LjY2MDAxIDcuMzgwODNMOS4yMzkxNSA4LjEzMTg4TDkuNjY5NjEgOS4yNTc0NUM5LjcwNzI5IDkuMzYyNzEgOS42NjkzNCA5LjQ3Njk5IDkuNTc0MDggOS41MzE5OUw4LjAxNTIzIDEwLjQzMkM3LjkxMTMxIDEwLjQ5MiA3Ljc5MzM3IDEwLjQ2NzcgNy43MjEwNSAxMC4zODI0TDYuOTg3NDggOS40MzE4OEw2LjEwOTMxIDkuNDMwODNMNS4zNDcwNCAxMC4zOTA1QzUuMjg5MDkgMTAuNDcwMiA1LjE3MzgzIDEwLjQ5MDUgNS4wNzE4NyAxMC40MzM5TDMuNTEyNDUgOS41MzI5M0MzLjQxMDQ5IDkuNDc2MzMgMy4zNzY0NyA5LjM1NzQxIDMuNDEwNzUgOS4yNTY3OUwzLjg2MzQ3IDguMTQwOTNMMy42MTc0OSA3Ljc3NDg4TDMuNDIzNDcgNy4zNzg4M0wyLjIzMDc1IDcuMjEyOTdDMi4xMjY0NyA3LjE5MjM1IDIuMDQwNDkgNy4xMDM0MiAyLjA0MjQ1IDYuOTg2ODJMMi4wNDE4NyA1LjE4NTgyQzIuMDQzODMgNS4wNjkyMiAyLjExOTA5IDQuOTc5NTggMi4yMTcwNCA0Ljk2OTIyTDMuNDIwNjUgNC43OTM5M0wzLjg2NzQ5IDQuMDI3ODhMMy40MTEwNSAyLjkxNzMxQzMuMzczMzcgMi44MTIwNCAzLjQxMTMxIDIuNjk3NzYgMy41MTUyMyAyLjYzNzc2TDUuMDc0MDggMS43Mzc3NkM1LjE2OTM0IDEuNjgyNzYgNS4yODcyOSAxLjcwNzA0IDUuMzU5NjEgMS43OTIzMUw2LjExOTE1IDIuNzI3ODhMNi45ODAwMSAyLjczODkzTDcuNzI0OTYgMS43ODkyMkM3Ljc5MTU2IDEuNzA0NTggNy45MTU0OCAxLjY3OTIyIDguMDA4NzkgMS43NDA4Mkw5LjU2ODIxIDIuNjQxODJDOS42NzAxNyAyLjY5ODQyIDkuNzEyODUgMi44MTIzNCA5LjY4NzIzIDIuOTA3OTdMOS4yMTcxOCA0LjAzMzgzTDkuNDYzMTYgNC4zOTk4OEw5LjY1NzE4IDQuNzk1OTNaIi8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-caret-down-empty-thin: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwIDIwIj4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgoJCTxwb2x5Z29uIGNsYXNzPSJzdDEiIHBvaW50cz0iOS45LDEzLjYgMy42LDcuNCA0LjQsNi42IDkuOSwxMi4yIDE1LjQsNi43IDE2LjEsNy40ICIvPgoJPC9nPgo8L3N2Zz4K);
--jp-icon-caret-down-empty: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KICAgIDxwYXRoIGQ9Ik01LjIsNS45TDksOS43bDMuOC0zLjhsMS4yLDEuMmwtNC45LDVsLTQuOS01TDUuMiw1Ljl6Ii8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-caret-down: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KICAgIDxwYXRoIGQ9Ik01LjIsNy41TDksMTEuMmwzLjgtMy44SDUuMnoiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-caret-left: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgoJCTxwYXRoIGQ9Ik0xMC44LDEyLjhMNy4xLDlsMy44LTMuOGwwLDcuNkgxMC44eiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-caret-right: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KICAgIDxwYXRoIGQ9Ik03LjIsNS4yTDEwLjksOWwtMy44LDMuOFY1LjJINy4yeiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-caret-up-empty-thin: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwIDIwIj4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgoJCTxwb2x5Z29uIGNsYXNzPSJzdDEiIHBvaW50cz0iMTUuNCwxMy4zIDkuOSw3LjcgNC40LDEzLjIgMy42LDEyLjUgOS45LDYuMyAxNi4xLDEyLjYgIi8+Cgk8L2c+Cjwvc3ZnPgo=);
--jp-icon-caret-up: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgoJCTxwYXRoIGQ9Ik01LjIsMTAuNUw5LDYuOGwzLjgsMy44SDUuMnoiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-case-sensitive: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwIDIwIj4KICA8ZyBjbGFzcz0ianAtaWNvbjIiIGZpbGw9IiM0MTQxNDEiPgogICAgPHJlY3QgeD0iMiIgeT0iMiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ii8+CiAgPC9nPgogIDxnIGNsYXNzPSJqcC1pY29uLWFjY2VudDIiIGZpbGw9IiNGRkYiPgogICAgPHBhdGggZD0iTTcuNiw4aDAuOWwzLjUsOGgtMS4xTDEwLDE0SDZsLTAuOSwySDRMNy42LDh6IE04LDkuMUw2LjQsMTNoMy4yTDgsOS4xeiIvPgogICAgPHBhdGggZD0iTTE2LjYsOS44Yy0wLjIsMC4xLTAuNCwwLjEtMC43LDAuMWMtMC4yLDAtMC40LTAuMS0wLjYtMC4yYy0wLjEtMC4xLTAuMi0wLjQtMC4yLTAuNyBjLTAuMywwLjMtMC42LDAuNS0wLjksMC43Yy0wLjMsMC4xLTAuNywwLjItMS4xLDAuMmMtMC4zLDAtMC41LDAtMC43LTAuMWMtMC4yLTAuMS0wLjQtMC4yLTAuNi0wLjNjLTAuMi0wLjEtMC4zLTAuMy0wLjQtMC41IGMtMC4xLTAuMi0wLjEtMC40LTAuMS0wLjdjMC0wLjMsMC4xLTAuNiwwLjItMC44YzAuMS0wLjIsMC4zLTAuNCwwLjQtMC41QzEyLDcsMTIuMiw2LjksMTIuNSw2LjhjMC4yLTAuMSwwLjUtMC4xLDAuNy0wLjIgYzAuMy0wLjEsMC41LTAuMSwwLjctMC4xYzAuMiwwLDAuNC0wLjEsMC42LTAuMWMwLjIsMCwwLjMtMC4xLDAuNC0wLjJjMC4xLTAuMSwwLjItMC4yLDAuMi0wLjRjMC0xLTEuMS0xLTEuMy0xIGMtMC40LDAtMS40LDAtMS40LDEuMmgtMC45YzAtMC40LDAuMS0wLjcsMC4yLTFjMC4xLTAuMiwwLjMtMC40LDAuNS0wLjZjMC4yLTAuMiwwLjUtMC4zLDAuOC0wLjNDMTMuMyw0LDEzLjYsNCwxMy45LDQgYzAuMywwLDAuNSwwLDAuOCwwLjFjMC4zLDAsMC41LDAuMSwwLjcsMC4yYzAuMiwwLjEsMC40LDAuMywwLjUsMC41QzE2LDUsMTYsNS4yLDE2LDUuNnYyLjljMCwwLjIsMCwwLjQsMCwwLjUgYzAsMC4xLDAuMSwwLjIsMC4zLDAuMmMwLjEsMCwwLjIsMCwwLjMsMFY5Ljh6IE0xNS4yLDYuOWMtMS4yLDAuNi0zLjEsMC4yLTMuMSwxLjRjMCwxLjQsMy4xLDEsMy4xLTAuNVY2Ljl6Ii8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-check: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxwYXRoIGQ9Ik05IDE2LjE3TDQuODMgMTJsLTEuNDIgMS40MUw5IDE5IDIxIDdsLTEuNDEtMS40MXoiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-circle-empty: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTEyIDJDNi40NyAyIDIgNi40NyAyIDEyczQuNDcgMTAgMTAgMTAgMTAtNC40NyAxMC0xMFMxNy41MyAyIDEyIDJ6bTAgMThjLTQuNDEgMC04LTMuNTktOC04czMuNTktOCA4LTggOCAzLjU5IDggOC0zLjU5IDgtOCA4eiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-circle: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPGNpcmNsZSBjeD0iOSIgY3k9IjkiIHI9IjgiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-clear: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8bWFzayBpZD0iZG9udXRIb2xlIj4KICAgIDxyZWN0IHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgZmlsbD0id2hpdGUiIC8+CiAgICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI4IiBmaWxsPSJibGFjayIvPgogIDwvbWFzaz4KCiAgPGcgY2xhc3M9ImpwLWljb24zIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxyZWN0IGhlaWdodD0iMTgiIHdpZHRoPSIyIiB4PSIxMSIgeT0iMyIgdHJhbnNmb3JtPSJyb3RhdGUoMzE1LCAxMiwgMTIpIi8+CiAgICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIgbWFzaz0idXJsKCNkb251dEhvbGUpIi8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-close: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbi1ub25lIGpwLWljb24tc2VsZWN0YWJsZS1pbnZlcnNlIGpwLWljb24zLWhvdmVyIiBmaWxsPSJub25lIj4KICAgIDxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjExIi8+CiAgPC9nPgoKICA8ZyBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIGpwLWljb24tYWNjZW50Mi1ob3ZlciIgZmlsbD0iIzYxNjE2MSI+CiAgICA8cGF0aCBkPSJNMTkgNi40MUwxNy41OSA1IDEyIDEwLjU5IDYuNDEgNSA1IDYuNDEgMTAuNTkgMTIgNSAxNy41OSA2LjQxIDE5IDEyIDEzLjQxIDE3LjU5IDE5IDE5IDE3LjU5IDEzLjQxIDEyeiIvPgogIDwvZz4KCiAgPGcgY2xhc3M9ImpwLWljb24tbm9uZSBqcC1pY29uLWJ1c3kiIGZpbGw9Im5vbmUiPgogICAgPGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iNyIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-code: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyOCAyOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CgkJPHBhdGggZD0iTTExLjQgMTguNkw2LjggMTRMMTEuNCA5LjRMMTAgOEw0IDE0TDEwIDIwTDExLjQgMTguNlpNMTYuNiAxOC42TDIxLjIgMTRMMTYuNiA5LjRMMTggOEwyNCAxNEwxOCAyMEwxNi42IDE4LjZWMTguNloiLz4KCTwvZz4KPC9zdmc+Cg==);
--jp-icon-console: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwMCAyMDAiPgogIDxnIGNsYXNzPSJqcC1pY29uLWJyYW5kMSBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiMwMjg4RDEiPgogICAgPHBhdGggZD0iTTIwIDE5LjhoMTYwdjE1OS45SDIweiIvPgogIDwvZz4KICA8ZyBjbGFzcz0ianAtaWNvbi1zZWxlY3RhYmxlLWludmVyc2UiIGZpbGw9IiNmZmYiPgogICAgPHBhdGggZD0iTTEwNSAxMjcuM2g0MHYxMi44aC00MHpNNTEuMSA3N0w3NCA5OS45bC0yMy4zIDIzLjMgMTAuNSAxMC41IDIzLjMtMjMuM0w5NSA5OS45IDg0LjUgODkuNCA2MS42IDY2LjV6Ii8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-copy: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTExLjksMUgzLjJDMi40LDEsMS43LDEuNywxLjcsMi41djEwLjJoMS41VjIuNWg4LjdWMXogTTE0LjEsMy45aC04Yy0wLjgsMC0xLjUsMC43LTEuNSwxLjV2MTAuMmMwLDAuOCwwLjcsMS41LDEuNSwxLjVoOCBjMC44LDAsMS41LTAuNywxLjUtMS41VjUuNEMxNS41LDQuNiwxNC45LDMuOSwxNC4xLDMuOXogTTE0LjEsMTUuNWgtOFY1LjRoOFYxNS41eiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-copyright: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDI0IDI0IiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCI+CiAgPGcgY2xhc3M9ImpwLWljb24zIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxwYXRoIGQ9Ik0xMS44OCw5LjE0YzEuMjgsMC4wNiwxLjYxLDEuMTUsMS42MywxLjY2aDEuNzljLTAuMDgtMS45OC0xLjQ5LTMuMTktMy40NS0zLjE5QzkuNjQsNy42MSw4LDksOCwxMi4xNCBjMCwxLjk0LDAuOTMsNC4yNCwzLjg0LDQuMjRjMi4yMiwwLDMuNDEtMS42NSwzLjQ0LTIuOTVoLTEuNzljLTAuMDMsMC41OS0wLjQ1LDEuMzgtMS42MywxLjQ0QzEwLjU1LDE0LjgzLDEwLDEzLjgxLDEwLDEyLjE0IEMxMCw5LjI1LDExLjI4LDkuMTYsMTEuODgsOS4xNHogTTEyLDJDNi40OCwyLDIsNi40OCwyLDEyczQuNDgsMTAsMTAsMTBzMTAtNC40OCwxMC0xMFMxNy41MiwyLDEyLDJ6IE0xMiwyMGMtNC40MSwwLTgtMy41OS04LTggczMuNTktOCw4LThzOCwzLjU5LDgsOFMxNi40MSwyMCwxMiwyMHoiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-cut: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTkuNjQgNy42NGMuMjMtLjUuMzYtMS4wNS4zNi0xLjY0IDAtMi4yMS0xLjc5LTQtNC00UzIgMy43OSAyIDZzMS43OSA0IDQgNGMuNTkgMCAxLjE0LS4xMyAxLjY0LS4zNkwxMCAxMmwtMi4zNiAyLjM2QzcuMTQgMTQuMTMgNi41OSAxNCA2IDE0Yy0yLjIxIDAtNCAxLjc5LTQgNHMxLjc5IDQgNCA0IDQtMS43OSA0LTRjMC0uNTktLjEzLTEuMTQtLjM2LTEuNjRMMTIgMTRsNyA3aDN2LTFMOS42NCA3LjY0ek02IDhjLTEuMSAwLTItLjg5LTItMnMuOS0yIDItMiAyIC44OSAyIDItLjkgMi0yIDJ6bTAgMTJjLTEuMSAwLTItLjg5LTItMnMuOS0yIDItMiAyIC44OSAyIDItLjkgMi0yIDJ6bTYtNy41Yy0uMjggMC0uNS0uMjItLjUtLjVzLjIyLS41LjUtLjUuNS4yMi41LjUtLjIyLjUtLjUuNXpNMTkgM2wtNiA2IDIgMiA3LTdWM3oiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-download: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTE5IDloLTRWM0g5djZINWw3IDcgNy03ek01IDE4djJoMTR2LTJINXoiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-edit: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTMgMTcuMjVWMjFoMy43NUwxNy44MSA5Ljk0bC0zLjc1LTMuNzVMMyAxNy4yNXpNMjAuNzEgNy4wNGMuMzktLjM5LjM5LTEuMDIgMC0xLjQxbC0yLjM0LTIuMzRjLS4zOS0uMzktMS4wMi0uMzktMS40MSAwbC0xLjgzIDEuODMgMy43NSAzLjc1IDEuODMtMS44M3oiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-ellipses: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPGNpcmNsZSBjeD0iNSIgY3k9IjEyIiByPSIyIi8+CiAgICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIyIi8+CiAgICA8Y2lyY2xlIGN4PSIxOSIgY3k9IjEyIiByPSIyIi8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-extension: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTIwLjUgMTFIMTlWN2MwLTEuMS0uOS0yLTItMmgtNFYzLjVDMTMgMi4xMiAxMS44OCAxIDEwLjUgMVM4IDIuMTIgOCAzLjVWNUg0Yy0xLjEgMC0xLjk5LjktMS45OSAydjMuOEgzLjVjMS40OSAwIDIuNyAxLjIxIDIuNyAyLjdzLTEuMjEgMi43LTIuNyAyLjdIMlYyMGMwIDEuMS45IDIgMiAyaDMuOHYtMS41YzAtMS40OSAxLjIxLTIuNyAyLjctMi43IDEuNDkgMCAyLjcgMS4yMSAyLjcgMi43VjIySDE3YzEuMSAwIDItLjkgMi0ydi00aDEuNWMxLjM4IDAgMi41LTEuMTIgMi41LTIuNVMyMS44OCAxMSAyMC41IDExeiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-fast-forward: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTQgMThsOC41LTZMNCA2djEyem05LTEydjEybDguNS02TDEzIDZ6Ii8+CiAgICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-file-upload: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTkgMTZoNnYtNmg0bC03LTctNyA3aDR6bS00IDJoMTR2Mkg1eiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-file: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMTkuMyA4LjJsLTUuNS01LjVjLS4zLS4zLS43LS41LTEuMi0uNUgzLjljLS44LjEtMS42LjktMS42IDEuOHYxNC4xYzAgLjkuNyAxLjYgMS42IDEuNmgxNC4yYy45IDAgMS42LS43IDEuNi0xLjZWOS40Yy4xLS41LS4xLS45LS40LTEuMnptLTUuOC0zLjNsMy40IDMuNmgtMy40VjQuOXptMy45IDEyLjdINC43Yy0uMSAwLS4yIDAtLjItLjJWNC43YzAtLjIuMS0uMy4yLS4zaDcuMnY0LjRzMCAuOC4zIDEuMWMuMy4zIDEuMS4zIDEuMS4zaDQuM3Y3LjJzLS4xLjItLjIuMnoiLz4KPC9zdmc+Cg==);
--jp-icon-filter-list: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTEwIDE4aDR2LTJoLTR2MnpNMyA2djJoMThWNkgzem0zIDdoMTJ2LTJINnYyeiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-folder: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMTAgNEg0Yy0xLjEgMC0xLjk5LjktMS45OSAyTDIgMThjMCAxLjEuOSAyIDIgMmgxNmMxLjEgMCAyLS45IDItMlY4YzAtMS4xLS45LTItMi0yaC04bC0yLTJ6Ii8+Cjwvc3ZnPgo=);
--jp-icon-html5: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDUxMiA1MTIiPgogIDxwYXRoIGNsYXNzPSJqcC1pY29uMCBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiMwMDAiIGQ9Ik0xMDguNCAwaDIzdjIyLjhoMjEuMlYwaDIzdjY5aC0yM1Y0NmgtMjF2MjNoLTIzLjJNMjA2IDIzaC0yMC4zVjBoNjMuN3YyM0gyMjl2NDZoLTIzbTUzLjUtNjloMjQuMWwxNC44IDI0LjNMMzEzLjIgMGgyNC4xdjY5aC0yM1YzNC44bC0xNi4xIDI0LjgtMTYuMS0yNC44VjY5aC0yMi42bTg5LjItNjloMjN2NDYuMmgzMi42VjY5aC01NS42Ii8+CiAgPHBhdGggY2xhc3M9ImpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iI2U0NGQyNiIgZD0iTTEwNy42IDQ3MWwtMzMtMzcwLjRoMzYyLjhsLTMzIDM3MC4yTDI1NS43IDUxMiIvPgogIDxwYXRoIGNsYXNzPSJqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiNmMTY1MjkiIGQ9Ik0yNTYgNDgwLjVWMTMxaDE0OC4zTDM3NiA0NDciLz4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1zZWxlY3RhYmxlLWludmVyc2UiIGZpbGw9IiNlYmViZWIiIGQ9Ik0xNDIgMTc2LjNoMTE0djQ1LjRoLTY0LjJsNC4yIDQ2LjVoNjB2NDUuM0gxNTQuNG0yIDIyLjhIMjAybDMuMiAzNi4zIDUwLjggMTMuNnY0Ny40bC05My4yLTI2Ii8+CiAgPHBhdGggY2xhc3M9ImpwLWljb24tc2VsZWN0YWJsZS1pbnZlcnNlIiBmaWxsPSIjZmZmIiBkPSJNMzY5LjYgMTc2LjNIMjU1Ljh2NDUuNGgxMDkuNm0tNC4xIDQ2LjVIMjU1Ljh2NDUuNGg1NmwtNS4zIDU5LTUwLjcgMTMuNnY0Ny4ybDkzLTI1LjgiLz4KPC9zdmc+Cg==);
--jp-icon-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1icmFuZDQganAtaWNvbi1zZWxlY3RhYmxlLWludmVyc2UiIGZpbGw9IiNGRkYiIGQ9Ik0yLjIgMi4yaDE3LjV2MTcuNUgyLjJ6Ii8+CiAgPHBhdGggY2xhc3M9ImpwLWljb24tYnJhbmQwIGpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iIzNGNTFCNSIgZD0iTTIuMiAyLjJ2MTcuNWgxNy41bC4xLTE3LjVIMi4yem0xMi4xIDIuMmMxLjIgMCAyLjIgMSAyLjIgMi4ycy0xIDIuMi0yLjIgMi4yLTIuMi0xLTIuMi0yLjIgMS0yLjIgMi4yLTIuMnpNNC40IDE3LjZsMy4zLTguOCAzLjMgNi42IDIuMi0zLjIgNC40IDUuNEg0LjR6Ii8+Cjwvc3ZnPgo=);
--jp-icon-inspector: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMjAgNEg0Yy0xLjEgMC0xLjk5LjktMS45OSAyTDIgMThjMCAxLjEuOSAyIDIgMmgxNmMxLjEgMCAyLS45IDItMlY2YzAtMS4xLS45LTItMi0yem0tNSAxNEg0di00aDExdjR6bTAtNUg0VjloMTF2NHptNSA1aC00VjloNHY5eiIvPgo8L3N2Zz4K);
--jp-icon-json: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8ZyBjbGFzcz0ianAtaWNvbi13YXJuMSBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiNGOUE4MjUiPgogICAgPHBhdGggZD0iTTIwLjIgMTEuOGMtMS42IDAtMS43LjUtMS43IDEgMCAuNC4xLjkuMSAxLjMuMS41LjEuOS4xIDEuMyAwIDEuNy0xLjQgMi4zLTMuNSAyLjNoLS45di0xLjloLjVjMS4xIDAgMS40IDAgMS40LS44IDAtLjMgMC0uNi0uMS0xIDAtLjQtLjEtLjgtLjEtMS4yIDAtMS4zIDAtMS44IDEuMy0yLTEuMy0uMi0xLjMtLjctMS4zLTIgMC0uNC4xLS44LjEtMS4yLjEtLjQuMS0uNy4xLTEgMC0uOC0uNC0uNy0xLjQtLjhoLS41VjQuMWguOWMyLjIgMCAzLjUuNyAzLjUgMi4zIDAgLjQtLjEuOS0uMSAxLjMtLjEuNS0uMS45LS4xIDEuMyAwIC41LjIgMSAxLjcgMXYxLjh6TTEuOCAxMC4xYzEuNiAwIDEuNy0uNSAxLjctMSAwLS40LS4xLS45LS4xLTEuMy0uMS0uNS0uMS0uOS0uMS0xLjMgMC0xLjYgMS40LTIuMyAzLjUtMi4zaC45djEuOWgtLjVjLTEgMC0xLjQgMC0xLjQuOCAwIC4zIDAgLjYuMSAxIDAgLjIuMS42LjEgMSAwIDEuMyAwIDEuOC0xLjMgMkM2IDExLjIgNiAxMS43IDYgMTNjMCAuNC0uMS44LS4xIDEuMi0uMS4zLS4xLjctLjEgMSAwIC44LjMuOCAxLjQuOGguNXYxLjloLS45Yy0yLjEgMC0zLjUtLjYtMy41LTIuMyAwLS40LjEtLjkuMS0xLjMuMS0uNS4xLS45LjEtMS4zIDAtLjUtLjItMS0xLjctMXYtMS45eiIvPgogICAgPGNpcmNsZSBjeD0iMTEiIGN5PSIxMy44IiByPSIyLjEiLz4KICAgIDxjaXJjbGUgY3g9IjExIiBjeT0iOC4yIiByPSIyLjEiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-julia: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDMyNSAzMDAiPgogIDxnIGNsYXNzPSJqcC1icmFuZDAganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjY2IzYzMzIj4KICAgIDxwYXRoIGQ9Ik0gMTUwLjg5ODQzOCAyMjUgQyAxNTAuODk4NDM4IDI2Ni40MjE4NzUgMTE3LjMyMDMxMiAzMDAgNzUuODk4NDM4IDMwMCBDIDM0LjQ3NjU2MiAzMDAgMC44OTg0MzggMjY2LjQyMTg3NSAwLjg5ODQzOCAyMjUgQyAwLjg5ODQzOCAxODMuNTc4MTI1IDM0LjQ3NjU2MiAxNTAgNzUuODk4NDM4IDE1MCBDIDExNy4zMjAzMTIgMTUwIDE1MC44OTg0MzggMTgzLjU3ODEyNSAxNTAuODk4NDM4IDIyNSIvPgogIDwvZz4KICA8ZyBjbGFzcz0ianAtYnJhbmQwIGpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iIzM4OTgyNiI+CiAgICA8cGF0aCBkPSJNIDIzNy41IDc1IEMgMjM3LjUgMTE2LjQyMTg3NSAyMDMuOTIxODc1IDE1MCAxNjIuNSAxNTAgQyAxMjEuMDc4MTI1IDE1MCA4Ny41IDExNi40MjE4NzUgODcuNSA3NSBDIDg3LjUgMzMuNTc4MTI1IDEyMS4wNzgxMjUgMCAxNjIuNSAwIEMgMjAzLjkyMTg3NSAwIDIzNy41IDMzLjU3ODEyNSAyMzcuNSA3NSIvPgogIDwvZz4KICA8ZyBjbGFzcz0ianAtYnJhbmQwIGpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iIzk1NThiMiI+CiAgICA8cGF0aCBkPSJNIDMyNC4xMDE1NjIgMjI1IEMgMzI0LjEwMTU2MiAyNjYuNDIxODc1IDI5MC41MjM0MzggMzAwIDI0OS4xMDE1NjIgMzAwIEMgMjA3LjY3OTY4OCAzMDAgMTc0LjEwMTU2MiAyNjYuNDIxODc1IDE3NC4xMDE1NjIgMjI1IEMgMTc0LjEwMTU2MiAxODMuNTc4MTI1IDIwNy42Nzk2ODggMTUwIDI0OS4xMDE1NjIgMTUwIEMgMjkwLjUyMzQzOCAxNTAgMzI0LjEwMTU2MiAxODMuNTc4MTI1IDMyNC4xMDE1NjIgMjI1Ii8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-jupyter-favicon: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUyIiBoZWlnaHQ9IjE2NSIgdmlld0JveD0iMCAwIDE1MiAxNjUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbi13YXJuMCIgZmlsbD0iI0YzNzcyNiI+CiAgICA8cGF0aCB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjA3ODk0NywgMTEwLjU4MjkyNykiIGQ9Ik03NS45NDIyODQyLDI5LjU4MDQ1NjEgQzQzLjMwMjM5NDcsMjkuNTgwNDU2MSAxNC43OTY3ODMyLDE3LjY1MzQ2MzQgMCwwIEM1LjUxMDgzMjExLDE1Ljg0MDY4MjkgMTUuNzgxNTM4OSwyOS41NjY3NzMyIDI5LjM5MDQ5NDcsMzkuMjc4NDE3MSBDNDIuOTk5Nyw0OC45ODk4NTM3IDU5LjI3MzcsNTQuMjA2NzgwNSA3NS45NjA1Nzg5LDU0LjIwNjc4MDUgQzkyLjY0NzQ1NzksNTQuMjA2NzgwNSAxMDguOTIxNDU4LDQ4Ljk4OTg1MzcgMTIyLjUzMDY2MywzOS4yNzg0MTcxIEMxMzYuMTM5NDUzLDI5LjU2Njc3MzIgMTQ2LjQxMDI4NCwxNS44NDA2ODI5IDE1MS45MjExNTgsMCBDMTM3LjA4Nzg2OCwxNy42NTM0NjM0IDEwOC41ODI1ODksMjkuNTgwNDU2MSA3NS45NDIyODQyLDI5LjU4MDQ1NjEgTDc1Ljk0MjI4NDIsMjkuNTgwNDU2MSBaIiAvPgogICAgPHBhdGggdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC4wMzczNjgsIDAuNzA0ODc4KSIgZD0iTTc1Ljk3ODQ1NzksMjQuNjI2NDA3MyBDMTA4LjYxODc2MywyNC42MjY0MDczIDEzNy4xMjQ0NTgsMzYuNTUzNDQxNSAxNTEuOTIxMTU4LDU0LjIwNjc4MDUgQzE0Ni40MTAyODQsMzguMzY2MjIyIDEzNi4xMzk0NTMsMjQuNjQwMTMxNyAxMjIuNTMwNjYzLDE0LjkyODQ4NzggQzEwOC45MjE0NTgsNS4yMTY4NDM5IDkyLjY0NzQ1NzksMCA3NS45NjA1Nzg5LDAgQzU5LjI3MzcsMCA0Mi45OTk3LDUuMjE2ODQzOSAyOS4zOTA0OTQ3LDE0LjkyODQ4NzggQzE1Ljc4MTUzODksMjQuNjQwMTMxNyA1LjUxMDgzMjExLDM4LjM2NjIyMiAwLDU0LjIwNjc4MDUgQzE0LjgzMzA4MTYsMzYuNTg5OTI5MyA0My4zMzg1Njg0LDI0LjYyNjQwNzMgNzUuOTc4NDU3OSwyNC42MjY0MDczIEw3NS45Nzg0NTc5LDI0LjYyNjQwNzMgWiIgLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-jupyter: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzkiIGhlaWdodD0iNTEiIHZpZXdCb3g9IjAgMCAzOSA1MSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTYzOCAtMjI4MSkiPgogICAgPGcgY2xhc3M9ImpwLWljb24td2FybjAiIGZpbGw9IiNGMzc3MjYiPgogICAgICA8cGF0aCB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNjM5Ljc0IDIzMTEuOTgpIiBkPSJNIDE4LjI2NDYgNy4xMzQxMUMgMTAuNDE0NSA3LjEzNDExIDMuNTU4NzIgNC4yNTc2IDAgMEMgMS4zMjUzOSAzLjgyMDQgMy43OTU1NiA3LjEzMDgxIDcuMDY4NiA5LjQ3MzAzQyAxMC4zNDE3IDExLjgxNTIgMTQuMjU1NyAxMy4wNzM0IDE4LjI2OSAxMy4wNzM0QyAyMi4yODIzIDEzLjA3MzQgMjYuMTk2MyAxMS44MTUyIDI5LjQ2OTQgOS40NzMwM0MgMzIuNzQyNCA3LjEzMDgxIDM1LjIxMjYgMy44MjA0IDM2LjUzOCAwQyAzMi45NzA1IDQuMjU3NiAyNi4xMTQ4IDcuMTM0MTEgMTguMjY0NiA3LjEzNDExWiIvPgogICAgICA8cGF0aCB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNjM5LjczIDIyODUuNDgpIiBkPSJNIDE4LjI3MzMgNS45MzkzMUMgMjYuMTIzNSA1LjkzOTMxIDMyLjk3OTMgOC44MTU4MyAzNi41MzggMTMuMDczNEMgMzUuMjEyNiA5LjI1MzAzIDMyLjc0MjQgNS45NDI2MiAyOS40Njk0IDMuNjAwNEMgMjYuMTk2MyAxLjI1ODE4IDIyLjI4MjMgMCAxOC4yNjkgMEMgMTQuMjU1NyAwIDEwLjM0MTcgMS4yNTgxOCA3LjA2ODYgMy42MDA0QyAzLjc5NTU2IDUuOTQyNjIgMS4zMjUzOSA5LjI1MzAzIDAgMTMuMDczNEMgMy41Njc0NSA4LjgyNDYzIDEwLjQyMzIgNS45MzkzMSAxOC4yNzMzIDUuOTM5MzFaIi8+CiAgICA8L2c+CiAgICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgICA8cGF0aCB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNjY5LjMgMjI4MS4zMSkiIGQ9Ik0gNS44OTM1MyAyLjg0NEMgNS45MTg4OSAzLjQzMTY1IDUuNzcwODUgNC4wMTM2NyA1LjQ2ODE1IDQuNTE2NDVDIDUuMTY1NDUgNS4wMTkyMiA0LjcyMTY4IDUuNDIwMTUgNC4xOTI5OSA1LjY2ODUxQyAzLjY2NDMgNS45MTY4OCAzLjA3NDQ0IDYuMDAxNTEgMi40OTgwNSA1LjkxMTcxQyAxLjkyMTY2IDUuODIxOSAxLjM4NDYzIDUuNTYxNyAwLjk1NDg5OCA1LjE2NDAxQyAwLjUyNTE3IDQuNzY2MzMgMC4yMjIwNTYgNC4yNDkwMyAwLjA4MzkwMzcgMy42Nzc1N0MgLTAuMDU0MjQ4MyAzLjEwNjExIC0wLjAyMTIzIDIuNTA2MTcgMC4xNzg3ODEgMS45NTM2NEMgMC4zNzg3OTMgMS40MDExIDAuNzM2ODA5IDAuOTIwODE3IDEuMjA3NTQgMC41NzM1MzhDIDEuNjc4MjYgMC4yMjYyNTkgMi4yNDA1NSAwLjAyNzU5MTkgMi44MjMyNiAwLjAwMjY3MjI5QyAzLjYwMzg5IC0wLjAzMDcxMTUgNC4zNjU3MyAwLjI0OTc4OSA0Ljk0MTQyIDAuNzgyNTUxQyA1LjUxNzExIDEuMzE1MzEgNS44NTk1NiAyLjA1Njc2IDUuODkzNTMgMi44NDRaIi8+CiAgICAgIDxwYXRoIHRyYW5zZm9ybT0idHJhbnNsYXRlKDE2MzkuOCAyMzIzLjgxKSIgZD0iTSA3LjQyNzg5IDMuNTgzMzhDIDcuNDYwMDggNC4zMjQzIDcuMjczNTUgNS4wNTgxOSA2Ljg5MTkzIDUuNjkyMTNDIDYuNTEwMzEgNi4zMjYwNyA1Ljk1MDc1IDYuODMxNTYgNS4yODQxMSA3LjE0NDZDIDQuNjE3NDcgNy40NTc2MyAzLjg3MzcxIDcuNTY0MTQgMy4xNDcwMiA3LjQ1MDYzQyAyLjQyMDMyIDcuMzM3MTIgMS43NDMzNiA3LjAwODcgMS4yMDE4NCA2LjUwNjk1QyAwLjY2MDMyOCA2LjAwNTIgMC4yNzg2MSA1LjM1MjY4IDAuMTA1MDE3IDQuNjMyMDJDIC0wLjA2ODU3NTcgMy45MTEzNSAtMC4wMjYyMzYxIDMuMTU0OTQgMC4yMjY2NzUgMi40NTg1NkMgMC40Nzk1ODcgMS43NjIxNyAwLjkzMTY5NyAxLjE1NzEzIDEuNTI1NzYgMC43MjAwMzNDIDIuMTE5ODMgMC4yODI5MzUgMi44MjkxNCAwLjAzMzQzOTUgMy41NjM4OSAwLjAwMzEzMzQ0QyA0LjU0NjY3IC0wLjAzNzQwMzMgNS41MDUyOSAwLjMxNjcwNiA2LjIyOTYxIDAuOTg3ODM1QyA2Ljk1MzkzIDEuNjU4OTYgNy4zODQ4NCAyLjU5MjM1IDcuNDI3ODkgMy41ODMzOEwgNy40Mjc4OSAzLjU4MzM4WiIvPgogICAgICA8cGF0aCB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNjM4LjM2IDIyODYuMDYpIiBkPSJNIDIuMjc0NzEgNC4zOTYyOUMgMS44NDM2MyA0LjQxNTA4IDEuNDE2NzEgNC4zMDQ0NSAxLjA0Nzk5IDQuMDc4NDNDIDAuNjc5MjY4IDMuODUyNCAwLjM4NTMyOCAzLjUyMTE0IDAuMjAzMzcxIDMuMTI2NTZDIDAuMDIxNDEzNiAyLjczMTk4IC0wLjA0MDM3OTggMi4yOTE4MyAwLjAyNTgxMTYgMS44NjE4MUMgMC4wOTIwMDMxIDEuNDMxOCAwLjI4MzIwNCAxLjAzMTI2IDAuNTc1MjEzIDAuNzEwODgzQyAwLjg2NzIyMiAwLjM5MDUxIDEuMjQ2OTEgMC4xNjQ3MDggMS42NjYyMiAwLjA2MjA1OTJDIDIuMDg1NTMgLTAuMDQwNTg5NyAyLjUyNTYxIC0wLjAxNTQ3MTQgMi45MzA3NiAwLjEzNDIzNUMgMy4zMzU5MSAwLjI4Mzk0MSAzLjY4NzkyIDAuNTUxNTA1IDMuOTQyMjIgMC45MDMwNkMgNC4xOTY1MiAxLjI1NDYyIDQuMzQxNjkgMS42NzQzNiA0LjM1OTM1IDIuMTA5MTZDIDQuMzgyOTkgMi42OTEwNyA0LjE3Njc4IDMuMjU4NjkgMy43ODU5NyAzLjY4NzQ2QyAzLjM5NTE2IDQuMTE2MjQgMi44NTE2NiA0LjM3MTE2IDIuMjc0NzEgNC4zOTYyOUwgMi4yNzQ3MSA0LjM5NjI5WiIvPgogICAgPC9nPgogIDwvZz4+Cjwvc3ZnPgo=);
--jp-icon-jupyterlab-wordmark: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIHZpZXdCb3g9IjAgMCAxODYwLjggNDc1Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjIiIGZpbGw9IiM0RTRFNEUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDQ4MC4xMzY0MDEsIDY0LjI3MTQ5MykiPgogICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC4wMDAwMDAsIDU4Ljg3NTU2NikiPgogICAgICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjA4NzYwMywgMC4xNDAyOTQpIj4KICAgICAgICA8cGF0aCBkPSJNLTQyNi45LDE2OS44YzAsNDguNy0zLjcsNjQuNy0xMy42LDc2LjRjLTEwLjgsMTAtMjUsMTUuNS0zOS43LDE1LjVsMy43LDI5IGMyMi44LDAuMyw0NC44LTcuOSw2MS45LTIzLjFjMTcuOC0xOC41LDI0LTQ0LjEsMjQtODMuM1YwSC00Mjd2MTcwLjFMLTQyNi45LDE2OS44TC00MjYuOSwxNjkuOHoiLz4KICAgICAgPC9nPgogICAgPC9nPgogICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTU1LjA0NTI5NiwgNTYuODM3MTA0KSI+CiAgICAgIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEuNTYyNDUzLCAxLjc5OTg0MikiPgogICAgICAgIDxwYXRoIGQ9Ik0tMzEyLDE0OGMwLDIxLDAsMzkuNSwxLjcsNTUuNGgtMzEuOGwtMi4xLTMzLjNoLTAuOGMtNi43LDExLjYtMTYuNCwyMS4zLTI4LDI3LjkgYy0xMS42LDYuNi0yNC44LDEwLTM4LjIsOS44Yy0zMS40LDAtNjktMTcuNy02OS04OVYwaDM2LjR2MTEyLjdjMCwzOC43LDExLjYsNjQuNyw0NC42LDY0LjdjMTAuMy0wLjIsMjAuNC0zLjUsMjguOS05LjQgYzguNS01LjksMTUuMS0xNC4zLDE4LjktMjMuOWMyLjItNi4xLDMuMy0xMi41LDMuMy0xOC45VjAuMmgzNi40VjE0OEgtMzEyTC0zMTIsMTQ4eiIvPgogICAgICA8L2c+CiAgICA8L2c+CiAgICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzOTAuMDEzMzIyLCA1My40Nzk2MzgpIj4KICAgICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMS43MDY0NTgsIDAuMjMxNDI1KSI+CiAgICAgICAgPHBhdGggZD0iTS00NzguNiw3MS40YzAtMjYtMC44LTQ3LTEuNy02Ni43aDMyLjdsMS43LDM0LjhoMC44YzcuMS0xMi41LDE3LjUtMjIuOCwzMC4xLTI5LjcgYzEyLjUtNywyNi43LTEwLjMsNDEtOS44YzQ4LjMsMCw4NC43LDQxLjcsODQuNywxMDMuM2MwLDczLjEtNDMuNywxMDkuMi05MSwxMDkuMmMtMTIuMSwwLjUtMjQuMi0yLjItMzUtNy44IGMtMTAuOC01LjYtMTkuOS0xMy45LTI2LjYtMjQuMmgtMC44VjI5MWgtMzZ2LTIyMEwtNDc4LjYsNzEuNEwtNDc4LjYsNzEuNHogTS00NDIuNiwxMjUuNmMwLjEsNS4xLDAuNiwxMC4xLDEuNywxNS4xIGMzLDEyLjMsOS45LDIzLjMsMTkuOCwzMS4xYzkuOSw3LjgsMjIuMSwxMi4xLDM0LjcsMTIuMWMzOC41LDAsNjAuNy0zMS45LDYwLjctNzguNWMwLTQwLjctMjEuMS03NS42LTU5LjUtNzUuNiBjLTEyLjksMC40LTI1LjMsNS4xLTM1LjMsMTMuNGMtOS45LDguMy0xNi45LDE5LjctMTkuNiwzMi40Yy0xLjUsNC45LTIuMywxMC0yLjUsMTUuMVYxMjUuNkwtNDQyLjYsMTI1LjZMLTQ0Mi42LDEyNS42eiIvPgogICAgICA8L2c+CiAgICA8L2c+CiAgICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2MDYuNzQwNzI2LCA1Ni44MzcxMDQpIj4KICAgICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC43NTEyMjYsIDEuOTg5Mjk5KSI+CiAgICAgICAgPHBhdGggZD0iTS00NDAuOCwwbDQzLjcsMTIwLjFjNC41LDEzLjQsOS41LDI5LjQsMTIuOCw0MS43aDAuOGMzLjctMTIuMiw3LjktMjcuNywxMi44LTQyLjQgbDM5LjctMTE5LjJoMzguNUwtMzQ2LjksMTQ1Yy0yNiw2OS43LTQzLjcsMTA1LjQtNjguNiwxMjcuMmMtMTIuNSwxMS43LTI3LjksMjAtNDQuNiwyMy45bC05LjEtMzEuMSBjMTEuNy0zLjksMjIuNS0xMC4xLDMxLjgtMTguMWMxMy4yLTExLjEsMjMuNy0yNS4yLDMwLjYtNDEuMmMxLjUtMi44LDIuNS01LjcsMi45LTguOGMtMC4zLTMuMy0xLjItNi42LTIuNS05LjdMLTQ4MC4yLDAuMSBoMzkuN0wtNDQwLjgsMEwtNDQwLjgsMHoiLz4KICAgICAgPC9nPgogICAgPC9nPgogICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoODIyLjc0ODEwNCwgMC4wMDAwMDApIj4KICAgICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMS40NjQwNTAsIDAuMzc4OTE0KSI+CiAgICAgICAgPHBhdGggZD0iTS00MTMuNywwdjU4LjNoNTJ2MjguMmgtNTJWMTk2YzAsMjUsNywzOS41LDI3LjMsMzkuNWM3LjEsMC4xLDE0LjItMC43LDIxLjEtMi41IGwxLjcsMjcuN2MtMTAuMywzLjctMjEuMyw1LjQtMzIuMiw1Yy03LjMsMC40LTE0LjYtMC43LTIxLjMtMy40Yy02LjgtMi43LTEyLjktNi44LTE3LjktMTIuMWMtMTAuMy0xMC45LTE0LjEtMjktMTQuMS01Mi45IFY4Ni41aC0zMVY1OC4zaDMxVjkuNkwtNDEzLjcsMEwtNDEzLjcsMHoiLz4KICAgICAgPC9nPgogICAgPC9nPgogICAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOTc0LjQzMzI4NiwgNTMuNDc5NjM4KSI+CiAgICAgIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAuOTkwMDM0LCAwLjYxMDMzOSkiPgogICAgICAgIDxwYXRoIGQ9Ik0tNDQ1LjgsMTEzYzAuOCw1MCwzMi4yLDcwLjYsNjguNiw3MC42YzE5LDAuNiwzNy45LTMsNTUuMy0xMC41bDYuMiwyNi40IGMtMjAuOSw4LjktNDMuNSwxMy4xLTY2LjIsMTIuNmMtNjEuNSwwLTk4LjMtNDEuMi05OC4zLTEwMi41Qy00ODAuMiw0OC4yLTQ0NC43LDAtMzg2LjUsMGM2NS4yLDAsODIuNyw1OC4zLDgyLjcsOTUuNyBjLTAuMSw1LjgtMC41LDExLjUtMS4yLDE3LjJoLTE0MC42SC00NDUuOEwtNDQ1LjgsMTEzeiBNLTMzOS4yLDg2LjZjMC40LTIzLjUtOS41LTYwLjEtNTAuNC02MC4xIGMtMzYuOCwwLTUyLjgsMzQuNC01NS43LDYwLjFILTMzOS4yTC0zMzkuMiw4Ni42TC0zMzkuMiw4Ni42eiIvPgogICAgICA8L2c+CiAgICA8L2c+CiAgICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjAxLjk2MTA1OCwgNTMuNDc5NjM4KSI+CiAgICAgIDxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEuMTc5NjQwLCAwLjcwNTA2OCkiPgogICAgICAgIDxwYXRoIGQ9Ik0tNDc4LjYsNjhjMC0yMy45LTAuNC00NC41LTEuNy02My40aDMxLjhsMS4yLDM5LjloMS43YzkuMS0yNy4zLDMxLTQ0LjUsNTUuMy00NC41IGMzLjUtMC4xLDcsMC40LDEwLjMsMS4ydjM0LjhjLTQuMS0wLjktOC4yLTEuMy0xMi40LTEuMmMtMjUuNiwwLTQzLjcsMTkuNy00OC43LDQ3LjRjLTEsNS43LTEuNiwxMS41LTEuNywxNy4ydjEwOC4zaC0zNlY2OCBMLTQ3OC42LDY4eiIvPgogICAgICA8L2c+CiAgICA8L2c+CiAgPC9nPgoKICA8ZyBjbGFzcz0ianAtaWNvbi13YXJuMCIgZmlsbD0iI0YzNzcyNiI+CiAgICA8cGF0aCBkPSJNMTM1Mi4zLDMyNi4yaDM3VjI4aC0zN1YzMjYuMnogTTE2MDQuOCwzMjYuMmMtMi41LTEzLjktMy40LTMxLjEtMy40LTQ4Ljd2LTc2IGMwLTQwLjctMTUuMS04My4xLTc3LjMtODMuMWMtMjUuNiwwLTUwLDcuMS02Ni44LDE4LjFsOC40LDI0LjRjMTQuMy05LjIsMzQtMTUuMSw1My0xNS4xYzQxLjYsMCw0Ni4yLDMwLjIsNDYuMiw0N3Y0LjIgYy03OC42LTAuNC0xMjIuMywyNi41LTEyMi4zLDc1LjZjMCwyOS40LDIxLDU4LjQsNjIuMiw1OC40YzI5LDAsNTAuOS0xNC4zLDYyLjItMzAuMmgxLjNsMi45LDI1LjZIMTYwNC44eiBNMTU2NS43LDI1Ny43IGMwLDMuOC0wLjgsOC0yLjEsMTEuOGMtNS45LDE3LjItMjIuNywzNC00OS4yLDM0Yy0xOC45LDAtMzQuOS0xMS4zLTM0LjktMzUuM2MwLTM5LjUsNDUuOC00Ni42LDg2LjItNDUuOFYyNTcuN3ogTTE2OTguNSwzMjYuMiBsMS43LTMzLjZoMS4zYzE1LjEsMjYuOSwzOC43LDM4LjIsNjguMSwzOC4yYzQ1LjQsMCw5MS4yLTM2LjEsOTEuMi0xMDguOGMwLjQtNjEuNy0zNS4zLTEwMy43LTg1LjctMTAzLjcgYy0zMi44LDAtNTYuMywxNC43LTY5LjMsMzcuNGgtMC44VjI4aC0zNi42djI0NS43YzAsMTguMS0wLjgsMzguNi0xLjcsNTIuNUgxNjk4LjV6IE0xNzA0LjgsMjA4LjJjMC01LjksMS4zLTEwLjksMi4xLTE1LjEgYzcuNi0yOC4xLDMxLjEtNDUuNCw1Ni4zLTQ1LjRjMzkuNSwwLDYwLjUsMzQuOSw2MC41LDc1LjZjMCw0Ni42LTIzLjEsNzguMS02MS44LDc4LjFjLTI2LjksMC00OC4zLTE3LjYtNTUuNS00My4zIGMtMC44LTQuMi0xLjctOC44LTEuNy0xMy40VjIwOC4yeiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-kernel: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uMiIgZmlsbD0iIzYxNjE2MSIgZD0iTTE1IDlIOXY2aDZWOXptLTIgNGgtMnYtMmgydjJ6bTgtMlY5aC0yVjdjMC0xLjEtLjktMi0yLTJoLTJWM2gtMnYyaC0yVjNIOXYySDdjLTEuMSAwLTIgLjktMiAydjJIM3YyaDJ2MkgzdjJoMnYyYzAgMS4xLjkgMiAyIDJoMnYyaDJ2LTJoMnYyaDJ2LTJoMmMxLjEgMCAyLS45IDItMnYtMmgydi0yaC0ydi0yaDJ6bS00IDZIN1Y3aDEwdjEweiIvPgo8L3N2Zz4K);
--jp-icon-keyboard: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMjAgNUg0Yy0xLjEgMC0xLjk5LjktMS45OSAyTDIgMTdjMCAxLjEuOSAyIDIgMmgxNmMxLjEgMCAyLS45IDItMlY3YzAtMS4xLS45LTItMi0yem0tOSAzaDJ2MmgtMlY4em0wIDNoMnYyaC0ydi0yek04IDhoMnYySDhWOHptMCAzaDJ2Mkg4di0yem0tMSAySDV2LTJoMnYyem0wLTNINVY4aDJ2MnptOSA3SDh2LTJoOHYyem0wLTRoLTJ2LTJoMnYyem0wLTNoLTJWOGgydjJ6bTMgM2gtMnYtMmgydjJ6bTAtM2gtMlY4aDJ2MnoiLz4KPC9zdmc+Cg==);
--jp-icon-launcher: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMTkgMTlINVY1aDdWM0g1YTIgMiAwIDAwLTIgMnYxNGEyIDIgMCAwMDIgMmgxNGMxLjEgMCAyLS45IDItMnYtN2gtMnY3ek0xNCAzdjJoMy41OWwtOS44MyA5LjgzIDEuNDEgMS40MUwxOSA2LjQxVjEwaDJWM2gtN3oiLz4KPC9zdmc+Cg==);
--jp-icon-line-form: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICAgIDxwYXRoIGZpbGw9IndoaXRlIiBkPSJNNS44OCA0LjEyTDEzLjc2IDEybC03Ljg4IDcuODhMOCAyMmwxMC0xMEw4IDJ6Ii8+Cjwvc3ZnPgo=);
--jp-icon-link: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTMuOSAxMmMwLTEuNzEgMS4zOS0zLjEgMy4xLTMuMWg0VjdIN2MtMi43NiAwLTUgMi4yNC01IDVzMi4yNCA1IDUgNWg0di0xLjlIN2MtMS43MSAwLTMuMS0xLjM5LTMuMS0zLjF6TTggMTNoOHYtMkg4djJ6bTktNmgtNHYxLjloNGMxLjcxIDAgMy4xIDEuMzkgMy4xIDMuMXMtMS4zOSAzLjEtMy4xIDMuMWgtNFYxN2g0YzIuNzYgMCA1LTIuMjQgNS01cy0yLjI0LTUtNS01eiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-list: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uMiBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiM2MTYxNjEiIGQ9Ik0xOSA1djE0SDVWNWgxNG0xLjEtMkgzLjljLS41IDAtLjkuNC0uOS45djE2LjJjMCAuNC40LjkuOS45aDE2LjJjLjQgMCAuOS0uNS45LS45VjMuOWMwLS41LS41LS45LS45LS45ek0xMSA3aDZ2MmgtNlY3em0wIDRoNnYyaC02di0yem0wIDRoNnYyaC02ek03IDdoMnYySDd6bTAgNGgydjJIN3ptMCA0aDJ2Mkg3eiIvPgo8L3N2Zz4=);
--jp-icon-listings-info: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MC45NzggNTAuOTc4IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MC45NzggNTAuOTc4OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+Cgk8Zz4KCQk8cGF0aCBzdHlsZT0iZmlsbDojMDEwMDAyOyIgZD0iTTQzLjUyLDcuNDU4QzM4LjcxMSwyLjY0OCwzMi4zMDcsMCwyNS40ODksMEMxOC42NywwLDEyLjI2NiwyLjY0OCw3LjQ1OCw3LjQ1OAoJCQljLTkuOTQzLDkuOTQxLTkuOTQzLDI2LjExOSwwLDM2LjA2MmM0LjgwOSw0LjgwOSwxMS4yMTIsNy40NTYsMTguMDMxLDcuNDU4YzAsMCwwLjAwMSwwLDAuMDAyLDAKCQkJYzYuODE2LDAsMTMuMjIxLTIuNjQ4LDE4LjAyOS03LjQ1OGM0LjgwOS00LjgwOSw3LjQ1Ny0xMS4yMTIsNy40NTctMTguMDNDNTAuOTc3LDE4LjY3LDQ4LjMyOCwxMi4yNjYsNDMuNTIsNy40NTh6CgkJCSBNNDIuMTA2LDQyLjEwNWMtNC40MzIsNC40MzEtMTAuMzMyLDYuODcyLTE2LjYxNSw2Ljg3MmgtMC4wMDJjLTYuMjg1LTAuMDAxLTEyLjE4Ny0yLjQ0MS0xNi42MTctNi44NzIKCQkJYy05LjE2Mi05LjE2My05LjE2Mi0yNC4wNzEsMC0zMy4yMzNDMTMuMzAzLDQuNDQsMTkuMjA0LDIsMjUuNDg5LDJjNi4yODQsMCwxMi4xODYsMi40NCwxNi42MTcsNi44NzIKCQkJYzQuNDMxLDQuNDMxLDYuODcxLDEwLjMzMiw2Ljg3MSwxNi42MTdDNDguOTc3LDMxLjc3Miw0Ni41MzYsMzcuNjc1LDQyLjEwNiw0Mi4xMDV6Ii8+CgkJPHBhdGggc3R5bGU9ImZpbGw6IzAxMDAwMjsiIGQ9Ik0yMy41NzgsMzIuMjE4Yy0wLjAyMy0xLjczNCwwLjE0My0zLjA1OSwwLjQ5Ni0zLjk3MmMwLjM1My0wLjkxMywxLjExLTEuOTk3LDIuMjcyLTMuMjUzCgkJCWMwLjQ2OC0wLjUzNiwwLjkyMy0xLjA2MiwxLjM2Ny0xLjU3NWMwLjYyNi0wLjc1MywxLjEwNC0xLjQ3OCwxLjQzNi0yLjE3NWMwLjMzMS0wLjcwNywwLjQ5NS0xLjU0MSwwLjQ5NS0yLjUKCQkJYzAtMS4wOTYtMC4yNi0yLjA4OC0wLjc3OS0yLjk3OWMtMC41NjUtMC44NzktMS41MDEtMS4zMzYtMi44MDYtMS4zNjljLTEuODAyLDAuMDU3LTIuOTg1LDAuNjY3LTMuNTUsMS44MzIKCQkJYy0wLjMwMSwwLjUzNS0wLjUwMywxLjE0MS0wLjYwNywxLjgxNGMtMC4xMzksMC43MDctMC4yMDcsMS40MzItMC4yMDcsMi4xNzRoLTIuOTM3Yy0wLjA5MS0yLjIwOCwwLjQwNy00LjExNCwxLjQ5My01LjcxOQoJCQljMS4wNjItMS42NCwyLjg1NS0yLjQ4MSw1LjM3OC0yLjUyN2MyLjE2LDAuMDIzLDMuODc0LDAuNjA4LDUuMTQxLDEuNzU4YzEuMjc4LDEuMTYsMS45MjksMi43NjQsMS45NSw0LjgxMQoJCQljMCwxLjE0Mi0wLjEzNywyLjExMS0wLjQxLDIuOTExYy0wLjMwOSwwLjg0NS0wLjczMSwxLjU5My0xLjI2OCwyLjI0M2MtMC40OTIsMC42NS0xLjA2OCwxLjMxOC0xLjczLDIuMDAyCgkJCWMtMC42NSwwLjY5Ny0xLjMxMywxLjQ3OS0xLjk4NywyLjM0NmMtMC4yMzksMC4zNzctMC40MjksMC43NzctMC41NjUsMS4xOTljLTAuMTYsMC45NTktMC4yMTcsMS45NTEtMC4xNzEsMi45NzkKCQkJQzI2LjU4OSwzMi4yMTgsMjMuNTc4LDMyLjIxOCwyMy41NzgsMzIuMjE4eiBNMjMuNTc4LDM4LjIydi0zLjQ4NGgzLjA3NnYzLjQ4NEgyMy41Nzh6Ii8+Cgk8L2c+Cjwvc3ZnPgo=);
--jp-icon-markdown: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1jb250cmFzdDAganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjN0IxRkEyIiBkPSJNNSAxNC45aDEybC02LjEgNnptOS40LTYuOGMwLTEuMy0uMS0yLjktLjEtNC41LS40IDEuNC0uOSAyLjktMS4zIDQuM2wtMS4zIDQuM2gtMkw4LjUgNy45Yy0uNC0xLjMtLjctMi45LTEtNC4zLS4xIDEuNi0uMSAzLjItLjIgNC42TDcgMTIuNEg0LjhsLjctMTFoMy4zTDEwIDVjLjQgMS4yLjcgMi43IDEgMy45LjMtMS4yLjctMi42IDEtMy45bDEuMi0zLjdoMy4zbC42IDExaC0yLjRsLS4zLTQuMnoiLz4KPC9zdmc+Cg==);
--jp-icon-new-folder: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTIwIDZoLThsLTItMkg0Yy0xLjExIDAtMS45OS44OS0xLjk5IDJMMiAxOGMwIDEuMTEuODkgMiAyIDJoMTZjMS4xMSAwIDItLjg5IDItMlY4YzAtMS4xMS0uODktMi0yLTJ6bS0xIDhoLTN2M2gtMnYtM2gtM3YtMmgzVjloMnYzaDN2MnoiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-not-trusted: url(data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI1IDI1Ij4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uMiIgc3Ryb2tlPSIjMzMzMzMzIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMgMykiIGQ9Ik0xLjg2MDk0IDExLjQ0MDlDMC44MjY0NDggOC43NzAyNyAwLjg2Mzc3OSA2LjA1NzY0IDEuMjQ5MDcgNC4xOTkzMkMyLjQ4MjA2IDMuOTMzNDcgNC4wODA2OCAzLjQwMzQ3IDUuNjAxMDIgMi44NDQ5QzcuMjM1NDkgMi4yNDQ0IDguODU2NjYgMS41ODE1IDkuOTg3NiAxLjA5NTM5QzExLjA1OTcgMS41ODM0MSAxMi42MDk0IDIuMjQ0NCAxNC4yMTggMi44NDMzOUMxNS43NTAzIDMuNDEzOTQgMTcuMzk5NSAzLjk1MjU4IDE4Ljc1MzkgNC4yMTM4NUMxOS4xMzY0IDYuMDcxNzcgMTkuMTcwOSA4Ljc3NzIyIDE4LjEzOSAxMS40NDA5QzE3LjAzMDMgMTQuMzAzMiAxNC42NjY4IDE3LjE4NDQgOS45OTk5OSAxOC45MzU0QzUuMzMzMTkgMTcuMTg0NCAyLjk2OTY4IDE0LjMwMzIgMS44NjA5NCAxMS40NDA5WiIvPgogICAgPHBhdGggY2xhc3M9ImpwLWljb24yIiBzdHJva2U9IiMzMzMzMzMiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOS4zMTU5MiA5LjMyMDMxKSIgZD0iTTcuMzY4NDIgMEwwIDcuMzY0NzkiLz4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uMiIgc3Ryb2tlPSIjMzMzMzMzIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDkuMzE1OTIgMTYuNjgzNikgc2NhbGUoMSAtMSkiIGQ9Ik03LjM2ODQyIDBMMCA3LjM2NDc5Ii8+Cjwvc3ZnPgo=);
--jp-icon-notebook: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8ZyBjbGFzcz0ianAtaWNvbi13YXJuMCBqcC1pY29uLXNlbGVjdGFibGUiIGZpbGw9IiNFRjZDMDAiPgogICAgPHBhdGggZD0iTTE4LjcgMy4zdjE1LjRIMy4zVjMuM2gxNS40bTEuNS0xLjVIMS44djE4LjNoMTguM2wuMS0xOC4zeiIvPgogICAgPHBhdGggZD0iTTE2LjUgMTYuNWwtNS40LTQuMy01LjYgNC4zdi0xMWgxMXoiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-numbering: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyOCAyOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CgkJPHBhdGggZD0iTTQgMTlINlYxOS41SDVWMjAuNUg2VjIxSDRWMjJIN1YxOEg0VjE5Wk01IDEwSDZWNkg0VjdINVYxMFpNNCAxM0g1LjhMNCAxNS4xVjE2SDdWMTVINS4yTDcgMTIuOVYxMkg0VjEzWk05IDdWOUgyM1Y3SDlaTTkgMjFIMjNWMTlIOVYyMVpNOSAxNUgyM1YxM0g5VjE1WiIvPgoJPC9nPgo8L3N2Zz4K);
--jp-icon-offline-bolt: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE2Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTEyIDIuMDJjLTUuNTEgMC05Ljk4IDQuNDctOS45OCA5Ljk4czQuNDcgOS45OCA5Ljk4IDkuOTggOS45OC00LjQ3IDkuOTgtOS45OFMxNy41MSAyLjAyIDEyIDIuMDJ6TTExLjQ4IDIwdi02LjI2SDhMMTMgNHY2LjI2aDMuMzVMMTEuNDggMjB6Ii8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-palette: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTE4IDEzVjIwSDRWNkg5LjAyQzkuMDcgNS4yOSA5LjI0IDQuNjIgOS41IDRINEMyLjkgNCAyIDQuOSAyIDZWMjBDMiAyMS4xIDIuOSAyMiA0IDIySDE4QzE5LjEgMjIgMjAgMjEuMSAyMCAyMFYxNUwxOCAxM1pNMTkuMyA4Ljg5QzE5Ljc0IDguMTkgMjAgNy4zOCAyMCA2LjVDMjAgNC4wMSAxNy45OSAyIDE1LjUgMkMxMy4wMSAyIDExIDQuMDEgMTEgNi41QzExIDguOTkgMTMuMDEgMTEgMTUuNDkgMTFDMTYuMzcgMTEgMTcuMTkgMTAuNzQgMTcuODggMTAuM0wyMSAxMy40MkwyMi40MiAxMkwxOS4zIDguODlaTTE1LjUgOUMxNC4xMiA5IDEzIDcuODggMTMgNi41QzEzIDUuMTIgMTQuMTIgNCAxNS41IDRDMTYuODggNCAxOCA1LjEyIDE4IDYuNUMxOCA3Ljg4IDE2Ljg4IDkgMTUuNSA5WiIvPgogICAgPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00IDZIOS4wMTg5NEM5LjAwNjM5IDYuMTY1MDIgOSA2LjMzMTc2IDkgNi41QzkgOC44MTU3NyAxMC4yMTEgMTAuODQ4NyAxMi4wMzQzIDEySDlWMTRIMTZWMTIuOTgxMUMxNi41NzAzIDEyLjkzNzcgMTcuMTIgMTIuODIwNyAxNy42Mzk2IDEyLjYzOTZMMTggMTNWMjBINFY2Wk04IDhINlYxMEg4VjhaTTYgMTJIOFYxNEg2VjEyWk04IDE2SDZWMThIOFYxNlpNOSAxNkgxNlYxOEg5VjE2WiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-paste: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTE5IDJoLTQuMThDMTQuNC44NCAxMy4zIDAgMTIgMGMtMS4zIDAtMi40Ljg0LTIuODIgMkg1Yy0xLjEgMC0yIC45LTIgMnYxNmMwIDEuMS45IDIgMiAyaDE0YzEuMSAwIDItLjkgMi0yVjRjMC0xLjEtLjktMi0yLTJ6bS03IDBjLjU1IDAgMSAuNDUgMSAxcy0uNDUgMS0xIDEtMS0uNDUtMS0xIC40NS0xIDEtMXptNyAxOEg1VjRoMnYzaDEwVjRoMnYxNnoiLz4KICAgIDwvZz4KPC9zdmc+Cg==);
--jp-icon-pdf: url(data:image/svg+xml;base64,PHN2ZwogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMiAyMiIgd2lkdGg9IjE2Ij4KICAgIDxwYXRoIHRyYW5zZm9ybT0icm90YXRlKDQ1KSIgY2xhc3M9ImpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iI0ZGMkEyQSIKICAgICAgIGQ9Im0gMjIuMzQ0MzY5LC0zLjAxNjM2NDIgaCA1LjYzODYwNCB2IDEuNTc5MjQzMyBoIC0zLjU0OTIyNyB2IDEuNTA4NjkyOTkgaCAzLjMzNzU3NiBWIDEuNjUwODE1NCBoIC0zLjMzNzU3NiB2IDMuNDM1MjYxMyBoIC0yLjA4OTM3NyB6IG0gLTcuMTM2NDQ0LDEuNTc5MjQzMyB2IDQuOTQzOTU0MyBoIDAuNzQ4OTIgcSAxLjI4MDc2MSwwIDEuOTUzNzAzLC0wLjYzNDk1MzUgMC42NzgzNjksLTAuNjM0OTUzNSAwLjY3ODM2OSwtMS44NDUxNjQxIDAsLTEuMjA0NzgzNTUgLTAuNjcyOTQyLC0xLjgzNDMxMDExIC0wLjY3Mjk0MiwtMC42Mjk1MjY1OSAtMS45NTkxMywtMC42Mjk1MjY1OSB6IG0gLTIuMDg5Mzc3LC0xLjU3OTI0MzMgaCAyLjIwMzM0MyBxIDEuODQ1MTY0LDAgMi43NDYwMzksMC4yNjU5MjA3IDAuOTA2MzAxLDAuMjYwNDkzNyAxLjU1MjEwOCwwLjg5MDAyMDMgMC41Njk4MywwLjU0ODEyMjMgMC44NDY2MDUsMS4yNjQ0ODAwNiAwLjI3Njc3NCwwLjcxNjM1NzgxIDAuMjc2Nzc0LDEuNjIyNjU4OTQgMCwwLjkxNzE1NTEgLTAuMjc2Nzc0LDEuNjM4OTM5OSAtMC4yNzY3NzUsMC43MTYzNTc4IC0wLjg0NjYwNSwxLjI2NDQ4IC0wLjY1MTIzNCwwLjYyOTUyNjYgLTEuNTYyOTYyLDAuODk1NDQ3MyAtMC45MTE3MjgsMC4yNjA0OTM3IC0yLjczNTE4NSwwLjI2MDQ5MzcgaCAtMi4yMDMzNDMgeiBtIC04LjE0NTg1NjUsMCBoIDMuNDY3ODIzIHEgMS41NDY2ODE2LDAgMi4zNzE1Nzg1LDAuNjg5MjIzIDAuODMwMzI0LDAuNjgzNzk2MSAwLjgzMDMyNCwxLjk1MzcwMzE0IDAsMS4yNzUzMzM5NyAtMC44MzAzMjQsMS45NjQ1NTcwNiBRIDkuOTg3MTk2MSwyLjI3NDkxNSA4LjQ0MDUxNDUsMi4yNzQ5MTUgSCA3LjA2MjA2ODQgViA1LjA4NjA3NjcgSCA0Ljk3MjY5MTUgWiBtIDIuMDg5Mzc2OSwxLjUxNDExOTkgdiAyLjI2MzAzOTQzIGggMS4xNTU5NDEgcSAwLjYwNzgxODgsMCAwLjkzODg2MjksLTAuMjkzMDU1NDcgMC4zMzEwNDQxLC0wLjI5ODQ4MjQxIDAuMzMxMDQ0MSwtMC44NDExNzc3MiAwLC0wLjU0MjY5NTMxIC0wLjMzMTA0NDEsLTAuODM1NzUwNzQgLTAuMzMxMDQ0MSwtMC4yOTMwNTU1IC0wLjkzODg2MjksLTAuMjkzMDU1NSB6IgovPgo8L3N2Zz4K);
--jp-icon-python: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8ZyBjbGFzcz0ianAtaWNvbi1icmFuZDAganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjMEQ0N0ExIj4KICAgIDxwYXRoIGQ9Ik0xMS4xIDYuOVY1LjhINi45YzAtLjUgMC0xLjMuMi0xLjYuNC0uNy44LTEuMSAxLjctMS40IDEuNy0uMyAyLjUtLjMgMy45LS4xIDEgLjEgMS45LjkgMS45IDEuOXY0LjJjMCAuNS0uOSAxLjYtMiAxLjZIOC44Yy0xLjUgMC0yLjQgMS40LTIuNCAyLjh2Mi4ySDQuN0MzLjUgMTUuMSAzIDE0IDMgMTMuMVY5Yy0uMS0xIC42LTIgMS44LTIgMS41LS4xIDYuMy0uMSA2LjMtLjF6Ii8+CiAgICA8cGF0aCBkPSJNMTAuOSAxNS4xdjEuMWg0LjJjMCAuNSAwIDEuMy0uMiAxLjYtLjQuNy0uOCAxLjEtMS43IDEuNC0xLjcuMy0yLjUuMy0zLjkuMS0xLS4xLTEuOS0uOS0xLjktMS45di00LjJjMC0uNS45LTEuNiAyLTEuNmgzLjhjMS41IDAgMi40LTEuNCAyLjQtMi44VjYuNmgxLjdDMTguNSA2LjkgMTkgOCAxOSA4LjlWMTNjMCAxLS43IDIuMS0xLjkgMi4xaC02LjJ6Ii8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-r-kernel: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1jb250cmFzdDMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjMjE5NkYzIiBkPSJNNC40IDIuNWMxLjItLjEgMi45LS4zIDQuOS0uMyAyLjUgMCA0LjEuNCA1LjIgMS4zIDEgLjcgMS41IDEuOSAxLjUgMy41IDAgMi0xLjQgMy41LTIuOSA0LjEgMS4yLjQgMS43IDEuNiAyLjIgMyAuNiAxLjkgMSAzLjkgMS4zIDQuNmgtMy44Yy0uMy0uNC0uOC0xLjctMS4yLTMuN3MtMS4yLTIuNi0yLjYtMi42aC0uOXY2LjRINC40VjIuNXptMy43IDYuOWgxLjRjMS45IDAgMi45LS45IDIuOS0yLjNzLTEtMi4zLTIuOC0yLjNjLS43IDAtMS4zIDAtMS42LjJ2NC41aC4xdi0uMXoiLz4KPC9zdmc+Cg==);
--jp-icon-react: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMTUwIDE1MCA1NDEuOSAyOTUuMyI+CiAgPGcgY2xhc3M9ImpwLWljb24tYnJhbmQyIGpwLWljb24tc2VsZWN0YWJsZSIgZmlsbD0iIzYxREFGQiI+CiAgICA8cGF0aCBkPSJNNjY2LjMgMjk2LjVjMC0zMi41LTQwLjctNjMuMy0xMDMuMS04Mi40IDE0LjQtNjMuNiA4LTExNC4yLTIwLjItMTMwLjQtNi41LTMuOC0xNC4xLTUuNi0yMi40LTUuNnYyMi4zYzQuNiAwIDguMy45IDExLjQgMi42IDEzLjYgNy44IDE5LjUgMzcuNSAxNC45IDc1LjctMS4xIDkuNC0yLjkgMTkuMy01LjEgMjkuNC0xOS42LTQuOC00MS04LjUtNjMuNS0xMC45LTEzLjUtMTguNS0yNy41LTM1LjMtNDEuNi01MCAzMi42LTMwLjMgNjMuMi00Ni45IDg0LTQ2LjlWNzhjLTI3LjUgMC02My41IDE5LjYtOTkuOSA1My42LTM2LjQtMzMuOC03Mi40LTUzLjItOTkuOS01My4ydjIyLjNjMjAuNyAwIDUxLjQgMTYuNSA4NCA0Ni42LTE0IDE0LjctMjggMzEuNC00MS4zIDQ5LjktMjIuNiAyLjQtNDQgNi4xLTYzLjYgMTEtMi4zLTEwLTQtMTkuNy01LjItMjktNC43LTM4LjIgMS4xLTY3LjkgMTQuNi03NS44IDMtMS44IDYuOS0yLjYgMTEuNS0yLjZWNzguNWMtOC40IDAtMTYgMS44LTIyLjYgNS42LTI4LjEgMTYuMi0zNC40IDY2LjctMTkuOSAxMzAuMS02Mi4yIDE5LjItMTAyLjcgNDkuOS0xMDIuNyA4Mi4zIDAgMzIuNSA0MC43IDYzLjMgMTAzLjEgODIuNC0xNC40IDYzLjYtOCAxMTQuMiAyMC4yIDEzMC40IDYuNSAzLjggMTQuMSA1LjYgMjIuNSA1LjYgMjcuNSAwIDYzLjUtMTkuNiA5OS45LTUzLjYgMzYuNCAzMy44IDcyLjQgNTMuMiA5OS45IDUzLjIgOC40IDAgMTYtMS44IDIyLjYtNS42IDI4LjEtMTYuMiAzNC40LTY2LjcgMTkuOS0xMzAuMSA2Mi0xOS4xIDEwMi41LTQ5LjkgMTAyLjUtODIuM3ptLTEzMC4yLTY2LjdjLTMuNyAxMi45LTguMyAyNi4yLTEzLjUgMzkuNS00LjEtOC04LjQtMTYtMTMuMS0yNC00LjYtOC05LjUtMTUuOC0xNC40LTIzLjQgMTQuMiAyLjEgMjcuOSA0LjcgNDEgNy45em0tNDUuOCAxMDYuNWMtNy44IDEzLjUtMTUuOCAyNi4zLTI0LjEgMzguMi0xNC45IDEuMy0zMCAyLTQ1LjIgMi0xNS4xIDAtMzAuMi0uNy00NS0xLjktOC4zLTExLjktMTYuNC0yNC42LTI0LjItMzgtNy42LTEzLjEtMTQuNS0yNi40LTIwLjgtMzkuOCA2LjItMTMuNCAxMy4yLTI2LjggMjAuNy0zOS45IDcuOC0xMy41IDE1LjgtMjYuMyAyNC4xLTM4LjIgMTQuOS0xLjMgMzAtMiA0NS4yLTIgMTUuMSAwIDMwLjIuNyA0NSAxLjkgOC4zIDExLjkgMTYuNCAyNC42IDI0LjIgMzggNy42IDEzLjEgMTQuNSAyNi40IDIwLjggMzkuOC02LjMgMTMuNC0xMy4yIDI2LjgtMjAuNyAzOS45em0zMi4zLTEzYzUuNCAxMy40IDEwIDI2LjggMTMuOCAzOS44LTEzLjEgMy4yLTI2LjkgNS45LTQxLjIgOCA0LjktNy43IDkuOC0xNS42IDE0LjQtMjMuNyA0LjYtOCA4LjktMTYuMSAxMy0yNC4xek00MjEuMiA0MzBjLTkuMy05LjYtMTguNi0yMC4zLTI3LjgtMzIgOSAuNCAxOC4yLjcgMjcuNS43IDkuNCAwIDE4LjctLjIgMjcuOC0uNy05IDExLjctMTguMyAyMi40LTI3LjUgMzJ6bS03NC40LTU4LjljLTE0LjItMi4xLTI3LjktNC43LTQxLTcuOSAzLjctMTIuOSA4LjMtMjYuMiAxMy41LTM5LjUgNC4xIDggOC40IDE2IDEzLjEgMjQgNC43IDggOS41IDE1LjggMTQuNCAyMy40ek00MjAuNyAxNjNjOS4zIDkuNiAxOC42IDIwLjMgMjcuOCAzMi05LS40LTE4LjItLjctMjcuNS0uNy05LjQgMC0xOC43LjItMjcuOC43IDktMTEuNyAxOC4zLTIyLjQgMjcuNS0zMnptLTc0IDU4LjljLTQuOSA3LjctOS44IDE1LjYtMTQuNCAyMy43LTQuNiA4LTguOSAxNi0xMyAyNC01LjQtMTMuNC0xMC0yNi44LTEzLjgtMzkuOCAxMy4xLTMuMSAyNi45LTUuOCA0MS4yLTcuOXptLTkwLjUgMTI1LjJjLTM1LjQtMTUuMS01OC4zLTM0LjktNTguMy01MC42IDAtMTUuNyAyMi45LTM1LjYgNTguMy01MC42IDguNi0zLjcgMTgtNyAyNy43LTEwLjEgNS43IDE5LjYgMTMuMiA0MCAyMi41IDYwLjktOS4yIDIwLjgtMTYuNiA0MS4xLTIyLjIgNjAuNi05LjktMy4xLTE5LjMtNi41LTI4LTEwLjJ6TTMxMCA0OTBjLTEzLjYtNy44LTE5LjUtMzcuNS0xNC45LTc1LjcgMS4xLTkuNCAyLjktMTkuMyA1LjEtMjkuNCAxOS42IDQuOCA0MSA4LjUgNjMuNSAxMC45IDEzLjUgMTguNSAyNy41IDM1LjMgNDEuNiA1MC0zMi42IDMwLjMtNjMuMiA0Ni45LTg0IDQ2LjktNC41LS4xLTguMy0xLTExLjMtMi43em0yMzcuMi03Ni4yYzQuNyAzOC4yLTEuMSA2Ny45LTE0LjYgNzUuOC0zIDEuOC02LjkgMi42LTExLjUgMi42LTIwLjcgMC01MS40LTE2LjUtODQtNDYuNiAxNC0xNC43IDI4LTMxLjQgNDEuMy00OS45IDIyLjYtMi40IDQ0LTYuMSA2My42LTExIDIuMyAxMC4xIDQuMSAxOS44IDUuMiAyOS4xem0zOC41LTY2LjdjLTguNiAzLjctMTggNy0yNy43IDEwLjEtNS43LTE5LjYtMTMuMi00MC0yMi41LTYwLjkgOS4yLTIwLjggMTYuNi00MS4xIDIyLjItNjAuNiA5LjkgMy4xIDE5LjMgNi41IDI4LjEgMTAuMiAzNS40IDE1LjEgNTguMyAzNC45IDU4LjMgNTAuNi0uMSAxNS43LTIzIDM1LjYtNTguNCA1MC42ek0zMjAuOCA3OC40eiIvPgogICAgPGNpcmNsZSBjeD0iNDIwLjkiIGN5PSIyOTYuNSIgcj0iNDUuNyIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-redo: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE2Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgICA8cGF0aCBkPSJNMCAwaDI0djI0SDB6IiBmaWxsPSJub25lIi8+PHBhdGggZD0iTTE4LjQgMTAuNkMxNi41NSA4Ljk5IDE0LjE1IDggMTEuNSA4Yy00LjY1IDAtOC41OCAzLjAzLTkuOTYgNy4yMkwzLjkgMTZjMS4wNS0zLjE5IDQuMDUtNS41IDcuNi01LjUgMS45NSAwIDMuNzMuNzIgNS4xMiAxLjg4TDEzIDE2aDlWN2wtMy42IDMuNnoiLz4KICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-refresh: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDE4IDE4Ij4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTkgMTMuNWMtMi40OSAwLTQuNS0yLjAxLTQuNS00LjVTNi41MSA0LjUgOSA0LjVjMS4yNCAwIDIuMzYuNTIgMy4xNyAxLjMzTDEwIDhoNVYzbC0xLjc2IDEuNzZDMTIuMTUgMy42OCAxMC42NiAzIDkgMyA1LjY5IDMgMy4wMSA1LjY5IDMuMDEgOVM1LjY5IDE1IDkgMTVjMi45NyAwIDUuNDMtMi4xNiA1LjktNWgtMS41MmMtLjQ2IDItMi4yNCAzLjUtNC4zOCAzLjV6Ii8+CiAgICA8L2c+Cjwvc3ZnPgo=);
--jp-icon-regex: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIwIDIwIj4KICA8ZyBjbGFzcz0ianAtaWNvbjIiIGZpbGw9IiM0MTQxNDEiPgogICAgPHJlY3QgeD0iMiIgeT0iMiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ii8+CiAgPC9nPgoKICA8ZyBjbGFzcz0ianAtaWNvbi1hY2NlbnQyIiBmaWxsPSIjRkZGIj4KICAgIDxjaXJjbGUgY2xhc3M9InN0MiIgY3g9IjUuNSIgY3k9IjE0LjUiIHI9IjEuNSIvPgogICAgPHJlY3QgeD0iMTIiIHk9IjQiIGNsYXNzPSJzdDIiIHdpZHRoPSIxIiBoZWlnaHQ9IjgiLz4KICAgIDxyZWN0IHg9IjguNSIgeT0iNy41IiB0cmFuc2Zvcm09Im1hdHJpeCgwLjg2NiAtMC41IDAuNSAwLjg2NiAtMi4zMjU1IDcuMzIxOSkiIGNsYXNzPSJzdDIiIHdpZHRoPSI4IiBoZWlnaHQ9IjEiLz4KICAgIDxyZWN0IHg9IjEyIiB5PSI0IiB0cmFuc2Zvcm09Im1hdHJpeCgwLjUgLTAuODY2IDAuODY2IDAuNSAtMC42Nzc5IDE0LjgyNTIpIiBjbGFzcz0ic3QyIiB3aWR0aD0iMSIgaGVpZ2h0PSI4Ii8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-run: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTggNXYxNGwxMS03eiIvPgogICAgPC9nPgo8L3N2Zz4K);
--jp-icon-running: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDUxMiA1MTIiPgogIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICA8cGF0aCBkPSJNMjU2IDhDMTE5IDggOCAxMTkgOCAyNTZzMTExIDI0OCAyNDggMjQ4IDI0OC0xMTEgMjQ4LTI0OFMzOTMgOCAyNTYgOHptOTYgMzI4YzAgOC44LTcuMiAxNi0xNiAxNkgxNzZjLTguOCAwLTE2LTcuMi0xNi0xNlYxNzZjMC04LjggNy4yLTE2IDE2LTE2aDE2MGM4LjggMCAxNiA3LjIgMTYgMTZ2MTYweiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-save: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTE3IDNINWMtMS4xMSAwLTIgLjktMiAydjE0YzAgMS4xLjg5IDIgMiAyaDE0YzEuMSAwIDItLjkgMi0yVjdsLTQtNHptLTUgMTZjLTEuNjYgMC0zLTEuMzQtMy0zczEuMzQtMyAzLTMgMyAxLjM0IDMgMy0xLjM0IDMtMyAzem0zLTEwSDVWNWgxMHY0eiIvPgogICAgPC9nPgo8L3N2Zz4K);
--jp-icon-search: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTEyLjEsMTAuOWgtMC43bC0wLjItMC4yYzAuOC0wLjksMS4zLTIuMiwxLjMtMy41YzAtMy0yLjQtNS40LTUuNC01LjRTMS44LDQuMiwxLjgsNy4xczIuNCw1LjQsNS40LDUuNCBjMS4zLDAsMi41LTAuNSwzLjUtMS4zbDAuMiwwLjJ2MC43bDQuMSw0LjFsMS4yLTEuMkwxMi4xLDEwLjl6IE03LjEsMTAuOWMtMi4xLDAtMy43LTEuNy0zLjctMy43czEuNy0zLjcsMy43LTMuN3MzLjcsMS43LDMuNywzLjcgUzkuMiwxMC45LDcuMSwxMC45eiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-settings: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMTkuNDMgMTIuOThjLjA0LS4zMi4wNy0uNjQuMDctLjk4cy0uMDMtLjY2LS4wNy0uOThsMi4xMS0xLjY1Yy4xOS0uMTUuMjQtLjQyLjEyLS42NGwtMi0zLjQ2Yy0uMTItLjIyLS4zOS0uMy0uNjEtLjIybC0yLjQ5IDFjLS41Mi0uNC0xLjA4LS43My0xLjY5LS45OGwtLjM4LTIuNjVBLjQ4OC40ODggMCAwMDE0IDJoLTRjLS4yNSAwLS40Ni4xOC0uNDkuNDJsLS4zOCAyLjY1Yy0uNjEuMjUtMS4xNy41OS0xLjY5Ljk4bC0yLjQ5LTFjLS4yMy0uMDktLjQ5IDAtLjYxLjIybC0yIDMuNDZjLS4xMy4yMi0uMDcuNDkuMTIuNjRsMi4xMSAxLjY1Yy0uMDQuMzItLjA3LjY1LS4wNy45OHMuMDMuNjYuMDcuOThsLTIuMTEgMS42NWMtLjE5LjE1LS4yNC40Mi0uMTIuNjRsMiAzLjQ2Yy4xMi4yMi4zOS4zLjYxLjIybDIuNDktMWMuNTIuNCAxLjA4LjczIDEuNjkuOThsLjM4IDIuNjVjLjAzLjI0LjI0LjQyLjQ5LjQyaDRjLjI1IDAgLjQ2LS4xOC40OS0uNDJsLjM4LTIuNjVjLjYxLS4yNSAxLjE3LS41OSAxLjY5LS45OGwyLjQ5IDFjLjIzLjA5LjQ5IDAgLjYxLS4yMmwyLTMuNDZjLjEyLS4yMi4wNy0uNDktLjEyLS42NGwtMi4xMS0xLjY1ek0xMiAxNS41Yy0xLjkzIDAtMy41LTEuNTctMy41LTMuNXMxLjU3LTMuNSAzLjUtMy41IDMuNSAxLjU3IDMuNSAzLjUtMS41NyAzLjUtMy41IDMuNXoiLz4KPC9zdmc+Cg==);
--jp-icon-spreadsheet: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8cGF0aCBjbGFzcz0ianAtaWNvbi1jb250cmFzdDEganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNENBRjUwIiBkPSJNMi4yIDIuMnYxNy42aDE3LjZWMi4ySDIuMnptMTUuNCA3LjdoLTUuNVY0LjRoNS41djUuNXpNOS45IDQuNHY1LjVINC40VjQuNGg1LjV6bS01LjUgNy43aDUuNXY1LjVINC40di01LjV6bTcuNyA1LjV2LTUuNWg1LjV2NS41aC01LjV6Ii8+Cjwvc3ZnPgo=);
--jp-icon-stop: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPgogICAgICAgIDxwYXRoIGQ9Ik02IDZoMTJ2MTJINnoiLz4KICAgIDwvZz4KPC9zdmc+Cg==);
--jp-icon-tab: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTIxIDNIM2MtMS4xIDAtMiAuOS0yIDJ2MTRjMCAxLjEuOSAyIDIgMmgxOGMxLjEgMCAyLS45IDItMlY1YzAtMS4xLS45LTItMi0yem0wIDE2SDNWNWgxMHY0aDh2MTB6Ii8+CiAgPC9nPgo8L3N2Zz4K);
--jp-icon-table-rows: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPgogICAgICAgIDxwYXRoIGQ9Ik0yMSw4SDNWNGgxOFY4eiBNMjEsMTBIM3Y0aDE4VjEweiBNMjEsMTZIM3Y0aDE4VjE2eiIvPgogICAgPC9nPgo8L3N2Zz4=);
--jp-icon-tag: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCA0MyAyOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CgkJPHBhdGggZD0iTTI4LjgzMzIgMTIuMzM0TDMyLjk5OTggMTYuNTAwN0wzNy4xNjY1IDEyLjMzNEgyOC44MzMyWiIvPgoJCTxwYXRoIGQ9Ik0xNi4yMDk1IDIxLjYxMDRDMTUuNjg3MyAyMi4xMjk5IDE0Ljg0NDMgMjIuMTI5OSAxNC4zMjQ4IDIxLjYxMDRMNi45ODI5IDE0LjcyNDVDNi41NzI0IDE0LjMzOTQgNi4wODMxMyAxMy42MDk4IDYuMDQ3ODYgMTMuMDQ4MkM1Ljk1MzQ3IDExLjUyODggNi4wMjAwMiA4LjYxOTQ0IDYuMDY2MjEgNy4wNzY5NUM2LjA4MjgxIDYuNTE0NzcgNi41NTU0OCA2LjA0MzQ3IDcuMTE4MDQgNi4wMzA1NUM5LjA4ODYzIDUuOTg0NzMgMTMuMjYzOCA1LjkzNTc5IDEzLjY1MTggNi4zMjQyNUwyMS43MzY5IDEzLjYzOUMyMi4yNTYgMTQuMTU4NSAyMS43ODUxIDE1LjQ3MjQgMjEuMjYyIDE1Ljk5NDZMMTYuMjA5NSAyMS42MTA0Wk05Ljc3NTg1IDguMjY1QzkuMzM1NTEgNy44MjU2NiA4LjYyMzUxIDcuODI1NjYgOC4xODI4IDguMjY1QzcuNzQzNDYgOC43MDU3MSA3Ljc0MzQ2IDkuNDE3MzMgOC4xODI4IDkuODU2NjdDOC42MjM4MiAxMC4yOTY0IDkuMzM1ODIgMTAuMjk2NCA5Ljc3NTg1IDkuODU2NjdDMTAuMjE1NiA5LjQxNzMzIDEwLjIxNTYgOC43MDUzMyA5Ljc3NTg1IDguMjY1WiIvPgoJPC9nPgo8L3N2Zz4K);
--jp-icon-terminal: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiA+CiAgICA8cmVjdCBjbGFzcz0ianAtaWNvbjIganAtaWNvbi1zZWxlY3RhYmxlIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIgMikiIGZpbGw9IiMzMzMzMzMiLz4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uLWFjY2VudDIganAtaWNvbi1zZWxlY3RhYmxlLWludmVyc2UiIGQ9Ik01LjA1NjY0IDguNzYxNzJDNS4wNTY2NCA4LjU5NzY2IDUuMDMxMjUgOC40NTMxMiA0Ljk4MDQ3IDguMzI4MTJDNC45MzM1OSA4LjE5OTIyIDQuODU1NDcgOC4wODIwMyA0Ljc0NjA5IDcuOTc2NTZDNC42NDA2MiA3Ljg3MTA5IDQuNSA3Ljc3NTM5IDQuMzI0MjIgNy42ODk0NUM0LjE1MjM0IDcuNTk5NjEgMy45NDMzNiA3LjUxMTcyIDMuNjk3MjcgNy40MjU3OEMzLjMwMjczIDcuMjg1MTYgMi45NDMzNiA3LjEzNjcyIDIuNjE5MTQgNi45ODA0N0MyLjI5NDkyIDYuODI0MjIgMi4wMTc1OCA2LjY0MjU4IDEuNzg3MTEgNi40MzU1NUMxLjU2MDU1IDYuMjI4NTIgMS4zODQ3NyA1Ljk4ODI4IDEuMjU5NzcgNS43MTQ4NEMxLjEzNDc3IDUuNDM3NSAxLjA3MjI3IDUuMTA5MzggMS4wNzIyNyA0LjczMDQ3QzEuMDcyMjcgNC4zOTg0NCAxLjEyODkxIDQuMDk1NyAxLjI0MjE5IDMuODIyMjdDMS4zNTU0NyAzLjU0NDkyIDEuNTE1NjIgMy4zMDQ2OSAxLjcyMjY2IDMuMTAxNTZDMS45Mjk2OSAyLjg5ODQ0IDIuMTc5NjkgMi43MzQzNyAyLjQ3MjY2IDIuNjA5MzhDMi43NjU2MiAyLjQ4NDM4IDMuMDkxOCAyLjQwNDMgMy40NTExNyAyLjM2OTE0VjEuMTA5MzhINC4zODg2N1YyLjM4MDg2QzQuNzQwMjMgMi40Mjc3MyA1LjA1NjY0IDIuNTIzNDQgNS4zMzc4OSAyLjY2Nzk3QzUuNjE5MTQgMi44MTI1IDUuODU3NDIgMy4wMDE5NSA2LjA1MjczIDMuMjM2MzNDNi4yNTE5NSAzLjQ2NjggNi40MDQzIDMuNzQwMjMgNi41MDk3NyA0LjA1NjY0QzYuNjE5MTQgNC4zNjkxNCA2LjY3MzgzIDQuNzIwNyA2LjY3MzgzIDUuMTExMzNINS4wNDQ5MkM1LjA0NDkyIDQuNjM4NjcgNC45Mzc1IDQuMjgxMjUgNC43MjI2NiA0LjAzOTA2QzQuNTA3ODEgMy43OTI5NyA0LjIxNjggMy42Njk5MiAzLjg0OTYxIDMuNjY5OTJDMy42NTAzOSAzLjY2OTkyIDMuNDc2NTYgMy42OTcyNyAzLjMyODEyIDMuNzUxOTVDMy4xODM1OSAzLjgwMjczIDMuMDY0NDUgMy44NzY5NSAyLjk3MDcgMy45NzQ2MUMyLjg3Njk1IDQuMDY4MzYgMi44MDY2NCA0LjE3OTY5IDIuNzU5NzcgNC4zMDg1OUMyLjcxNjggNC40Mzc1IDIuNjk1MzEgNC41NzgxMiAyLjY5NTMxIDQuNzMwNDdDMi42OTUzMSA0Ljg4MjgxIDIuNzE2OCA1LjAxOTUzIDIuNzU5NzcgNS4xNDA2MkMyLjgwNjY0IDUuMjU3ODEgMi44ODI4MSA1LjM2NzE5IDIuOTg4MjggNS40Njg3NUMzLjA5NzY2IDUuNTcwMzEgMy4yNDAyMyA1LjY2Nzk3IDMuNDE2MDIgNS43NjE3MkMzLjU5MTggNS44NTE1NiAzLjgxMDU1IDUuOTQzMzYgNC4wNzIyNyA2LjAzNzExQzQuNDY2OCA2LjE4NTU1IDQuODI0MjIgNi4zMzk4NCA1LjE0NDUzIDYuNUM1LjQ2NDg0IDYuNjU2MjUgNS43MzgyOCA2LjgzOTg0IDUuOTY0ODQgNy4wNTA3OEM2LjE5NTMxIDcuMjU3ODEgNi4zNzEwOSA3LjUgNi40OTIxOSA3Ljc3NzM0QzYuNjE3MTkgOC4wNTA3OCA2LjY3OTY5IDguMzc1IDYuNjc5NjkgOC43NUM2LjY3OTY5IDkuMDkzNzUgNi42MjMwNSA5LjQwNDMgNi41MDk3NyA5LjY4MTY0QzYuMzk2NDggOS45NTUwOCA2LjIzNDM4IDEwLjE5MTQgNi4wMjM0NCAxMC4zOTA2QzUuODEyNSAxMC41ODk4IDUuNTU4NTkgMTAuNzUgNS4yNjE3MiAxMC44NzExQzQuOTY0ODQgMTAuOTg4MyA0LjYzMjgxIDExLjA2NDUgNC4yNjU2MiAxMS4wOTk2VjEyLjI0OEgzLjMzMzk4VjExLjA5OTZDMy4wMDE5NSAxMS4wNjg0IDIuNjc5NjkgMTAuOTk2MSAyLjM2NzE5IDEwLjg4MjhDMi4wNTQ2OSAxMC43NjU2IDEuNzc3MzQgMTAuNTk3NyAxLjUzNTE2IDEwLjM3ODlDMS4yOTY4OCAxMC4xNjAyIDEuMTA1NDcgOS44ODQ3NyAwLjk2MDkzOCA5LjU1MjczQzAuODE2NDA2IDkuMjE2OCAwLjc0NDE0MSA4LjgxNDQ1IDAuNzQ0MTQxIDguMzQ1N0gyLjM3ODkxQzIuMzc4OTEgOC42MjY5NSAyLjQxOTkyIDguODYzMjggMi41MDE5NSA5LjA1NDY5QzIuNTgzOTggOS4yNDIxOSAyLjY4OTQ1IDkuMzkyNTggMi44MTgzNiA5LjUwNTg2QzIuOTUxMTcgOS42MTUyMyAzLjEwMTU2IDkuNjkzMzYgMy4yNjk1MyA5Ljc0MDIzQzMuNDM3NSA5Ljc4NzExIDMuNjA5MzggOS44MTA1NSAzLjc4NTE2IDkuODEwNTVDNC4yMDMxMiA5LjgxMDU1IDQuNTE5NTMgOS43MTI4OSA0LjczNDM4IDkuNTE3NThDNC45NDkyMiA5LjMyMjI3IDUuMDU2NjQgOS4wNzAzMSA1LjA1NjY0IDguNzYxNzJaTTEzLjQxOCAxMi4yNzE1SDguMDc0MjJWMTFIMTMuNDE4VjEyLjI3MTVaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzLjk1MjY0IDYpIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K);
--jp-icon-text-editor: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8cGF0aCBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIiBkPSJNMTUgMTVIM3YyaDEydi0yem0wLThIM3YyaDEyVjd6TTMgMTNoMTh2LTJIM3Yyem0wIDhoMTh2LTJIM3Yyek0zIDN2MmgxOFYzSDN6Ii8+Cjwvc3ZnPgo=);
--jp-icon-toc: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij4KICA8ZyBjbGFzcz0ianAtaWNvbjMganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjNjE2MTYxIj4KICAgIDxwYXRoIGQ9Ik03LDVIMjFWN0g3VjVNNywxM1YxMUgyMVYxM0g3TTQsNC41QTEuNSwxLjUgMCAwLDEgNS41LDZBMS41LDEuNSAwIDAsMSA0LDcuNUExLjUsMS41IDAgMCwxIDIuNSw2QTEuNSwxLjUgMCAwLDEgNCw0LjVNNCwxMC41QTEuNSwxLjUgMCAwLDEgNS41LDEyQTEuNSwxLjUgMCAwLDEgNCwxMy41QTEuNSwxLjUgMCAwLDEgMi41LDEyQTEuNSwxLjUgMCAwLDEgNCwxMC41TTcsMTlWMTdIMjFWMTlIN000LDE2LjVBMS41LDEuNSAwIDAsMSA1LjUsMThBMS41LDEuNSAwIDAsMSA0LDE5LjVBMS41LDEuNSAwIDAsMSAyLjUsMThBMS41LDEuNSAwIDAsMSA0LDE2LjVaIiAvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-tree-view: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAgIDxnIGNsYXNzPSJqcC1pY29uMyIgZmlsbD0iIzYxNjE2MSI+CiAgICAgICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPgogICAgICAgIDxwYXRoIGQ9Ik0yMiAxMVYzaC03djNIOVYzSDJ2OGg3VjhoMnYxMGg0djNoN3YtOGgtN3YzaC0yVjhoMnYzeiIvPgogICAgPC9nPgo8L3N2Zz4=);
--jp-icon-trusted: url(data:image/svg+xml;base64,PHN2ZyBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDI0IDI1Ij4KICAgIDxwYXRoIGNsYXNzPSJqcC1pY29uMiIgc3Ryb2tlPSIjMzMzMzMzIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIgMykiIGQ9Ik0xLjg2MDk0IDExLjQ0MDlDMC44MjY0NDggOC43NzAyNyAwLjg2Mzc3OSA2LjA1NzY0IDEuMjQ5MDcgNC4xOTkzMkMyLjQ4MjA2IDMuOTMzNDcgNC4wODA2OCAzLjQwMzQ3IDUuNjAxMDIgMi44NDQ5QzcuMjM1NDkgMi4yNDQ0IDguODU2NjYgMS41ODE1IDkuOTg3NiAxLjA5NTM5QzExLjA1OTcgMS41ODM0MSAxMi42MDk0IDIuMjQ0NCAxNC4yMTggMi44NDMzOUMxNS43NTAzIDMuNDEzOTQgMTcuMzk5NSAzLjk1MjU4IDE4Ljc1MzkgNC4yMTM4NUMxOS4xMzY0IDYuMDcxNzcgMTkuMTcwOSA4Ljc3NzIyIDE4LjEzOSAxMS40NDA5QzE3LjAzMDMgMTQuMzAzMiAxNC42NjY4IDE3LjE4NDQgOS45OTk5OSAxOC45MzU0QzUuMzMzMiAxNy4xODQ0IDIuOTY5NjggMTQuMzAzMiAxLjg2MDk0IDExLjQ0MDlaIi8+CiAgICA8cGF0aCBjbGFzcz0ianAtaWNvbjIiIGZpbGw9IiMzMzMzMzMiIHN0cm9rZT0iIzMzMzMzMyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOCA5Ljg2NzE5KSIgZD0iTTIuODYwMTUgNC44NjUzNUwwLjcyNjU0OSAyLjk5OTU5TDAgMy42MzA0NUwyLjg2MDE1IDYuMTMxNTdMOCAwLjYzMDg3Mkw3LjI3ODU3IDBMMi44NjAxNSA0Ljg2NTM1WiIvPgo8L3N2Zz4K);
--jp-icon-undo: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZyBjbGFzcz0ianAtaWNvbjMiIGZpbGw9IiM2MTYxNjEiPgogICAgPHBhdGggZD0iTTEyLjUgOGMtMi42NSAwLTUuMDUuOTktNi45IDIuNkwyIDd2OWg5bC0zLjYyLTMuNjJjMS4zOS0xLjE2IDMuMTYtMS44OCA1LjEyLTEuODggMy41NCAwIDYuNTUgMi4zMSA3LjYgNS41bDIuMzctLjc4QzIxLjA4IDExLjAzIDE3LjE1IDggMTIuNSA4eiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-vega: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8ZyBjbGFzcz0ianAtaWNvbjEganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjMjEyMTIxIj4KICAgIDxwYXRoIGQ9Ik0xMC42IDUuNGwyLjItMy4ySDIuMnY3LjNsNC02LjZ6Ii8+CiAgICA8cGF0aCBkPSJNMTUuOCAyLjJsLTQuNCA2LjZMNyA2LjNsLTQuOCA4djUuNWgxNy42VjIuMmgtNHptLTcgMTUuNEg1LjV2LTQuNGgzLjN2NC40em00LjQgMEg5LjhWOS44aDMuNHY3Ljh6bTQuNCAwaC0zLjRWNi41aDMuNHYxMS4xeiIvPgogIDwvZz4KPC9zdmc+Cg==);
--jp-icon-yaml: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgdmlld0JveD0iMCAwIDIyIDIyIj4KICA8ZyBjbGFzcz0ianAtaWNvbi1jb250cmFzdDIganAtaWNvbi1zZWxlY3RhYmxlIiBmaWxsPSIjRDgxQjYwIj4KICAgIDxwYXRoIGQ9Ik03LjIgMTguNnYtNS40TDMgNS42aDMuM2wxLjQgMy4xYy4zLjkuNiAxLjYgMSAyLjUuMy0uOC42LTEuNiAxLTIuNWwxLjQtMy4xaDMuNGwtNC40IDcuNnY1LjVsLTIuOS0uMXoiLz4KICAgIDxjaXJjbGUgY2xhc3M9InN0MCIgY3g9IjE3LjYiIGN5PSIxNi41IiByPSIyLjEiLz4KICAgIDxjaXJjbGUgY2xhc3M9InN0MCIgY3g9IjE3LjYiIGN5PSIxMSIgcj0iMi4xIi8+CiAgPC9nPgo8L3N2Zz4K);
}
/* Icon CSS class declarations */
.jp-AddIcon {
background-image: var(--jp-icon-add);
}
.jp-BugIcon {
background-image: var(--jp-icon-bug);
}
.jp-BuildIcon {
background-image: var(--jp-icon-build);
}
.jp-CaretDownEmptyIcon {
background-image: var(--jp-icon-caret-down-empty);
}
.jp-CaretDownEmptyThinIcon {
background-image: var(--jp-icon-caret-down-empty-thin);
}
.jp-CaretDownIcon {
background-image: var(--jp-icon-caret-down);
}
.jp-CaretLeftIcon {
background-image: var(--jp-icon-caret-left);
}
.jp-CaretRightIcon {
background-image: var(--jp-icon-caret-right);
}
.jp-CaretUpEmptyThinIcon {
background-image: var(--jp-icon-caret-up-empty-thin);
}
.jp-CaretUpIcon {
background-image: var(--jp-icon-caret-up);
}
.jp-CaseSensitiveIcon {
background-image: var(--jp-icon-case-sensitive);
}
.jp-CheckIcon {
background-image: var(--jp-icon-check);
}
.jp-CircleEmptyIcon {
background-image: var(--jp-icon-circle-empty);
}
.jp-CircleIcon {
background-image: var(--jp-icon-circle);
}
.jp-ClearIcon {
background-image: var(--jp-icon-clear);
}
.jp-CloseIcon {
background-image: var(--jp-icon-close);
}
.jp-CodeIcon {
background-image: var(--jp-icon-code);
}
.jp-ConsoleIcon {
background-image: var(--jp-icon-console);
}
.jp-CopyIcon {
background-image: var(--jp-icon-copy);
}
.jp-CopyrightIcon {
background-image: var(--jp-icon-copyright);
}
.jp-CutIcon {
background-image: var(--jp-icon-cut);
}
.jp-DownloadIcon {
background-image: var(--jp-icon-download);
}
.jp-EditIcon {
background-image: var(--jp-icon-edit);
}
.jp-EllipsesIcon {
background-image: var(--jp-icon-ellipses);
}
.jp-ExtensionIcon {
background-image: var(--jp-icon-extension);
}
.jp-FastForwardIcon {
background-image: var(--jp-icon-fast-forward);
}
.jp-FileIcon {
background-image: var(--jp-icon-file);
}
.jp-FileUploadIcon {
background-image: var(--jp-icon-file-upload);
}
.jp-FilterListIcon {
background-image: var(--jp-icon-filter-list);
}
.jp-FolderIcon {
background-image: var(--jp-icon-folder);
}
.jp-Html5Icon {
background-image: var(--jp-icon-html5);
}
.jp-ImageIcon {
background-image: var(--jp-icon-image);
}
.jp-InspectorIcon {
background-image: var(--jp-icon-inspector);
}
.jp-JsonIcon {
background-image: var(--jp-icon-json);
}
.jp-JuliaIcon {
background-image: var(--jp-icon-julia);
}
.jp-JupyterFaviconIcon {
background-image: var(--jp-icon-jupyter-favicon);
}
.jp-JupyterIcon {
background-image: var(--jp-icon-jupyter);
}
.jp-JupyterlabWordmarkIcon {
background-image: var(--jp-icon-jupyterlab-wordmark);
}
.jp-KernelIcon {
background-image: var(--jp-icon-kernel);
}
.jp-KeyboardIcon {
background-image: var(--jp-icon-keyboard);
}
.jp-LauncherIcon {
background-image: var(--jp-icon-launcher);
}
.jp-LineFormIcon {
background-image: var(--jp-icon-line-form);
}
.jp-LinkIcon {
background-image: var(--jp-icon-link);
}
.jp-ListIcon {
background-image: var(--jp-icon-list);
}
.jp-ListingsInfoIcon {
background-image: var(--jp-icon-listings-info);
}
.jp-MarkdownIcon {
background-image: var(--jp-icon-markdown);
}
.jp-NewFolderIcon {
background-image: var(--jp-icon-new-folder);
}
.jp-NotTrustedIcon {
background-image: var(--jp-icon-not-trusted);
}
.jp-NotebookIcon {
background-image: var(--jp-icon-notebook);
}
.jp-NumberingIcon {
background-image: var(--jp-icon-numbering);
}
.jp-OfflineBoltIcon {
background-image: var(--jp-icon-offline-bolt);
}
.jp-PaletteIcon {
background-image: var(--jp-icon-palette);
}
.jp-PasteIcon {
background-image: var(--jp-icon-paste);
}
.jp-PdfIcon {
background-image: var(--jp-icon-pdf);
}
.jp-PythonIcon {
background-image: var(--jp-icon-python);
}
.jp-RKernelIcon {
background-image: var(--jp-icon-r-kernel);
}
.jp-ReactIcon {
background-image: var(--jp-icon-react);
}
.jp-RedoIcon {
background-image: var(--jp-icon-redo);
}
.jp-RefreshIcon {
background-image: var(--jp-icon-refresh);
}
.jp-RegexIcon {
background-image: var(--jp-icon-regex);
}
.jp-RunIcon {
background-image: var(--jp-icon-run);
}
.jp-RunningIcon {
background-image: var(--jp-icon-running);
}
.jp-SaveIcon {
background-image: var(--jp-icon-save);
}
.jp-SearchIcon {
background-image: var(--jp-icon-search);
}
.jp-SettingsIcon {
background-image: var(--jp-icon-settings);
}
.jp-SpreadsheetIcon {
background-image: var(--jp-icon-spreadsheet);
}
.jp-StopIcon {
background-image: var(--jp-icon-stop);
}
.jp-TabIcon {
background-image: var(--jp-icon-tab);
}
.jp-TableRowsIcon {
background-image: var(--jp-icon-table-rows);
}
.jp-TagIcon {
background-image: var(--jp-icon-tag);
}
.jp-TerminalIcon {
background-image: var(--jp-icon-terminal);
}
.jp-TextEditorIcon {
background-image: var(--jp-icon-text-editor);
}
.jp-TocIcon {
background-image: var(--jp-icon-toc);
}
.jp-TreeViewIcon {
background-image: var(--jp-icon-tree-view);
}
.jp-TrustedIcon {
background-image: var(--jp-icon-trusted);
}
.jp-UndoIcon {
background-image: var(--jp-icon-undo);
}
.jp-VegaIcon {
background-image: var(--jp-icon-vega);
}
.jp-YamlIcon {
background-image: var(--jp-icon-yaml);
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/**
* (DEPRECATED) Support for consuming icons as CSS background images
*/
.jp-Icon,
.jp-MaterialIcon {
background-position: center;
background-repeat: no-repeat;
background-size: 16px;
min-width: 16px;
min-height: 16px;
}
.jp-Icon-cover {
background-position: center;
background-repeat: no-repeat;
background-size: cover;
}
/**
* (DEPRECATED) Support for specific CSS icon sizes
*/
.jp-Icon-16 {
background-size: 16px;
min-width: 16px;
min-height: 16px;
}
.jp-Icon-18 {
background-size: 18px;
min-width: 18px;
min-height: 18px;
}
.jp-Icon-20 {
background-size: 20px;
min-width: 20px;
min-height: 20px;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/**
* Support for icons as inline SVG HTMLElements
*/
/* recolor the primary elements of an icon */
.jp-icon0[fill] {
fill: var(--jp-inverse-layout-color0);
}
.jp-icon1[fill] {
fill: var(--jp-inverse-layout-color1);
}
.jp-icon2[fill] {
fill: var(--jp-inverse-layout-color2);
}
.jp-icon3[fill] {
fill: var(--jp-inverse-layout-color3);
}
.jp-icon4[fill] {
fill: var(--jp-inverse-layout-color4);
}
.jp-icon0[stroke] {
stroke: var(--jp-inverse-layout-color0);
}
.jp-icon1[stroke] {
stroke: var(--jp-inverse-layout-color1);
}
.jp-icon2[stroke] {
stroke: var(--jp-inverse-layout-color2);
}
.jp-icon3[stroke] {
stroke: var(--jp-inverse-layout-color3);
}
.jp-icon4[stroke] {
stroke: var(--jp-inverse-layout-color4);
}
/* recolor the accent elements of an icon */
.jp-icon-accent0[fill] {
fill: var(--jp-layout-color0);
}
.jp-icon-accent1[fill] {
fill: var(--jp-layout-color1);
}
.jp-icon-accent2[fill] {
fill: var(--jp-layout-color2);
}
.jp-icon-accent3[fill] {
fill: var(--jp-layout-color3);
}
.jp-icon-accent4[fill] {
fill: var(--jp-layout-color4);
}
.jp-icon-accent0[stroke] {
stroke: var(--jp-layout-color0);
}
.jp-icon-accent1[stroke] {
stroke: var(--jp-layout-color1);
}
.jp-icon-accent2[stroke] {
stroke: var(--jp-layout-color2);
}
.jp-icon-accent3[stroke] {
stroke: var(--jp-layout-color3);
}
.jp-icon-accent4[stroke] {
stroke: var(--jp-layout-color4);
}
/* set the color of an icon to transparent */
.jp-icon-none[fill] {
fill: none;
}
.jp-icon-none[stroke] {
stroke: none;
}
/* brand icon colors. Same for light and dark */
.jp-icon-brand0[fill] {
fill: var(--jp-brand-color0);
}
.jp-icon-brand1[fill] {
fill: var(--jp-brand-color1);
}
.jp-icon-brand2[fill] {
fill: var(--jp-brand-color2);
}
.jp-icon-brand3[fill] {
fill: var(--jp-brand-color3);
}
.jp-icon-brand4[fill] {
fill: var(--jp-brand-color4);
}
.jp-icon-brand0[stroke] {
stroke: var(--jp-brand-color0);
}
.jp-icon-brand1[stroke] {
stroke: var(--jp-brand-color1);
}
.jp-icon-brand2[stroke] {
stroke: var(--jp-brand-color2);
}
.jp-icon-brand3[stroke] {
stroke: var(--jp-brand-color3);
}
.jp-icon-brand4[stroke] {
stroke: var(--jp-brand-color4);
}
/* warn icon colors. Same for light and dark */
.jp-icon-warn0[fill] {
fill: var(--jp-warn-color0);
}
.jp-icon-warn1[fill] {
fill: var(--jp-warn-color1);
}
.jp-icon-warn2[fill] {
fill: var(--jp-warn-color2);
}
.jp-icon-warn3[fill] {
fill: var(--jp-warn-color3);
}
.jp-icon-warn0[stroke] {
stroke: var(--jp-warn-color0);
}
.jp-icon-warn1[stroke] {
stroke: var(--jp-warn-color1);
}
.jp-icon-warn2[stroke] {
stroke: var(--jp-warn-color2);
}
.jp-icon-warn3[stroke] {
stroke: var(--jp-warn-color3);
}
/* icon colors that contrast well with each other and most backgrounds */
.jp-icon-contrast0[fill] {
fill: var(--jp-icon-contrast-color0);
}
.jp-icon-contrast1[fill] {
fill: var(--jp-icon-contrast-color1);
}
.jp-icon-contrast2[fill] {
fill: var(--jp-icon-contrast-color2);
}
.jp-icon-contrast3[fill] {
fill: var(--jp-icon-contrast-color3);
}
.jp-icon-contrast0[stroke] {
stroke: var(--jp-icon-contrast-color0);
}
.jp-icon-contrast1[stroke] {
stroke: var(--jp-icon-contrast-color1);
}
.jp-icon-contrast2[stroke] {
stroke: var(--jp-icon-contrast-color2);
}
.jp-icon-contrast3[stroke] {
stroke: var(--jp-icon-contrast-color3);
}
/* CSS for icons in selected items in the settings editor */
#setting-editor .jp-PluginList .jp-mod-selected .jp-icon-selectable[fill] {
fill: #fff;
}
#setting-editor
.jp-PluginList
.jp-mod-selected
.jp-icon-selectable-inverse[fill] {
fill: var(--jp-brand-color1);
}
/* CSS for icons in selected filebrowser listing items */
.jp-DirListing-item.jp-mod-selected .jp-icon-selectable[fill] {
fill: #fff;
}
.jp-DirListing-item.jp-mod-selected .jp-icon-selectable-inverse[fill] {
fill: var(--jp-brand-color1);
}
/* CSS for icons in selected tabs in the sidebar tab manager */
#tab-manager .lm-TabBar-tab.jp-mod-active .jp-icon-selectable[fill] {
fill: #fff;
}
#tab-manager .lm-TabBar-tab.jp-mod-active .jp-icon-selectable-inverse[fill] {
fill: var(--jp-brand-color1);
}
#tab-manager
.lm-TabBar-tab.jp-mod-active
.jp-icon-hover
:hover
.jp-icon-selectable[fill] {
fill: var(--jp-brand-color1);
}
#tab-manager
.lm-TabBar-tab.jp-mod-active
.jp-icon-hover
:hover
.jp-icon-selectable-inverse[fill] {
fill: #fff;
}
/**
* TODO: come up with non css-hack solution for showing the busy icon on top
* of the close icon
* CSS for complex behavior of close icon of tabs in the sidebar tab manager
*/
#tab-manager
.lm-TabBar-tab.jp-mod-dirty
> .lm-TabBar-tabCloseIcon
> :not(:hover)
> .jp-icon3[fill] {
fill: none;
}
#tab-manager
.lm-TabBar-tab.jp-mod-dirty
> .lm-TabBar-tabCloseIcon
> :not(:hover)
> .jp-icon-busy[fill] {
fill: var(--jp-inverse-layout-color3);
}
#tab-manager
.lm-TabBar-tab.jp-mod-dirty.jp-mod-active
> .lm-TabBar-tabCloseIcon
> :not(:hover)
> .jp-icon-busy[fill] {
fill: #fff;
}
/**
* TODO: come up with non css-hack solution for showing the busy icon on top
* of the close icon
* CSS for complex behavior of close icon of tabs in the main area tabbar
*/
.lm-DockPanel-tabBar
.lm-TabBar-tab.lm-mod-closable.jp-mod-dirty
> .lm-TabBar-tabCloseIcon
> :not(:hover)
> .jp-icon3[fill] {
fill: none;
}
.lm-DockPanel-tabBar
.lm-TabBar-tab.lm-mod-closable.jp-mod-dirty
> .lm-TabBar-tabCloseIcon
> :not(:hover)
> .jp-icon-busy[fill] {
fill: var(--jp-inverse-layout-color3);
}
/* CSS for icons in status bar */
#jp-main-statusbar .jp-mod-selected .jp-icon-selectable[fill] {
fill: #fff;
}
#jp-main-statusbar .jp-mod-selected .jp-icon-selectable-inverse[fill] {
fill: var(--jp-brand-color1);
}
/* special handling for splash icon CSS. While the theme CSS reloads during
splash, the splash icon can loose theming. To prevent that, we set a
default for its color variable */
:root {
--jp-warn-color0: var(--md-orange-700);
}
/* not sure what to do with this one, used in filebrowser listing */
.jp-DragIcon {
margin-right: 4px;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/**
* Support for alt colors for icons as inline SVG HTMLElements
*/
/* alt recolor the primary elements of an icon */
.jp-icon-alt .jp-icon0[fill] {
fill: var(--jp-layout-color0);
}
.jp-icon-alt .jp-icon1[fill] {
fill: var(--jp-layout-color1);
}
.jp-icon-alt .jp-icon2[fill] {
fill: var(--jp-layout-color2);
}
.jp-icon-alt .jp-icon3[fill] {
fill: var(--jp-layout-color3);
}
.jp-icon-alt .jp-icon4[fill] {
fill: var(--jp-layout-color4);
}
.jp-icon-alt .jp-icon0[stroke] {
stroke: var(--jp-layout-color0);
}
.jp-icon-alt .jp-icon1[stroke] {
stroke: var(--jp-layout-color1);
}
.jp-icon-alt .jp-icon2[stroke] {
stroke: var(--jp-layout-color2);
}
.jp-icon-alt .jp-icon3[stroke] {
stroke: var(--jp-layout-color3);
}
.jp-icon-alt .jp-icon4[stroke] {
stroke: var(--jp-layout-color4);
}
/* alt recolor the accent elements of an icon */
.jp-icon-alt .jp-icon-accent0[fill] {
fill: var(--jp-inverse-layout-color0);
}
.jp-icon-alt .jp-icon-accent1[fill] {
fill: var(--jp-inverse-layout-color1);
}
.jp-icon-alt .jp-icon-accent2[fill] {
fill: var(--jp-inverse-layout-color2);
}
.jp-icon-alt .jp-icon-accent3[fill] {
fill: var(--jp-inverse-layout-color3);
}
.jp-icon-alt .jp-icon-accent4[fill] {
fill: var(--jp-inverse-layout-color4);
}
.jp-icon-alt .jp-icon-accent0[stroke] {
stroke: var(--jp-inverse-layout-color0);
}
.jp-icon-alt .jp-icon-accent1[stroke] {
stroke: var(--jp-inverse-layout-color1);
}
.jp-icon-alt .jp-icon-accent2[stroke] {
stroke: var(--jp-inverse-layout-color2);
}
.jp-icon-alt .jp-icon-accent3[stroke] {
stroke: var(--jp-inverse-layout-color3);
}
.jp-icon-alt .jp-icon-accent4[stroke] {
stroke: var(--jp-inverse-layout-color4);
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-icon-hoverShow:not(:hover) svg {
display: none !important;
}
/**
* Support for hover colors for icons as inline SVG HTMLElements
*/
/**
* regular colors
*/
/* recolor the primary elements of an icon */
.jp-icon-hover :hover .jp-icon0-hover[fill] {
fill: var(--jp-inverse-layout-color0);
}
.jp-icon-hover :hover .jp-icon1-hover[fill] {
fill: var(--jp-inverse-layout-color1);
}
.jp-icon-hover :hover .jp-icon2-hover[fill] {
fill: var(--jp-inverse-layout-color2);
}
.jp-icon-hover :hover .jp-icon3-hover[fill] {
fill: var(--jp-inverse-layout-color3);
}
.jp-icon-hover :hover .jp-icon4-hover[fill] {
fill: var(--jp-inverse-layout-color4);
}
.jp-icon-hover :hover .jp-icon0-hover[stroke] {
stroke: var(--jp-inverse-layout-color0);
}
.jp-icon-hover :hover .jp-icon1-hover[stroke] {
stroke: var(--jp-inverse-layout-color1);
}
.jp-icon-hover :hover .jp-icon2-hover[stroke] {
stroke: var(--jp-inverse-layout-color2);
}
.jp-icon-hover :hover .jp-icon3-hover[stroke] {
stroke: var(--jp-inverse-layout-color3);
}
.jp-icon-hover :hover .jp-icon4-hover[stroke] {
stroke: var(--jp-inverse-layout-color4);
}
/* recolor the accent elements of an icon */
.jp-icon-hover :hover .jp-icon-accent0-hover[fill] {
fill: var(--jp-layout-color0);
}
.jp-icon-hover :hover .jp-icon-accent1-hover[fill] {
fill: var(--jp-layout-color1);
}
.jp-icon-hover :hover .jp-icon-accent2-hover[fill] {
fill: var(--jp-layout-color2);
}
.jp-icon-hover :hover .jp-icon-accent3-hover[fill] {
fill: var(--jp-layout-color3);
}
.jp-icon-hover :hover .jp-icon-accent4-hover[fill] {
fill: var(--jp-layout-color4);
}
.jp-icon-hover :hover .jp-icon-accent0-hover[stroke] {
stroke: var(--jp-layout-color0);
}
.jp-icon-hover :hover .jp-icon-accent1-hover[stroke] {
stroke: var(--jp-layout-color1);
}
.jp-icon-hover :hover .jp-icon-accent2-hover[stroke] {
stroke: var(--jp-layout-color2);
}
.jp-icon-hover :hover .jp-icon-accent3-hover[stroke] {
stroke: var(--jp-layout-color3);
}
.jp-icon-hover :hover .jp-icon-accent4-hover[stroke] {
stroke: var(--jp-layout-color4);
}
/* set the color of an icon to transparent */
.jp-icon-hover :hover .jp-icon-none-hover[fill] {
fill: none;
}
.jp-icon-hover :hover .jp-icon-none-hover[stroke] {
stroke: none;
}
/**
* inverse colors
*/
/* inverse recolor the primary elements of an icon */
.jp-icon-hover.jp-icon-alt :hover .jp-icon0-hover[fill] {
fill: var(--jp-layout-color0);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon1-hover[fill] {
fill: var(--jp-layout-color1);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon2-hover[fill] {
fill: var(--jp-layout-color2);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon3-hover[fill] {
fill: var(--jp-layout-color3);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon4-hover[fill] {
fill: var(--jp-layout-color4);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon0-hover[stroke] {
stroke: var(--jp-layout-color0);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon1-hover[stroke] {
stroke: var(--jp-layout-color1);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon2-hover[stroke] {
stroke: var(--jp-layout-color2);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon3-hover[stroke] {
stroke: var(--jp-layout-color3);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon4-hover[stroke] {
stroke: var(--jp-layout-color4);
}
/* inverse recolor the accent elements of an icon */
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent0-hover[fill] {
fill: var(--jp-inverse-layout-color0);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent1-hover[fill] {
fill: var(--jp-inverse-layout-color1);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent2-hover[fill] {
fill: var(--jp-inverse-layout-color2);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent3-hover[fill] {
fill: var(--jp-inverse-layout-color3);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent4-hover[fill] {
fill: var(--jp-inverse-layout-color4);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent0-hover[stroke] {
stroke: var(--jp-inverse-layout-color0);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent1-hover[stroke] {
stroke: var(--jp-inverse-layout-color1);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent2-hover[stroke] {
stroke: var(--jp-inverse-layout-color2);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent3-hover[stroke] {
stroke: var(--jp-inverse-layout-color3);
}
.jp-icon-hover.jp-icon-alt :hover .jp-icon-accent4-hover[stroke] {
stroke: var(--jp-inverse-layout-color4);
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-switch {
display: flex;
align-items: center;
padding-left: 4px;
padding-right: 4px;
font-size: var(--jp-ui-font-size1);
background-color: transparent;
color: var(--jp-ui-font-color1);
border: none;
height: 20px;
}
.jp-switch:hover {
background-color: var(--jp-layout-color2);
}
.jp-switch-label {
margin-right: 5px;
}
.jp-switch-track {
cursor: pointer;
background-color: var(--jp-border-color1);
-webkit-transition: 0.4s;
transition: 0.4s;
border-radius: 34px;
height: 16px;
width: 35px;
position: relative;
}
.jp-switch-track::before {
content: '';
position: absolute;
height: 10px;
width: 10px;
margin: 3px;
left: 0px;
background-color: var(--jp-ui-inverse-font-color1);
-webkit-transition: 0.4s;
transition: 0.4s;
border-radius: 50%;
}
.jp-switch[aria-checked='true'] .jp-switch-track {
background-color: var(--jp-warn-color0);
}
.jp-switch[aria-checked='true'] .jp-switch-track::before {
/* track width (35) - margins (3 + 3) - thumb width (10) */
left: 19px;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/* Sibling imports */
/* Override Blueprint's _reset.scss styles */
html {
box-sizing: unset;
}
*,
*::before,
*::after {
box-sizing: unset;
}
body {
color: unset;
font-family: var(--jp-ui-font-family);
}
p {
margin-top: unset;
margin-bottom: unset;
}
small {
font-size: unset;
}
strong {
font-weight: unset;
}
/* Override Blueprint's _typography.scss styles */
a {
text-decoration: unset;
color: unset;
}
a:hover {
text-decoration: unset;
color: unset;
}
/* Override Blueprint's _accessibility.scss styles */
:focus {
outline: unset;
outline-offset: unset;
-moz-outline-radius: unset;
}
/* Styles for ui-components */
.jp-Button {
border-radius: var(--jp-border-radius);
padding: 0px 12px;
font-size: var(--jp-ui-font-size1);
}
/* Use our own theme for hover styles */
button.jp-Button.bp3-button.bp3-minimal:hover {
background-color: var(--jp-layout-color2);
}
.jp-Button.minimal {
color: unset !important;
}
.jp-Button.jp-ToolbarButtonComponent {
text-transform: none;
}
.jp-InputGroup input {
box-sizing: border-box;
border-radius: 0;
background-color: transparent;
color: var(--jp-ui-font-color0);
box-shadow: inset 0 0 0 var(--jp-border-width) var(--jp-input-border-color);
}
.jp-InputGroup input:focus {
box-shadow: inset 0 0 0 var(--jp-border-width)
var(--jp-input-active-box-shadow-color),
inset 0 0 0 3px var(--jp-input-active-box-shadow-color);
}
.jp-InputGroup input::placeholder,
input::placeholder {
color: var(--jp-ui-font-color3);
}
.jp-BPIcon {
display: inline-block;
vertical-align: middle;
margin: auto;
}
/* Stop blueprint futzing with our icon fills */
.bp3-icon.jp-BPIcon > svg:not([fill]) {
fill: var(--jp-inverse-layout-color3);
}
.jp-InputGroupAction {
padding: 6px;
}
.jp-HTMLSelect.jp-DefaultStyle select {
background-color: initial;
border: none;
border-radius: 0;
box-shadow: none;
color: var(--jp-ui-font-color0);
display: block;
font-size: var(--jp-ui-font-size1);
height: 24px;
line-height: 14px;
padding: 0 25px 0 10px;
text-align: left;
-moz-appearance: none;
-webkit-appearance: none;
}
/* Use our own theme for hover and option styles */
.jp-HTMLSelect.jp-DefaultStyle select:hover,
.jp-HTMLSelect.jp-DefaultStyle select > option {
background-color: var(--jp-layout-color2);
color: var(--jp-ui-font-color0);
}
select {
box-sizing: border-box;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-Collapse {
display: flex;
flex-direction: column;
align-items: stretch;
border-top: 1px solid var(--jp-border-color2);
border-bottom: 1px solid var(--jp-border-color2);
}
.jp-Collapse-header {
padding: 1px 12px;
color: var(--jp-ui-font-color1);
background-color: var(--jp-layout-color1);
font-size: var(--jp-ui-font-size2);
}
.jp-Collapse-header:hover {
background-color: var(--jp-layout-color2);
}
.jp-Collapse-contents {
padding: 0px 12px 0px 12px;
background-color: var(--jp-layout-color1);
color: var(--jp-ui-font-color1);
overflow: auto;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/
:root {
--jp-private-commandpalette-search-height: 28px;
}
/*-----------------------------------------------------------------------------
| Overall styles
|----------------------------------------------------------------------------*/
.lm-CommandPalette {
padding-bottom: 0px;
color: var(--jp-ui-font-color1);
background: var(--jp-layout-color1);
/* This is needed so that all font sizing of children done in ems is
* relative to this base size */
font-size: var(--jp-ui-font-size1);
}
/*-----------------------------------------------------------------------------
| Modal variant
|----------------------------------------------------------------------------*/
.jp-ModalCommandPalette {
position: absolute;
z-index: 10000;
top: 38px;
left: 30%;
margin: 0;
padding: 4px;
width: 40%;
box-shadow: var(--jp-elevation-z4);
border-radius: 4px;
background: var(--jp-layout-color0);
}
.jp-ModalCommandPalette .lm-CommandPalette {
max-height: 40vh;
}
.jp-ModalCommandPalette .lm-CommandPalette .lm-close-icon::after {
display: none;
}
.jp-ModalCommandPalette .lm-CommandPalette .lm-CommandPalette-header {
display: none;
}
.jp-ModalCommandPalette .lm-CommandPalette .lm-CommandPalette-item {
margin-left: 4px;
margin-right: 4px;
}
.jp-ModalCommandPalette
.lm-CommandPalette
.lm-CommandPalette-item.lm-mod-disabled {
display: none;
}
/*-----------------------------------------------------------------------------
| Search
|----------------------------------------------------------------------------*/
.lm-CommandPalette-search {
padding: 4px;
background-color: var(--jp-layout-color1);
z-index: 2;
}
.lm-CommandPalette-wrapper {
overflow: overlay;
padding: 0px 9px;
background-color: var(--jp-input-active-background);
height: 30px;
box-shadow: inset 0 0 0 var(--jp-border-width) var(--jp-input-border-color);
}
.lm-CommandPalette.lm-mod-focused .lm-CommandPalette-wrapper {
box-shadow: inset 0 0 0 1px var(--jp-input-active-box-shadow-color),
inset 0 0 0 3px var(--jp-input-active-box-shadow-color);
}
.jp-SearchIconGroup {
color: white;
background-color: var(--jp-brand-color1);
position: absolute;
top: 4px;
right: 4px;
padding: 5px 5px 1px 5px;
}
.jp-SearchIconGroup svg {
height: 20px;
width: 20px;
}
.jp-SearchIconGroup .jp-icon3[fill] {
fill: var(--jp-layout-color0);
}
.lm-CommandPalette-input {
background: transparent;
width: calc(100% - 18px);
float: left;
border: none;
outline: none;
font-size: var(--jp-ui-font-size1);
color: var(--jp-ui-font-color0);
line-height: var(--jp-private-commandpalette-search-height);
}
.lm-CommandPalette-input::-webkit-input-placeholder,
.lm-CommandPalette-input::-moz-placeholder,
.lm-CommandPalette-input:-ms-input-placeholder {
color: var(--jp-ui-font-color2);
font-size: var(--jp-ui-font-size1);
}
/*-----------------------------------------------------------------------------
| Results
|----------------------------------------------------------------------------*/
.lm-CommandPalette-header:first-child {
margin-top: 0px;
}
.lm-CommandPalette-header {
border-bottom: solid var(--jp-border-width) var(--jp-border-color2);
color: var(--jp-ui-font-color1);
cursor: pointer;
display: flex;
font-size: var(--jp-ui-font-size0);
font-weight: 600;
letter-spacing: 1px;
margin-top: 8px;
padding: 8px 0 8px 12px;
text-transform: uppercase;
}
.lm-CommandPalette-header.lm-mod-active {
background: var(--jp-layout-color2);
}
.lm-CommandPalette-header > mark {
background-color: transparent;
font-weight: bold;
color: var(--jp-ui-font-color1);
}
.lm-CommandPalette-item {
padding: 4px 12px 4px 4px;
color: var(--jp-ui-font-color1);
font-size: var(--jp-ui-font-size1);
font-weight: 400;
display: flex;
}
.lm-CommandPalette-item.lm-mod-disabled {
color: var(--jp-ui-font-color2);
}
.lm-CommandPalette-item.lm-mod-active {
color: var(--jp-ui-inverse-font-color1);
background: var(--jp-brand-color1);
}
.lm-CommandPalette-item.lm-mod-active .lm-CommandPalette-itemLabel > mark {
color: var(--jp-ui-inverse-font-color0);
}
.lm-CommandPalette-item.lm-mod-active .jp-icon-selectable[fill] {
fill: var(--jp-layout-color0);
}
.lm-CommandPalette-item.lm-mod-active .lm-CommandPalette-itemLabel > mark {
color: var(--jp-ui-inverse-font-color0);
}
.lm-CommandPalette-item.lm-mod-active:hover:not(.lm-mod-disabled) {
color: var(--jp-ui-inverse-font-color1);
background: var(--jp-brand-color1);
}
.lm-CommandPalette-item:hover:not(.lm-mod-active):not(.lm-mod-disabled) {
background: var(--jp-layout-color2);
}
.lm-CommandPalette-itemContent {
overflow: hidden;
}
.lm-CommandPalette-itemLabel > mark {
color: var(--jp-ui-font-color0);
background-color: transparent;
font-weight: bold;
}
.lm-CommandPalette-item.lm-mod-disabled mark {
color: var(--jp-ui-font-color2);
}
.lm-CommandPalette-item .lm-CommandPalette-itemIcon {
margin: 0 4px 0 0;
position: relative;
width: 16px;
top: 2px;
flex: 0 0 auto;
}
.lm-CommandPalette-item.lm-mod-disabled .lm-CommandPalette-itemIcon {
opacity: 0.6;
}
.lm-CommandPalette-item .lm-CommandPalette-itemShortcut {
flex: 0 0 auto;
}
.lm-CommandPalette-itemCaption {
display: none;
}
.lm-CommandPalette-content {
background-color: var(--jp-layout-color1);
}
.lm-CommandPalette-content:empty:after {
content: 'No results';
margin: auto;
margin-top: 20px;
width: 100px;
display: block;
font-size: var(--jp-ui-font-size2);
font-family: var(--jp-ui-font-family);
font-weight: lighter;
}
.lm-CommandPalette-emptyMessage {
text-align: center;
margin-top: 24px;
line-height: 1.32;
padding: 0px 8px;
color: var(--jp-content-font-color3);
}
/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-Dialog {
position: absolute;
z-index: 10000;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
top: 0px;
left: 0px;
margin: 0;
padding: 0;
width: 100%;
height: 100%;
background: var(--jp-dialog-background);
}
.jp-Dialog-content {
display: flex;
flex-direction: column;
margin-left: auto;
margin-right: auto;
background: var(--jp-layout-color1);
padding: 24px;
padding-bottom: 12px;
min-width: 300px;
min-height: 150px;
max-width: 1000px;
max-height: 500px;
box-sizing: border-box;
box-shadow: var(--jp-elevation-z20);
word-wrap: break-word;
border-radius: var(--jp-border-radius);
/* This is needed so that all font sizing of children done in ems is
* relative to this base size */
font-size: var(--jp-ui-font-size1);
color: var(--jp-ui-font-color1);
resize: both;
}
.jp-Dialog-button {
overflow: visible;
}
button.jp-Dialog-button:focus {
outline: 1px solid var(--jp-brand-color1);
outline-offset: 4px;
-moz-outline-radius: 0px;
}
button.jp-Dialog-button:focus::-moz-focus-inner {
border: 0;
}
button.jp-Dialog-close-button {
padding: 0;
height: 100%;
min-width: unset;
min-height: unset;
}
.jp-Dialog-header {
display: flex;
justify-content: space-between;
flex: 0 0 auto;
padding-bottom: 12px;
font-size: var(--jp-ui-font-size3);
font-weight: 400;
color: var(--jp-ui-font-color0);
}
.jp-Dialog-body {
display: flex;
flex-direction: column;
flex: 1 1 auto;
font-size: var(--jp-ui-font-size1);
background: var(--jp-layout-color1);
overflow: auto;
}
.jp-Dialog-footer {
display: flex;
flex-direction: row;
justify-content: flex-end;
flex: 0 0 auto;
margin-left: -12px;
margin-right: -12px;
padding: 12px;
}
.jp-Dialog-title {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.jp-Dialog-body > .jp-select-wrapper {
width: 100%;
}
.jp-Dialog-body > button {
padding: 0px 16px;
}
.jp-Dialog-body > label {
line-height: 1.4;
color: var(--jp-ui-font-color0);
}
.jp-Dialog-button.jp-mod-styled:not(:last-child) {
margin-right: 12px;
}
/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-HoverBox {
position: fixed;
}
.jp-HoverBox.jp-mod-outofview {
display: none;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-IFrame {
width: 100%;
height: 100%;
}
.jp-IFrame > iframe {
border: none;
}
/*
When drag events occur, `p-mod-override-cursor` is added to the body.
Because iframes steal all cursor events, the following two rules are necessary
to suppress pointer events while resize drags are occurring. There may be a
better solution to this problem.
*/
body.lm-mod-override-cursor .jp-IFrame {
position: relative;
}
body.lm-mod-override-cursor .jp-IFrame:before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: transparent;
}
.jp-Input-Boolean-Dialog {
flex-direction: row-reverse;
align-items: end;
width: 100%;
}
.jp-Input-Boolean-Dialog > label {
flex: 1 1 auto;
}
/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-MainAreaWidget > :focus {
outline: none;
}
/**
* google-material-color v1.2.6
* https://github.com/danlevan/google-material-color
*/
:root {
--md-red-50: #ffebee;
--md-red-100: #ffcdd2;
--md-red-200: #ef9a9a;
--md-red-300: #e57373;
--md-red-400: #ef5350;
--md-red-500: #f44336;
--md-red-600: #e53935;
--md-red-700: #d32f2f;
--md-red-800: #c62828;
--md-red-900: #b71c1c;
--md-red-A100: #ff8a80;
--md-red-A200: #ff5252;
--md-red-A400: #ff1744;
--md-red-A700: #d50000;
--md-pink-50: #fce4ec;
--md-pink-100: #f8bbd0;
--md-pink-200: #f48fb1;
--md-pink-300: #f06292;
--md-pink-400: #ec407a;
--md-pink-500: #e91e63;
--md-pink-600: #d81b60;
--md-pink-700: #c2185b;
--md-pink-800: #ad1457;
--md-pink-900: #880e4f;
--md-pink-A100: #ff80ab;
--md-pink-A200: #ff4081;
--md-pink-A400: #f50057;
--md-pink-A700: #c51162;
--md-purple-50: #f3e5f5;
--md-purple-100: #e1bee7;
--md-purple-200: #ce93d8;
--md-purple-300: #ba68c8;
--md-purple-400: #ab47bc;
--md-purple-500: #9c27b0;
--md-purple-600: #8e24aa;
--md-purple-700: #7b1fa2;
--md-purple-800: #6a1b9a;
--md-purple-900: #4a148c;
--md-purple-A100: #ea80fc;
--md-purple-A200: #e040fb;
--md-purple-A400: #d500f9;
--md-purple-A700: #aa00ff;
--md-deep-purple-50: #ede7f6;
--md-deep-purple-100: #d1c4e9;
--md-deep-purple-200: #b39ddb;
--md-deep-purple-300: #9575cd;
--md-deep-purple-400: #7e57c2;
--md-deep-purple-500: #673ab7;
--md-deep-purple-600: #5e35b1;
--md-deep-purple-700: #512da8;
--md-deep-purple-800: #4527a0;
--md-deep-purple-900: #311b92;
--md-deep-purple-A100: #b388ff;
--md-deep-purple-A200: #7c4dff;
--md-deep-purple-A400: #651fff;
--md-deep-purple-A700: #6200ea;
--md-indigo-50: #e8eaf6;
--md-indigo-100: #c5cae9;
--md-indigo-200: #9fa8da;
--md-indigo-300: #7986cb;
--md-indigo-400: #5c6bc0;
--md-indigo-500: #3f51b5;
--md-indigo-600: #3949ab;
--md-indigo-700: #303f9f;
--md-indigo-800: #283593;
--md-indigo-900: #1a237e;
--md-indigo-A100: #8c9eff;
--md-indigo-A200: #536dfe;
--md-indigo-A400: #3d5afe;
--md-indigo-A700: #304ffe;
--md-blue-50: #e3f2fd;
--md-blue-100: #bbdefb;
--md-blue-200: #90caf9;
--md-blue-300: #64b5f6;
--md-blue-400: #42a5f5;
--md-blue-500: #2196f3;
--md-blue-600: #1e88e5;
--md-blue-700: #1976d2;
--md-blue-800: #1565c0;
--md-blue-900: #0d47a1;
--md-blue-A100: #82b1ff;
--md-blue-A200: #448aff;
--md-blue-A400: #2979ff;
--md-blue-A700: #2962ff;
--md-light-blue-50: #e1f5fe;
--md-light-blue-100: #b3e5fc;
--md-light-blue-200: #81d4fa;
--md-light-blue-300: #4fc3f7;
--md-light-blue-400: #29b6f6;
--md-light-blue-500: #03a9f4;
--md-light-blue-600: #039be5;
--md-light-blue-700: #0288d1;
--md-light-blue-800: #0277bd;
--md-light-blue-900: #01579b;
--md-light-blue-A100: #80d8ff;
--md-light-blue-A200: #40c4ff;
--md-light-blue-A400: #00b0ff;
--md-light-blue-A700: #0091ea;
--md-cyan-50: #e0f7fa;
--md-cyan-100: #b2ebf2;
--md-cyan-200: #80deea;
--md-cyan-300: #4dd0e1;
--md-cyan-400: #26c6da;
--md-cyan-500: #00bcd4;
--md-cyan-600: #00acc1;
--md-cyan-700: #0097a7;
--md-cyan-800: #00838f;
--md-cyan-900: #006064;
--md-cyan-A100: #84ffff;
--md-cyan-A200: #18ffff;
--md-cyan-A400: #00e5ff;
--md-cyan-A700: #00b8d4;
--md-teal-50: #e0f2f1;
--md-teal-100: #b2dfdb;
--md-teal-200: #80cbc4;
--md-teal-300: #4db6ac;
--md-teal-400: #26a69a;
--md-teal-500: #009688;
--md-teal-600: #00897b;
--md-teal-700: #00796b;
--md-teal-800: #00695c;
--md-teal-900: #004d40;
--md-teal-A100: #a7ffeb;
--md-teal-A200: #64ffda;
--md-teal-A400: #1de9b6;
--md-teal-A700: #00bfa5;
--md-green-50: #e8f5e9;
--md-green-100: #c8e6c9;
--md-green-200: #a5d6a7;
--md-green-300: #81c784;
--md-green-400: #66bb6a;
--md-green-500: #4caf50;
--md-green-600: #43a047;
--md-green-700: #388e3c;
--md-green-800: #2e7d32;
--md-green-900: #1b5e20;
--md-green-A100: #b9f6ca;
--md-green-A200: #69f0ae;
--md-green-A400: #00e676;
--md-green-A700: #00c853;
--md-light-green-50: #f1f8e9;
--md-light-green-100: #dcedc8;
--md-light-green-200: #c5e1a5;
--md-light-green-300: #aed581;
--md-light-green-400: #9ccc65;
--md-light-green-500: #8bc34a;
--md-light-green-600: #7cb342;
--md-light-green-700: #689f38;
--md-light-green-800: #558b2f;
--md-light-green-900: #33691e;
--md-light-green-A100: #ccff90;
--md-light-green-A200: #b2ff59;
--md-light-green-A400: #76ff03;
--md-light-green-A700: #64dd17;
--md-lime-50: #f9fbe7;
--md-lime-100: #f0f4c3;
--md-lime-200: #e6ee9c;
--md-lime-300: #dce775;
--md-lime-400: #d4e157;
--md-lime-500: #cddc39;
--md-lime-600: #c0ca33;
--md-lime-700: #afb42b;
--md-lime-800: #9e9d24;
--md-lime-900: #827717;
--md-lime-A100: #f4ff81;
--md-lime-A200: #eeff41;
--md-lime-A400: #c6ff00;
--md-lime-A700: #aeea00;
--md-yellow-50: #fffde7;
--md-yellow-100: #fff9c4;
--md-yellow-200: #fff59d;
--md-yellow-300: #fff176;
--md-yellow-400: #ffee58;
--md-yellow-500: #ffeb3b;
--md-yellow-600: #fdd835;
--md-yellow-700: #fbc02d;
--md-yellow-800: #f9a825;
--md-yellow-900: #f57f17;
--md-yellow-A100: #ffff8d;
--md-yellow-A200: #ffff00;
--md-yellow-A400: #ffea00;
--md-yellow-A700: #ffd600;
--md-amber-50: #fff8e1;
--md-amber-100: #ffecb3;
--md-amber-200: #ffe082;
--md-amber-300: #ffd54f;
--md-amber-400: #ffca28;
--md-amber-500: #ffc107;
--md-amber-600: #ffb300;
--md-amber-700: #ffa000;
--md-amber-800: #ff8f00;
--md-amber-900: #ff6f00;
--md-amber-A100: #ffe57f;
--md-amber-A200: #ffd740;
--md-amber-A400: #ffc400;
--md-amber-A700: #ffab00;
--md-orange-50: #fff3e0;
--md-orange-100: #ffe0b2;
--md-orange-200: #ffcc80;
--md-orange-300: #ffb74d;
--md-orange-400: #ffa726;
--md-orange-500: #ff9800;
--md-orange-600: #fb8c00;
--md-orange-700: #f57c00;
--md-orange-800: #ef6c00;
--md-orange-900: #e65100;
--md-orange-A100: #ffd180;
--md-orange-A200: #ffab40;
--md-orange-A400: #ff9100;
--md-orange-A700: #ff6d00;
--md-deep-orange-50: #fbe9e7;
--md-deep-orange-100: #ffccbc;
--md-deep-orange-200: #ffab91;
--md-deep-orange-300: #ff8a65;
--md-deep-orange-400: #ff7043;
--md-deep-orange-500: #ff5722;
--md-deep-orange-600: #f4511e;
--md-deep-orange-700: #e64a19;
--md-deep-orange-800: #d84315;
--md-deep-orange-900: #bf360c;
--md-deep-orange-A100: #ff9e80;
--md-deep-orange-A200: #ff6e40;
--md-deep-orange-A400: #ff3d00;
--md-deep-orange-A700: #dd2c00;
--md-brown-50: #efebe9;
--md-brown-100: #d7ccc8;
--md-brown-200: #bcaaa4;
--md-brown-300: #a1887f;
--md-brown-400: #8d6e63;
--md-brown-500: #795548;
--md-brown-600: #6d4c41;
--md-brown-700: #5d4037;
--md-brown-800: #4e342e;
--md-brown-900: #3e2723;
--md-grey-50: #fafafa;
--md-grey-100: #f5f5f5;
--md-grey-200: #eeeeee;
--md-grey-300: #e0e0e0;
--md-grey-400: #bdbdbd;
--md-grey-500: #9e9e9e;
--md-grey-600: #757575;
--md-grey-700: #616161;
--md-grey-800: #424242;
--md-grey-900: #212121;
--md-blue-grey-50: #eceff1;
--md-blue-grey-100: #cfd8dc;
--md-blue-grey-200: #b0bec5;
--md-blue-grey-300: #90a4ae;
--md-blue-grey-400: #78909c;
--md-blue-grey-500: #607d8b;
--md-blue-grey-600: #546e7a;
--md-blue-grey-700: #455a64;
--md-blue-grey-800: #37474f;
--md-blue-grey-900: #263238;
}
/*-----------------------------------------------------------------------------
| Copyright (c) 2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-Spinner {
position: absolute;
display: flex;
justify-content: center;
align-items: center;
z-index: 10;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: var(--jp-layout-color0);
outline: none;
}
.jp-SpinnerContent {
font-size: 10px;
margin: 50px auto;
text-indent: -9999em;
width: 3em;
height: 3em;
border-radius: 50%;
background: var(--jp-brand-color3);
background: linear-gradient(
to right,
#f37626 10%,
rgba(255, 255, 255, 0) 42%
);
position: relative;
animation: load3 1s infinite linear, fadeIn 1s;
}
.jp-SpinnerContent:before {
width: 50%;
height: 50%;
background: #f37626;
border-radius: 100% 0 0 0;
position: absolute;
top: 0;
left: 0;
content: '';
}
.jp-SpinnerContent:after {
background: var(--jp-layout-color0);
width: 75%;
height: 75%;
border-radius: 50%;
content: '';
margin: auto;
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
}
@keyframes fadeIn {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
@keyframes load3 {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
button.jp-mod-styled {
font-size: var(--jp-ui-font-size1);
color: var(--jp-ui-font-color0);
border: none;
box-sizing: border-box;
text-align: center;
line-height: 32px;
height: 32px;
padding: 0px 12px;
letter-spacing: 0.8px;
outline: none;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
}
input.jp-mod-styled {
background: var(--jp-input-background);
height: 28px;
box-sizing: border-box;
border: var(--jp-border-width) solid var(--jp-border-color1);
padding-left: 7px;
padding-right: 7px;
font-size: var(--jp-ui-font-size2);
color: var(--jp-ui-font-color0);
outline: none;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
}
input[type='checkbox'].jp-mod-styled {
appearance: checkbox;
-webkit-appearance: checkbox;
-moz-appearance: checkbox;
height: auto;
}
input.jp-mod-styled:focus {
border: var(--jp-border-width) solid var(--md-blue-500);
box-shadow: inset 0 0 4px var(--md-blue-300);
}
.jp-FileDialog-Checkbox {
margin-top: 35px;
display: flex;
flex-direction: row;
align-items: end;
width: 100%;
}
.jp-FileDialog-Checkbox > label {
flex: 1 1 auto;
}
.jp-select-wrapper {
display: flex;
position: relative;
flex-direction: column;
padding: 1px;
background-color: var(--jp-layout-color1);
height: 28px;
box-sizing: border-box;
margin-bottom: 12px;
}
.jp-select-wrapper.jp-mod-focused select.jp-mod-styled {
border: var(--jp-border-width) solid var(--jp-input-active-border-color);
box-shadow: var(--jp-input-box-shadow);
background-color: var(--jp-input-active-background);
}
select.jp-mod-styled:hover {
background-color: var(--jp-layout-color1);
cursor: pointer;
color: var(--jp-ui-font-color0);
background-color: var(--jp-input-hover-background);
box-shadow: inset 0 0px 1px rgba(0, 0, 0, 0.5);
}
select.jp-mod-styled {
flex: 1 1 auto;
height: 32px;
width: 100%;
font-size: var(--jp-ui-font-size2);
background: var(--jp-input-background);
color: var(--jp-ui-font-color0);
padding: 0 25px 0 8px;
border: var(--jp-border-width) solid var(--jp-input-border-color);
border-radius: 0px;
outline: none;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
}
/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
:root {
--jp-private-toolbar-height: calc(
28px + var(--jp-border-width)
); /* leave 28px for content */
}
.jp-Toolbar {
color: var(--jp-ui-font-color1);
flex: 0 0 auto;
display: flex;
flex-direction: row;
border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
box-shadow: var(--jp-toolbar-box-shadow);
background: var(--jp-toolbar-background);
min-height: var(--jp-toolbar-micro-height);
padding: 2px;
z-index: 1;
overflow-x: auto;
}
/* Toolbar items */
.jp-Toolbar > .jp-Toolbar-item.jp-Toolbar-spacer {
flex-grow: 1;
flex-shrink: 1;
}
.jp-Toolbar-item.jp-Toolbar-kernelStatus {
display: inline-block;
width: 32px;
background-repeat: no-repeat;
background-position: center;
background-size: 16px;
}
.jp-Toolbar > .jp-Toolbar-item {
flex: 0 0 auto;
display: flex;
padding-left: 1px;
padding-right: 1px;
font-size: var(--jp-ui-font-size1);
line-height: var(--jp-private-toolbar-height);
height: 100%;
}
/* Toolbar buttons */
/* This is the div we use to wrap the react component into a Widget */
div.jp-ToolbarButton {
color: transparent;
border: none;
box-sizing: border-box;
outline: none;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
padding: 0px;
margin: 0px;
}
button.jp-ToolbarButtonComponent {
background: var(--jp-layout-color1);
border: none;
box-sizing: border-box;
outline: none;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
padding: 0px 6px;
margin: 0px;
height: 24px;
border-radius: var(--jp-border-radius);
display: flex;
align-items: center;
text-align: center;
font-size: 14px;
min-width: unset;
min-height: unset;
}
button.jp-ToolbarButtonComponent:disabled {
opacity: 0.4;
}
button.jp-ToolbarButtonComponent span {
padding: 0px;
flex: 0 0 auto;
}
button.jp-ToolbarButtonComponent .jp-ToolbarButtonComponent-label {
font-size: var(--jp-ui-font-size1);
line-height: 100%;
padding-left: 2px;
color: var(--jp-ui-font-color1);
}
#jp-main-dock-panel[data-mode='single-document']
.jp-MainAreaWidget
> .jp-Toolbar.jp-Toolbar-micro {
padding: 0;
min-height: 0;
}
#jp-main-dock-panel[data-mode='single-document']
.jp-MainAreaWidget
> .jp-Toolbar {
border: none;
box-shadow: none;
}
/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2017, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Copyright (c) 2014-2017, PhosphorJS Contributors
|
| Distributed under the terms of the BSD 3-Clause License.
|
| The full license is in the file LICENSE, distributed with this software.
|----------------------------------------------------------------------------*/
/* <DEPRECATED> */ body.p-mod-override-cursor *, /* </DEPRECATED> */
body.lm-mod-override-cursor * {
cursor: inherit !important;
}
/*-----------------------------------------------------------------------------
| Copyright (c) 2014-2016, Jupyter Development Team.
|
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-JSONEditor {
display: flex;
flex-direction: column;
width: 100%;
}
.jp-JSONEditor-host {
flex: 1 1 auto;
border: var(--jp-border-width) solid var(--jp-input-border-color);
border-radius: 0px;
background: var(--jp-layout-color0);
min-height: 50px;
padding: 1px;
}
.jp-JSONEditor.jp-mod-error .jp-JSONEditor-host {
border-color: red;
outline-color: red;
}
.jp-JSONEditor-header {
display: flex;
flex: 1 0 auto;
padding: 0 0 0 12px;
}
.jp-JSONEditor-header label {
flex: 0 0 auto;
}
.jp-JSONEditor-commitButton {
height: 16px;
width: 16px;
background-size: 18px;
background-repeat: no-repeat;
background-position: center;
}
.jp-JSONEditor-host.jp-mod-focused {
background-color: var(--jp-input-active-background);
border: 1px solid var(--jp-input-active-border-color);
box-shadow: var(--jp-input-box-shadow);
}
.jp-Editor.jp-mod-dropTarget {
border: var(--jp-border-width) solid var(--jp-input-active-border-color);
box-shadow: var(--jp-input-box-shadow);
}
/* BASICS */
.CodeMirror {
/* Set height, width, borders, and global font properties here */
font-family: monospace;
height: 300px;
color: black;
direction: ltr;
}
/* PADDING */
.CodeMirror-lines {
padding: 4px 0; /* Vertical padding around content */
}
.CodeMirror pre.CodeMirror-line,
.CodeMirror pre.CodeMirror-line-like {
padding: 0 4px; /* Horizontal padding of content */
}
.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
background-color: white; /* The little square between H and V scrollbars */
}
/* GUTTER */
.CodeMirror-gutters {
border-right: 1px solid #ddd;
background-color: #f7f7f7;
white-space: nowrap;
}
.CodeMirror-linenumbers {}
.CodeMirror-linenumber {
padding: 0 3px 0 5px;
min-width: 20px;
text-align: right;
color: #999;
white-space: nowrap;
}
.CodeMirror-guttermarker { color: black; }
.CodeMirror-guttermarker-subtle { color: #999; }
/* CURSOR */
.CodeMirror-cursor {
border-left: 1px solid black;
border-right: none;
width: 0;
}
/* Shown when moving in bi-directional text */
.CodeMirror div.CodeMirror-secondarycursor {
border-left: 1px solid silver;
}
.cm-fat-cursor .CodeMirror-cursor {
width: auto;
border: 0 !important;
background: #7e7;
}
.cm-fat-cursor div.CodeMirror-cursors {
z-index: 1;
}
.cm-fat-cursor-mark {
background-color: rgba(20, 255, 20, 0.5);
-webkit-animation: blink 1.06s steps(1) infinite;
-moz-animation: blink 1.06s steps(1) infinite;
animation: blink 1.06s steps(1) infinite;
}
.cm-animate-fat-cursor {
width: auto;
border: 0;
-webkit-animation: blink 1.06s steps(1) infinite;
-moz-animation: blink 1.06s steps(1) infinite;
animation: blink 1.06s steps(1) infinite;
background-color: #7e7;
}
@-moz-keyframes blink {
0% {}
50% { background-color: transparent; }
100% {}
}
@-webkit-keyframes blink {
0% {}
50% { background-color: transparent; }
100% {}
}
@keyframes blink {
0% {}
50% { background-color: transparent; }
100% {}
}
/* Can style cursor different in overwrite (non-insert) mode */
.CodeMirror-overwrite .CodeMirror-cursor {}
.cm-tab { display: inline-block; text-decoration: inherit; }
.CodeMirror-rulers {
position: absolute;
left: 0; right: 0; top: -50px; bottom: 0;
overflow: hidden;
}
.CodeMirror-ruler {
border-left: 1px solid #ccc;
top: 0; bottom: 0;
position: absolute;
}
/* DEFAULT THEME */
.cm-s-default .cm-header {color: blue;}
.cm-s-default .cm-quote {color: #090;}
.cm-negative {color: #d44;}
.cm-positive {color: #292;}
.cm-header, .cm-strong {font-weight: bold;}
.cm-em {font-style: italic;}
.cm-link {text-decoration: underline;}
.cm-strikethrough {text-decoration: line-through;}
.cm-s-default .cm-keyword {color: #708;}
.cm-s-default .cm-atom {color: #219;}
.cm-s-default .cm-number {color: #164;}
.cm-s-default .cm-def {color: #00f;}
.cm-s-default .cm-variable,
.cm-s-default .cm-punctuation,
.cm-s-default .cm-property,
.cm-s-default .cm-operator {}
.cm-s-default .cm-variable-2 {color: #05a;}
.cm-s-default .cm-variable-3, .cm-s-default .cm-type {color: #085;}
.cm-s-default .cm-comment {color: #a50;}
.cm-s-default .cm-string {color: #a11;}
.cm-s-default .cm-string-2 {color: #f50;}
.cm-s-default .cm-meta {color: #555;}
.cm-s-default .cm-qualifier {color: #555;}
.cm-s-default .cm-builtin {color: #30a;}
.cm-s-default .cm-bracket {color: #997;}
.cm-s-default .cm-tag {color: #170;}
.cm-s-default .cm-attribute {color: #00c;}
.cm-s-default .cm-hr {color: #999;}
.cm-s-default .cm-link {color: #00c;}
.cm-s-default .cm-error {color: #f00;}
.cm-invalidchar {color: #f00;}
.CodeMirror-composing { border-bottom: 2px solid; }
/* Default styles for common addons */
div.CodeMirror span.CodeMirror-matchingbracket {color: #0b0;}
div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}
.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); }
.CodeMirror-activeline-background {background: #e8f2ff;}
/* STOP */
/* The rest of this file contains styles related to the mechanics of
the editor. You probably shouldn't touch them. */
.CodeMirror {
position: relative;
overflow: hidden;
background: white;
}
.CodeMirror-scroll {
overflow: scroll !important; /* Things will break if this is overridden */
/* 50px is the magic margin used to hide the element's real scrollbars */
/* See overflow: hidden in .CodeMirror */
margin-bottom: -50px; margin-right: -50px;
padding-bottom: 50px;
height: 100%;
outline: none; /* Prevent dragging from highlighting the element */
position: relative;
}
.CodeMirror-sizer {
position: relative;
border-right: 50px solid transparent;
}
/* The fake, visible scrollbars. Used to force redraw during scrolling
before actual scrolling happens, thus preventing shaking and
flickering artifacts. */
.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
position: absolute;
z-index: 6;
display: none;
outline: none;
}
.CodeMirror-vscrollbar {
right: 0; top: 0;
overflow-x: hidden;
overflow-y: scroll;
}
.CodeMirror-hscrollbar {
bottom: 0; left: 0;
overflow-y: hidden;
overflow-x: scroll;
}
.CodeMirror-scrollbar-filler {
right: 0; bottom: 0;
}
.CodeMirror-gutter-filler {
left: 0; bottom: 0;
}
.CodeMirror-gutters {
position: absolute; left: 0; top: 0;
min-height: 100%;
z-index: 3;
}
.CodeMirror-gutter {
white-space: normal;
height: 100%;
display: inline-block;
vertical-align: top;
margin-bottom: -50px;
}
.CodeMirror-gutter-wrapper {
position: absolute;
z-index: 4;
background: none !important;
border: none !important;
}
.CodeMirror-gutter-background {
position: absolute;
top: 0; bottom: 0;
z-index: 4;
}
.CodeMirror-gutter-elt {
position: absolute;
cursor: default;
z-index: 4;
}
.CodeMirror-gutter-wrapper ::selection { background-color: transparent }
.CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent }
.CodeMirror-lines {
cursor: text;
min-height: 1px; /* prevents collapsing before first draw */
}
.CodeMirror pre.CodeMirror-line,
.CodeMirror pre.CodeMirror-line-like {
/* Reset some styles that the rest of the page might have set */
-moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;
border-width: 0;
background: transparent;
font-family: inherit;
font-size: inherit;
margin: 0;
white-space: pre;
word-wrap: normal;
line-height: inherit;
color: inherit;
z-index: 2;
position: relative;
overflow: visible;
-webkit-tap-highlight-color: transparent;
-webkit-font-variant-ligatures: contextual;
font-variant-ligatures: contextual;
}
.CodeMirror-wrap pre.CodeMirror-line,
.CodeMirror-wrap pre.CodeMirror-line-like {
word-wrap: break-word;
white-space: pre-wrap;
word-break: normal;
}
.CodeMirror-linebackground {
position: absolute;
left: 0; right: 0; top: 0; bottom: 0;
z-index: 0;
}
.CodeMirror-linewidget {
position: relative;
z-index: 2;
padding: 0.1px; /* Force widget margins to stay inside of the container */
}
.CodeMirror-widget {}
.CodeMirror-rtl pre { direction: rtl; }
.CodeMirror-code {
outline: none;
}
/* Force content-box sizing for the elements where we expect it */
.CodeMirror-scroll,
.CodeMirror-sizer,
.CodeMirror-gutter,
.CodeMirror-gutters,
.CodeMirror-linenumber {
-moz-box-sizing: content-box;
box-sizing: content-box;
}
.CodeMirror-measure {
position: absolute;
width: 100%;
height: 0;
overflow: hidden;
visibility: hidden;
}
.CodeMirror-cursor {
position: absolute;
pointer-events: none;
}
.CodeMirror-measure pre { position: static; }
div.CodeMirror-cursors {
visibility: hidden;
position: relative;
z-index: 3;
}
div.CodeMirror-dragcursors {
visibility: visible;
}
.CodeMirror-focused div.CodeMirror-cursors {
visibility: visible;
}
.CodeMirror-selected { background: #d9d9d9; }
.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }
.CodeMirror-crosshair { cursor: crosshair; }
.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }
.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; }
.cm-searching {
background-color: #ffa;
background-color: rgba(255, 255, 0, .4);
}
/* Used to force a border model for a node */
.cm-force-border { padding-right: .1px; }
@media print {
/* Hide the cursor when printing */
.CodeMirror div.CodeMirror-cursors {
visibility: hidden;
}
}
/* See issue #2901 */
.cm-tab-wrap-hack:after { content: ''; }
/* Help users use markselection to safely style text background */
span.CodeMirror-selectedtext { background: none; }
.CodeMirror-dialog {
position: absolute;
left: 0; right: 0;
background: inherit;
z-index: 15;
padding: .1em .8em;
overflow: hidden;
color: inherit;
}
.CodeMirror-dialog-top {
border-bottom: 1px solid #eee;
top: 0;
}
.CodeMirror-dialog-bottom {
border-top: 1px solid #eee;
bottom: 0;
}
.CodeMirror-dialog input {
border: none;
outline: none;
background: transparent;
width: 20em;
color: inherit;
font-family: monospace;
}
.CodeMirror-dialog button {
font-size: 70%;
}
.CodeMirror-foldmarker {
color: blue;
text-shadow: #b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px, #b9f -1px 1px 2px;
font-family: arial;
line-height: .3;
cursor: pointer;
}
.CodeMirror-foldgutter {
width: .7em;
}
.CodeMirror-foldgutter-open,
.CodeMirror-foldgutter-folded {
cursor: pointer;
}
.CodeMirror-foldgutter-open:after {
content: "\25BE";
}
.CodeMirror-foldgutter-folded:after {
content: "\25B8";
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.CodeMirror {
line-height: var(--jp-code-line-height);
font-size: var(--jp-code-font-size);
font-family: var(--jp-code-font-family);
border: 0;
border-radius: 0;
height: auto;
/* Changed to auto to autogrow */
}
.CodeMirror pre {
padding: 0 var(--jp-code-padding);
}
.jp-CodeMirrorEditor[data-type='inline'] .CodeMirror-dialog {
background-color: var(--jp-layout-color0);
color: var(--jp-content-font-color1);
}
/* This causes https://github.com/jupyter/jupyterlab/issues/522 */
/* May not cause it not because we changed it! */
.CodeMirror-lines {
padding: var(--jp-code-padding) 0;
}
.CodeMirror-linenumber {
padding: 0 8px;
}
.jp-CodeMirrorEditor {
cursor: text;
}
.jp-CodeMirrorEditor[data-type='inline'] .CodeMirror-cursor {
border-left: var(--jp-code-cursor-width0) solid var(--jp-editor-cursor-color);
}
/* When zoomed out 67% and 33% on a screen of 1440 width x 900 height */
@media screen and (min-width: 2138px) and (max-width: 4319px) {
.jp-CodeMirrorEditor[data-type='inline'] .CodeMirror-cursor {
border-left: var(--jp-code-cursor-width1) solid
var(--jp-editor-cursor-color);
}
}
/* When zoomed out less than 33% */
@media screen and (min-width: 4320px) {
.jp-CodeMirrorEditor[data-type='inline'] .CodeMirror-cursor {
border-left: var(--jp-code-cursor-width2) solid
var(--jp-editor-cursor-color);
}
}
.CodeMirror.jp-mod-readOnly .CodeMirror-cursor {
display: none;
}
.CodeMirror-gutters {
border-right: 1px solid var(--jp-border-color2);
background-color: var(--jp-layout-color0);
}
.jp-CollaboratorCursor {
border-left: 5px solid transparent;
border-right: 5px solid transparent;
border-top: none;
border-bottom: 3px solid;
background-clip: content-box;
margin-left: -5px;
margin-right: -5px;
}
.CodeMirror-selectedtext.cm-searching {
background-color: var(--jp-search-selected-match-background-color) !important;
color: var(--jp-search-selected-match-color) !important;
}
.cm-searching {
background-color: var(
--jp-search-unselected-match-background-color
) !important;
color: var(--jp-search-unselected-match-color) !important;
}
.CodeMirror-focused .CodeMirror-selected {
background-color: var(--jp-editor-selected-focused-background);
}
.CodeMirror-selected {
background-color: var(--jp-editor-selected-background);
}
.jp-CollaboratorCursor-hover {
position: absolute;
z-index: 1;
transform: translateX(-50%);
color: white;
border-radius: 3px;
padding-left: 4px;
padding-right: 4px;
padding-top: 1px;
padding-bottom: 1px;
text-align: center;
font-size: var(--jp-ui-font-size1);
white-space: nowrap;
}
.jp-CodeMirror-ruler {
border-left: 1px dashed var(--jp-border-color2);
}
/**
* Here is our jupyter theme for CodeMirror syntax highlighting
* This is used in our marked.js syntax highlighting and CodeMirror itself
* The string "jupyter" is set in ../codemirror/widget.DEFAULT_CODEMIRROR_THEME
* This came from the classic notebook, which came form highlight.js/GitHub
*/
/**
* CodeMirror themes are handling the background/color in this way. This works
* fine for CodeMirror editors outside the notebook, but the notebook styles
* these things differently.
*/
.CodeMirror.cm-s-jupyter {
background: var(--jp-layout-color0);
color: var(--jp-content-font-color1);
}
/* In the notebook, we want this styling to be handled by its container */
.jp-CodeConsole .CodeMirror.cm-s-jupyter,
.jp-Notebook .CodeMirror.cm-s-jupyter {
background: transparent;
}
.cm-s-jupyter .CodeMirror-cursor {
border-left: var(--jp-code-cursor-width0) solid var(--jp-editor-cursor-color);
}
.cm-s-jupyter span.cm-keyword {
color: var(--jp-mirror-editor-keyword-color);
font-weight: bold;
}
.cm-s-jupyter span.cm-atom {
color: var(--jp-mirror-editor-atom-color);
}
.cm-s-jupyter span.cm-number {
color: var(--jp-mirror-editor-number-color);
}
.cm-s-jupyter span.cm-def {
color: var(--jp-mirror-editor-def-color);
}
.cm-s-jupyter span.cm-variable {
color: var(--jp-mirror-editor-variable-color);
}
.cm-s-jupyter span.cm-variable-2 {
color: var(--jp-mirror-editor-variable-2-color);
}
.cm-s-jupyter span.cm-variable-3 {
color: var(--jp-mirror-editor-variable-3-color);
}
.cm-s-jupyter span.cm-punctuation {
color: var(--jp-mirror-editor-punctuation-color);
}
.cm-s-jupyter span.cm-property {
color: var(--jp-mirror-editor-property-color);
}
.cm-s-jupyter span.cm-operator {
color: var(--jp-mirror-editor-operator-color);
font-weight: bold;
}
.cm-s-jupyter span.cm-comment {
color: var(--jp-mirror-editor-comment-color);
font-style: italic;
}
.cm-s-jupyter span.cm-string {
color: var(--jp-mirror-editor-string-color);
}
.cm-s-jupyter span.cm-string-2 {
color: var(--jp-mirror-editor-string-2-color);
}
.cm-s-jupyter span.cm-meta {
color: var(--jp-mirror-editor-meta-color);
}
.cm-s-jupyter span.cm-qualifier {
color: var(--jp-mirror-editor-qualifier-color);
}
.cm-s-jupyter span.cm-builtin {
color: var(--jp-mirror-editor-builtin-color);
}
.cm-s-jupyter span.cm-bracket {
color: var(--jp-mirror-editor-bracket-color);
}
.cm-s-jupyter span.cm-tag {
color: var(--jp-mirror-editor-tag-color);
}
.cm-s-jupyter span.cm-attribute {
color: var(--jp-mirror-editor-attribute-color);
}
.cm-s-jupyter span.cm-header {
color: var(--jp-mirror-editor-header-color);
}
.cm-s-jupyter span.cm-quote {
color: var(--jp-mirror-editor-quote-color);
}
.cm-s-jupyter span.cm-link {
color: var(--jp-mirror-editor-link-color);
}
.cm-s-jupyter span.cm-error {
color: var(--jp-mirror-editor-error-color);
}
.cm-s-jupyter span.cm-hr {
color: #999;
}
.cm-s-jupyter span.cm-tab {
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAMCAYAAAAkuj5RAAAAAXNSR0IArs4c6QAAAGFJREFUSMft1LsRQFAQheHPowAKoACx3IgEKtaEHujDjORSgWTH/ZOdnZOcM/sgk/kFFWY0qV8foQwS4MKBCS3qR6ixBJvElOobYAtivseIE120FaowJPN75GMu8j/LfMwNjh4HUpwg4LUAAAAASUVORK5CYII=);
background-position: right;
background-repeat: no-repeat;
}
.cm-s-jupyter .CodeMirror-activeline-background,
.cm-s-jupyter .CodeMirror-gutter {
background-color: var(--jp-layout-color2);
}
/* Styles for shared cursors (remote cursor locations and selected ranges) */
.jp-CodeMirrorEditor .remote-caret {
position: relative;
border-left: 2px solid black;
margin-left: -1px;
margin-right: -1px;
box-sizing: border-box;
}
.jp-CodeMirrorEditor .remote-caret > div {
white-space: nowrap;
position: absolute;
top: -1.15em;
padding-bottom: 0.05em;
left: -2px;
font-size: 0.95em;
background-color: rgb(250, 129, 0);
font-family: var(--jp-ui-font-family);
font-weight: bold;
line-height: normal;
user-select: none;
color: white;
padding-left: 2px;
padding-right: 2px;
z-index: 3;
transition: opacity 0.3s ease-in-out;
}
.jp-CodeMirrorEditor .remote-caret.hide-name > div {
transition-delay: 0.7s;
opacity: 0;
}
.jp-CodeMirrorEditor .remote-caret:hover > div {
opacity: 1;
transition-delay: 0s;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| RenderedText
|----------------------------------------------------------------------------*/
:root {
/* This is the padding value to fill the gaps between lines containing spans with background color. */
--jp-private-code-span-padding: calc(
(var(--jp-code-line-height) - 1) * var(--jp-code-font-size) / 2
);
}
.jp-RenderedText {
text-align: left;
padding-left: var(--jp-code-padding);
line-height: var(--jp-code-line-height);
font-family: var(--jp-code-font-family);
}
.jp-RenderedText pre,
.jp-RenderedJavaScript pre,
.jp-RenderedHTMLCommon pre {
color: var(--jp-content-font-color1);
font-size: var(--jp-code-font-size);
border: none;
margin: 0px;
padding: 0px;
}
.jp-RenderedText pre a:link {
text-decoration: none;
color: var(--jp-content-link-color);
}
.jp-RenderedText pre a:hover {
text-decoration: underline;
color: var(--jp-content-link-color);
}
.jp-RenderedText pre a:visited {
text-decoration: none;
color: var(--jp-content-link-color);
}
/* console foregrounds and backgrounds */
.jp-RenderedText pre .ansi-black-fg {
color: #3e424d;
}
.jp-RenderedText pre .ansi-red-fg {
color: #e75c58;
}
.jp-RenderedText pre .ansi-green-fg {
color: #00a250;
}
.jp-RenderedText pre .ansi-yellow-fg {
color: #ddb62b;
}
.jp-RenderedText pre .ansi-blue-fg {
color: #208ffb;
}
.jp-RenderedText pre .ansi-magenta-fg {
color: #d160c4;
}
.jp-RenderedText pre .ansi-cyan-fg {
color: #60c6c8;
}
.jp-RenderedText pre .ansi-white-fg {
color: #c5c1b4;
}
.jp-RenderedText pre .ansi-black-bg {
background-color: #3e424d;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-red-bg {
background-color: #e75c58;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-green-bg {
background-color: #00a250;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-yellow-bg {
background-color: #ddb62b;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-blue-bg {
background-color: #208ffb;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-magenta-bg {
background-color: #d160c4;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-cyan-bg {
background-color: #60c6c8;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-white-bg {
background-color: #c5c1b4;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-black-intense-fg {
color: #282c36;
}
.jp-RenderedText pre .ansi-red-intense-fg {
color: #b22b31;
}
.jp-RenderedText pre .ansi-green-intense-fg {
color: #007427;
}
.jp-RenderedText pre .ansi-yellow-intense-fg {
color: #b27d12;
}
.jp-RenderedText pre .ansi-blue-intense-fg {
color: #0065ca;
}
.jp-RenderedText pre .ansi-magenta-intense-fg {
color: #a03196;
}
.jp-RenderedText pre .ansi-cyan-intense-fg {
color: #258f8f;
}
.jp-RenderedText pre .ansi-white-intense-fg {
color: #a1a6b2;
}
.jp-RenderedText pre .ansi-black-intense-bg {
background-color: #282c36;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-red-intense-bg {
background-color: #b22b31;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-green-intense-bg {
background-color: #007427;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-yellow-intense-bg {
background-color: #b27d12;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-blue-intense-bg {
background-color: #0065ca;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-magenta-intense-bg {
background-color: #a03196;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-cyan-intense-bg {
background-color: #258f8f;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-white-intense-bg {
background-color: #a1a6b2;
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-default-inverse-fg {
color: var(--jp-ui-inverse-font-color0);
}
.jp-RenderedText pre .ansi-default-inverse-bg {
background-color: var(--jp-inverse-layout-color0);
padding: var(--jp-private-code-span-padding) 0;
}
.jp-RenderedText pre .ansi-bold {
font-weight: bold;
}
.jp-RenderedText pre .ansi-underline {
text-decoration: underline;
}
.jp-RenderedText[data-mime-type='application/vnd.jupyter.stderr'] {
background: var(--jp-rendermime-error-background);
padding-top: var(--jp-code-padding);
}
/*-----------------------------------------------------------------------------
| RenderedLatex
|----------------------------------------------------------------------------*/
.jp-RenderedLatex {
color: var(--jp-content-font-color1);
font-size: var(--jp-content-font-size1);
line-height: var(--jp-content-line-height);
}
/* Left-justify outputs.*/
.jp-OutputArea-output.jp-RenderedLatex {
padding: var(--jp-code-padding);
text-align: left;
}
/*-----------------------------------------------------------------------------
| RenderedHTML
|----------------------------------------------------------------------------*/
.jp-RenderedHTMLCommon {
color: var(--jp-content-font-color1);
font-family: var(--jp-content-font-family);
font-size: var(--jp-content-font-size1);
line-height: var(--jp-content-line-height);
/* Give a bit more R padding on Markdown text to keep line lengths reasonable */
padding-right: 20px;
}
.jp-RenderedHTMLCommon em {
font-style: italic;
}
.jp-RenderedHTMLCommon strong {
font-weight: bold;
}
.jp-RenderedHTMLCommon u {
text-decoration: underline;
}
.jp-RenderedHTMLCommon a:link {
text-decoration: none;
color: var(--jp-content-link-color);
}
.jp-RenderedHTMLCommon a:hover {
text-decoration: underline;
color: var(--jp-content-link-color);
}
.jp-RenderedHTMLCommon a:visited {
text-decoration: none;
color: var(--jp-content-link-color);
}
/* Headings */
.jp-RenderedHTMLCommon h1,
.jp-RenderedHTMLCommon h2,
.jp-RenderedHTMLCommon h3,
.jp-RenderedHTMLCommon h4,
.jp-RenderedHTMLCommon h5,
.jp-RenderedHTMLCommon h6 {
line-height: var(--jp-content-heading-line-height);
font-weight: var(--jp-content-heading-font-weight);
font-style: normal;
margin: var(--jp-content-heading-margin-top) 0
var(--jp-content-heading-margin-bottom) 0;
}
.jp-RenderedHTMLCommon h1:first-child,
.jp-RenderedHTMLCommon h2:first-child,
.jp-RenderedHTMLCommon h3:first-child,
.jp-RenderedHTMLCommon h4:first-child,
.jp-RenderedHTMLCommon h5:first-child,
.jp-RenderedHTMLCommon h6:first-child {
margin-top: calc(0.5 * var(--jp-content-heading-margin-top));
}
.jp-RenderedHTMLCommon h1:last-child,
.jp-RenderedHTMLCommon h2:last-child,
.jp-RenderedHTMLCommon h3:last-child,
.jp-RenderedHTMLCommon h4:last-child,
.jp-RenderedHTMLCommon h5:last-child,
.jp-RenderedHTMLCommon h6:last-child {
margin-bottom: calc(0.5 * var(--jp-content-heading-margin-bottom));
}
.jp-RenderedHTMLCommon h1 {
font-size: var(--jp-content-font-size5);
}
.jp-RenderedHTMLCommon h2 {
font-size: var(--jp-content-font-size4);
}
.jp-RenderedHTMLCommon h3 {
font-size: var(--jp-content-font-size3);
}
.jp-RenderedHTMLCommon h4 {
font-size: var(--jp-content-font-size2);
}
.jp-RenderedHTMLCommon h5 {
font-size: var(--jp-content-font-size1);
}
.jp-RenderedHTMLCommon h6 {
font-size: var(--jp-content-font-size0);
}
/* Lists */
.jp-RenderedHTMLCommon ul:not(.list-inline),
.jp-RenderedHTMLCommon ol:not(.list-inline) {
padding-left: 2em;
}
.jp-RenderedHTMLCommon ul {
list-style: disc;
}
.jp-RenderedHTMLCommon ul ul {
list-style: square;
}
.jp-RenderedHTMLCommon ul ul ul {
list-style: circle;
}
.jp-RenderedHTMLCommon ol {
list-style: decimal;
}
.jp-RenderedHTMLCommon ol ol {
list-style: upper-alpha;
}
.jp-RenderedHTMLCommon ol ol ol {
list-style: lower-alpha;
}
.jp-RenderedHTMLCommon ol ol ol ol {
list-style: lower-roman;
}
.jp-RenderedHTMLCommon ol ol ol ol ol {
list-style: decimal;
}
.jp-RenderedHTMLCommon ol,
.jp-RenderedHTMLCommon ul {
margin-bottom: 1em;
}
.jp-RenderedHTMLCommon ul ul,
.jp-RenderedHTMLCommon ul ol,
.jp-RenderedHTMLCommon ol ul,
.jp-RenderedHTMLCommon ol ol {
margin-bottom: 0em;
}
.jp-RenderedHTMLCommon hr {
color: var(--jp-border-color2);
background-color: var(--jp-border-color1);
margin-top: 1em;
margin-bottom: 1em;
}
.jp-RenderedHTMLCommon > pre {
margin: 1.5em 2em;
}
.jp-RenderedHTMLCommon pre,
.jp-RenderedHTMLCommon code {
border: 0;
background-color: var(--jp-layout-color0);
color: var(--jp-content-font-color1);
font-family: var(--jp-code-font-family);
font-size: inherit;
line-height: var(--jp-code-line-height);
padding: 0;
white-space: pre-wrap;
}
.jp-RenderedHTMLCommon :not(pre) > code {
background-color: var(--jp-layout-color2);
padding: 1px 5px;
}
/* Tables */
.jp-RenderedHTMLCommon table {
border-collapse: collapse;
border-spacing: 0;
border: none;
color: var(--jp-ui-font-color1);
font-size: 12px;
table-layout: fixed;
margin-left: auto;
margin-right: auto;
}
.jp-RenderedHTMLCommon thead {
border-bottom: var(--jp-border-width) solid var(--jp-border-color1);
vertical-align: bottom;
}
.jp-RenderedHTMLCommon td,
.jp-RenderedHTMLCommon th,
.jp-RenderedHTMLCommon tr {
vertical-align: middle;
padding: 0.5em 0.5em;
line-height: normal;
white-space: normal;
max-width: none;
border: none;
}
.jp-RenderedMarkdown.jp-RenderedHTMLCommon td,
.jp-RenderedMarkdown.jp-RenderedHTMLCommon th {
max-width: none;
}
:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon td,
:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon th,
:not(.jp-RenderedMarkdown).jp-RenderedHTMLCommon tr {
text-align: right;
}
.jp-RenderedHTMLCommon th {
font-weight: bold;
}
.jp-RenderedHTMLCommon tbody tr:nth-child(odd) {
background: var(--jp-layout-color0);
}
.jp-RenderedHTMLCommon tbody tr:nth-child(even) {
background: var(--jp-rendermime-table-row-background);
}
.jp-RenderedHTMLCommon tbody tr:hover {
background: var(--jp-rendermime-table-row-hover-background);
}
.jp-RenderedHTMLCommon table {
margin-bottom: 1em;
}
.jp-RenderedHTMLCommon p {
text-align: left;
margin: 0px;
}
.jp-RenderedHTMLCommon p {
margin-bottom: 1em;
}
.jp-RenderedHTMLCommon img {
-moz-force-broken-image-icon: 1;
}
/* Restrict to direct children as other images could be nested in other content. */
.jp-RenderedHTMLCommon > img {
display: block;
margin-left: 0;
margin-right: 0;
margin-bottom: 1em;
}
/* Change color behind transparent images if they need it... */
[data-jp-theme-light='false'] .jp-RenderedImage img.jp-needs-light-background {
background-color: var(--jp-inverse-layout-color1);
}
[data-jp-theme-light='true'] .jp-RenderedImage img.jp-needs-dark-background {
background-color: var(--jp-inverse-layout-color1);
}
/* ...or leave it untouched if they don't */
[data-jp-theme-light='false'] .jp-RenderedImage img.jp-needs-dark-background {
}
[data-jp-theme-light='true'] .jp-RenderedImage img.jp-needs-light-background {
}
.jp-RenderedHTMLCommon img,
.jp-RenderedImage img,
.jp-RenderedHTMLCommon svg,
.jp-RenderedSVG svg {
max-width: 100%;
height: auto;
}
.jp-RenderedHTMLCommon img.jp-mod-unconfined,
.jp-RenderedImage img.jp-mod-unconfined,
.jp-RenderedHTMLCommon svg.jp-mod-unconfined,
.jp-RenderedSVG svg.jp-mod-unconfined {
max-width: none;
}
.jp-RenderedHTMLCommon .alert {
padding: var(--jp-notebook-padding);
border: var(--jp-border-width) solid transparent;
border-radius: var(--jp-border-radius);
margin-bottom: 1em;
}
.jp-RenderedHTMLCommon .alert-info {
color: var(--jp-info-color0);
background-color: var(--jp-info-color3);
border-color: var(--jp-info-color2);
}
.jp-RenderedHTMLCommon .alert-info hr {
border-color: var(--jp-info-color3);
}
.jp-RenderedHTMLCommon .alert-info > p:last-child,
.jp-RenderedHTMLCommon .alert-info > ul:last-child {
margin-bottom: 0;
}
.jp-RenderedHTMLCommon .alert-warning {
color: var(--jp-warn-color0);
background-color: var(--jp-warn-color3);
border-color: var(--jp-warn-color2);
}
.jp-RenderedHTMLCommon .alert-warning hr {
border-color: var(--jp-warn-color3);
}
.jp-RenderedHTMLCommon .alert-warning > p:last-child,
.jp-RenderedHTMLCommon .alert-warning > ul:last-child {
margin-bottom: 0;
}
.jp-RenderedHTMLCommon .alert-success {
color: var(--jp-success-color0);
background-color: var(--jp-success-color3);
border-color: var(--jp-success-color2);
}
.jp-RenderedHTMLCommon .alert-success hr {
border-color: var(--jp-success-color3);
}
.jp-RenderedHTMLCommon .alert-success > p:last-child,
.jp-RenderedHTMLCommon .alert-success > ul:last-child {
margin-bottom: 0;
}
.jp-RenderedHTMLCommon .alert-danger {
color: var(--jp-error-color0);
background-color: var(--jp-error-color3);
border-color: var(--jp-error-color2);
}
.jp-RenderedHTMLCommon .alert-danger hr {
border-color: var(--jp-error-color3);
}
.jp-RenderedHTMLCommon .alert-danger > p:last-child,
.jp-RenderedHTMLCommon .alert-danger > ul:last-child {
margin-bottom: 0;
}
.jp-RenderedHTMLCommon blockquote {
margin: 1em 2em;
padding: 0 1em;
border-left: 5px solid var(--jp-border-color2);
}
a.jp-InternalAnchorLink {
visibility: hidden;
margin-left: 8px;
color: var(--md-blue-800);
}
h1:hover .jp-InternalAnchorLink,
h2:hover .jp-InternalAnchorLink,
h3:hover .jp-InternalAnchorLink,
h4:hover .jp-InternalAnchorLink,
h5:hover .jp-InternalAnchorLink,
h6:hover .jp-InternalAnchorLink {
visibility: visible;
}
.jp-RenderedHTMLCommon kbd {
background-color: var(--jp-rendermime-table-row-background);
border: 1px solid var(--jp-border-color0);
border-bottom-color: var(--jp-border-color2);
border-radius: 3px;
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
display: inline-block;
font-size: 0.8em;
line-height: 1em;
padding: 0.2em 0.5em;
}
/* Most direct children of .jp-RenderedHTMLCommon have a margin-bottom of 1.0.
* At the bottom of cells this is a bit too much as there is also spacing
* between cells. Going all the way to 0 gets too tight between markdown and
* code cells.
*/
.jp-RenderedHTMLCommon > *:last-child {
margin-bottom: 0.5em;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-MimeDocument {
outline: none;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/
:root {
--jp-private-filebrowser-button-height: 28px;
--jp-private-filebrowser-button-width: 48px;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-FileBrowser {
display: flex;
flex-direction: column;
color: var(--jp-ui-font-color1);
background: var(--jp-layout-color1);
/* This is needed so that all font sizing of children done in ems is
* relative to this base size */
font-size: var(--jp-ui-font-size1);
}
.jp-FileBrowser-toolbar.jp-Toolbar {
border-bottom: none;
height: auto;
margin: var(--jp-toolbar-header-margin);
box-shadow: none;
}
.jp-BreadCrumbs {
flex: 0 0 auto;
margin: 8px 12px 8px 12px;
}
.jp-BreadCrumbs-item {
margin: 0px 2px;
padding: 0px 2px;
border-radius: var(--jp-border-radius);
cursor: pointer;
}
.jp-BreadCrumbs-item:hover {
background-color: var(--jp-layout-color2);
}
.jp-BreadCrumbs-item:first-child {
margin-left: 0px;
}
.jp-BreadCrumbs-item.jp-mod-dropTarget {
background-color: var(--jp-brand-color2);
opacity: 0.7;
}
/*-----------------------------------------------------------------------------
| Buttons
|----------------------------------------------------------------------------*/
.jp-FileBrowser-toolbar.jp-Toolbar {
padding: 0px;
margin: 8px 12px 0px 12px;
}
.jp-FileBrowser-toolbar.jp-Toolbar {
justify-content: flex-start;
}
.jp-FileBrowser-toolbar.jp-Toolbar .jp-Toolbar-item {
flex: 0 0 auto;
padding-left: 0px;
padding-right: 2px;
}
.jp-FileBrowser-toolbar.jp-Toolbar .jp-ToolbarButtonComponent {
width: 40px;
}
.jp-FileBrowser-toolbar.jp-Toolbar
.jp-Toolbar-item:first-child
.jp-ToolbarButtonComponent {
width: 72px;
background: var(--jp-brand-color1);
}
.jp-FileBrowser-toolbar.jp-Toolbar
.jp-Toolbar-item:first-child
.jp-ToolbarButtonComponent:focus-visible {
background-color: var(--jp-brand-color0);
}
.jp-FileBrowser-toolbar.jp-Toolbar
.jp-Toolbar-item:first-child
.jp-ToolbarButtonComponent
.jp-icon3 {
fill: white;
}
/*-----------------------------------------------------------------------------
| Other styles
|----------------------------------------------------------------------------*/
.jp-FileDialog.jp-mod-conflict input {
color: var(--jp-error-color1);
}
.jp-FileDialog .jp-new-name-title {
margin-top: 12px;
}
.jp-LastModified-hidden {
display: none;
}
.jp-FileBrowser-filterBox {
padding: 0px;
flex: 0 0 auto;
margin: 8px 12px 0px 12px;
}
/*-----------------------------------------------------------------------------
| DirListing
|----------------------------------------------------------------------------*/
.jp-DirListing {
flex: 1 1 auto;
display: flex;
flex-direction: column;
outline: 0;
}
.jp-DirListing:focus-visible {
border: 1px solid var(--jp-brand-color1);
}
.jp-DirListing-header {
flex: 0 0 auto;
display: flex;
flex-direction: row;
overflow: hidden;
border-top: var(--jp-border-width) solid var(--jp-border-color2);
border-bottom: var(--jp-border-width) solid var(--jp-border-color1);
box-shadow: var(--jp-toolbar-box-shadow);
z-index: 2;
}
.jp-DirListing-headerItem {
padding: 4px 12px 2px 12px;
font-weight: 500;
}
.jp-DirListing-headerItem:hover {
background: var(--jp-layout-color2);
}
.jp-DirListing-headerItem.jp-id-name {
flex: 1 0 84px;
}
.jp-DirListing-headerItem.jp-id-modified {
flex: 0 0 112px;
border-left: var(--jp-border-width) solid var(--jp-border-color2);
text-align: right;
}
.jp-id-narrow {
display: none;
flex: 0 0 5px;
padding: 4px 4px;
border-left: var(--jp-border-width) solid var(--jp-border-color2);
text-align: right;
color: var(--jp-border-color2);
}
.jp-DirListing-narrow .jp-id-narrow {
display: block;
}
.jp-DirListing-narrow .jp-id-modified,
.jp-DirListing-narrow .jp-DirListing-itemModified {
display: none;
}
.jp-DirListing-headerItem.jp-mod-selected {
font-weight: 600;
}
/* increase specificity to override bundled default */
.jp-DirListing-content {
flex: 1 1 auto;
margin: 0;
padding: 0;
list-style-type: none;
overflow: auto;
background-color: var(--jp-layout-color1);
}
.jp-DirListing-content mark {
color: var(--jp-ui-font-color0);
background-color: transparent;
font-weight: bold;
}
.jp-DirListing-content .jp-DirListing-item.jp-mod-selected mark {
color: var(--jp-ui-inverse-font-color0);
}
/* Style the directory listing content when a user drops a file to upload */
.jp-DirListing.jp-mod-native-drop .jp-DirListing-content {
outline: 5px dashed rgba(128, 128, 128, 0.5);
outline-offset: -10px;
cursor: copy;
}
.jp-DirListing-item {
display: flex;
flex-direction: row;
padding: 4px 12px;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.jp-DirListing-item[data-is-dot] {
opacity: 75%;
}
.jp-DirListing-item.jp-mod-selected {
color: var(--jp-ui-inverse-font-color1);
background: var(--jp-brand-color1);
}
.jp-DirListing-item.jp-mod-dropTarget {
background: var(--jp-brand-color3);
}
.jp-DirListing-item:hover:not(.jp-mod-selected) {
background: var(--jp-layout-color2);
}
.jp-DirListing-itemIcon {
flex: 0 0 20px;
margin-right: 4px;
}
.jp-DirListing-itemText {
flex: 1 0 64px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
user-select: none;
}
.jp-DirListing-itemModified {
flex: 0 0 125px;
text-align: right;
}
.jp-DirListing-editor {
flex: 1 0 64px;
outline: none;
border: none;
}
.jp-DirListing-item.jp-mod-running .jp-DirListing-itemIcon:before {
color: var(--jp-success-color1);
content: '\25CF';
font-size: 8px;
position: absolute;
left: -8px;
}
.jp-DirListing-item.jp-mod-running.jp-mod-selected
.jp-DirListing-itemIcon:before {
color: var(--jp-ui-inverse-font-color1);
}
.jp-DirListing-item.lm-mod-drag-image,
.jp-DirListing-item.jp-mod-selected.lm-mod-drag-image {
font-size: var(--jp-ui-font-size1);
padding-left: 4px;
margin-left: 4px;
width: 160px;
background-color: var(--jp-ui-inverse-font-color2);
box-shadow: var(--jp-elevation-z2);
border-radius: 0px;
color: var(--jp-ui-font-color1);
transform: translateX(-40%) translateY(-58%);
}
.jp-DirListing-deadSpace {
flex: 1 1 auto;
margin: 0;
padding: 0;
list-style-type: none;
overflow: auto;
background-color: var(--jp-layout-color1);
}
.jp-Document {
min-width: 120px;
min-height: 120px;
outline: none;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Private CSS variables
|----------------------------------------------------------------------------*/
:root {
}
/*-----------------------------------------------------------------------------
| Main OutputArea
| OutputArea has a list of Outputs
|----------------------------------------------------------------------------*/
.jp-OutputArea {
overflow-y: auto;
}
.jp-OutputArea-child {
display: flex;
flex-direction: row;
}
body[data-format='mobile'] .jp-OutputArea-child {
flex-direction: column;
}
.jp-OutputPrompt {
flex: 0 0 var(--jp-cell-prompt-width);
color: var(--jp-cell-outprompt-font-color);
font-family: var(--jp-cell-prompt-font-family);
padding: var(--jp-code-padding);
letter-spacing: var(--jp-cell-prompt-letter-spacing);
line-height: var(--jp-code-line-height);
font-size: var(--jp-code-font-size);
border: var(--jp-border-width) solid transparent;
opacity: var(--jp-cell-prompt-opacity);
/* Right align prompt text, don't wrap to handle large prompt numbers */
text-align: right;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
/* Disable text selection */
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
body[data-format='mobile'] .jp-OutputPrompt {
flex: 0 0 auto;
text-align: left;
}
.jp-OutputArea-output {
height: auto;
overflow: auto;
user-select: text;
-moz-user-select: text;
-webkit-user-select: text;
-ms-user-select: text;
}
.jp-OutputArea-child .jp-OutputArea-output {
flex-grow: 1;
flex-shrink: 1;
}
body[data-format='mobile'] .jp-OutputArea-child .jp-OutputArea-output {
margin-left: var(--jp-notebook-padding);
}
/**
* Isolated output.
*/
.jp-OutputArea-output.jp-mod-isolated {
width: 100%;
display: block;
}
/*
When drag events occur, `p-mod-override-cursor` is added to the body.
Because iframes steal all cursor events, the following two rules are necessary
to suppress pointer events while resize drags are occurring. There may be a
better solution to this problem.
*/
body.lm-mod-override-cursor .jp-OutputArea-output.jp-mod-isolated {
position: relative;
}
body.lm-mod-override-cursor .jp-OutputArea-output.jp-mod-isolated:before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: transparent;
}
/* pre */
.jp-OutputArea-output pre {
border: none;
margin: 0px;
padding: 0px;
overflow-x: auto;
overflow-y: auto;
word-break: break-all;
word-wrap: break-word;
white-space: pre-wrap;
}
/* tables */
.jp-OutputArea-output.jp-RenderedHTMLCommon table {
margin-left: 0;
margin-right: 0;
}
/* description lists */
.jp-OutputArea-output dl,
.jp-OutputArea-output dt,
.jp-OutputArea-output dd {
display: block;
}
.jp-OutputArea-output dl {
width: 100%;
overflow: hidden;
padding: 0;
margin: 0;
}
.jp-OutputArea-output dt {
font-weight: bold;
float: left;
width: 20%;
padding: 0;
margin: 0;
}
.jp-OutputArea-output dd {
float: left;
width: 80%;
padding: 0;
margin: 0;
}
/* Hide the gutter in case of
* - nested output areas (e.g. in the case of output widgets)
* - mirrored output areas
*/
.jp-OutputArea .jp-OutputArea .jp-OutputArea-prompt {
display: none;
}
/*-----------------------------------------------------------------------------
| executeResult is added to any Output-result for the display of the object
| returned by a cell
|----------------------------------------------------------------------------*/
.jp-OutputArea-output.jp-OutputArea-executeResult {
margin-left: 0px;
flex: 1 1 auto;
}
/* Text output with the Out[] prompt needs a top padding to match the
* alignment of the Out[] prompt itself.
*/
.jp-OutputArea-executeResult .jp-RenderedText.jp-OutputArea-output {
padding-top: var(--jp-code-padding);
border-top: var(--jp-border-width) solid transparent;
}
/*-----------------------------------------------------------------------------
| The Stdin output
|----------------------------------------------------------------------------*/
.jp-OutputArea-stdin {
line-height: var(--jp-code-line-height);
padding-top: var(--jp-code-padding);
display: flex;
}
.jp-Stdin-prompt {
color: var(--jp-content-font-color0);
padding-right: var(--jp-code-padding);
vertical-align: baseline;
flex: 0 0 auto;
}
.jp-Stdin-input {
font-family: var(--jp-code-font-family);
font-size: inherit;
color: inherit;
background-color: inherit;
width: 42%;
min-width: 200px;
/* make sure input baseline aligns with prompt */
vertical-align: baseline;
/* padding + margin = 0.5em between prompt and cursor */
padding: 0em 0.25em;
margin: 0em 0.25em;
flex: 0 0 70%;
}
.jp-Stdin-input:focus {
box-shadow: none;
}
/*-----------------------------------------------------------------------------
| Output Area View
|----------------------------------------------------------------------------*/
.jp-LinkedOutputView .jp-OutputArea {
height: 100%;
display: block;
}
.jp-LinkedOutputView .jp-OutputArea-output:only-child {
height: 100%;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
.jp-Collapser {
flex: 0 0 var(--jp-cell-collapser-width);
padding: 0px;
margin: 0px;
border: none;
outline: none;
background: transparent;
border-radius: var(--jp-border-radius);
opacity: 1;
}
.jp-Collapser-child {
display: block;
width: 100%;
box-sizing: border-box;
/* height: 100% doesn't work because the height of its parent is computed from content */
position: absolute;
top: 0px;
bottom: 0px;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Header/Footer
|----------------------------------------------------------------------------*/
/* Hidden by zero height by default */
.jp-CellHeader,
.jp-CellFooter {
height: 0px;
width: 100%;
padding: 0px;
margin: 0px;
border: none;
outline: none;
background: transparent;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Input
|----------------------------------------------------------------------------*/
/* All input areas */
.jp-InputArea {
display: flex;
flex-direction: row;
overflow: hidden;
}
body[data-format='mobile'] .jp-InputArea {
flex-direction: column;
}
.jp-InputArea-editor {
flex: 1 1 auto;
overflow: hidden;
}
.jp-InputArea-editor {
/* This is the non-active, default styling */
border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
border-radius: 0px;
background: var(--jp-cell-editor-background);
}
body[data-format='mobile'] .jp-InputArea-editor {
margin-left: var(--jp-notebook-padding);
}
.jp-InputPrompt {
flex: 0 0 var(--jp-cell-prompt-width);
color: var(--jp-cell-inprompt-font-color);
font-family: var(--jp-cell-prompt-font-family);
padding: var(--jp-code-padding);
letter-spacing: var(--jp-cell-prompt-letter-spacing);
opacity: var(--jp-cell-prompt-opacity);
line-height: var(--jp-code-line-height);
font-size: var(--jp-code-font-size);
border: var(--jp-border-width) solid transparent;
opacity: var(--jp-cell-prompt-opacity);
/* Right align prompt text, don't wrap to handle large prompt numbers */
text-align: right;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
/* Disable text selection */
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
body[data-format='mobile'] .jp-InputPrompt {
flex: 0 0 auto;
text-align: left;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Placeholder
|----------------------------------------------------------------------------*/
.jp-Placeholder {
display: flex;
flex-direction: row;
flex: 1 1 auto;
}
.jp-Placeholder-prompt {
box-sizing: border-box;
}
.jp-Placeholder-content {
flex: 1 1 auto;
border: none;
background: transparent;
height: 20px;
box-sizing: border-box;
}
.jp-Placeholder-content .jp-MoreHorizIcon {
width: 32px;
height: 16px;
border: 1px solid transparent;
border-radius: var(--jp-border-radius);
}
.jp-Placeholder-content .jp-MoreHorizIcon:hover {
border: 1px solid var(--jp-border-color1);
box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.25);
background-color: var(--jp-layout-color0);
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Private CSS variables
|----------------------------------------------------------------------------*/
:root {
--jp-private-cell-scrolling-output-offset: 5px;
}
/*-----------------------------------------------------------------------------
| Cell
|----------------------------------------------------------------------------*/
.jp-Cell {
padding: var(--jp-cell-padding);
margin: 0px;
border: none;
outline: none;
background: transparent;
}
/*-----------------------------------------------------------------------------
| Common input/output
|----------------------------------------------------------------------------*/
.jp-Cell-inputWrapper,
.jp-Cell-outputWrapper {
display: flex;
flex-direction: row;
padding: 0px;
margin: 0px;
/* Added to reveal the box-shadow on the input and output collapsers. */
overflow: visible;
}
/* Only input/output areas inside cells */
.jp-Cell-inputArea,
.jp-Cell-outputArea {
flex: 1 1 auto;
}
/*-----------------------------------------------------------------------------
| Collapser
|----------------------------------------------------------------------------*/
/* Make the output collapser disappear when there is not output, but do so
* in a manner that leaves it in the layout and preserves its width.
*/
.jp-Cell.jp-mod-noOutputs .jp-Cell-outputCollapser {
border: none !important;
background: transparent !important;
}
.jp-Cell:not(.jp-mod-noOutputs) .jp-Cell-outputCollapser {
min-height: var(--jp-cell-collapser-min-height);
}
/*-----------------------------------------------------------------------------
| Output
|----------------------------------------------------------------------------*/
/* Put a space between input and output when there IS output */
.jp-Cell:not(.jp-mod-noOutputs) .jp-Cell-outputWrapper {
margin-top: 5px;
}
.jp-CodeCell.jp-mod-outputsScrolled .jp-Cell-outputArea {
overflow-y: auto;
max-height: 200px;
box-shadow: inset 0 0 6px 2px rgba(0, 0, 0, 0.3);
margin-left: var(--jp-private-cell-scrolling-output-offset);
}
.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-prompt {
flex: 0 0
calc(
var(--jp-cell-prompt-width) -
var(--jp-private-cell-scrolling-output-offset)
);
}
/*-----------------------------------------------------------------------------
| CodeCell
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| MarkdownCell
|----------------------------------------------------------------------------*/
.jp-MarkdownOutput {
flex: 1 1 auto;
margin-top: 0;
margin-bottom: 0;
padding-left: var(--jp-code-padding);
}
.jp-MarkdownOutput.jp-RenderedHTMLCommon {
overflow: auto;
}
.jp-showHiddenCellsButton {
margin-left: calc(var(--jp-cell-prompt-width) + 2 * var(--jp-code-padding));
margin-top: var(--jp-code-padding);
border: 1px solid var(--jp-border-color2);
background-color: var(--jp-border-color3) !important;
color: var(--jp-content-font-color0) !important;
}
.jp-showHiddenCellsButton:hover {
background-color: var(--jp-border-color2) !important;
}
.jp-collapseHeadingButton {
display: none;
}
.jp-MarkdownCell:hover .jp-collapseHeadingButton {
display: flex;
min-height: var(--jp-cell-collapser-min-height);
position: absolute;
right: 0;
top: 0;
bottom: 0;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Variables
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
/*-----------------------------------------------------------------------------
| Styles
|----------------------------------------------------------------------------*/
.jp-NotebookPanel-toolbar {
padding: 2px;
}
.jp-Toolbar-item.jp-Notebook-toolbarCellType .jp-select-wrapper.jp-mod-focused {
border: none;
box-shadow: none;
}
.jp-Notebook-toolbarCellTypeDropdown select {
height: 24px;
font-size: var(--jp-ui-font-size1);
line-height: 14px;
border-radius: 0;
display: block;
}
.jp-Notebook-toolbarCellTypeDropdown span {
top: 5px !important;
}
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Private CSS variables
|----------------------------------------------------------------------------*/
:root {
--jp-private-notebook-dragImage-width: 304px;
--jp-private-notebook-dragImage-height: 36px;
--jp-private-notebook-selected-color: var(--md-blue-400);
--jp-private-notebook-active-color: var(--md-green-400);
}
/*-----------------------------------------------------------------------------
| Imports
|----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------
| Notebook
|----------------------------------------------------------------------------*/
.jp-NotebookPanel {
display: block;
height: 100%;
}
.jp-NotebookPanel.jp-Document {
min-width: 240px;
min-height: 120px;
}
.jp-Notebook {
padding: var(--jp-notebook-padding);
outline: none;
overflow: auto;
background: var(--jp-layout-color0);
}
.jp-Notebook.jp-mod-scrollPastEnd::after {
display: block;
content: '';
min-height: var(--jp-notebook-scroll-padding);
}
.jp-MainAreaWidget-ContainStrict .jp-Notebook * {
contain: strict;
}
.jp-Notebook-render * {
contain: none !important;
}
.jp-Notebook .jp-Cell {
overflow: visible;
}
.jp-Notebook .jp-Cell .jp-InputPrompt {
cursor: move;
float: left;
}
/*-----------------------------------------------------------------------------
| Notebook state related styling
|
| The notebook and cells each have states, here are the possibilities:
|
| - Notebook
| - Command
| - Edit
| - Cell
| - None
| - Active (only one can be active)
| - Selected (the cells actions are applied to)
| - Multiselected (when multiple selected, the cursor)
| - No outputs
|----------------------------------------------------------------------------*/
/* Command or edit modes */
.jp-Notebook .jp-Cell:not(.jp-mod-active) .jp-InputPrompt {
opacity: var(--jp-cell-prompt-not-active-opacity);
color: var(--jp-cell-prompt-not-active-font-color);
}
.jp-Notebook .jp-Cell:not(.jp-mod-active) .jp-OutputPrompt {
opacity: var(--jp-cell-prompt-not-active-opacity);
color: var(--jp-cell-prompt-not-active-font-color);
}
/* cell is active */
.jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser {
background: var(--jp-brand-color1);
}
/* cell is dirty */
.jp-Notebook .jp-Cell.jp-mod-dirty .jp-InputPrompt {
color: var(--jp-warn-color1);
}
.jp-Notebook .jp-Cell.jp-mod-dirty .jp-InputPrompt:before {
color: var(--jp-warn-color1);
content: '•';
}
.jp-Notebook .jp-Cell.jp-mod-active.jp-mod-dirty .jp-Collapser {
background: var(--jp-warn-color1);
}
/* collapser is hovered */
.jp-Notebook .jp-Cell .jp-Collapser:hover {
box-shadow: var(--jp-elevation-z2);
background: var(--jp-brand-color1);
opacity: var(--jp-cell-collapser-not-active-hover-opacity);
}
/* cell is active and collapser is hovered */
.jp-Notebook .jp-Cell.jp-mod-active .jp-Collapser:hover {
background: var(--jp-brand-color0);
opacity: 1;
}
/* Command mode */
.jp-Notebook.jp-mod-commandMode .jp-Cell.jp-mod-selected {
background: var(--jp-notebook-multiselected-color);
}
.jp-Notebook.jp-mod-commandMode
.jp-Cell.jp-mod-active.jp-mod-selected:not(.jp-mod-multiSelected) {
background: transparent;
}
/* Edit mode */
.jp-Notebook.jp-mod-editMode .jp-Cell.jp-mod-active .jp-InputArea-editor {
border: var(--jp-border-width) solid var(--jp-cell-editor-active-border-color);
box-shadow: var(--jp-input-box-shadow);
background-color: var(--jp-cell-editor-active-background);
}
/*-----------------------------------------------------------------------------
| Notebook drag and drop
|----------------------------------------------------------------------------*/
.jp-Notebook-cell.jp-mod-dropSource {
opacity: 0.5;
}
.jp-Notebook-cell.jp-mod-dropTarget,
.jp-Notebook.jp-mod-commandMode
.jp-Notebook-cell.jp-mod-active.jp-mod-selected.jp-mod-dropTarget {
border-top-color: var(--jp-private-notebook-selected-color);
border-top-style: solid;
border-top-width: 2px;
}
.jp-dragImage {
display: block;
flex-direction: row;
width: var(--jp-private-notebook-dragImage-width);
height: var(--jp-private-notebook-dragImage-height);
border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
background: var(--jp-cell-editor-background);
overflow: visible;
}
.jp-dragImage-singlePrompt {
box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.12);
}
.jp-dragImage .jp-dragImage-content {
flex: 1 1 auto;
z-index: 2;
font-size: var(--jp-code-font-size);
font-family: var(--jp-code-font-family);
line-height: var(--jp-code-line-height);
padding: var(--jp-code-padding);
border: var(--jp-border-width) solid var(--jp-cell-editor-border-color);
background: var(--jp-cell-editor-background-color);
color: var(--jp-content-font-color3);
text-align: left;
margin: 4px 4px 4px 0px;
}
.jp-dragImage .jp-dragImage-prompt {
flex: 0 0 auto;
min-width: 36px;
color: var(--jp-cell-inprompt-font-color);
padding: var(--jp-code-padding);
padding-left: 12px;
font-family: var(--jp-cell-prompt-font-family);
letter-spacing: var(--jp-cell-prompt-letter-spacing);
line-height: 1.9;
font-size: var(--jp-code-font-size);
border: var(--jp-border-width) solid transparent;
}
.jp-dragImage-multipleBack {
z-index: -1;
position: absolute;
height: 32px;
width: 300px;
top: 8px;
left: 8px;
background: var(--jp-layout-color2);
border: var(--jp-border-width) solid var(--jp-input-border-color);
box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.12);
}
/*-----------------------------------------------------------------------------
| Cell toolbar
|----------------------------------------------------------------------------*/
.jp-NotebookTools {
display: block;
min-width: var(--jp-sidebar-min-width);
color: var(--jp-ui-font-color1);
background: var(--jp-layout-color1);
/* This is needed so that all font sizing of children done in ems is
* relative to this base size */
font-size: var(--jp-ui-font-size1);
overflow: auto;
}
.jp-NotebookTools-tool {
padding: 0px 12px 0 12px;
}
.jp-ActiveCellTool {
padding: 12px;
background-color: var(--jp-layout-color1);
border-top: none !important;
}
.jp-ActiveCellTool .jp-InputArea-prompt {
flex: 0 0 auto;
padding-left: 0px;
}
.jp-ActiveCellTool .jp-InputArea-editor {
flex: 1 1 auto;
background: var(--jp-cell-editor-background);
border-color: var(--jp-cell-editor-border-color);
}
.jp-ActiveCellTool .jp-InputArea-editor .CodeMirror {
background: transparent;
}
.jp-MetadataEditorTool {
flex-direction: column;
padding: 12px 0px 12px 0px;
}
.jp-RankedPanel > :not(:first-child) {
margin-top: 12px;
}
.jp-KeySelector select.jp-mod-styled {
font-size: var(--jp-ui-font-size1);
color: var(--jp-ui-font-color0);
border: var(--jp-border-width) solid var(--jp-border-color1);
}
.jp-KeySelector label,
.jp-MetadataEditorTool label {
line-height: 1.4;
}
.jp-NotebookTools .jp-select-wrapper {
margin-top: 4px;
margin-bottom: 0px;
}
.jp-NotebookTools .jp-Collapse {
margin-top: 16px;
}
/*-----------------------------------------------------------------------------
| Presentation Mode (.jp-mod-presentationMode)
|----------------------------------------------------------------------------*/
.jp-mod-presentationMode .jp-Notebook {
--jp-content-font-size1: var(--jp-content-presentation-font-size1);
--jp-code-font-size: var(--jp-code-presentation-font-size);
}
.jp-mod-presentationMode .jp-Notebook .jp-Cell .jp-InputPrompt,
.jp-mod-presentationMode .jp-Notebook .jp-Cell .jp-OutputPrompt {
flex: 0 0 110px;
}
/*-----------------------------------------------------------------------------
| Placeholder
|----------------------------------------------------------------------------*/
.jp-Cell-Placeholder {
padding-left: 55px;
}
.jp-Cell-Placeholder-wrapper {
background: #fff;
border: 1px solid;
border-color: #e5e6e9 #dfe0e4 #d0d1d5;
border-radius: 4px;
-webkit-border-radius: 4px;
margin: 10px 15px;
}
.jp-Cell-Placeholder-wrapper-inner {
padding: 15px;
position: relative;
}
.jp-Cell-Placeholder-wrapper-body {
background-repeat: repeat;
background-size: 50% auto;
}
.jp-Cell-Placeholder-wrapper-body div {
background: #f6f7f8;
background-image: -webkit-linear-gradient(
left,
#f6f7f8 0%,
#edeef1 20%,
#f6f7f8 40%,
#f6f7f8 100%
);
background-repeat: no-repeat;
background-size: 800px 104px;
height: 104px;
position: relative;
}
.jp-Cell-Placeholder-wrapper-body div {
position: absolute;
right: 15px;
left: 15px;
top: 15px;
}
div.jp-Cell-Placeholder-h1 {
top: 20px;
height: 20px;
left: 15px;
width: 150px;
}
div.jp-Cell-Placeholder-h2 {
left: 15px;
top: 50px;
height: 10px;
width: 100px;
}
div.jp-Cell-Placeholder-content-1,
div.jp-Cell-Placeholder-content-2,
div.jp-Cell-Placeholder-content-3 {
left: 15px;
right: 15px;
height: 10px;
}
div.jp-Cell-Placeholder-content-1 {
top: 100px;
}
div.jp-Cell-Placeholder-content-2 {
top: 120px;
}
div.jp-Cell-Placeholder-content-3 {
top: 140px;
}
</style>
<style type="text/css">
/*-----------------------------------------------------------------------------
| Copyright (c) Jupyter Development Team.
| Distributed under the terms of the Modified BSD License.
|----------------------------------------------------------------------------*/
/*
The following CSS variables define the main, public API for styling JupyterLab.
These variables should be used by all plugins wherever possible. In other
words, plugins should not define custom colors, sizes, etc unless absolutely
necessary. This enables users to change the visual theme of JupyterLab
by changing these variables.
Many variables appear in an ordered sequence (0,1,2,3). These sequences
are designed to work well together, so for example, `--jp-border-color1` should
be used with `--jp-layout-color1`. The numbers have the following meanings:
* 0: super-primary, reserved for special emphasis
* 1: primary, most important under normal situations
* 2: secondary, next most important under normal situations
* 3: tertiary, next most important under normal situations
Throughout JupyterLab, we are mostly following principles from Google's
Material Design when selecting colors. We are not, however, following
all of MD as it is not optimized for dense, information rich UIs.
*/
:root {
/* Elevation
*
* We style box-shadows using Material Design's idea of elevation. These particular numbers are taken from here:
*
* https://github.com/material-components/material-components-web
* https://material-components-web.appspot.com/elevation.html
*/
--jp-shadow-base-lightness: 0;
--jp-shadow-umbra-color: rgba(
var(--jp-shadow-base-lightness),
var(--jp-shadow-base-lightness),
var(--jp-shadow-base-lightness),
0.2
);
--jp-shadow-penumbra-color: rgba(
var(--jp-shadow-base-lightness),
var(--jp-shadow-base-lightness),
var(--jp-shadow-base-lightness),
0.14
);
--jp-shadow-ambient-color: rgba(
var(--jp-shadow-base-lightness),
var(--jp-shadow-base-lightness),
var(--jp-shadow-base-lightness),
0.12
);
--jp-elevation-z0: none;
--jp-elevation-z1: 0px 2px 1px -1px var(--jp-shadow-umbra-color),
0px 1px 1px 0px var(--jp-shadow-penumbra-color),
0px 1px 3px 0px var(--jp-shadow-ambient-color);
--jp-elevation-z2: 0px 3px 1px -2px var(--jp-shadow-umbra-color),
0px 2px 2px 0px var(--jp-shadow-penumbra-color),
0px 1px 5px 0px var(--jp-shadow-ambient-color);
--jp-elevation-z4: 0px 2px 4px -1px var(--jp-shadow-umbra-color),
0px 4px 5px 0px var(--jp-shadow-penumbra-color),
0px 1px 10px 0px var(--jp-shadow-ambient-color);
--jp-elevation-z6: 0px 3px 5px -1px var(--jp-shadow-umbra-color),
0px 6px 10px 0px var(--jp-shadow-penumbra-color),
0px 1px 18px 0px var(--jp-shadow-ambient-color);
--jp-elevation-z8: 0px 5px 5px -3px var(--jp-shadow-umbra-color),
0px 8px 10px 1px var(--jp-shadow-penumbra-color),
0px 3px 14px 2px var(--jp-shadow-ambient-color);
--jp-elevation-z12: 0px 7px 8px -4px var(--jp-shadow-umbra-color),
0px 12px 17px 2px var(--jp-shadow-penumbra-color),
0px 5px 22px 4px var(--jp-shadow-ambient-color);
--jp-elevation-z16: 0px 8px 10px -5px var(--jp-shadow-umbra-color),
0px 16px 24px 2px var(--jp-shadow-penumbra-color),
0px 6px 30px 5px var(--jp-shadow-ambient-color);
--jp-elevation-z20: 0px 10px 13px -6px var(--jp-shadow-umbra-color),
0px 20px 31px 3px var(--jp-shadow-penumbra-color),
0px 8px 38px 7px var(--jp-shadow-ambient-color);
--jp-elevation-z24: 0px 11px 15px -7px var(--jp-shadow-umbra-color),
0px 24px 38px 3px var(--jp-shadow-penumbra-color),
0px 9px 46px 8px var(--jp-shadow-ambient-color);
/* Borders
*
* The following variables, specify the visual styling of borders in JupyterLab.
*/
--jp-border-width: 1px;
--jp-border-color0: var(--md-grey-400);
--jp-border-color1: var(--md-grey-400);
--jp-border-color2: var(--md-grey-300);
--jp-border-color3: var(--md-grey-200);
--jp-border-radius: 2px;
/* UI Fonts
*
* The UI font CSS variables are used for the typography all of the JupyterLab
* user interface elements that are not directly user generated content.
*
* The font sizing here is done assuming that the body font size of --jp-ui-font-size1
* is applied to a parent element. When children elements, such as headings, are sized
* in em all things will be computed relative to that body size.
*/
--jp-ui-font-scale-factor: 1.2;
--jp-ui-font-size0: 0.83333em;
--jp-ui-font-size1: 13px; /* Base font size */
--jp-ui-font-size2: 1.2em;
--jp-ui-font-size3: 1.44em;
--jp-ui-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica,
Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
/*
* Use these font colors against the corresponding main layout colors.
* In a light theme, these go from dark to light.
*/
/* Defaults use Material Design specification */
--jp-ui-font-color0: rgba(0, 0, 0, 1);
--jp-ui-font-color1: rgba(0, 0, 0, 0.87);
--jp-ui-font-color2: rgba(0, 0, 0, 0.54);
--jp-ui-font-color3: rgba(0, 0, 0, 0.38);
/*
* Use these against the brand/accent/warn/error colors.
* These will typically go from light to darker, in both a dark and light theme.
*/
--jp-ui-inverse-font-color0: rgba(255, 255, 255, 1);
--jp-ui-inverse-font-color1: rgba(255, 255, 255, 1);
--jp-ui-inverse-font-color2: rgba(255, 255, 255, 0.7);
--jp-ui-inverse-font-color3: rgba(255, 255, 255, 0.5);
/* Content Fonts
*
* Content font variables are used for typography of user generated content.
*
* The font sizing here is done assuming that the body font size of --jp-content-font-size1
* is applied to a parent element. When children elements, such as headings, are sized
* in em all things will be computed relative to that body size.
*/
--jp-content-line-height: 1.6;
--jp-content-font-scale-factor: 1.2;
--jp-content-font-size0: 0.83333em;
--jp-content-font-size1: 14px; /* Base font size */
--jp-content-font-size2: 1.2em;
--jp-content-font-size3: 1.44em;
--jp-content-font-size4: 1.728em;
--jp-content-font-size5: 2.0736em;
/* This gives a magnification of about 125% in presentation mode over normal. */
--jp-content-presentation-font-size1: 17px;
--jp-content-heading-line-height: 1;
--jp-content-heading-margin-top: 1.2em;
--jp-content-heading-margin-bottom: 0.8em;
--jp-content-heading-font-weight: 500;
/* Defaults use Material Design specification */
--jp-content-font-color0: rgba(0, 0, 0, 1);
--jp-content-font-color1: rgba(0, 0, 0, 0.87);
--jp-content-font-color2: rgba(0, 0, 0, 0.54);
--jp-content-font-color3: rgba(0, 0, 0, 0.38);
--jp-content-link-color: var(--md-blue-700);
--jp-content-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI',
Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
'Segoe UI Symbol';
/*
* Code Fonts
*
* Code font variables are used for typography of code and other monospaces content.
*/
--jp-code-font-size: 13px;
--jp-code-line-height: 1.3077; /* 17px for 13px base */
--jp-code-padding: 5px; /* 5px for 13px base, codemirror highlighting needs integer px value */
--jp-code-font-family-default: Menlo, Consolas, 'DejaVu Sans Mono', monospace;
--jp-code-font-family: var(--jp-code-font-family-default);
/* This gives a magnification of about 125% in presentation mode over normal. */
--jp-code-presentation-font-size: 16px;
/* may need to tweak cursor width if you change font size */
--jp-code-cursor-width0: 1.4px;
--jp-code-cursor-width1: 2px;
--jp-code-cursor-width2: 4px;
/* Layout
*
* The following are the main layout colors use in JupyterLab. In a light
* theme these would go from light to dark.
*/
--jp-layout-color0: white;
--jp-layout-color1: white;
--jp-layout-color2: var(--md-grey-200);
--jp-layout-color3: var(--md-grey-400);
--jp-layout-color4: var(--md-grey-600);
/* Inverse Layout
*
* The following are the inverse layout colors use in JupyterLab. In a light
* theme these would go from dark to light.
*/
--jp-inverse-layout-color0: #111111;
--jp-inverse-layout-color1: var(--md-grey-900);
--jp-inverse-layout-color2: var(--md-grey-800);
--jp-inverse-layout-color3: var(--md-grey-700);
--jp-inverse-layout-color4: var(--md-grey-600);
/* Brand/accent */
--jp-brand-color0: var(--md-blue-900);
--jp-brand-color1: var(--md-blue-700);
--jp-brand-color2: var(--md-blue-300);
--jp-brand-color3: var(--md-blue-100);
--jp-brand-color4: var(--md-blue-50);
--jp-accent-color0: var(--md-green-900);
--jp-accent-color1: var(--md-green-700);
--jp-accent-color2: var(--md-green-300);
--jp-accent-color3: var(--md-green-100);
/* State colors (warn, error, success, info) */
--jp-warn-color0: var(--md-orange-900);
--jp-warn-color1: var(--md-orange-700);
--jp-warn-color2: var(--md-orange-300);
--jp-warn-color3: var(--md-orange-100);
--jp-error-color0: var(--md-red-900);
--jp-error-color1: var(--md-red-700);
--jp-error-color2: var(--md-red-300);
--jp-error-color3: var(--md-red-100);
--jp-success-color0: var(--md-green-900);
--jp-success-color1: var(--md-green-700);
--jp-success-color2: var(--md-green-300);
--jp-success-color3: var(--md-green-100);
--jp-info-color0: var(--md-cyan-900);
--jp-info-color1: var(--md-cyan-700);
--jp-info-color2: var(--md-cyan-300);
--jp-info-color3: var(--md-cyan-100);
/* Cell specific styles */
--jp-cell-padding: 5px;
--jp-cell-collapser-width: 8px;
--jp-cell-collapser-min-height: 20px;
--jp-cell-collapser-not-active-hover-opacity: 0.6;
--jp-cell-editor-background: var(--md-grey-100);
--jp-cell-editor-border-color: var(--md-grey-300);
--jp-cell-editor-box-shadow: inset 0 0 2px var(--md-blue-300);
--jp-cell-editor-active-background: var(--jp-layout-color0);
--jp-cell-editor-active-border-color: var(--jp-brand-color1);
--jp-cell-prompt-width: 64px;
--jp-cell-prompt-font-family: var(--jp-code-font-family-default);
--jp-cell-prompt-letter-spacing: 0px;
--jp-cell-prompt-opacity: 1;
--jp-cell-prompt-not-active-opacity: 0.5;
--jp-cell-prompt-not-active-font-color: var(--md-grey-700);
/* A custom blend of MD grey and blue 600
* See https://meyerweb.com/eric/tools/color-blend/#546E7A:1E88E5:5:hex */
--jp-cell-inprompt-font-color: #307fc1;
/* A custom blend of MD grey and orange 600
* https://meyerweb.com/eric/tools/color-blend/#546E7A:F4511E:5:hex */
--jp-cell-outprompt-font-color: #bf5b3d;
/* Notebook specific styles */
--jp-notebook-padding: 10px;
--jp-notebook-select-background: var(--jp-layout-color1);
--jp-notebook-multiselected-color: var(--md-blue-50);
/* The scroll padding is calculated to fill enough space at the bottom of the
notebook to show one single-line cell (with appropriate padding) at the top
when the notebook is scrolled all the way to the bottom. We also subtract one
pixel so that no scrollbar appears if we have just one single-line cell in the
notebook. This padding is to enable a 'scroll past end' feature in a notebook.
*/
--jp-notebook-scroll-padding: calc(
100% - var(--jp-code-font-size) * var(--jp-code-line-height) -
var(--jp-code-padding) - var(--jp-cell-padding) - 1px
);
/* Rendermime styles */
--jp-rendermime-error-background: #fdd;
--jp-rendermime-table-row-background: var(--md-grey-100);
--jp-rendermime-table-row-hover-background: var(--md-light-blue-50);
/* Dialog specific styles */
--jp-dialog-background: rgba(0, 0, 0, 0.25);
/* Console specific styles */
--jp-console-padding: 10px;
/* Toolbar specific styles */
--jp-toolbar-border-color: var(--jp-border-color1);
--jp-toolbar-micro-height: 8px;
--jp-toolbar-background: var(--jp-layout-color1);
--jp-toolbar-box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.24);
--jp-toolbar-header-margin: 4px 4px 0px 4px;
--jp-toolbar-active-background: var(--md-grey-300);
/* Statusbar specific styles */
--jp-statusbar-height: 24px;
/* Input field styles */
--jp-input-box-shadow: inset 0 0 2px var(--md-blue-300);
--jp-input-active-background: var(--jp-layout-color1);
--jp-input-hover-background: var(--jp-layout-color1);
--jp-input-background: var(--md-grey-100);
--jp-input-border-color: var(--jp-border-color1);
--jp-input-active-border-color: var(--jp-brand-color1);
--jp-input-active-box-shadow-color: rgba(19, 124, 189, 0.3);
/* General editor styles */
--jp-editor-selected-background: #d9d9d9;
--jp-editor-selected-focused-background: #d7d4f0;
--jp-editor-cursor-color: var(--jp-ui-font-color0);
/* Code mirror specific styles */
--jp-mirror-editor-keyword-color: #008000;
--jp-mirror-editor-atom-color: #88f;
--jp-mirror-editor-number-color: #080;
--jp-mirror-editor-def-color: #00f;
--jp-mirror-editor-variable-color: var(--md-grey-900);
--jp-mirror-editor-variable-2-color: #05a;
--jp-mirror-editor-variable-3-color: #085;
--jp-mirror-editor-punctuation-color: #05a;
--jp-mirror-editor-property-color: #05a;
--jp-mirror-editor-operator-color: #aa22ff;
--jp-mirror-editor-comment-color: #408080;
--jp-mirror-editor-string-color: #ba2121;
--jp-mirror-editor-string-2-color: #708;
--jp-mirror-editor-meta-color: #aa22ff;
--jp-mirror-editor-qualifier-color: #555;
--jp-mirror-editor-builtin-color: #008000;
--jp-mirror-editor-bracket-color: #997;
--jp-mirror-editor-tag-color: #170;
--jp-mirror-editor-attribute-color: #00c;
--jp-mirror-editor-header-color: blue;
--jp-mirror-editor-quote-color: #090;
--jp-mirror-editor-link-color: #00c;
--jp-mirror-editor-error-color: #f00;
--jp-mirror-editor-hr-color: #999;
/* Vega extension styles */
--jp-vega-background: white;
/* Sidebar-related styles */
--jp-sidebar-min-width: 250px;
/* Search-related styles */
--jp-search-toggle-off-opacity: 0.5;
--jp-search-toggle-hover-opacity: 0.8;
--jp-search-toggle-on-opacity: 1;
--jp-search-selected-match-background-color: rgb(245, 200, 0);
--jp-search-selected-match-color: black;
--jp-search-unselected-match-background-color: var(
--jp-inverse-layout-color0
);
--jp-search-unselected-match-color: var(--jp-ui-inverse-font-color0);
/* Icon colors that work well with light or dark backgrounds */
--jp-icon-contrast-color0: var(--md-purple-600);
--jp-icon-contrast-color1: var(--md-green-600);
--jp-icon-contrast-color2: var(--md-pink-600);
--jp-icon-contrast-color3: var(--md-blue-600);
}
</style>
<style type="text/css">
/* Force rendering true colors when outputing to pdf */
* {
-webkit-print-color-adjust: exact;
}
/* Misc */
a.anchor-link {
display: none;
}
.highlight {
margin: 0.4em;
}
/* Input area styling */
.jp-InputArea {
overflow: hidden;
}
.jp-InputArea-editor {
overflow: hidden;
}
.CodeMirror pre {
margin: 0;
padding: 0;
}
/* Using table instead of flexbox so that we can use break-inside property */
/* CSS rules under this comment should not be required anymore after we move to the JupyterLab 4.0 CSS */
.jp-CodeCell.jp-mod-outputsScrolled .jp-OutputArea-prompt {
min-width: calc(
var(--jp-cell-prompt-width) - var(--jp-private-cell-scrolling-output-offset)
);
}
.jp-OutputArea-child {
display: table;
width: 100%;
}
.jp-OutputPrompt {
display: table-cell;
vertical-align: top;
min-width: var(--jp-cell-prompt-width);
}
body[data-format='mobile'] .jp-OutputPrompt {
display: table-row;
}
.jp-OutputArea-output {
display: table-cell;
width: 100%;
}
body[data-format='mobile'] .jp-OutputArea-child .jp-OutputArea-output {
display: table-row;
}
.jp-OutputArea-output.jp-OutputArea-executeResult {
width: 100%;
}
/* Hiding the collapser by default */
.jp-Collapser {
display: none;
}
@media print {
.jp-Cell-inputWrapper,
.jp-Cell-outputWrapper {
display: block;
}
.jp-OutputArea-child {
break-inside: avoid-page;
}
}
</style>
<!-- Load mathjax -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS_CHTML-full,Safe"> </script>
<!-- MathJax configuration -->
<script type="text/x-mathjax-config">
init_mathjax = function() {
if (window.MathJax) {
// MathJax loaded
MathJax.Hub.Config({
TeX: {
equationNumbers: {
autoNumber: "AMS",
useLabelIds: true
}
},
tex2jax: {
inlineMath: [ ['$','$'], ["\\(","\\)"] ],
displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
processEscapes: true,
processEnvironments: true
},
displayAlign: 'center',
CommonHTML: {
linebreaks: {
automatic: true
}
}
});
MathJax.Hub.Queue(["Typeset", MathJax.Hub]);
}
}
init_mathjax();
</script>
<!-- End of mathjax configuration --></head>
<body class="jp-Notebook" data-jp-theme-light="true" data-jp-theme-name="JupyterLab Light">
<div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [6]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">math</span> <span class="k">as</span> <span class="nn">m</span>
<span class="n">result</span> <span class="o">=</span> <span class="n">m</span><span class="o">.</span><span class="n">sqrt</span><span class="p">(</span><span class="mi">25</span><span class="p">)</span> <span class="c1"># Accessing functions using module_name.function_name </span>
<span class="nb">print</span><span class="p">(</span><span class="n">result</span><span class="p">)</span> <span class="c1"># Output: 5.0</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>5.0
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [5]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">math</span> <span class="kn">import</span> <span class="n">sqrt</span><span class="p">,</span> <span class="n">pi</span>
<span class="n">result</span> <span class="o">=</span> <span class="n">sqrt</span><span class="p">(</span><span class="mi">16</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">result</span><span class="p">)</span> <span class="c1"># Output: 4.0</span>
<span class="nb">print</span><span class="p">(</span><span class="n">pi</span><span class="p">)</span> <span class="c1"># Output: 3.14159..</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>4.0
3.141592653589793
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [7]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">math</span>
<span class="nb">print</span><span class="p">(</span><span class="nb">dir</span><span class="p">(</span><span class="n">math</span><span class="p">))</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'cbrt', 'ceil', 'comb', 'copysign', 'cos', 'cosh', 'degrees', 'dist', 'e', 'erf', 'erfc', 'exp', 'exp2', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'isqrt', 'lcm', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'nextafter', 'perm', 'pi', 'pow', 'prod', 'radians', 'remainder', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc', 'ulp']
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [8]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">math</span>
<span class="n">help</span><span class="p">(</span><span class="n">math</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>Help on built-in module math:
NAME
math
DESCRIPTION
This module provides access to the mathematical functions
defined by the C standard.
FUNCTIONS
acos(x, /)
Return the arc cosine (measured in radians) of x.
The result is between 0 and pi.
acosh(x, /)
Return the inverse hyperbolic cosine of x.
asin(x, /)
Return the arc sine (measured in radians) of x.
The result is between -pi/2 and pi/2.
asinh(x, /)
Return the inverse hyperbolic sine of x.
atan(x, /)
Return the arc tangent (measured in radians) of x.
The result is between -pi/2 and pi/2.
atan2(y, x, /)
Return the arc tangent (measured in radians) of y/x.
Unlike atan(y/x), the signs of both x and y are considered.
atanh(x, /)
Return the inverse hyperbolic tangent of x.
cbrt(x, /)
Return the cube root of x.
ceil(x, /)
Return the ceiling of x as an Integral.
This is the smallest integer >= x.
comb(n, k, /)
Number of ways to choose k items from n items without repetition and without order.
Evaluates to n! / (k! * (n - k)!) when k <= n and evaluates
to zero when k > n.
Also called the binomial coefficient because it is equivalent
to the coefficient of k-th term in polynomial expansion of the
expression (1 + x)**n.
Raises TypeError if either of the arguments are not integers.
Raises ValueError if either of the arguments are negative.
copysign(x, y, /)
Return a float with the magnitude (absolute value) of x but the sign of y.
On platforms that support signed zeros, copysign(1.0, -0.0)
returns -1.0.
cos(x, /)
Return the cosine of x (measured in radians).
cosh(x, /)
Return the hyperbolic cosine of x.
degrees(x, /)
Convert angle x from radians to degrees.
dist(p, q, /)
Return the Euclidean distance between two points p and q.
The points should be specified as sequences (or iterables) of
coordinates. Both inputs must have the same dimension.
Roughly equivalent to:
sqrt(sum((px - qx) ** 2.0 for px, qx in zip(p, q)))
erf(x, /)
Error function at x.
erfc(x, /)
Complementary error function at x.
exp(x, /)
Return e raised to the power of x.
exp2(x, /)
Return 2 raised to the power of x.
expm1(x, /)
Return exp(x)-1.
This function avoids the loss of precision involved in the direct evaluation of exp(x)-1 for small x.
fabs(x, /)
Return the absolute value of the float x.
factorial(n, /)
Find n!.
Raise a ValueError if x is negative or non-integral.
floor(x, /)
Return the floor of x as an Integral.
This is the largest integer <= x.
fmod(x, y, /)
Return fmod(x, y), according to platform C.
x % y may differ.
frexp(x, /)
Return the mantissa and exponent of x, as pair (m, e).
m is a float and e is an int, such that x = m * 2.**e.
If x is 0, m and e are both 0. Else 0.5 <= abs(m) < 1.0.
fsum(seq, /)
Return an accurate floating point sum of values in the iterable seq.
Assumes IEEE-754 floating point arithmetic.
gamma(x, /)
Gamma function at x.
gcd(*integers)
Greatest Common Divisor.
hypot(...)
hypot(*coordinates) -> value
Multidimensional Euclidean distance from the origin to a point.
Roughly equivalent to:
sqrt(sum(x**2 for x in coordinates))
For a two dimensional point (x, y), gives the hypotenuse
using the Pythagorean theorem: sqrt(x*x + y*y).
For example, the hypotenuse of a 3/4/5 right triangle is:
>>> hypot(3.0, 4.0)
5.0
isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)
Determine whether two floating point numbers are close in value.
rel_tol
maximum difference for being considered "close", relative to the
magnitude of the input values
abs_tol
maximum difference for being considered "close", regardless of the
magnitude of the input values
Return True if a is close in value to b, and False otherwise.
For the values to be considered close, the difference between them
must be smaller than at least one of the tolerances.
-inf, inf and NaN behave similarly to the IEEE 754 Standard. That
is, NaN is not close to anything, even itself. inf and -inf are
only close to themselves.
isfinite(x, /)
Return True if x is neither an infinity nor a NaN, and False otherwise.
isinf(x, /)
Return True if x is a positive or negative infinity, and False otherwise.
isnan(x, /)
Return True if x is a NaN (not a number), and False otherwise.
isqrt(n, /)
Return the integer part of the square root of the input.
lcm(*integers)
Least Common Multiple.
ldexp(x, i, /)
Return x * (2**i).
This is essentially the inverse of frexp().
lgamma(x, /)
Natural logarithm of absolute value of Gamma function at x.
log(...)
log(x, [base=math.e])
Return the logarithm of x to the given base.
If the base not specified, returns the natural logarithm (base e) of x.
log10(x, /)
Return the base 10 logarithm of x.
log1p(x, /)
Return the natural logarithm of 1+x (base e).
The result is computed in a way which is accurate for x near zero.
log2(x, /)
Return the base 2 logarithm of x.
modf(x, /)
Return the fractional and integer parts of x.
Both results carry the sign of x and are floats.
nextafter(x, y, /)
Return the next floating-point value after x towards y.
perm(n, k=None, /)
Number of ways to choose k items from n items without repetition and with order.
Evaluates to n! / (n - k)! when k <= n and evaluates
to zero when k > n.
If k is not specified or is None, then k defaults to n
and the function returns n!.
Raises TypeError if either of the arguments are not integers.
Raises ValueError if either of the arguments are negative.
pow(x, y, /)
Return x**y (x to the power of y).
prod(iterable, /, *, start=1)
Calculate the product of all the elements in the input iterable.
The default start value for the product is 1.
When the iterable is empty, return the start value. This function is
intended specifically for use with numeric values and may reject
non-numeric types.
radians(x, /)
Convert angle x from degrees to radians.
remainder(x, y, /)
Difference between x and the closest integer multiple of y.
Return x - n*y where n*y is the closest integer multiple of y.
In the case where x is exactly halfway between two multiples of
y, the nearest even value of n is used. The result is always exact.
sin(x, /)
Return the sine of x (measured in radians).
sinh(x, /)
Return the hyperbolic sine of x.
sqrt(x, /)
Return the square root of x.
tan(x, /)
Return the tangent of x (measured in radians).
tanh(x, /)
Return the hyperbolic tangent of x.
trunc(x, /)
Truncates the Real x to the nearest Integral toward 0.
Uses the __trunc__ magic method.
ulp(x, /)
Return the value of the least significant bit of the float x.
DATA
e = 2.718281828459045
inf = inf
nan = nan
pi = 3.141592653589793
tau = 6.283185307179586
FILE
(built-in)
</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [9]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">inspect</span>
<span class="kn">import</span> <span class="nn">math</span>
<span class="k">def</span> <span class="nf">get_methods</span><span class="p">(</span><span class="n">module</span><span class="p">):</span>
<span class="n">members</span> <span class="o">=</span> <span class="n">inspect</span><span class="o">.</span><span class="n">getmembers</span><span class="p">(</span><span class="n">module</span><span class="p">,</span> <span class="n">inspect</span><span class="o">.</span><span class="n">isfunction</span><span class="p">)</span>
<span class="k">return</span> <span class="p">[</span><span class="n">member</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="k">for</span> <span class="n">member</span> <span class="ow">in</span> <span class="n">members</span><span class="p">]</span>
<span class="nb">print</span><span class="p">(</span><span class="n">get_methods</span><span class="p">(</span><span class="n">math</span><span class="p">))</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>[]
</pre>
</div>
</div>
</div>
</div>
</div>
<div class="jp-Cell jp-MarkdownCell jp-Notebook-cell">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea"><div class="jp-InputPrompt jp-InputArea-prompt">
</div><div class="jp-RenderedHTMLCommon jp-RenderedMarkdown jp-MarkdownOutput " data-mime-type="text/markdown">
<p>find veson number of library
np.<strong>version</strong></p>
<p>upgared numpy pacakeh
pip install numpy --upgrade
resatrt kernal
pypi.org</p>
<hr>
<p>import pandas as pd</p>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [2]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
</pre></div>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [3]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">np</span><span class="o">.</span><span class="n">__version__</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[3]:</div>
<div class="jp-RenderedText jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/plain">
<pre>'1.26.4'</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">np</span><span class="o">.</span><span class="n">__version__</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[4]:</div>
<div class="jp-RenderedText jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/plain">
<pre>'1.26.4'</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [2]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span>
</pre></div>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [3]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="n">pd</span><span class="o">.</span><span class="n">__version__</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt">Out[3]:</div>
<div class="jp-RenderedText jp-OutputArea-output jp-OutputArea-executeResult" data-mime-type="text/plain">
<pre>'2.2.1'</pre>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [4]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
<span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span>
<span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span>
<span class="c1"># Load the CSV data into a Pandas DataFrame</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">read_csv</span><span class="p">(</span><span class="s2">"sample_traffic.csv"</span><span class="p">)</span>
<span class="c1"># Convert the "Date" column to datetime format</span>
<span class="n">data</span><span class="p">[</span><span class="s2">"Date"</span><span class="p">]</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">to_datetime</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s2">"Date"</span><span class="p">])</span>
<span class="c1"># Set the "Date" column as the DataFrame's index</span>
<span class="n">data</span><span class="o">.</span><span class="n">set_index</span><span class="p">(</span><span class="s2">"Date"</span><span class="p">,</span> <span class="n">inplace</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
<span class="c1"># NumPy for calculations</span>
<span class="n">daily_change</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="s1">'Visitors'</span><span class="p">]</span><span class="o">.</span><span class="n">pct_change</span><span class="p">()</span> <span class="o">*</span> <span class="mi">100</span>
<span class="c1"># Analysis with Pandas</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">"Descriptive statistics:"</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">data</span><span class="o">.</span><span class="n">describe</span><span class="p">())</span>
<span class="nb">print</span><span class="p">(</span><span class="s2">"</span><span class="se">\n</span><span class="s2">Daily percentage change in traffic:"</span><span class="p">)</span>
<span class="nb">print</span><span class="p">(</span><span class="n">daily_change</span><span class="p">)</span>
<span class="c1"># Visualizations with Matplotlib</span>
<span class="n">plt</span><span class="o">.</span><span class="n">figure</span><span class="p">(</span><span class="n">figsize</span><span class="o">=</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span> <span class="mi">6</span><span class="p">))</span> <span class="c1"># Adjust figure size</span>
<span class="c1"># Line plot of visitor count</span>
<span class="n">plt</span><span class="o">.</span><span class="n">subplot</span><span class="p">(</span><span class="mi">2</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">plot</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s2">"Visitors"</span><span class="p">])</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s2">"Daily Website Visitors"</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xlabel</span><span class="p">(</span><span class="s2">"Date"</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s2">"Visitors"</span><span class="p">)</span>
<span class="c1"># Bar plot of percentage change</span>
<span class="n">plt</span><span class="o">.</span><span class="n">subplot</span><span class="p">(</span><span class="mi">2</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">bar</span><span class="p">(</span><span class="n">daily_change</span><span class="o">.</span><span class="n">index</span><span class="p">,</span> <span class="n">daily_change</span><span class="o">.</span><span class="n">values</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s2">"Daily Change in Traffic (%)"</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xlabel</span><span class="p">(</span><span class="s2">"Date"</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s2">"Percentage Change"</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">tight_layout</span><span class="p">()</span> <span class="c1"># Adjust spacing to prevent overlapping</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>
</div>
</div>
</div>
</div>
<div class="jp-Cell-outputWrapper">
<div class="jp-Collapser jp-OutputCollapser jp-Cell-outputCollapser">
</div>
<div class="jp-OutputArea jp-Cell-outputArea">
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedText jp-OutputArea-output" data-mime-type="text/plain">
<pre>Descriptive statistics:
Visitors
count 5.000000
mean 272.400000
std 86.569625
min 180.000000
25% 221.000000
50% 254.000000
75% 302.000000
max 405.000000
Daily percentage change in traffic:
Date
2023-11-01 NaN
2023-11-02 -29.133858
2023-11-03 67.777778
2023-11-04 -26.821192
2023-11-05 83.257919
Name: Visitors, dtype: float64
</pre>
</div>
</div>
<div class="jp-OutputArea-child">
<div class="jp-OutputPrompt jp-OutputArea-prompt"></div>
<div class="jp-RenderedImage jp-OutputArea-output ">
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA9sAAAJOCAYAAACnVRSYAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAClJ0lEQVR4nOzdd3hUZd7G8e+kJ6RAekICoQYIEJrSlBYIKERcdUEFgRVcxIqCYldcBRHBDui7Cq6I6K6iggihI4IiHRKKQEJLhZBKes77R2Qk9MAkk3J/rmuui5z6O3NyyNxznvM8JsMwDERERERERETEYmysXYCIiIiIiIhITaOwLSIiIiIiImJhCtsiIiIiIiIiFqawLSIiIiIiImJhCtsiIiIiIiIiFqawLSIiIiIiImJhCtsiIiIiIiIiFqawLSIiIiIiImJhCtsiIiIiIiIiFqawLSIiVd68efMwmUzml5OTE/7+/vTu3ZupU6eSkpJyzdteu3YtJpOJtWvXmqe98sormEwmC1QOjzzyCCaTiaSkpDLT09LSsLGxwd7enuzs7DLzjh8/jslk4sknnyzXvkwmE4888sh11wwXfw9mzZrFvHnzLLJ9gMLCQvz8/OjSpcsllykpKaFBgwa0bdsWgFGjRhESElKu/cTHx2MymcrUvnHjRl555RXS09OvoXIREZErU9gWEZFqY+7cuWzatIkVK1bw4Ycf0q5dO6ZNm0bLli1ZuXLlNW2zQ4cObNq0iQ4dOli42lK9e/cGKBPmAdatW4ednR0mk4kNGzaUmbdmzZoy61rDmDFj2LRpU5lplg7b9vb23Hffffz222/ExsZedJmVK1dy7NgxRo8eDcCLL77IokWLyrWfgIAANm3axMCBA83TNm7cyOTJkxW2RUSkwihsi4hItdG6dWu6dOnCzTffzJ133snbb7/Nrl27qFOnDnfccQfJycnl3qa7uztdunTB3d29AiqGXr16XXDnHErD9w033ECnTp3M4frceTY2NvTo0aNCaroaQUFBl73jbClnQ/Snn3560fmffvopDg4ODB8+HIAmTZrQvn37cu3D0dGRLl264OPjc33FXoUzZ85U+D5ERKR6UNgWEZFqrUGDBsyYMYOsrCw++ugj8/QtW7Zw9913ExISgrOzMyEhIdxzzz0cOXKkzPoXa0Z+vtGjR+Pp6XnRINWnTx/CwsIuua6Xlxdt2rS5aNju1asXPXv2vGjY7tChAx4eHgBkZmYyceJEGjVqhIODA/Xr12f8+PHk5ORcdJ8fffQRzZs3x9HRkVatWrFw4cIy88+cOWPenpOTE56ennTq1Ikvv/zSvMz5zchDQkKIiYlh3bp15ub85zbnLm+NZ7Vs2ZKuXbvy+eefU1RUVGZeeno633//PYMHD8bLywu4eDPy//73v3Tu3BkPDw9cXFxo3Lgx999/v3n++c3IX3nlFZ566ikAGjVqZD6es+eopKSEN998kxYtWuDo6Iivry8jRozg+PHjZfbbq1cvWrduzfr16+nWrRsuLi7m/a5evZpevXrh5eWFs7MzDRo04M4771QYFxGpReysXYCIiMj1uvXWW7G1tWX9+vXmafHx8YSGhnL33Xfj6elJYmIis2fP5oYbbiA2NhZvb++r3v7jjz/Op59+yoIFCxgzZox5emxsLGvWrOHDDz+87Pq9e/fm3XffJTExkYCAAE6dOsXu3buZPn06JSUlTJ8+nczMTNzd3Tl27BiHDx/mzjvvBEqDcc+ePTl+/DjPPfccbdu2JSYmhpdeeondu3ezcuXKMqH4hx9+YM2aNbz66qvUqVOHWbNmcc8992BnZ8ddd90FwJNPPsnnn3/Oa6+9Rvv27cnJyWHPnj2cOnXqksewaNEi7rrrLjw8PJg1axZQesf4Wmo83+jRoxkzZgw//vgjgwcPNk9fsGABeXl55rvfF7Np0yaGDh3K0KFDeeWVV3BycuLIkSOsXr36kuuMGTOGtLQ03n//fb799lsCAgIAaNWqFQDjxo3j448/5pFHHmHQoEHEx8fz4osvsnbtWrZt21bmdycxMZHhw4fz9NNPM2XKFGxsbIiPj2fgwIHcfPPNfPrpp9StW5cTJ06wbNkyCgoKcHFxuWRtIiJSgxgiIiJV3Ny5cw3A+P333y+5jJ+fn9GyZctLzi8qKjKys7ONOnXqGO+++655+po1awzAWLNmjXnayy+/bJz/J7Jnz55Gu3btykwbN26c4e7ubmRlZV22/u+++84AjAULFhiGYRjffPONYWdnZ2RlZRmZmZmGra2tsWTJEsMwDOOzzz4zAGPp0qWGYRjG1KlTDRsbmwuO/X//+1+Z5QzDMADD2dnZSEpKKnPcLVq0MJo2bWqe1rp1a+P222+/bM0Xew/CwsKMnj17XrBseWq8mKysLMPV1dW47bbbykzv2LGjERwcbBQXF5unjRw50mjYsKH557feessAjPT09EtuPy4uzgCMuXPnmqdNnz7dAIy4uLgyy+7du9cAjIceeqjM9N9++80AjOeee848rWfPngZgrFq16qLHvWPHjsset4iI1GxqRi4iIjWCYRhlfs7OzmbSpEk0bdoUOzs77OzscHV1JScnh71795Z7+48//jg7duzgl19+AUqbTX/++eeMHDkSV1fXy67bs2dPbGxszM2U165dS6dOnXB1dcXNzY0OHTqYm5KvXbsWOzs7brrpJgCWLFlC69atadeuHUVFReZX//79L9r8PSIiAj8/P/PPtra2DB06lIMHD5qbQd9444389NNPPPPMM6xdu5bc3Nxyvx/nKm+N53N1dWXIkCEsXbrU/Nz9nj172Lp1K6NGjcLG5tIfV2644QYAhgwZwtdff82JEyeu61jOnodRo0aVmX7jjTfSsmVLVq1aVWZ6vXr16NOnT5lp7dq1w8HBgX/+85989tlnHD58+LpqEhGR6klhW0REqr2cnBxOnTpFYGCgedq9997LBx98wJgxY1i+fDmbN2/m999/x8fH55rC5eDBgwkJCTE3GZ83bx45OTk8/PDDV1y3bt26tGvXzhzk1qxZQ8+ePc3ze/bsaQ6ka9asoVOnTri5uQGQnJzMrl27sLe3L/Nyc3PDMAxOnjxZZl/+/v4X7P/stLPNxN977z0mTZrEd999R+/evfH09OT222/njz/+KOe7wjXVeDGjR4+mqKiIzz//HCjtGM1kMvGPf/zjsuv16NGD7777jqKiIkaMGEFQUBCtW7cu8/x5eZx9j842LT9XYGDgBU3tL7ZckyZNWLlyJb6+vjz88MM0adKEJk2a8O67715TTSIiUj3pmW0REan2fvzxR4qLi+nVqxcAGRkZLFmyhJdffplnnnnGvFx+fj5paWnXtA8bGxsefvhhnnvuOWbMmMGsWbOIiIggNDT0qtbv3bs3M2bMYNeuXcTExPDmm2+a5/Xs2ZOZM2eya9cu4uPjueeee8zzvL29cXZ2vmRv3ec/e37+eN7nTjvbyVidOnWYPHkykydPJjk52XyXOyoqin379l3V8ZxfQ3lqvJhu3brRsmVL5s6dy+OPP878+fPp06cPjRo1uuK6gwcPZvDgweTn5/Prr78ydepU7r33XkJCQujatWu5juXse5SYmEhQUFCZeQkJCRccy6WeRb/55pu5+eabKS4uZsuWLbz//vuMHz8ePz8/7r777nLVJCIi1ZPubIuISLV29OhRJk6ciIeHB2PHjgVKA5BhGOYOvM7697//TXFx8TXva8yYMTg4ODBs2DD279/PI488ctXrnh0ze/LkydjY2JibiQPmf0+ePLnMsgCDBg3i0KFDeHl50alTpwte5/fMvWrVqjJDoBUXF/PVV1/RpEmTC8IjgJ+fH6NGjeKee+5h//79l+0t29HR8aKtAspb46Xcf//9xMbG8sILL5CamlqmR/Gr4ejoSM+ePZk2bRoA27dvv+yywAXHc7ZJ+Pz588tM//3339m7dy8RERHlqsnW1pbOnTubW0Rs27atXOuLiEj1pTvbIiJSbezZs8f8PHBKSgo///wzc+fOxdbWlkWLFpnHUXZ3d6dHjx5Mnz4db29vQkJCWLduHZ988gl169a95v3XrVuXESNGMHv2bBo2bEhUVNRVr9ujRw9znec2Ez+73fDwcBYtWoS9vT3du3c3zxs/fjzffPMNPXr04IknnqBt27aUlJRw9OhRoqOjmTBhAp07dzYv7+3tTZ8+fXjxxRfNvZHv27evzPBfnTt3ZtCgQbRt25Z69eqxd+9ePv/8c7p27XrZnrLbtGnDwoUL+eqrr2jcuDFOTk60adOm3DVeyogRI3juueeYPn06devW5Y477rjiOi+99BLHjx8nIiKCoKAg0tPTeffdd7G3ty/TVP9ixwLw7rvvMnLkSOzt7QkNDSU0NJR//vOfvP/++9jY2HDLLbeYeyMPDg7miSeeuGJNc+bMYfXq1QwcOJAGDRqQl5dnvuvft2/fK64vIiI1g8K2iIhUG2ef33VwcKBu3bq0bNmSSZMmMWbMGHPQPmvBggU8/vjjPP300xQVFdG9e3dWrFjBwIEDr6uGoUOHMnv2bMaNG3fZjrvO5+bmRseOHdm8efNFQ2DPnj3Zvn07N954Y5nAW6dOHX7++WfeeOMNPv74Y+Li4szjNvft2/eCu8a33XYbYWFhvPDCCxw9epQmTZrwxRdfMHToUPMyffr04YcffuDtt9/mzJkz1K9fnxEjRvD8889f9hgmT55MYmIiDzzwAFlZWTRs2JD4+Phy13gpvr6+DBo0iEWLFnHvvffi5OR0xXU6d+7Mli1bmDRpEqmpqdStW5dOnTqxevXqy45/3qtXL5599lk+++wz/u///o+SkhLWrFlDr169mD17Nk2aNOGTTz7hww8/xMPDgwEDBjB16lRzM/PLadeuHdHR0bz88sskJSXh6upK69at+eGHH4iMjLyq90JERKo/k3F+960iIiJySRMmTGD27NkcO3bsqoKXiIiI1E66sy0iInIVfv31Vw4cOMCsWbMYO3asgraIiIhclu5si4iIXAWTyYSLiwu33norc+fOveLY2iIiIlK76c62iIjIVdB30yIiIlIeGvpLRERERERExMIUtkVEREREREQsTGFbRERERERExML0zPZ5SkpKSEhIwM3NDZPJZO1yREREREREpIIYhkFWVhaBgYHY2Fj2XrTC9nkSEhIIDg62dhkiIiIiIiJSSY4dO0ZQUJBFt6mwfR43Nzeg9M12d3e3cjUiIiIiIiJSUTIzMwkODjbnQEtS2D7P2abj7u7uCtsiIiIiIiK1QEU8QqwO0kREREREREQsTGFbRERERERExMIUtkVEREREREQsTGFbRERERERExMIUtkVEREREREQsTGFbREREREREKsSh1GwKi0usXYZVKGyLiIiIiIiIxX23/QQD3/uZKUv3WrsUq6iSYXvq1KmYTCbGjx9vnmYYBq+88gqBgYE4OzvTq1cvYmJiyqyXn5/Po48+ire3N3Xq1OG2227j+PHjlVy9iIiIiIhI7VVQVMLL3+9h/Fc7yCss4WBK7by7XeXC9u+//87HH39M27Zty0x/8803mTlzJh988AG///47/v7+9OvXj6ysLPMy48ePZ9GiRSxcuJANGzaQnZ3NoEGDKC4uruzDEBERERERqXWSMvK4++NNfLbpCACP9WnKvH/ciL1tlYueFa5KHXF2djbDhg3j//7v/6hXr555umEYvPPOOzz//PPccccdtG7dms8++4wzZ86wYMECADIyMvjkk0+YMWMGffv2pX379syfP5/du3ezcuVKax2SiIiIiIhIrbDp0CkGvf8z246m4+ZkxycjO/FkZCi2NiZrl2YVVSpsP/zwwwwcOJC+ffuWmR4XF0dSUhKRkZHmaY6OjvTs2ZONGzcCsHXrVgoLC8ssExgYSOvWrc3LXEx+fj6ZmZllXiIiIiIiInJ1DMPg/9YfZvgnv3Eyu4CWAe4sefQmIlr6Wbs0q7KzdgFnLVy4kG3btvH7779fMC8pKQkAP7+yJ8vPz48jR46Yl3FwcChzR/zsMmfXv5ipU6cyefLk6y1fRERERESk1snOL+Lp/+1k6e7SzHVH+/q8/rc2ODvYWrky66sSd7aPHTvG448/zvz583FycrrkciZT2eYHhmFcMO18V1rm2WefJSMjw/w6duxY+YoXERERERGphQ6mZDH4gw0s3Z2Eva2Jf93emhlDwhW0/1Ql7mxv3bqVlJQUOnbsaJ5WXFzM+vXr+eCDD9i/fz9Qevc6ICDAvExKSor5bre/vz8FBQWcPn26zN3tlJQUunXrdsl9Ozo64ujoaOlDEhERERERqbGW7Erg6f/t4kxBMf7uTswa3oEODepdecVapErc2Y6IiGD37t3s2LHD/OrUqRPDhg1jx44dNG7cGH9/f1asWGFep6CggHXr1pmDdMeOHbG3ty+zTGJiInv27Lls2BYREREREZGrU1hcwmtLYnlkwXbOFBTTrYkXSx67SUH7IqrEnW03Nzdat25dZlqdOnXw8vIyTx8/fjxTpkyhWbNmNGvWjClTpuDi4sK9994LgIeHB6NHj2bChAl4eXnh6enJxIkTadOmzQUdromIiIiIiEj5pGTl8ciC7WyOSwNgXK8mTOjXHLtaOKzX1agSYftqPP300+Tm5vLQQw9x+vRpOnfuTHR0NG5ubuZl3n77bezs7BgyZAi5ublEREQwb948bG31zICIiIiIiMi12hKfxkNfbCMlKx9XRzve+ns4A1r7W7usKs1kGIZh7SKqkszMTDw8PMjIyMDd3d3a5YiIiIiIiFiNYRjM2xjP6z/upajEoLmfK3OGd6Sxj6u1S7OIisx/1ebOtoiIiIiIiFSenPwinv12Nz/sTAAgKjyQN+5oQx1HxciroXdJREREREREyjicms2D87dyIDkbOxsTzw9syahuIVcceln+orAtIiIiIiIiZsv2JDHxvzvJzi/Cx82RWcM6cEOIp7XLqnYUtkVERERERISi4hLeij7AnHWHALgxxJMP7m2Pr7uTlSurnhS2RUREREREarmT2fk89uV2Nh46BcDomxrxzC0tsNewXtdMYVtERERERKQW2370NA99sY3EjDxcHGx58662DGobaO2yqj2FbRERERERkVrIMAy++O0okxfHUFhs0NinDh8N70gzPzdrl1YjKGyLiIiIiIjUMrkFxTz/3W6+3XYCgFta+/PmXW1xc7K3cmU1h8K2iIiIiIhILXLkVA4Pzt/G3sRMbEzwzC0teODmxhrWy8IUtkVERERERGqJVXuTGf/VDrLyivB2deC9e9rTrYm3tcuqkRS2RUREREREarjiEoN3Vx7gvdUHAejQoC6zhnXE30PDelUUhW0REREREZEa7HROAY9/tYP1B1IBGNm1Ic8PbIWDnYb1qkgK2yIiIiIiIjXU7uMZPDh/KyfSc3Gyt+GNO9pye/v61i6rVlDYFhERERERqYG++v0oL34fQ0FRCSFeLswe3pGWAe7WLqvWUNgWERERERGpQfIKi3nlhxgW/n4MgL4t/ZgxJBwPZw3rVZkUtkVERERERGqIY2lneOiLbew+kYGNCSZEhjKuZxNsbDSsV2VT2BYREREREakB1h1I5fGF20k/U0g9F3veu6c9NzfzsXZZtZbCtoiIiIiISDVWUmLwwZqDvL3yAIYBbYM8mD28I/XrOlu7tFpNYVtERERERKSayjhTyBNf72D1vhQA7rmxAS9HtcLJ3tbKlYnCtoiIiIiISDUUm5DJg/O3cjTtDA52Nrx2e2uGdAq2dlnyJ4VtERERERGRauabrcd5btFu8otKCKrnzJzhHWld38PaZck5FLZFRERERESqifyiYv61JJb5vx4FoFeoD+8MbUddFwcrVybnU9gWERERERGpBhIzchk3fxs7jqVjMsHjEc14rE8zDetVRSlsi4iIiIiIVHEbD57k0S+3cyqnAA9ne965ux29Q32tXZZchsK2iIiIiIhIFWUYBnPWHWb68n2UGBAW6M6c4R0J9nSxdmlyBQrbIiIiIiIiVVBmXiFP/Xcny2OSAbirYxCv3d5aw3pVEwrbIiIiIiIiVcz+pCwenL+VuJM5ONja8MptYdxzYzAmk57Pri4UtkVERERERKqQ73ec4JlvdpNbWEyghxOzh3ckPLiutcuSclLYFhERERERqQIKi0uYsnQvc3+JB+Cmpt68d097POtoWK/qSGFbRERERETEylIy83joi21sOXIagEd6N+WJfs2x1bBe1ZbCtoiIiIiIiBX9dvgUDy/YzsnsfNwc7Zg5tB39WvlZuyy5TgrbIiIiIiIiVmAYBp9siGPqT/soLjFo4e/G7OEdaeRdx9qliQXYWLsAgNmzZ9O2bVvc3d1xd3ena9eu/PTTT+b5o0aNwmQylXl16dKlzDby8/N59NFH8fb2pk6dOtx2220cP368sg9FRERERETkirLzi3hkwXZe+3EvxSUGt7cL5NuHuilo1yBVImwHBQXxxhtvsGXLFrZs2UKfPn0YPHgwMTEx5mUGDBhAYmKi+bV06dIy2xg/fjyLFi1i4cKFbNiwgezsbAYNGkRxcXFlH46IiIiIiMglHUzJ5vYPf+HH3YnY2Zh4dXAYbw9th4uDGh7XJCbDMAxrF3Exnp6eTJ8+ndGjRzNq1CjS09P57rvvLrpsRkYGPj4+fP755wwdOhSAhIQEgoODWbp0Kf3797/q/WZmZuLh4UFGRgbu7u6WOBQREREREREAftqdyMT/7iSnoBg/d0dmDetAx4ae1i6r1qrI/Fcl7myfq7i4mIULF5KTk0PXrl3N09euXYuvry/NmzfngQceICUlxTxv69atFBYWEhkZaZ4WGBhI69at2bhxY6XWLyIiIiIicr6iP4f1GvfFNnIKiuncyJMlj96soF2DVZl2Crt376Zr167k5eXh6urKokWLaNWqFQC33HILf//732nYsCFxcXG8+OKL9OnTh61bt+Lo6EhSUhIODg7Uq1evzDb9/PxISkq67H7z8/PJz883/5yZmWn5gxMRERERkVorNSufR7/cxq+H0wAY26MxT/UPxc62yt37FAuqMmE7NDSUHTt2kJ6ezjfffMPIkSNZt24drVq1MjcNB2jdujWdOnWiYcOG/Pjjj9xxxx2X3KZhGJhMlx+XburUqUyePNlixyEiIiIiInLW1iOneeiLrSRn5lPHwZa3/h7OLW0CrF2WVIIq81WKg4MDTZs2pVOnTkydOpXw8HDefffdiy4bEBBAw4YN+eOPPwDw9/enoKCA06dPl1kuJSUFP7/Lj0/37LPPkpGRYX4dO3bMMgckIiIiIiK1lmEYfLYxnrs/3kRyZj5NfV35/pGbFLRrkSoTts9nGEaZ5t3nOnXqFMeOHSMgoPQXtWPHjtjb27NixQrzMomJiezZs4du3bpddj+Ojo7mIcfOvkRERERERK7VmYIinvhqBy//EENhscHAtgF8/3B3mvq6Wrs0qURVohn5c889xy233EJwcDBZWVksXLiQtWvXsmzZMrKzs3nllVe48847CQgIID4+nueeew5vb2/+9re/AeDh4cHo0aOZMGECXl5eeHp6MnHiRNq0aUPfvn2tfHQiIiIiIlJbxJ3M4cHPt7I/OQtbGxPP3tKC0Tc1uuLjrVLzVImwnZyczH333UdiYiIeHh60bduWZcuW0a9fP3Jzc9m9ezf/+c9/SE9PJyAggN69e/PVV1/h5uZm3sbbb7+NnZ0dQ4YMITc3l4iICObNm4etra0Vj0xERERERGqL6JgkJny9k6z8IrxdHfnw3vZ0buxl7bLESqrsONvWonG2RURERESkPIpLDGau2M+Haw4B0KlhPT4c1gE/dycrVyZXUpH5r0rc2RYREREREamO0nIKeOzL7Ww4eBKAf3QP4blbW2KvYb1qPYVtERERERGRa7DjWDoPzd9KQkYezva2vHFnGwa3q2/tsqSKUNgWEREREREpB8Mw+HLzMV75IYaC4hIae9dhzn0dae7nduWVpdZQ2BYREREREblKeYXFvPDdHv639TgA/cP8eOvv4bg52Vu5MqlqFLZFRERERESuwtFTZ3hw/lZiEzOxMcHTA1owtkdjDeslF6WwLSIiIiIicgVr9qUw/qsdZOQW4lXHgffvaU+3pt7WLkuqMIVtERERERGRSygpMXh31R+8t/oPDAPaBddl1rAOBNZ1tnZpUsUpbIuIiIiIiFxE+pkCxn+1g7X7UwG4r0tDXhjUEkc7WytXJtWBwraIiIiIiMh59pzI4MH5Wzl+OhdHOxum/K0Nd3YMsnZZUo0obIuIiIiIiJzj6y3HePG7PeQXldDA04U5wzvSKtDd2mVJNaOwLSIiIiIiQumwXpMXx/Ll5qMARLTwZeaQdni4aFgvKT+FbRERERERqfWOnz7DQ19sY9fxDEwmeLJvcx7u3RQbGw3rJddGYVtERERERGq1n/9I5bEvt3P6TCF1Xex59+729GzuY+2ypJpT2BYRERERkVqppMRg9rpDvBW9H8OANvU9mDWsA8GeLtYuTWoAhW0REREREal1MnILmfD1DlbuTQHg7huCeeW2MJzsNayXWIbCtoiIiIiI1Cp7EzN5cP5Wjpw6g4OdDa/eFsbdNzawdllSwyhsi4iIiIhIrbFo+3Ge/XY3eYUl1K/rzJzhHWkT5GHtsqQGUtgWEREREZEar6CohNd/jOWzTUcA6NHch3eHtqNeHQcrVyY1lcK2iIiIiIjUaIkZuTz8xTa2HU0H4LGIZjwe0QxbDeslFUhhW0REREREaqyNh07y2JfbOZldgLuTHW8PbUdESz9rlyW1gEXDdmZmJqtXryY0NJSWLVtactMiIiIiIiJXzTAMPl5/mGnL9lFiQMsAd+YM70BDrzrWLk1qCZvrWXnIkCF88MEHAOTm5tKpUyeGDBlC27Zt+eabbyxSoIiIiIiISHlk5RUybv42pv5UGrTv6FCfb8d1U9CWSnVdYXv9+vXcfPPNACxatAjDMEhPT+e9997jtddes0iBIiIiIiIiV+uP5CwGf/gLy2KSsLc18drtrZnx93CcHTR+tlSu6wrbGRkZeHp6ArBs2TLuvPNOXFxcGDhwIH/88YdFChQREREREbkaS3YlMPjDXzicmkOAhxNfj+3K8C4NMZnUEZpUvut6Zjs4OJhNmzbh6enJsmXLWLhwIQCnT5/GycnJIgWKiIiIiIhcTmFxCW/8tI9PNsQB0K2JF+/d0x5vV0crVya12XWF7fHjxzNs2DBcXV1p2LAhvXr1Akqbl7dp08YS9YmIiIiIiFxSSmYejyzYzub4NADG9WrChH7NsbO9rka8ItftusL2Qw89ROfOnTl69Cj9+vXDxqb0F7px48Z6ZltERERERCrU7/FpPPTFNlKz8nFztOOtIeH0D/O3dlkiwHWE7cLCQkJDQ1myZAl/+9vfyswbOHDgdRcmIiIiIiJyMYZhMPeXeKYs3UtRiUFzP1fmDO9IYx9Xa5cmYnbNYdve3p78/Hx1NiAiIiIiIpUmJ7+ISd/sYsmuRABuCw/kjTvb4OJwXY12RSzuuh5kePTRR5k2bRpFRUWWqkdEREREROSiDqVmc/uHv7BkVyJ2NiZejmrFu3e3U9CWKum6fit/++03Vq1aRXR0NG3atKFOnbKDxH/77bfXVZyIiIiIiAjAsj1JTPzvTrLzi/B1c2TWsA50CvG0dlkil3RdYbtu3brceeedlqpFRERERESkjKLiEt6KPsCcdYcAuLGRJx/c2x5fNw01LFXbdYXtuXPnWqSI2bNnM3v2bOLj4wEICwvjpZde4pZbbgFKO0CYPHkyH3/8MadPn6Zz5858+OGHhIWFmbeRn5/PxIkT+fLLL8nNzSUiIoJZs2YRFBRkkRpFRERERKRynczO59EF29l0+BQAY25qxKRbWmCvYb2kGrDIb2lqaiobNmzgl19+ITU1tdzrBwUF8cYbb7Blyxa2bNlCnz59GDx4MDExMQC8+eabzJw5kw8++IDff/8df39/+vXrR1ZWlnkb48ePZ9GiRSxcuJANGzaQnZ3NoEGDKC4utsQhioiIiIhIJdp29DSD3tvApsOncHGw5YN72/PCoFYK2lJtmAzDMK515ZycHB599FH+85//UFJSAoCtrS0jRozg/fffx8XF5ZoL8/T0ZPr06dx///0EBgYyfvx4Jk2aBJTexfbz82PatGmMHTuWjIwMfHx8+Pzzzxk6dCgACQkJBAcHs3TpUvr373/V+83MzMTDw4OMjAzc3d2vuX4REZHqwDAMVsQmM2vtITJzC+kX5kdU20DCAt014oiIWIVhGMz/9QivLomlsNigiU8d5gzvSDM/N2uXJjVQRea/6/pa6Mknn2TdunUsXryY9PR00tPT+f7771m3bh0TJky4pm0WFxezcOFCcnJy6Nq1K3FxcSQlJREZGWlextHRkZ49e7Jx40YAtm7dSmFhYZllAgMDad26tXkZERER+YthGKw/kMrtH/7CPz/fyo5j6Rw+mcNH6w4z6P0NRMxYx8wVB/gjOevKGxMRsZDcgmImfL2TF7+PobDY4NY2/nz/yE0K2lItXdcz29988w3/+9//6NWrl3narbfeirOzM0OGDGH27NlXva3du3fTtWtX8vLycHV1ZdGiRbRq1coclv38/Mos7+fnx5EjRwBISkrCwcGBevXqXbBMUlLSZfebn59Pfn6++efMzMyrrllERKQ62hyXxlvL97M5Pg0AZ3tb/tE9hFaB7izdnciqvSkcPpnDe6v+4L1Vf9DC342o8EAGtQ2goVedK2xdROTaHDmVw9jPt7IvKQtbGxPPDGjBmJsbqZWNVFvXFbbPnDlzQQgG8PX15cyZM+XaVmhoKDt27CA9PZ1vvvmGkSNHsm7dOvP88y8ywzCueOFdzTJTp05l8uTJ5apVRESkOtp5LJ23ovfz8x8nAXCws+G+Lg0Z16sJ3q6OAAxqG0h2fhErY5NZvDOB9X+ksi8pi31J+5m+fD/hQR5EhQcysG0AAR7O1jwcEalBVsYm88TXO8jKK8Lb1YH37+lA1yZe1i5L5Lpc1zPbEREReHl58Z///Acnp9Ku93Nzcxk5ciRpaWmsXLnymgvr27cvTZo0YdKkSTRp0oRt27bRvn178/zBgwdTt25dPvvsM1avXk1ERARpaWll7m6Hh4dz++23XzZMX+zOdnBwsJ7ZFhGRGmNfUiYzog+wIjYZADsbE0NvCOaRPk2vGJjTzxSwPCaJxTsT2XjoJCXnfGq4McSTqPAAbmkTYA7rIiLlUVxi8M7KA7y/+iAAHRrUZdawjvh7aFgvqRwV+cz2dd3Zfuedd7jlllsICgoiPDwck8nEjh07cHJyYvny5ddVmGEY5Ofn06hRI/z9/VmxYoU5bBcUFLBu3TqmTZsGQMeOHbG3t2fFihUMGTIEgMTERPbs2cObb7552f04Ojri6KgPCCIiUvMcTs3m7ZV/sGRXAoYBNib4W/sgHo9oRgOvq+vEtK6LA0NvaMDQGxqQmpXPT3sSWbwzgd/jT7M5Po3N8Wm8/EMM3Zt6E9U2kP5h/ni42FfwkYlITXA6p4DHFm43t7YZ1S2E525tiYOdehuXmuG67mxD6Z3s+fPns2/fPgzDoFWrVgwbNgxn56tvWvbcc89xyy23EBwcTFZWFgsXLuSNN95g2bJl9OvXj2nTpjF16lTmzp1Ls2bNmDJlCmvXrmX//v24uZV2ljBu3DiWLFnCvHnz8PT0ZOLEiZw6dYqtW7dia2t71bWoN3IREanujqWd4b1Vf/DNtuPmO9ED2wbwRN9mNPW1TCdDCem5/LgrkSW7Eth5PMM83d7WRI9mPkSFB9K3lR+ujtf1vb6I1FC7jqczbv42TqTn4mRvwxt3tOX29vWtXZbUQhWZ/64rbK9fv55u3bphZ1f2D2lRUREbN26kR48eV7Wd0aNHs2rVKhITE/Hw8KBt27ZMmjSJfv36AaV3uSdPnsxHH33E6dOn6dy5Mx9++CGtW7c2byMvL4+nnnqKBQsWkJubS0REBLNmzSI4OLhcx6SwLSIi1VVyZh4frD7Iwt+PUlhc+ue9b0tfnujXnLBAjwrb75FTOSzZVXrHe1/SX72XO9rZENHSl6i2gfRu4YuT/dV/+S0iNdfCzUd56fsYCopLCPFyYfbwjrQM0OdusY4qG7ZtbW1JTEzE19e3zPRTp07h6+tLcXHxdRdY2RS2RUSkujmVnc+cdYf4z6Yj5BeVAHBTU2+ejGxOhwb1rrC2ZR1IzmLJzgQW70ok7mSOeXodB1siw/yJCg/gpqY+aiYqUgvlFRbz0vd7+HrLcQD6tfLjrb+H4+GsR0/Eeqps2LaxsSE5ORkfH58y0w8cOECnTp2q5TBaCtsiIlJdZOQW8n/rD/PpL3GcKSj9grtTw3pMiAy1ei++hmEQk5DJ4p0JLNmVyIn0XPM8D2d7bmntT1R4IF0ae2Fro2F9RGq6Y2lnGPfFVvacyMTGBBMiQxnXswk2uv7Fyqpc2L7jjjsA+P777xkwYECZDsaKi4vZtWsXoaGhLFu2zHKVVhKFbRERqepy8ouY+0scH68/TGZeEQBt6nswIbI5PZv7VLkxaUtKDLYfO83inYks2ZXIyey/RgHxdnVkYBt/BoUH0rFBPX3wFqmB1u5PYfxXO0g/U4hnHQfeu7s9NzXztnZZIkAV7I3cw6P0uS/DMHBzcyvTGZqDgwNdunThgQcesEyFIiIiApQ2wZz/6xFmrT1EWk4BAM39XHmyXyj9w/yqXMg+y8bGRMeGnnRs6MmLg1rxW9wpFu9M5Kc9pcH7s01H+GzTEQI8nBjUNoCo8EDa1PeosscjIlenpMTggzUHeXvlAQwDwoM8mDW8I/XrXn1HyiLV2XU1I588eTITJ06kTp06lqzJqnRnW0REqpqCohK+2nKMD1b/QXJm6V3hEC8XnujXnEFtA6ttM+zC4hI2HDzJ4p0JRMckk51fZJ7X0MuFqLaBRIUHEupvmR7URaTyZJwp5Imvd7B6XwoA93ZuwMtRrXC0U0eJUrVUuWbkNZnCtoiIVBVFxSUs2n6Cd1f9wfHTpc8816/rzOMRzbijQ33sbGtOJ2N5hcWs3Z/K4l0JrNqbTF5hiXlecz9XotoGMig8kEbeNecLfpGaKiYhg3Hzt3E07QyOdja8dntr/t6pfCMEiVSWKhW2O3TowKpVq6hXrx7t27e/bBOvbdu2XXeBlU1hW0RErK2kxODH3Ym8vfIAh1NLe/T2cXPk0T5NGXpDcI2/M5STX8TKvcks3pnI+gOpFBT/Fbzb1PcgKjyAgW0D1RRVpAr639bjPL9oN/lFJQR7OjN7WEda16+4oQdFrleVemZ78ODB5g7Rbr/9dosWIyIiUpsZhsHKvSnMiN5vHq+6nos943o14b4uITg71OyQfVYdRzsGt6vP4Hb1ycgtJDomicW7Evnl4El2n8hg94kMpizdR6eG9YgKD+SWNv74ujlZu2yRWi2/qJhXF8fyxW9HAegV6sM7Q9tR18XBypWJWI+akZ9Hd7ZFRKSyGYbBhoMneSv6ADuPpQPg5mjHAz0a84/uIbg5aQxaKB1P/Kc9SSzemcDm+DTOfoKxMUGXxl5EhQcyIMyfenX04V6kMiWk5zLui23sPJaOyQSPRzTjsT7NNLqAVAtVqhn5uY4dO4bJZCIoKAiAzZs3s2DBAlq1asU///lPixVZmRS2RUSkMm2OS+Ot6P1sjksDwNneln90D+GfPRrrjtBlJGXk8ePuRBbvTGDHn19QANjZmLi5mTdR4YH0a+WnLypEKtgvB0/y6JfbScspwMPZnnfubkfvUF9rlyVy1aps2L755pv55z//yX333UdSUhLNmzendevWHDhwgMcee4yXXnrJkrVWCoVtERGpDDuPpTNjxQHWH0gFwMHOhuGdGzKuVxN83BytXF31ciztDIt3JbB4ZyJ7EzPN0x3sbOgT6ktUeCB9WvjWmmb4IpXBMAxmrzvEW8v3U2JAWKA7c4Z3JNjTxdqliZRLlQ3b9erV49dffyU0NJT33nuPr776il9++YXo6GgefPBBDh8+bMlaK4XCtoiIVKR9SZnMiD7AithkoPRO7JAbgnm0T1MCPNTh1/U6mJLF4p2JLN6VYO5cDsDFwZZ+rfyIahvIzc29a3wncyIVKTOvkIlf7yT6z//H/t4xiH/d3hone11XUv1UqQ7SzlVYWGjuLG3lypXcdtttALRo0YLExMTrr05ERKSGOJyazdsr/2DJrgQMo/Q549vb12d8RHMaeOlOkKU09XXjiX5ujO/bjL2JWX/e8U7g+Olcvt+RwPc7EnBzsmNAmD9R4YF0a+JVo4ZQE6lo+5OyeHD+VuJO5uBga8PkwWHcfUPwZUcoEqmtruvOdufOnenduzcDBw4kMjKSX3/9lfDwcH799Vfuuusujh8/bslaK4XubIuIiCUdSzvDe6v+4Jttxyn58y/uwLYBPNG3GU193axbXC1hGAY7jqWzeGciS3YlkJKVb57nVceBW9r4E9U2kBtCPNWhk8hlfL/jBM98s5vcwmICPZyYPbwj4cF1rV2WyHWpss3I165dy9/+9jcyMzMZOXIkn376KQDPPfcc+/bt49tvv7VYoZVFYVtERCwhOTOPD1YfZOHvRyksLv1T27elL0/0a05YoMactZbiEoPf49NYvDOBn/YkkZZTYJ7n7+7EwLYBRIUHEh7koTt1In8qKCphytK9zNsYD8DNzbx59+72eKrnf6kBqmzYBiguLiYzM5N69eqZp8XHx+Pi4oKvb/XriVBhW0RErsep7HzmrDvEfzYdIb+oBICbmnrzZGRzOjSod4W1pTIVFpew8dApFu9MYPmeJLLyi8zzgj2diWobyKC2gbQMcFPwllorOTOPh77YxtYjpwF4pHdTnujXHFu1ApEaokqH7ZpGYVtERK5FRm4h//75MJ9uiCOnoBiAjg3rMTEylK5NvKxcnVxJflEx6/ansnhXIitjk8ktLDbPa+JTh6jwQKLCA2ni42rFKkUq16+HT/HIgu2czM7HzcmOmUPa0a+Vn7XLErGoKhW2O3TowKpVq6hXrx7t27e/7De927Ztu+4CK5vCtoiIlEdOfhHzNsbz0bpDZOaV3hltXd+dCZGh9Gruozui1dCZgiJW70th8c4E1uxPpeDPFgoArQLciQoPZFDbAA1xJDWWYRj8++c43li2j+ISgxb+bswZ3pEQ7zrWLk3E4qpUb+SDBw8mNjaW7t27c/vtt1u0GBERkeoir7CY+b8eYfbaQ5z687nf5n6uPNkvlP5hfgrZ1ZiLgx2D/mxCnplXyIqYZBbvSmDDHyeJTcwkNjGTacv20b5BXaLaBjKwbQB+7k7WLlvEIrLzi3j6fztZujsJgL+1r8+Uv7XROPUi1+CampHb2NjQvn17Ro8ezbBhw/DwqDkdvejOtoiIXE5BUQlfbTnGB6v/IDmztFfrEC8XnujXnEFtA/UcYw2WllPAsj1JLN6ZwK9xpzj7Ccpkgs6NPIkKD+SW1gHqNEqqrYMpWYz9fCuHUnOwtzXx4qBW3Nelob48lBqtSjUjB9i0aROffvopX3/9NYWFhdx5553cf//99O7d26LFWYPCtoiIXExRcQmLtp/g3VV/cPx0LgD16zrzWERT7ugQhL3Gaq5VUjLzWLo7kcW7Es0dRwHY2pi4qak3UeGBRIb54e5kb8UqRa7e0t2JPPXfneQUFOPn7sisYR3p2FCdOkrNV+XC9lm5ubl8/fXXzJ07l59//pmQkBDuv/9+Ro4cSVBQkCXrrDQK2yIicq6SEoMfdyfy9soDHE7NAcDHzZFHejfl7huDcbRT08ra7vjpM/y4K5HFuxLYcyLTPN3B1oaeoT5EhQfSt6UvLg7lfnpPpMIVFZcwbdk+/u/nOAC6NPbk/Xs64OPmaOXKRCpHlQ3b5zp06BBz587lP//5D4mJifTr14+lS5daYtOVSmFbRESgtIOglXtTmBG9n31JWQDUc7HnwZ5NGNE1RM8vykUdTs1mya5EftiZwMGUbPN0Z3tbIlr6EhUeSM/mPjjZ6/dHrC8lK49HF2znt7g0AMb2aMxT/UOxU0sdqUWqRdgGyM7O5osvvuC5554jPT2d4uLiK69UxShsi4jUboZhsOHgSd6KPsDOY+kAuDna8UCPxvyjewhuahYsV8EwDPYnZ7F4ZwKLdyZyNO2MeZ6box2RYf5EhQfQvam3HkEQq9gSn8ZDX2wjJSufOg62vPX3cG5pE2DtskQqXZUP2+vWrePTTz/lm2++wdbWliFDhjB69Gi6dOliiRorlcK2iEjt9Xt8GtOX72fzn3d5nO1t+Uf3EP7ZozF1XdTplVwbwzDYdTyDxTsTWLIrkaTMPPO8ei723NImgKi2gdzYyFMd7EmFMwyDzzbG89qPeykqMWjq68qc4R1p6qsx5KV2qpJh+9ixY8ybN4958+YRFxdHt27dGD16NEOGDKFOneo7Bp/CtohI7bPreDpvRR9g/YFUABzsbBjeuSHjejXRc4tiUSUlBluOnGbxzgR+2pPIyewC8zxfN0cGtg1gUNtAOjSoqx6gxeLOFBTx7Le7+X5HAgCD2gYw7c621HFUfwJSe1W5sN2vXz/WrFmDj48PI0aM4P777yc0NNSihVmLwraISO2xLymTmdEHiI5NBsDOxsSQG4J5tE9TAjycrVyd1HRFxSX8ejjNHLwz84rM8+rXdWZQeOkd77BAdwVvuW5xJ3N48POt7E/OwtbGxHO3tuT+7iH63ZJar8qF7dtuu43Ro0czaNAgbG1rVgcfCtsiIjXf4dRs3ln5B4t3JWAYYGOC29vX5/GIZjT0qr6ts6T6Kigq4ec/Ulm8M4EVscnkFPzV701j7zoMCg/ktvAAmvq6WbFKqa6iY5KY8PVOsvKL8HFz5MN7O3BjI09rlyVSJVS5sF2TKWyLiNRcx9LO8P7qP/hm2wmKS0r//A1sE8AT/ZopxEiVkVtQzJr9KSzemcDqfSnkF5WY57XwdyMqPJCotoE08HKxYpVSHRSXGMyI3s+stYcAuCGkHh/e2wFfdycrVyZSdShsVyKFbRGRmic5M48PVh9k4e9HKSwu/bMX0cKXJyObExboYeXqRC4tK6+QlXuTWbwzkfUHUikq+etjW3iQB1HhgQxsG6DHHuQCp7LzeWzhdn45eAqA+7s34tlbW6j3e5HzKGxXIoVtEZGa41R2PnPWHeI/m46Y7w7e1NSbJyOb06FBPStXJ1I+6WcKWB6TxOKdiWw8dJJzcjc3hngSFR7ALW0C8HZVp3613Y5j6Yybv5XEjDyc7W2ZdldbbgsPtHZZIlWSwnYlUtgWEan+MnIL+ffPh/l0Q5z52deODesxMTKUrk28rFydyPVLzcrnpz2JLN6ZwO/xp83TbUzQvak3UW0D6R/mj4eLxoWvTQzD4IvfjvLq4lgKikto7F2HOfd1pLmfHpMRuRSF7UqksC0iUn3l5Bcxb2M8H607ZO7ZuXV9dyZEhtKruY963ZUaKSE9lx93JbJ4VwK7jmeYp9vbmujZ3Ieo8ED6tvTT8E41XF5hMc8v2sM3244D0D/Mj7f+Ho6bk75wEbkche1KVNXD9tr9Kfwen0ZkK3/aBnnog6OICKUfMuf/eoTZaw9xKqd03OLmfq482S+U/mF++r9Sao34kzks2ZXA4p2J7E/OMk93srchooUfUeEB9Ar1xcm+Zo0mU9sdPXWGB+dvJTYxExsTTBrQgn/2aKz/+0SuQo0P21OnTuXbb79l3759ODs7061bN6ZNm1Zm7O5Ro0bx2WeflVmvc+fO/Prrr+af8/PzmThxIl9++SW5ublEREQwa9YsgoKCrrqWqh62H/5iGz/uTgTA392JyDA/Ilv507mxpzq8EJFap6CohK+3HOOD1QdJyswDIMTLhSf6NWdQ20BsbfRBU2qvA8lZLNmZwA87E4g/dcY83dXRjn6tSoP3TU19cLDT54fqbM2+FB5fuJ3MvCK86jjw/j3t6dbU29pliVQbNT5sDxgwgLvvvpsbbriBoqIinn/+eXbv3k1sbCx16pSOdzpq1CiSk5OZO3eueT0HBwc8Pf8aI3DcuHEsXryYefPm4eXlxYQJE0hLS2Pr1q1XPR54VQ/bP+0ubSa2dn8qZ84Zg9PdyY6Iln5EtvKjZ6gPLg5qKiYiNVdRcQnf7Ujg3VUHOJaWC0CghxOP923GHR2C9OWjyDkMwyAmIZPFOxNYvDOBhIw88zwPZ3tuae1PVHggXRp76QuqaqS4xODdVX/w3qo/AGgXXJfZwzuoZ3qRcqrxYft8qamp+Pr6sm7dOnr06AGUhu309HS+++67i66TkZGBj48Pn3/+OUOHDgUgISGB4OBgli5dSv/+/a9q31U9bJ+VV1jMxkMnWb4nmZV7k83NJgEc7Wy4uZk3ka38iWjpi5d6JRWRGqKkxODH3Ym8vfIAh1NzAPBxc+SR3k25+8ZgHO3UNFbkckpKDLYfO83inYks2ZXIyex88zxvV0cGtikN3h0a1MNGwbvKOp1TwPivdrDuQCoA93VpyAuDWur/QJFrUOvC9sGDB2nWrBm7d++mdevWQGnY/u6773BwcKBu3br07NmT119/HV9fXwBWr15NREQEaWlp1Kv313Au4eHh3H777UyePPmi+8rPzyc//68/NJmZmQQHB1f5sH2u4hKDbUdPs3xPEtGxyRxN+6upmI0JOoV4EtnKj/5h/gR7ulixUhGRa2MYBiv3pjAjej/7kkqfQ63rYs+4nk0Y0TUEZwd9wBQpr+ISg98On2LxrgR+2pNE+plC87xADycGhQcS1TaQ1vXd9exvFbL7eAYPzt/KifRcnOxtmPK3NtzR4eofmRSRsmpV2DYMg8GDB3P69Gl+/vln8/SvvvoKV1dXGjZsSFxcHC+++CJFRUVs3boVR0dHFixYwD/+8Y8ywRkgMjKSRo0a8dFHH110f6+88spFg3h1CtvnMgyD/clZRMckszwmiZiEzDLzWwa4m4N3ywA3/fEUkSrNMAw2HDzJW9EH2HksHQA3RzvG3NyY+28KUS+7IhZSUFTCLwdPsnhnAtGxyWTnF5nnhXi5EBUeSFR4oIaQsrKvfz/GC9/voaCohAaeLswZ3pFWgdXv86pIVVKrwvbDDz/Mjz/+yIYNGy7bsVliYiINGzZk4cKF3HHHHZcM2/369aNJkybMmTPnotupCXe2L+f46TOsiC0N3pvj0ig552wH1XMmspU//cP86BTiqee0RKRK+T0+jenL97M5Lg0AZ3tbRnUPYWyPxtR1cbBydSI1V15hMWv3p7J4VwKr9iaTV1hintfcz5WotoEMCg+kkXcdK1ZZu+QVFjN5cQxfbj4GQEQLX2YOaadx1EUsoNaE7UcffZTvvvuO9evX06hRoysu36xZM8aMGcOkSZOuuRn5+arLM9vXIi2ngNX7Ulgek8T6A6nkF/31x9OzjgMRLXyJDPPn5mbeGhJERKxm1/F0ZkQfMD+L6GBnw/DODRnXqwk+buqDQqQy5eQXsXJvMot3JrLuQAqFxX99bGxT34Oo8AAGtg2kfl11ylVRjp8+w7j529h9IgOTCZ7s25yHezfVM/UiFlLjw7ZhGDz66KMsWrSItWvX0qxZsyuuc+rUKerXr8/HH3/MiBEjzB2kzZ8/nyFDhgCld7+DgoJqZAdp1+tMQRE//3GS5TFJrNqbQkbuX89pOdvb0rO5D5FhfkS08NO3piJSKfYnZTFzxX6WxyQDYGdjYsgNwTzSuymB+iAvYnUZZwpZHpvE4p0JbDx0iuJzmst1aliPqPBAbmnjj6+bkxWrrFnWH0jlsYXbST9TSF0Xe967uz09mvtYuyyRGqXGh+2HHnqIBQsW8P3335cZW9vDwwNnZ2eys7N55ZVXuPPOOwkICCA+Pp7nnnuOo0ePsnfvXtzcSp8fGjduHEuWLGHevHl4enoyceJETp06VaOG/qoIRcUlbI5PIzommeiYpDJDgtjamOjS2JPIVv5EhvlpOAkRsbi4kzm8veIAi3clYBilHTve3r4+j0c0o6GXmqmKVEUns/P5aU9p8P49Po2znyZtTNC1iReD2gYyIMyfenX0yMe1KCkxmLX2IDNWHMAwoG2QB7OGdSConjq6FbG0Gh+2L9VJ19y5cxk1ahS5ubncfvvtbN++nfT0dAICAujduzf/+te/CA4ONi+fl5fHU089xYIFC8jNzSUiIoJZs2aVWeZKamPYPtfZsTijY5JYHpPM/uSsMvPbBnnQP8yfyFZ+NPV1VQdrInLNjp8+w3ur/uCbbSfMd8gGtgngiX7NaOqrTphEqovEjFx+3JXI4l2J5o4MobR1ys3NvIkKD6RfKz91aHiVMnILmfD1DlbuTQHgnhuDeTkqTI/4iVSQGh+2q5LaHrbPF38yh+jYJKJjktl69DTn/rY08q5DZJgfka38aR9cV88OichVSc7M48M1B/ly81Hz858RLXx5MrI5YYEeVq5ORK7H0VNnWLI7gcU7E9mb+NeIKA52NvQJ9SUqPJA+LXw1XN8lxCZkMu6LrRw5dQYHOxv+NTiMoTc0sHZZIjWawnYlUti+tNSsfFbuLW1q/svBUxQU/9XBmo+bI/1a+RHZyo+uTbxwtNMfUREpKy2ngDnrDvHZxnhzB43dm3oxITKUDg3qXWFtEaluDqZksXhnIot3JnD4ZI55uouDLf1a+RHVNpCbm3vrM8Ofvt12nOcW7SavsIT6dZ2ZM7wjbYL0BaRIRVPYrkQK21cnO7+ItftTiI5JZs2+FLLOGY/T1dGOXqE+9A/zp1eoj5qNidRyGbmF/Pvnw3y6IY6cgmIAOjasx4TI5nRr4m3l6kSkohmGQWxipjl4n0jPNc9zd7JjQGt/osID6drYCztbGytWah0FRSX8a0ksn/96BIAezX14d2g7Pe8uUkkUtiuRwnb5FRSVsOnwKaJjklgRm0xK1l/jltvbmujWxJv+Yf70beWrHkpFapGc/CLmbYzno3WHyMwr/UKudX13JkSG0qu5j/p8EKmFDMNg+7F0Fu9M4MddiWU+M3jVceCWNv5EtQ3khhDPWvF4WmJGLg99sY3tR9MBeCyiGY9HNMO2Fhy7SFWhsF2JFLavT0mJwY7j6eaezc9tNmYyQfvguqUdrIX508hbvQyL1ER5hcXM//UIs9ce4lROAQDNfF2ZENmc/mH+CtkiAkBxicHv8Wks3pnA0t2JnD7z1zCk/u5ODGwbQFR4IOFBHjXy/42Nh07y6ILtnMopwN3JjnfubkefFn7WLkuk1lHYrkQK25Z1MCWb5TFJRMcml+mhFEo/fJcGbz/a1K+Zf0hFapOCohK+3nKMD1YfJCmzdAjBhl4uPNG3OVHhgbpTIyKXVFhcwsZDp1i8M4Hle5LKPJ4W7OlMVNtAosIDaeHvVu0/LxiGwUfrD/Pmsn2UGNAywJ2PhnekgZeG9RKxBoXtSqSwXXGSMvJYEVsavDcdOkVRyV+/egEeTkS28iMyzJ8bG3liXwuf2RKpropLDBZtP8G7qw5wLK30WcxADycei2jGnR2DdD2LSLnkFRaz/kAqi3clsjI2mdzCYvO8pr6uRLUNZFB4AE18XK1Y5bXJyivkqf/uYllMEgB3dgjitdtbq3d2EStS2K5ECtuVIyO3kDX7UoiOTWLt/lTOFPz1h9TD2Z6IFr5EhvnRo7kPLg52VqxURC6lpMRg6Z5E3l5xgEOppY+M+Lg58kjvptx9Y7B6GBaR63amoIhVe1NYvDOBtftTy4yEEhboTlR4IAPbBBDsWfXvCh9IzuLBz7dy+GQO9rYmXrktjHtvbFDt79SLVHcK25VIYbvy5RUW88vBk0THJLNyb7L5GU8ARzsbbm7mQ2SYH31b+uGpnjlFrM4wDFbtTWHGigPmcXTrutgzrmcTRnQN0R0aEakQmXmFRMcks2RXAj//cZLic1rItW9Ql6i2gQxsG4Cfe9XrjPWHnQlM+t8ucguLCfBwYtawDrTXkIciVYLCdiVS2Lau4hKDrUdOEx2TxPLYJHOTVAAbE9wQ4klkmD+RrfyqxbfYIjWJYRj8cvAUb0XvZ8effTC4Odox5ubG3H9TiIb5E5FKk5ZTwLI9SSzemcCvcac4+2nWZILOjTyJCg/kltYBVv+SvrC4hKlL9/HpL3EAdGvixfv3tMfL1dGqdYnIXxS2K5HCdtVhGAb7krJKezaPTSImIbPM/FYB7kSG+RHZyp+WAdW/wxSRquz3+DTeWr6f3+LSAHC2t2VU9xDG9mhMXRe1OBER60nOzGPp7tIxvLf9OYQWgK2NiZuaehMVHkhkmB/ulfyFYEpmHg8v2Mbv8acBGNerCRP6Na+VY4mLVGUK25VIYbvqOpZ2hhWxpcF7c1wa57QeI9jTmchWpXe8O4V4qtdjEQvZdTydGdEHWHcgFQAHWxuGdWnAuF5N8HWrek01RaR2O5Z2hh//DN7nfknvYGtDr1AfosIDiWjpW+H9wWyOS+PhBdtIzcrHzdGOt4aE0z/Mv0L3KSLXRmG7EilsVw9pOQWs2ptMdGwy6w+kkl/0V4cpnnUc6NvSl8hW/tzUzBsnez0/KlJe+5OymLliP8tjkgGwszHx907BPNqnKYF1na1cnYjIlR1KzWbJzkR+2HnC3IkjlLbMiWjpS1R4ID2b+1j0c4JhGHz6SzxTlu6luMQg1M+N2cM70Lga9pwuUlsobFcihe3q50xBEesPnCQ6NolVe1PIyC00z3NxsKVn89IO1vqE+uHhomdKRS4n7mQOb684wOJdCRhG6fOPf2tXn8f7NqOhVx1rlyciUm5nH0tbsiuBxTsTOZp2xjzPzdGOyDB/osID6N7U+7qGKszJL2LSN7tYsisRgMHtApl6RxuNqiJSxSlsVyKF7eqtsLiE3+PSiI5NJjomiYSMPPM8OxsTXRp7ERnmR79WfgR46O6cyFnHT5/h/VUH+d+24+Yefge2CWB832Y083OzcnUiIpZhGAa7jmeweGcCS3YlkpT51+eEei723NImgKi2gdzYqHyPpB1KzebBz7fyR0o2djYmXhjYkpHdQtSfjEg1oLBdiRS2aw7DMNhzIpPo2CSiY5LZn5xVZn54kAeRYf70D/OjiY+r/iBKrZSSmccHaw7y5eajFBaX/jmIaOHLE/2a07q+h5WrExGpOCUlBluOnGbxzgSW7k4sM/Sor5sjA9sGEBUeSPvgupf9jPDT7kSe+t8usvOL8HVzZNawDnQK8ayMQxARC1DYrkQK2zVX3MkcVvwZvLcePc25v/mNvevQL8yP/mH+tAuqi406WJMaLi2ngDnrDvHZxnhznwfdm3rxZL9QOjbU2K8iUrsUFZew6fApFu9MYNmeJDLziszz6td1Jio8kEFtAwgLdDcH76LiEqYv389H6w8DcGMjTz64t706jxSpZhS2K5HCdu2QkpXHqr0pRMck8cvBUxQU/9XBmo+bI/1a+RHZyo9uTbxxsNMQHVJzZOQW8snPh/lkQxw5BcUAdGxYjwmRzenWxNvK1YmIWF9BUQk//5HK4p0JRMcmc+bP/yuh9Mv5QeGB9GzuzfTl+/n1cOlwiA/c3IinB7S4rme+RcQ6FLYrkcJ27ZOVV8i6A6lExySzZl8KWfl/fZvt5mhHrxa+9A/zo2dzH9wqeYxOEUvJyS9i3sZ4Pl5/2NyJYOv67kyIDKVXcx89RiEichG5BcWs2Z/C4p0JrNqXQsE5o59AaUes0+8KZ2DbACtVKCLXS2G7Eils124FRaXNyKJjkoiOTSY1K988z8HWhm5Nvegf5k/fln74uDlasVKRq5NXWMwXvx1l9tqDnMwufR6xma8rEyKb0z/MXyFbROQqZeUVsnJvMot3JrL+QCoh3nWYM7wDTX3ViaRIdaawXYkUtuWskhKDHcfTiY4p7dn88Mm/xug0maBDg3r0D/MjspU/Id4aEkmqloKiEr7ecowPVh8097bb0MuFJ/o2Jyo8sFy97IqISFlnCopwsLXBTs3GRao9he1KpLAtF2MYBodSs1n+Z/DeeTyjzPzmfq70D/MnspU/reu7626hWE1xicGi7Sd4d9UBjqXlAhDo4cRjEc24s2OQnicUEREROYfCdiVS2JarkZiRy8rYZJbHJPPr4VMUlfx1GQV6ONGvVWnP5jc08lS4kUpRUmKwdE8ib684wKHU0lYY3q6OPNK7Cfd0boCjna2VKxQRERGpehS2K5HCtpRXxplC1uxPYXlMEusOpJbptdTD2Z6IFr5EhvnTo7k3Lg52VqxUaiLDMFi1N4UZKw6wNzETgLou9jzYswkju4bg7KCQLSIiInIpCtuVSGFbrkdeYTG/HDzJ8pgkVu5NIS2nwDzP0c6Gm5v50D/Mj4iWfnjWcbBipVLdGYbBLwdP8Vb0fnYcSwdKe88fc3Nj7r8pRD3ni4iIiFwFhe1KpLAtllJcYrD1yGmiY5JYHptkfn4WwMYEN4R40j/Mn36t/Aj2dLFipVLdbIlPY/ry/fwWVzq+q7O9LaO6h/DPmxtTT1/iiIiIiFw1he1KpLAtFcEwDPYlZREdk8zymCRi/2zue1ZYoDuRrfyJDPOjhb+bOliTi9p9PIO3ovez7kAqUDoc3bAuDRjXqwm+bk5Wrk5ERESk+lHYrkQK21IZjqWdYUVsafD+PT6Nc/pXo4GnC5Gt/IgM86djw3oaoknYn5TFzBX7WR6TDICdjYm/dwrm0T5NCazrbOXqRERERKovhe1KpLAtlS0tp4BVe0t7Nv/5j1Tyi0rM87zqONC3pR+RYX50b+qNk706u6pN4k7m8M7KA/ywMwHDKB3f/W/t6vN432Y09NLY7iIiIiLXS2G7EilsizWdKShi/YGTRMcksWpfChm5heZ5Lg629Ar1IbKVP71b+OLhrA6waqrjp8/w/qqD/G/bcYr/bPZwaxt/nujbnGZ+blauTkRERKTmUNiuRArbUlUUFpfwe1way2OSiI5NJjEjzzzPzsZE1yZeRLbyo18rf/w99LxuTZCSmceHaw6yYPNRCotL/2vu08KXJ/s1p3V9DytXJyIiIlLzKGxXIoVtqYoMw2DPicw/g3cSB5Kzy8wPD65LZCs/+of50dRXdz6rm7ScAj5ad4jPNsWTV1j6GEH3pl482S+Ujg3rWbk6ERERkZpLYbsSKWxLdRB3MofoP+94bzt6mnOv4sY+dcw9m7cLqouNOlirsjLzCvn3z3F8uiGO7PwiADo0qMvE/qF0a+Jt5epEREREar4aH7anTp3Kt99+y759+3B2dqZbt25MmzaN0NBQ8zKGYTB58mQ+/vhjTp8+TefOnfnwww8JCwszL5Ofn8/EiRP58ssvyc3NJSIiglmzZhEUFHTVtShsS3WTkpXHytgUomOT2HjwFAXFf3Ww5uvmSL8/ezbv2tgLBzsbK1YqZ50pKGLuL/F8vP6w+bn8sEB3JkaG0ivUR0O/iYiIiFSSGh+2BwwYwN13380NN9xAUVERzz//PLt37yY2NpY6dUp73J02bRqvv/468+bNo3nz5rz22musX7+e/fv34+ZW2mx23LhxLF68mHnz5uHl5cWECRNIS0tj69at2NpeXS/OCttSnWXlFbJ2fyrRscms2ZdivlsK4OZoR+8WvkSG+dEr1BdXRzsrVlo75RUW88VvR5m99iAnswsAaObryoTI5vQP81fIFhEREalkNT5sny81NRVfX1/WrVtHjx49MAyDwMBAxo8fz6RJk4DSu9h+fn5MmzaNsWPHkpGRgY+PD59//jlDhw4FICEhgeDgYJYuXUr//v2vat8K21JT5BcVs+nQKaJjk1kRm0xqVr55noOtDd2behEZ5k/fln74uDlasdKar6CohP9uPcb7qw6SlFna0V1DLxee6NucqPBAjaUuIiIiYiUVmf+q5K2tjIwMADw9PQGIi4sjKSmJyMhI8zKOjo707NmTjRs3MnbsWLZu3UphYWGZZQIDA2ndujUbN268ZNjOz88nP/+vEJKZmVkRhyRS6RztbOkV6kuvUF9eG9yaHcfTSztYi0km7mQOa/ansmZ/Ks+ZdtOxQT0iw/yIbOVPiLfGb7aU4hKD77af4J1VBziWlgtAoIcTj0U0486OQdjbqlm/iIiISE1V5cK2YRg8+eST3HTTTbRu3RqApKQkAPz8/Mos6+fnx5EjR8zLODg4UK9evQuWObv+xUydOpXJkydb8hBEqhwbGxMdGtSjQ4N6PDOgBYdSs1kek0x0TBI7j2ew5chpthw5zZSl+wj1czMH79b13dW0+RqUlBgs3ZPI2ysOcCg1BwBvV0ce6d2Eezo3wNHu6h5rEREREZHqq8qF7UceeYRdu3axYcOGC+ad/6HfMIwrBoErLfPss8/y5JNPmn/OzMwkODi4nFWLVB8mk4mmvm409XXj4d5NSczIZUVsMtExyfx6+BT7k7PYn5zF+6sPEujhRGRYac/mN4Z4Yqc7sZdlGAar9qYwY8UB9iaWtpKp62LPgz2bMLJrCM4OCtkiIiIitUWVCtuPPvooP/zwA+vXry/Tg7i/vz9Qevc6ICDAPD0lJcV8t9vf35+CggJOnz5d5u52SkoK3bp1u+Q+HR0dcXTU86pSewV4ODOiawgjuoaQcaaQ1ftLg/fa/akkZOQxb2M88zbGU9fFnj4tfOkf5k+PZj4KjucwDINfDp7irej97DiWDoCrox1jbm7E/Tc1wt3J3roFioiIiEilqxJh2zAMHn30URYtWsTatWtp1KhRmfmNGjXC39+fFStW0L59ewAKCgpYt24d06ZNA6Bjx47Y29uzYsUKhgwZAkBiYiJ79uzhzTffrNwDEqmmPFzs+Vv7IP7WPoi8wmI2/HGS6NgkVu5NIS2ngG+3neDbbSdwsrfh5mY+9A/zJ6KFL/XqOFi7dKvZEp/GW9H7+fVwGgBO9jaM6taIsT0a1+r3RURERKS2qxJh++GHH2bBggV8//33uLm5mZ+x9vDwwNnZGZPJxPjx45kyZQrNmjWjWbNmTJkyBRcXF+69917zsqNHj2bChAl4eXnh6enJxIkTadOmDX379rXm4YlUS072tvRt5UffVn4UlxhsiU8jOjaZ5TFJHD9d2vR8RWwytjYmbgipR/8wf/q18iOonou1S68Uu49nMGPFftbuTwVKe3i/t3MDHurdBF83JytXJyIiIiLWViWG/rrUM9Vz585l1KhRQOnd78mTJ/PRRx9x+vRpOnfuzIcffmjuRA0gLy+Pp556igULFpCbm0tERASzZs0q1zPYGvpL5PIMw2BvYhbRsaU9m8cmlu3BPyzQnchW/vRv7Ueon1uN62Btf1IWb684wLKY0i8F7WxM/L1TMI/2aUpgXWcrVyciIiIi5VHrxtm2JoVtkfI5lnaG6NjSns1/j0+j5Jz/URp4uhDZyo/+rf3p0KBetR5POu5kDu+sPMAPOxMwDDCZ4G/t6vN432Y09NJwaSIiIiLVkcJ2JVLYFrl2p7LzWbUvheiYZH7+I5X8ohLzPK86DvRt6Uf/1n50a+KNk3316GDtRHou7638g/9tO07xn98k3NrGnyf6NqeZn5uVqxMRERGR66GwXYkUtkUs40xBEesPpBIdk8zKvclk5hWZ57k42NIrtLSDtV6hvng4V73eulMy8/hwzUG+3HyMguLSLw36tPDlyX7NaV3fw8rViYiIiIglKGxXIoVtEcsrLC5hc1wa0TFJRMcmk5iRZ55nZ2OiaxMvIsP86dfSD38P63YulpZTwEfrDvHZpnjyCktDdvemXjzZL5SODetdYW0RERERqU4UtiuRwrZIxTIMg90nMoiOSSY6NokDydll5rcLrktkmB+Rrfxp6utaaXVl5hXy75/j+HRDHNn5pXfhOzSoy8T+oXRr4l1pdYiIiIhI5VHYrkQK2yKVK+5kjvmO97ajpzn3f6TGPnXoH+ZPZCs/woPqYlMBHaydKShi7i/xfLz+MBm5hUBpj+oTI0PpFepT43pTFxEREZG/KGxXIoVtEetJycpjZWwKy2OS2HjoJIXFf/335OfuSL9WpXe8uzT2wsHO5rr2lVdYzILfjjJr7UFOZhcA0MzXlSf7Nad/mH+FBHsRERERqVoUtiuRwrZI1ZCVV8ja/aksj0li7f5Uc9NuADcnO/q08CWylT89Q31wdbS76u0WFpfw9ZZjvL/qIEmZpc+ON/RyYXzfZtwWXr9aD08mIiIiIuWjsF2JFLZFqp78omI2HTpFdGwyK2KTSc3KN89zsLPhpqbeRLbyI6KlHz5ujhfdRnGJwXfbT/Duqj84mnYGgAAPJx6LaMZdHYOwt72+O+UiIiIiUv0obFcihW2Rqq2kxGD7sXSiY5OIjkkm7mSOeZ7JBJ0a1iOylT+RYX409KpDSYnBT3uSmLliP4dSS5f1dnXkkd5NuPvGBtVmvG8RERERsTyF7UqksC1SfRiGwcGUbKJjk1kek8Su4xll5rfwdwNgX1IWAHVd7HmwZxNGdG2Ii8PVNz0XERERkZpJYbsSKWyLVF8J6bms3FsavH89nEZxSel/b66Odoy5uRH339QIdyd7K1cpIiIiIlWFwnYlUtgWqRkyzhSyen8yGWcKGdyuPvXqOFi7JBERERGpYioy/6kdpYjUSB4u9vytfZC1yxARERGRWkrd74qIiIiIiIhYmMK2iIiIiIiIiIUpbIuIiIiIiIhYmMK2iIiIiIiIiIUpbIuIiIiIiIhYmMK2iIiIiIiIiIVp6K/znB12PDMz08qViIiIiIiISEU6m/vO5kBLUtg+T1ZWFgDBwcFWrkREREREREQqQ1ZWFh4eHhbdpsmoiAhfjZWUlJCQkICbmxsmk8na5VwgMzOT4OBgjh07hru7u7XLkT/pvFRNOi9Vk85L1aTzUjXpvFRNOi9Vk85L1VTVz4thGGRlZREYGIiNjWWfstad7fPY2NgQFBRk7TKuyN3dvUr+stZ2Oi9Vk85L1aTzUjXpvFRNOi9Vk85L1aTzUjVV5fNi6TvaZ6mDNBERERERERELU9gWERERERERsTCF7WrG0dGRl19+GUdHR2uXIufQeamadF6qJp2XqknnpWrSeamadF6qJp2Xqqk2nxd1kCYiIiIiIiJiYbqzLSIiIiIiImJhCtsiIiIiIiIiFqawLSIiIiIiImJhCtsiIiIiIiIiFqawfR3Wr19PVFQUgYGBmEwmvvvuuwuW+fbbb+nfvz/e3t6YTCZ27NhxVds+ffo09913Hx4eHnh4eHDfffeRnp5eZpnHH3+cjh074ujoSLt27a5qu/n5+Tz66KN4e3tTp04dbrvtNo4fP17ufVdl1fG8fPzxx/Tq1Qt3d3dMJtMF24yPj2f06NE0atQIZ2dnmjRpwssvv0xBQcFVbb8qsOZ52blzJ/fccw/BwcE4OzvTsmVL3n333StuV9dLqap2XnS9lKqo83Lq1CkGDBhAYGAgjo6OBAcH88gjj5CZmXnZ7ep6KVXVzouul1IV+Xf/rFOnThEUFHTR9/l8ul5KVbXzUtOvF2ufE5PJdMFrzpw5l91udb9WFLavQ05ODuHh4XzwwQeXXaZ79+688cYb5dr2vffey44dO1i2bBnLli1jx44d3HfffWWWMQyD+++/n6FDh171dsePH8+iRYtYuHAhGzZsIDs7m0GDBlFcXFyufVdl1fG8nDlzhgEDBvDcc89ddP6+ffsoKSnho48+IiYmhrfffps5c+ZccvmqyJrnZevWrfj4+DB//nxiYmJ4/vnnefbZZy9bC+h6OXeZqnRedL38tUxFnBcbGxsGDx7MDz/8wIEDB5g3bx4rV67kwQcfvOx2db38tUxVOi+6Xv5apqL+7p81evRo2rZte1Xb1fXy1zJV6bzU9OulKpyTuXPnkpiYaH6NHDnystut9teKIRYBGIsWLbrk/Li4OAMwtm/ffsVtxcbGGoDx66+/mqdt2rTJAIx9+/ZdsPzLL79shIeHX3G76enphr29vbFw4ULztBMnThg2NjbGsmXLrmnfVV11OC/nWrNmjQEYp0+fvuKyb775ptGoUaNybb+qsOZ5Oeuhhx4yevfufcn5ul4uVBXOy7l0vZSqjPPy7rvvGkFBQZecr+vlQlXhvJxL10upijovs2bNMnr27GmsWrXqiu+zrpcLVYXzcq7acL1Y45xcaZ/nqwnXiu5sV0GbNm3Cw8ODzp07m6d16dIFDw8PNm7ceM3b3bp1K4WFhURGRpqnBQYG0rp1a/N2K2rfNUFVe28yMjLw9PSs9P1WNdd6Xq70/ul6uT4VdV6ula6XUtdyXhISEvj222/p2bPnJber6+X6VNR5uVa6Xkpd7XmJjY3l1Vdf5T//+Q82Nlf+aK3r5fpU1Hm5Vrpeyvf7+sgjj+Dt7c0NN9zAnDlzKCkpueR2a8K1orBdBSUlJeHr63vBdF9fX5KSkq5ruw4ODtSrV6/MdD8/P/N2K2rfNUFVem8OHTrE+++/f8Xmg7XBtZyXTZs28fXXXzN27NjLblfXy7WrqPNyLXS9/KU85+Wee+7BxcWF+vXr4+7uzr///e/LblfXy7WrqPNyLXS9/OVqzkt+fj733HMP06dPp0GDBle9XV0v166izsu10PVS6mp/X//1r3/x3//+l5UrV3L33XczYcIEpkyZctntVvdrRWHbyh588EFcXV3Nr7NMJtMFyxqGcdHp1+v87VbmvquqqnBeLiUhIYEBAwbw97//nTFjxlTafqsCS5yXmJgYBg8ezEsvvUS/fv3KXYOulwtVhfNyKbperv28vP3222zbto3vvvuOQ4cO8eSTT5a7Bl0vF6oK5+VSdL2U/7w8++yztGzZkuHDh193DbpeLlQVzsul1Nbr5Xr+D3vhhRfo2rUr7dq1Y8KECbz66qtMnz693DVUp2tFYdvKXn31VXbs2GF+Afj7+5OcnHzBsqmpqfj5+V3zvvz9/SkoKOD06dNlpqekpJi3W1H7rm4q87yUR0JCAr1796Zr1658/PHHlbLPquR6z0tsbCx9+vThgQce4IUXXrjsvnS9XL3KPC/loevl+s6Lv78/LVq0YPDgwXz00UfMnj2bxMTEi+5L18vVq8zzUh66Xq7tvKxevZr//ve/2NnZYWdnR0REBADe3t68/PLLF92XrperV5nnpTxq8/Viyc/IXbp0ITMz86Lrnt1udb9WFLatzNfXl6ZNm5pfAF27diUjI4PNmzebl/vtt9/IyMigW7du17yvjh07Ym9vz4oVK8zTEhMT2bNnj3m7FbXv6qYyz8vVOnHiBL169aJDhw7MnTu3Qp8/qqqu57zExMTQu3dvRo4cyeuvv37Ffel6uXqVeV6ulq4Xy/4/ZhgGUNo082J0vVy9yjwvV0vXy7Wfl2+++YadO3eag8fZZv0///wzDz/88EX3pevl6lXmeblatf16seT/Ydu3b8fJyYm6detedH5NuFbsrF1AdZadnc3BgwfNP8fFxbFjxw48PT3Nz4ekpaVx9OhREhISANi/fz9Q+i2Mv7//RbfbsmVLBgwYwAMPPMBHH30EwD//+U8GDRpEaGioebmDBw+SnZ1NUlISubm55m+XWrVqhYODwwXb9fDwYPTo0UyYMAEvLy88PT2ZOHEibdq0oW/fvuXad1VW3c4LlD5vkpSUZK579+7duLm50aBBAzw9PUlISKBXr140aNCAt956i9TUVPO6l6q3qrHmeTkb6CIjI3nyySfNz/DY2tri4+Nz0e3qeqma5wV0vVT0eVm6dCnJycnccMMNuLq6Ehsby9NPP0337t0JCQm56HZ1vVTN8wK6Xir6vDRp0qTMOidPnjSve6kAoeulap4XqPnXizXPyeLFi0lKSqJr1644OzuzZs0ann/+ef75z3/i6Oh40e3WiGulUvs+r2HODgtw/mvkyJHmZebOnXvRZV5++eXLbvvUqVPGsGHDDDc3N8PNzc0YNmzYBcMP9OzZ86LbjouLu+R2c3NzjUceecTw9PQ0nJ2djUGDBhlHjx4t976rsup4Xl5++eWLrjN37tzL1ludLmFrnpdLvb8NGza87HZ1vZSqaudF10upijovq1evNrp27Wp4eHgYTk5ORrNmzYxJkyZd8fda10upqnZedL2Uqsi/+xerRddL9TwvNf16seY5+emnn4x27doZrq6uhouLi9G6dWvjnXfeMQoLCy+73ep+rZgM4882SCIiIiIiIiJiEbXrIQMRERERERGRSqCwLSIiIiIiImJhCtsiIiIiIiIiFqawLSIiIiIiImJhCtsiIiIiIiIiFqawLSIiIiIiImJhCtsiIiIiIiIiFqawLSIiIiIiImJhCtsiIiIiIiIiFqawLSIiUoOMGjUKk8mEyWTC3t4ePz8/+vXrx6effkpJSclVb2fevHnUrVu34goVERGp4RS2RUREapgBAwaQmJhIfHw8P/30E7179+bxxx9n0KBBFBUVWbs8ERGRWkFhW0REpIZxdHTE39+f+vXr06FDB5577jm+//57fvrpJ+bNmwfAzJkzadOmDXXq1CE4OJiHHnqI7OxsANauXcs//vEPMjIyzHfJX3nlFQAKCgp4+umnqV+/PnXq1KFz586sXbvWOgcqIiJShSlsi4iI1AJ9+vQhPDycb7/9FgAbGxvee+899uzZw2effcbq1at5+umnAejWrRvvvPMO7u7uJCYmkpiYyMSJEwH4xz/+wS+//MLChQvZtWsXf//73xkwYAB//PGH1Y5NRESkKjIZhmFYuwgRERGxjFGjRpGens533313wby7776bXbt2ERsbe8G8//73v4wbN46TJ08Cpc9sjx8/nvT0dPMyhw4dolmzZhw/fpzAwEDz9L59+3LjjTcyZcoUix+PiIhIdWVn7QJERESkchiGgclkAmDNmjVMmTKF2NhYMjMzKSoqIi8vj5ycHOrUqXPR9bdt24ZhGDRv3rzM9Pz8fLy8vCq8fhERkepEYVtERKSW2Lt3L40aNeLIkSPceuutPPjgg/zrX//C09OTDRs2MHr0aAoLCy+5fklJCba2tmzduhVbW9sy81xdXSu6fBERkWpFYVtERKQWWL16Nbt37+aJJ55gy5YtFBUVMWPGDGxsSrtv+frrr8ss7+DgQHFxcZlp7du3p7i4mJSUFG6++eZKq11ERKQ6UtgWERGpYfLz80lKSqK4uJjk5GSWLVvG1KlTGTRoECNGjGD37t0UFRXx/vvvExUVxS+//MKcOXPKbCMkJITs7GxWrVpFeHg4Li4uNG/enGHDhjFixAhmzJhB+/btOXnyJKtXr6ZNmzbceuutVjpiERGRqke9kYuIiNQwy5YtIyAggJCQEAYMGMCaNWt47733+P7777G1taVdu3bMnDmTadOm0bp1a7744gumTp1aZhvdunXjwQcfZOjQofj4+PDmm28CMHfuXEaMGMGECRMIDQ3ltttu47fffiM4ONgahyoiIlJlqTdyEREREREREQvTnW0RERERERERC1PYFhEREREREbEwhW0RERERERERC1PYFhEREREREbEwhW0RERERERERC1PYFhEREREREbEwhW0RERERERERC1PYFhEREREREbEwhW0RERERERERC1PYFhEREREREbEwhW0RERERERERC1PYFhEREREREbEwhW0RERERERERC1PYFhEREREREbEwhW0RERERERERC1PYFhEREREREbEwhW0RERERERERC1PYFhERi5s3bx4mk8n8cnJywt/fn969ezN16lRSUlKuedtr167FZDKxdu1a87RXXnkFk8lkgcrLWrx4MVFRUfj5+eHg4ICnpycRERF88cUXFBYWAhAfH4/JZOKtt96y+P6rkl69etGrVy+LbCskJKTM78elXvPmzbvufX311VeEhYXh7OyMyWRix44dALz//vs0bdoUBwcHTCYT6enpjBo1ipCQkOve57nuv/9+BgwYYP45Ly+Phx9+GB8fH4KCgnj11VcxDKPMOkeOHMHV1ZVVq1ZdsL1PPvmE+vXrk5OTY9E6RUTE8uysXYCIiNRcc+fOpUWLFhQWFpKSksKGDRuYNm0ab731Fl999RV9+/Yt9zY7dOjApk2baNWqVQVUXMowDO6//37mzZvHrbfeysyZMwkODiYjI4M1a9bw0EMPcfLkSR5//PEKq6GqmTVrlsW2tWjRIvLz880///vf/+aTTz5h2bJleHh4mKc3adLkuvaTmprKfffdx4ABA5g1axaOjo40b96cHTt28NhjjzFmzBhGjhyJnZ0dbm5uvPjiixY9p9u3b+ezzz7jt99+M0978803+fbbb5k9ezaZmZk8+uijNG7cmOHDh5uXGTduHHfeeScREREXbHPkyJFMmzaNN998k8mTJ1usVhERsTyFbRERqTCtW7emU6dO5p/vvPNOnnjiCW666SbuuOMO/vjjD/z8/Mq1TXd3d7p06WLpUsuYPn068+bNY/Lkybz00ktl5kVFRfH0009z8ODBCq2hqrHklxvt27cv8/OyZcsA6NixI97e3pdc78yZM7i4uFz1fg4cOEBhYSHDhw+nZ8+e5ukxMTEAPPDAA9x4443m6dcb7s/3xhtvcOONN5a5Bn788Ucee+wx7rrrLgB+/fVXlixZYg7bCxcuZPPmzezbt++i27Szs2Ps2LH861//YtKkSeV6P0REpHKpGbmIiFSqBg0aMGPGDLKysvjoo4/M07ds2cLdd99NSEgIzs7OhISEcM8993DkyJEy61+sGfn5Ro8ejaenJ2fOnLlgXp8+fQgLC7vkuoWFhUybNo0WLVrw4osvXnQZf39/brrppgumz5w5k0aNGuHq6krXrl359ddfy8y/2mM82wx/zZo1jBs3Dm9vb7y8vLjjjjtISEgos2x+fj4TJkzA398fFxcXevTowdatWwkJCWHUqFFllk1KSmLs2LEEBQXh4OBAo0aNmDx5MkVFRZd8P846vxn5uc3nr3Tc12LUqFG4urqye/duIiMjcXNzM9/pXbFiBYMHDyYoKAgnJyeaNm3K2LFjOXnyZJn1z56joUOHYjKZzMdwNth27twZk8lkfp8u1oy8pKSE999/n3bt2uHs7EzdunXp0qULP/zww2XrT05OZtGiRdx3331lpufl5VGnTh3zz66uruTl5QGQnp7O+PHjmTlz5mW/dBg2bBiZmZksXLjwsjWIiIh16c62iIhUultvvRVbW1vWr19vnhYfH09oaCh33303np6eJCYmMnv2bG644QZiY2MvGz7O9/jjj/Ppp5+yYMECxowZY54eGxvLmjVr+PDDDy+57pYtW0hLS+OBBx4o13PgH374IS1atOCdd94B4MUXX+TWW28lLi7O3DS6vMc4ZswYBg4cyIIFCzh27BhPPfUUw4cPZ/Xq1eZl/vGPf/DVV1/x9NNP06dPH2JjY/nb3/5GZmZmmW0lJSVx4403YmNjw0svvUSTJk3YtGkTr732GvHx8cydO/eqj7W8x32tCgoKuO222xg7dizPPPOM+UuBQ4cO0bVrV8aMGYOHhwfx8fHMnDmTm266id27d2Nvb8+LL77IjTfeyMMPP8yUKVPo3bs37u7uAHz55Ze89tpr5sccfHx8LlnDqFGjmD9/PqNHj+bVV1/FwcGBbdu2ER8ff9nao6OjKSwspHfv3mWmd+vWjU8//ZTBgweTnZ3NV199ZW66/vTTTxMWFsaIESMuu21/f39atGjBjz/+yP3333+lt1FERKzFEBERsbC5c+cagPH7779fchk/Pz+jZcuWl5xfVFRkZGdnG3Xq1DHeffdd8/Q1a9YYgLFmzRrztJdfftk4/09az549jXbt2pWZNm7cOMPd3d3Iysq65H4XLlxoAMacOXMuucy54uLiDMBo06aNUVRUZJ6+efNmAzC+/PLLch/j2ffvoYceKrP8m2++aQBGYmKiYRiGERMTYwDGpEmTyiz35ZdfGoAxcuRI87SxY8carq6uxpEjR8os+9ZbbxmAERMTc9nj7Nmzp9GzZ0+LHPf5zp6/1NRU87SRI0cagPHpp59edt2SkhKjsLDQOHLkiAEY33//vXne2d+V//73v2XWudTv58iRI42GDRuaf16/fr0BGM8///xVH8tZ48aNM5ydnY2SkpIy05OSkowbbrjBAAzAuPXWW40zZ84Y69evN5ydnY0DBw5c1faHDRtm+Pn5lbsuERGpPGpGLiIiVmGc1wNzdnY2kyZNomnTptjZ2WFnZ4erqys5OTns3bu33Nt//PHH2bFjB7/88gsAmZmZfP7554wcORJXV1eLHMO5Bg4ciK2trfnntm3bApRpIl7eY7ztttvK/Hz+NtetWwfAkCFDyix31113YWdXtvHakiVL6N27N4GBgRQVFZlft9xyS5ltVcRxX48777zzgmkpKSk8+OCDBAcHY2dnh729PQ0bNgS4pt+VS/npp58AePjhh8u9bkJCAj4+Phe0jvDz8+O3334jLi6OEydO8OOPP2Jra8vYsWN54YUXaNasGd988w1hYWF4enoyaNAgjh07dsH2fX19SUlJuapHAERExDrUjFxERCpdTk4Op06dok2bNuZp9957L6tWreLFF1/khhtuwN3dHZPJxK233kpubm659zF48GBCQkL48MMP6d69O/PmzSMnJ+eKwalBgwYAxMXFlWt/Xl5eZX52dHQEKFN7eY/xSts8deoUwAWdzNnZ2V2wbnJyMosXL8be3v6i9Z/7vHN5XM1xXysXFxdz0++zSkpKiIyMJCEhgRdffJE2bdpQp04dSkpK6NKli0X2e1Zqaiq2trb4+/uXe93c3FycnJwuOs9kMpV5NvyNN97AxsaGp556in379jFs2DC+++47evTowUMPPcTw4cMv+DLEyckJwzDIy8urkC+PRETk+ilsi4hIpfvxxx8pLi42d7iVkZHBkiVLePnll3nmmWfMy+Xn55OWlnZN+7CxseHhhx/mueeeY8aMGcyaNYuIiAhCQ0Mvu16nTp3w9PTk+++/Z+rUqRYbv7sijvFs0E1OTqZ+/frm6UVFReYgfpa3tzdt27bl9ddfv+i2AgMDr6mGinSx937Pnj3s3LmTefPmMXLkSPP0iugd3sfHh+LiYpKSkggICCjXut7e3mzbtu2Ky+3fv5833niDlStXYm9vz8qVKwkLCzOPzf3kk08SHh5OdnZ2mVCdlpaGo6OjgraISBWmZuQiIlKpjh49ysSJE/Hw8GDs2LFAaagyDMN8V/Ssf//73xQXF1/zvsaMGYODgwPDhg1j//79PPLII1dcx97enkmTJrFv3z7+9a9/XXSZlJQUc/P0q1URx9ijRw8AvvrqqzLT//e//13QvHjQoEHs2bOHJk2a0KlTpwteVTFsX8zZAH7++3huz/aWcraJ/ezZs8u9bosWLTh16hQZGRmXXW7s2LGMGjWKbt26AaWPV+Tk5JjnZ2dnm6ef6/DhwxU61ryIiFw/3dkWEZEKs2fPHvOzwSkpKfz888/MnTsXW1tbFi1aZO4F2t3dnR49ejB9+nS8vb0JCQlh3bp1fPLJJ9StW/ea91+3bl1GjBjB7NmzadiwIVFRUVe13lNPPcXevXt5+eWX2bx5M/feey/BwcFkZGSwfv16Pv74YyZPnkz37t2vupaKOMawsDDuueceZsyYga2tLX369CEmJoYZM2bg4eGBjc1f36m/+uqrrFixgm7duvHYY48RGhpKXl4e8fHxLF26lDlz5hAUFHRNdVSmFi1a0KRJE5555hkMw8DT05PFixezYsUKi+/r5ptv5r777uO1114jOTmZQYMG4ejoyPbt23FxceHRRx+95Lq9evXCMAx+++03IiMjL7rMp59+yoEDB/j+++/N0yIiInjiiSd46aWXuPnmm3n55Zfp3r07bm5u5mVKSkrYvHkzo0ePttzBioiIxenOtoiIVJh//OMfdO3alYiICMaNG8f27dvNd43PHxJpwYIF9O7dm6effpo77riDLVu2sGLFiusePmro0KEAjBs3rkz4vByTycTcuXPNIWj8+PH06dOHESNGsGXLFqZNm8a4cePKXUtFHOPcuXN5/PHH+eSTT4iKimLhwoV8/fXXAGVCfEBAAFu2bCEyMpLp06czYMAA7rvvPj799FPatWtHvXr1rrmGymRvb8/ixYtp3rw5Y8eO5Z577iElJYWVK1dWyP7mzZvHzJkz2bhxI3fddRdDhgzh+++/p1GjRpddr3v37oSEhJQJ0udKTU3lqaee4r333itz/lu1asV//vMfFi5cyB133IGrqyuff/55mXXXrl1LRkYGw4YNu/4DFBGRCmMyzm+XJCIiUoNMmDCB2bNnc+zYsQs686qpNm7cSPfu3fniiy+49957rV1OrTVjxgxef/11Tpw4gbOzs8W2e99993H48OFyP8ogIiKVS2FbRERqpF9//ZUDBw4wduxYxo4dyzvvvGPtkirEihUr2LRpEx07dsTZ2ZmdO3fyxhtv4OHhwa5duy7ZI7ZUvLy8PFq2bMnDDz/MxIkTLbLNQ4cO0bJlS1avXs1NN91kkW2KiEjF0DPbIiJSI3Xt2hUXFxcGDRrEa6+9Zu1yKoy7uzvR0dG88847ZGVl4e3tzS233MLUqVMVtK3MycmJzz//nO3bt1tsm0ePHuWDDz5Q0BYRqQZ0Z1tERERERETEwtRBmoiIiIiIiIiFKWyLiIiIiIiIWJjCtoiIiIiIiIiFqYO085SUlJCQkICbmxsmk8na5YiIiIiIiEgFMQyDrKwsAgMDsbGx7L1ohe3zJCQkEBwcbO0yREREREREpJIcO3aMoKAgi25TYfs8bm5uQOmb7e7ubuVqREREREREpKJkZmYSHBxszoGWpLB9nrNNx93d3RW2RUREREREaoGKeIRYHaSJiIiIiIiIWJjCtoiIiIiIiIiFKWyLiIiIiIiIWJjCtoiIiIiIiIiFKWyLiIiIiIiIWJjCtoiIiIiIiIiFKWyLiIiIiIiIWJjG2RYRERERqWZCnvnR2iWIXLX4NwZauwSrqDZ3touKinjhhRdo1KgRzs7ONG7cmFdffZWSkhLzMoZh8MorrxAYGIizszO9evUiJibGilWLiIiIiIhIbVRtwva0adOYM2cOH3zwAXv37uXNN99k+vTpvP/+++Zl3nzzTWbOnMkHH3zA77//jr+/P/369SMrK8uKlYuIiIiIiEhtU23C9qZNmxg8eDADBw4kJCSEu+66i8jISLZs2QKU3tV+5513eP7557njjjto3bo1n332GWfOnGHBggVWrl5ERERERERqk2oTtm+66SZWrVrFgQMHANi5cycbNmzg1ltvBSAuLo6kpCQiIyPN6zg6OtKzZ082btx4ye3m5+eTmZlZ5iUiIiIiIiJyPapNB2mTJk0iIyODFi1aYGtrS3FxMa+//jr33HMPAElJSQD4+fmVWc/Pz48jR45ccrtTp05l8uTJFVe4iIiIiIiI1DrV5s72V199xfz581mwYAHbtm3js88+46233uKzzz4rs5zJZCrzs2EYF0w717PPPktGRob5dezYsQqpX0RERERERGqPanNn+6mnnuKZZ57h7rvvBqBNmzYcOXKEqVOnMnLkSPz9/YHSO9wBAQHm9VJSUi64230uR0dHHB0dK7Z4ERERERERqVWqzZ3tM2fOYGNTtlxbW1vz0F+NGjXC39+fFStWmOcXFBSwbt06unXrVqm1ioiIiIiISO1Wbe5sR0VF8frrr9OgQQPCwsLYvn07M2fO5P777wdKm4+PHz+eKVOm0KxZM5o1a8aUKVNwcXHh3nvvtXL1IiIiIiIiUptUm7D9/vvv8+KLL/LQQw+RkpJCYGAgY8eO5aWXXjIv8/TTT5Obm8tDDz3E6dOn6dy5M9HR0bi5uVmxchEREREREaltTIZhGNYuoirJzMzEw8ODjIwM3N3drV2OiIiIiMgFQp750doliFy1+DcGWruES6rI/FdtntkWERERERERqS4UtkVEREREREQsTGFbRERERERExMIUtkVEREREREQsTGFbRERERERExMIUtkVEREREREQsTGFbRERERERExMIUtkVEREREREQsTGFbRERERERExMIUtkVEREREREQsTGFbRERERERExMIUtkVEREREREQsTGFbRERERERExMIUtkVEREREREQszM7aBYiIVBUhz/xo7RJErlr8GwOtXYKIiIhchu5si4iIiIiIiFiYwraIiIiIiIiIhSlsi4iIiIiIiFjYNYftgwcPsnz5cnJzcwEwDMNiRYmIiIiIiIhUZ+UO26dOnaJv3740b96cW2+9lcTERADGjBnDhAkTLF6giIiIiIiISHVT7rD9xBNPYGdnx9GjR3FxcTFPHzp0KMuWLbNocSIiIiIiIiLVUbmH/oqOjmb58uUEBQWVmd6sWTOOHDliscJEREREREREqqty39nOyckpc0f7rJMnT+Lo6GiRokRERERERESqs3KH7R49evCf//zH/LPJZKKkpITp06fTu3dvixZ3vhMnTjB8+HC8vLxwcXGhXbt2bN261TzfMAxeeeUVAgMDcXZ2plevXsTExFRoTSIiIiIiIiLnK3cz8unTp9OrVy+2bNlCQUEBTz/9NDExMaSlpfHLL79URI0AnD59mu7du9O7d29++uknfH19OXToEHXr1jUv8+abbzJz5kzmzZtH8+bNee211+jXrx/79+/Hzc2twmoTEREREREROVe5w3arVq3YtWsXs2fPxtbWlpycHO644w4efvhhAgICKqJGAKZNm0ZwcDBz5841TwsJCTH/2zAM3nnnHZ5//nnuuOMOAD777DP8/PxYsGABY8eOrbDaRERERERERM5V7rAN4O/vz+TJky1dy2X98MMP9O/fn7///e+sW7eO+vXr89BDD/HAAw8AEBcXR1JSEpGRkeZ1HB0d6dmzJxs3blTYFhERERERkUpT7rC9a9eui043mUw4OTnRoEGDCuko7fDhw8yePZsnn3yS5557js2bN/PYY4/h6OjIiBEjSEpKAsDPz6/Men5+fpftJT0/P5/8/Hzzz5mZmRavXURERERERGqXcoftdu3aYTKZgNKm24D5ZwB7e3uGDh3KRx99hJOTk4XKhJKSEjp16sSUKVMAaN++PTExMcyePZsRI0aYlzu3lrM1nj/tXFOnTq30u/QiIiIiIiJSs5W7N/JFixbRrFkzPv74Y3bu3MmOHTv4+OOPCQ0NZcGCBXzyySesXr2aF154waKFBgQE0KpVqzLTWrZsydGjR4HSpu2A+Q73WSkpKRfc7T7Xs88+S0ZGhvl17Ngxi9YtIiIiIiIitU+572y//vrrvPvuu/Tv3988rW3btgQFBfHiiy+yefNm6tSpw4QJE3jrrbcsVmj37t3Zv39/mWkHDhygYcOGADRq1Ah/f39WrFhB+/btASgoKGDdunVMmzbtktt1dHTU+OAiIiIiIiJiUeUO27t37zYH3HM1bNiQ3bt3A6VNzRMTE6+/unM88cQTdOvWjSlTpjBkyBA2b97Mx//f3r3HVVXn+x9/b0EQuRmhIIppipmDaZkVeLxQaZw0nXqM5SVTUydDZ8TLA2OsYEyhtNS0U0idsHO6OHXC6jiTR/NWXnIa1PGCWTpekEskKYgpKKzfH/7cj3aA7g1rA0tez8djPR7u71r7u9/w4at8XGuvnZ6u9PR0SZcvH4+Pj1dKSooiIiIUERGhlJQUtWzZUqNHjzY1CwAAAAAAV+PyZeTdunXTiy++qPLycvvYxYsX9eKLL6pbt26SpNzc3Kteul0bffr00erVq/XBBx8oMjJSL7zwgpYuXaoxY8bYj0lISFB8fLzi4uJ05513Kjc3V+vWreMztgEAAAAA9crlM9v/8R//oWHDhql9+/a67bbbZLPZtHfvXlVUVGjNmjWSLt85PC4uzvSwQ4cO1dChQ2vcb7PZlJycrOTkZNNfGwAAAAAAZ7ncbEdHR+vYsWN699139d1338kwDP3ud7/T6NGj7WeQx44da3pQAAAAAACswuVmW5L8/Pw0ZcoUs7MAAAAAAHBdqFWz/d1332nz5s0qLCxUZWWlw77nn3/elGAAAAAAAFiVy832m2++qaefflrBwcEKDQ2VzWaz77PZbDTbAAAAAIAmz+Vme/78+VqwYIHmzJnjjjwAAAAAAFieyx/9dfr0aY0YMcIdWQAAAAAAuC643GyPGDFC69atc0cWAAAAAACuCy5fRt6lSxc999xz+vrrr9WjRw81b97cYf8f//hH08IBAAAAAGBFLjfb6enp8vPz05YtW7RlyxaHfTabjWYbAAAAANDkudxsHz161B05AAAAAAC4brj8nm0AAAAAAHB1Lp/ZlqSTJ0/qs88+04kTJ1ReXu6wb/HixaYEAwAAAADAqlxutjds2KBhw4apU6dOOnTokCIjI3Xs2DEZhqE77rjDHRkBAAAAALAUly8jT0xM1KxZs7R//361aNFCH3/8sXJycjRgwAA+fxsAAAAAANWi2T548KDGjRsnSfL09NT58+fl5+enefPm6aWXXjI9IAAAAAAAVuNys+3r66uysjJJUlhYmI4cOWLfd+rUKfOSAQAAAABgUS6/Z/uee+7Rtm3b1L17dw0ZMkSzZs3Svn37lJmZqXvuuccdGQEAAAAAsBSXm+3FixertLRUkpScnKzS0lL95S9/UZcuXbRkyRLTAwIAAAAAYDUuN9s333yz/c8tW7bU66+/bmogAAAAAACsrlafsy1J5eXlKiwsVGVlpcN4hw4d6hwKAAAAAAArc7nZ/u677zRx4kRt377dYdwwDNlsNlVUVJgWDgAAAAAAK3K52Z4wYYI8PT21Zs0atW3bVjabzR25AAAAAACwLJeb7T179igrK0vdunVzRx4AAAAAACzP5c/Z7t69O5+nDQAAAADAVTjVbJeUlNi3l156SQkJCdq8ebOKiooc9pWUlLg7r11qaqpsNpvi4+PtY4ZhKDk5WWFhYfLx8dHAgQN14MCBessEAAAAAIDk5GXkrVq1cnhvtmEYuu+++xyOqc8bpH3zzTdKT0/Xbbfd5jC+cOFCLV68WCtXrlTXrl01f/58DRo0SIcOHZK/v7/bcwEAAAAAIDnZbG/atMndOZxWWlqqMWPG6M0339T8+fPt44ZhaOnSpZo7d64eeeQRSdI777yjkJAQvf/++3rqqacaKjIAAAAAoIlxqtkeMGCAu3M4berUqRoyZIjuv/9+h2b76NGjKigo0ODBg+1j3t7eGjBggLZv315js11WVqaysjL74/q8FB4AAAAAcH1y+gZp33//vUaNGlVtM1pcXKzRo0frX//6l6nhfm3VqlXatWuXUlNTq+wrKCiQJIWEhDiMh4SE2PdVJzU1VYGBgfYtPDzc3NAAAAAAgCbH6WZ70aJFCg8PV0BAQJV9V5rURYsWmRrul3JycjR9+nS9++67atGiRY3H/fpzv6+8l7wmiYmJKi4utm85OTmmZQYAAAAANE1ON9tffvmlRowYUeP+Rx99VBs3bjQlVHWysrJUWFio3r17y9PTU56entqyZYuWLVsmT09P+xntX5/FLiwsrHK2+5e8vb0VEBDgsAEAAAAAUBdON9vHjx9XmzZtatwfHBzs1rPC9913n/bt26c9e/bYtzvvvFNjxozRnj17dPPNNys0NFTr16+3P6e8vFxbtmxRdHS023IBAAAAAPBrTt0gTbp8qfiRI0d00003Vbv/8OHDbj0r7O/vr8jISIcxX19f3Xjjjfbx+Ph4paSkKCIiQhEREUpJSVHLli01evRot+UCAAAAAODXnG62+/fvr+XLl+vee++tdv+yZcvUr18/04LVRkJCgs6fP6+4uDidPn1ad999t9atW8dnbAMAAAAA6pXTzXZiYqKioqL0u9/9TgkJCbrlllskSd9++60WLlyo//u//9P27dvdFrQ6mzdvdnhss9mUnJys5OTkes0BAAAAAMAvOd1s33777fqf//kfPfnkk1q9erXDvhtvvFEffvih7rjjDtMDAgAAAABgNU4325I0dOhQHT9+XGvXrtXhw4dlGIa6du2qwYMHq2XLlu7KCAAAAACApbjUbEuSj4+PHn74YXdkAQAAAADguuD0R38BAAAAAADn0GwDAAAAAGAymm0AAAAAAExGsw0AAAAAgMlq1WwfOXJEzz77rEaNGqXCwkJJ0tq1a3XgwAFTwwEAAAAAYEUuN9tbtmxRjx49tHPnTmVmZqq0tFSStHfvXiUlJZkeEAAAAAAAq3G52X7mmWc0f/58rV+/Xl5eXvbxmJgY7dixw9RwAAAAAABYkcvN9r59+6r9nO3WrVurqKjIlFAAAAAAAFiZy812q1atlJ+fX2V89+7dateunSmhAAAAAACwMpeb7dGjR2vOnDkqKCiQzWZTZWWltm3bptmzZ+uJJ55wR0YAAAAAACzF5WZ7wYIF6tChg9q1a6fS0lJ1795d/fv3V3R0tJ599ll3ZAQAAAAAwFI8XX1C8+bN9d5772nevHnavXu3KisrdfvttysiIsId+QAAAAAAsByXm+0rOnfurM6dO5uZBQAAAACA64LLzfbMmTOrHbfZbGrRooW6dOmi4cOHKygoqM7hAAAAAACwIpeb7d27d2vXrl2qqKjQLbfcIsMw9P3338vDw0PdunXT66+/rlmzZmnr1q3q3r27OzIDAAAAANCouXyDtOHDh+v+++9XXl6esrKytGvXLuXm5mrQoEEaNWqUcnNz1b9/f82YMcMdeQEAAAAAaPRcbrYXLVqkF154QQEBAfaxgIAAJScna+HChWrZsqWef/55ZWVlmRoUAAAAAACrcLnZLi4uVmFhYZXxH3/8USUlJZKkVq1aqby8vO7pAAAAAACwoFpdRv7kk09q9erVOnnypHJzc7V69WpNnDhRv/3tbyVJf//739W1a1ezswIAAAAAYAku3yBtxYoVmjFjhkaOHKlLly5dnsTTU+PGjdOSJUskSd26ddNbb71lblIAAAAAACzC5TPbfn5+evPNN1VUVGS/M3lRUZHS09Pl6+srSerVq5d69eplatDU1FT16dNH/v7+atOmjX7729/q0KFDDscYhqHk5GSFhYXJx8dHAwcO1IEDB0zNAQAAAADAtbjcbF/h5+en2267TT179pSfn5+Zmaq1ZcsWTZ06VV9//bXWr1+vS5cuafDgwTp37pz9mIULF2rx4sV67bXX9M033yg0NFSDBg3S2bNn3Z4PAAAAAIArXL6MXJK++eYbffTRRzpx4kSVG6FlZmaaEuzX1q5d6/A4IyNDbdq0UVZWlvr37y/DMLR06VLNnTtXjzzyiCTpnXfeUUhIiN5//3099dRTbskFAAAAAMCvuXxme9WqVerbt6+ys7O1evVqXbx4UdnZ2dq4caMCAwPdkbFaxcXFkqSgoCBJ0tGjR1VQUKDBgwfbj/H29taAAQO0ffv2essFAAAAAIDLzXZKSoqWLFmiNWvWyMvLS6+++qoOHjyoRx99VB06dHBHxioMw9DMmTP1b//2b4qMjJQkFRQUSJJCQkIcjg0JCbHvq05ZWZlKSkocNgAAAAAA6sLlZvvIkSMaMmSIpMtnjs+dOyebzaYZM2YoPT3d9IDVmTZtmvbu3asPPvigyj6bzebw2DCMKmO/lJqaqsDAQPsWHh5uel4AAAAAQNPicrMdFBRkv+FYu3bttH//fknSmTNn9PPPP5ubrhp/+MMf9Nlnn2nTpk1q3769fTw0NFSSqpzFLiwsrHK2+5cSExNVXFxs33JyctwTHAAAAADQZLjcbPfr10/r16+XJD366KOaPn26Jk+erFGjRum+++4zPeAVhmFo2rRpyszM1MaNG9WpUyeH/Z06dVJoaKg9mySVl5dry5Ytio6OrnFeb29vBQQEOGwAAAAAANSFy3cjf+2113ThwgVJl88KN2/eXFu3btUjjzyi5557zvSAV0ydOlXvv/++Pv30U/n7+9vPYAcGBsrHx0c2m03x8fFKSUlRRESEIiIilJKSopYtW2r06NFuywUAAAAAwK+53Gxfufu3JDVr1kwJCQlKSEgwNVR13njjDUnSwIEDHcYzMjI0fvx4SVJCQoLOnz+vuLg4nT59WnfffbfWrVsnf39/t+cDAAAAAOAKl5ttDw8P5efnq02bNg7jRUVFatOmjSoqKkwL90uGYVzzGJvNpuTkZCUnJ7slAwAAAAAAznD5Pds1Nb1lZWXy8vKqcyAAAAAAAKzO6TPby5Ytk3T57PFbb70lPz8/+76Kigp9+eWX6tatm/kJAQAAAACwGKeb7SVLlki6fGY7LS1NHh4e9n1eXl7q2LGj0tLSzE8IAAAAAIDFON1sHz16VJIUExOjzMxM3XDDDW4LBQAAAACAlbl8g7RNmza5IwcAAAAAANcNl5vtiooKrVy5Uhs2bFBhYaEqKysd9m/cuNG0cAAAAAAAWJHLzfb06dO1cuVKDRkyRJGRkbLZbO7IBQAAAACAZbncbK9atUoffvihHnzwQXfkAQAAAADA8lz+nG0vLy916dLFHVkAAAAAALguuNxsz5o1S6+++qoMw3BHHgAAAAAALM/ly8i3bt2qTZs26fPPP9dvfvMbNW/e3GF/ZmamaeEAAAAAALAil5vtVq1a6eGHH3ZHFgAAAAAArgsuN9sZGRnuyAEAAAAAwHXD5fdsS9KlS5f0xRdfaMWKFTp79qwkKS8vT6WlpaaGAwAAAADAilw+s338+HHFxsbqxIkTKisr06BBg+Tv76+FCxfqwoULSktLc0dOAAAAAAAsw+Uz29OnT9edd96p06dPy8fHxz7+8MMPa8OGDaaGAwAAAADAimp1N/Jt27bJy8vLYfymm25Sbm6uacEAAAAAALAql89sV1ZWqqKiosr4yZMn5e/vb0ooAAAAAACszOVme9CgQVq6dKn9sc1mU2lpqZKSkvTggw+amQ0AAAAAAEty+TLyJUuWKCYmRt27d9eFCxc0evRoff/99woODtYHH3zgjowAAAAAAFiKy812WFiY9uzZo1WrVikrK0uVlZWaOHGixowZ43DDNAAAAAAAmiqXm21J8vHx0YQJEzRhwgSz8wAAAAAAYHkuv2c7NTVVb7/9dpXxt99+Wy+99JIpoQAAAAAAsDKXm+0VK1aoW7duVcZ/85vfKC0tzZRQAAAAAABYmcvNdkFBgdq2bVtlvHXr1srPzzclVF29/vrr6tSpk1q0aKHevXvrq6++auhIAAAAAIAmxOVmOzw8XNu2basyvm3bNoWFhZkSqi7+8pe/KD4+XnPnztXu3bvVr18//fu//7tOnDjR0NEAAAAAAE2Ey832pEmTFB8fr4yMDB0/flzHjx/X22+/rRkzZmjy5MnuyOiSxYsXa+LEiZo0aZJuvfVWLV26VOHh4XrjjTcaOhoAAAAAoIlw+W7kCQkJ+umnnxQXF6fy8nJJUosWLTRnzhwlJiaaHtAV5eXlysrK0jPPPOMwPnjwYG3fvr2BUgEAAAAAmhqXmu2Kigpt3bpVc+bM0XPPPaeDBw/Kx8dHERER8vb2dldGp506dUoVFRUKCQlxGA8JCVFBQUG1zykrK1NZWZn9cUlJiVszAgAAAACufy412x4eHnrggQd08OBBderUSX369HFXrjqx2WwOjw3DqDJ2RWpqqv785z/XRyzTdHzmrw0dAXDasReHNHQEp1kpK2AV/JsFK7HSvwNWygo0VS6/Z7tHjx7617/+5Y4sdRYcHCwPD48qZ7ELCwurnO2+IjExUcXFxfYtJyenPqICAAAAAK5jLjfbCxYs0OzZs7VmzRrl5+erpKTEYWtIXl5e6t27t9avX+8wvn79ekVHR1f7HG9vbwUEBDhsAAAAAADUhcs3SIuNjZUkDRs2zOHS7CuXaldUVJiXrhZmzpypsWPH6s4771RUVJTS09N14sQJTZkypUFzAQAAAACaDpeb7U2bNrkjh2kee+wxFRUVad68ecrPz1dkZKT+9re/6aabbmroaAAAAACAJsLlZnvAgAHuyGGquLg4xcXFNXQMAAAAAEAT5fJ7tiXpq6++0uOPP67o6Gjl5uZKkv77v/9bW7duNTUcAAAAAABW5HKz/fHHH+uBBx6Qj4+Pdu3aZf+M6rNnzyolJcX0gAAAAAAAWI3Lzfb8+fOVlpamN998U82bN7ePR0dHa9euXaaGAwAAAADAilxutg8dOqT+/ftXGQ8ICNCZM2fMyAQAAAAAgKW53Gy3bdtWhw8frjK+detW3XzzzaaEAgAAAADAylxutp966ilNnz5dO3fulM1mU15ent577z3Nnj2bO4ADAAAAAKBafPRXQkKCiouLFRMTowsXLqh///7y9vbW7NmzNW3aNHdkBAAAAADAUlxutiVpwYIFmjt3rrKzs1VZWanu3bvLz8/P7GwAAAAAAFiS05eR//zzz5o6daratWunNm3aaNKkSerYsaPuuusuGm0AAAAAAH7B6WY7KSlJK1eu1JAhQzRy5EitX79eTz/9tDuzAQAAAABgSU5fRp6Zman//M//1MiRIyVJjz/+uPr27auKigp5eHi4LSAAAAAAAFbj9JntnJwc9evXz/74rrvukqenp/Ly8twSDAAAAAAAq3K62a6oqJCXl5fDmKenpy5dumR6KAAAAAAArMzpy8gNw9D48ePl7e1tH7tw4YKmTJkiX19f+1hmZqa5CQEAAAAAsBinm+1x48ZVGXv88cdNDQMAAAAAwPXA6WY7IyPDnTkAAAAAALhuOP2ebQAAAAAA4ByabQAAAAAATEazDQAAAACAyWi2AQAAAAAwGc02AAAAAAAmo9kGAAAAAMBkNNsAAAAAAJiMZhsAAAAAAJNZotk+duyYJk6cqE6dOsnHx0edO3dWUlKSysvLHY47ceKEHnroIfn6+io4OFh//OMfqxwDAAAAAIC7eTZ0AGd8++23qqys1IoVK9SlSxft379fkydP1rlz5/Tyyy9LkioqKjRkyBC1bt1aW7duVVFRkcaNGyfDMLR8+fIG/goAAAAAAE2JJZrt2NhYxcbG2h/ffPPNOnTokN544w17s71u3TplZ2crJydHYWFhkqRXXnlF48eP14IFCxQQENAg2QEAAAAATY8lLiOvTnFxsYKCguyPd+zYocjISHujLUkPPPCAysrKlJWVVeM8ZWVlKikpcdgAAAAAAKgLSzbbR44c0fLlyzVlyhT7WEFBgUJCQhyOu+GGG+Tl5aWCgoIa50pNTVVgYKB9Cw8Pd1tuAAAAAEDT0KDNdnJysmw221W3f/zjHw7PycvLU2xsrEaMGKFJkyY57LPZbFVewzCMasevSExMVHFxsX3Lyckx54sDAAAAADRZDfqe7WnTpmnkyJFXPaZjx472P+fl5SkmJkZRUVFKT093OC40NFQ7d+50GDt9+rQuXrxY5Yz3L3l7e8vb29v18AAAAAAA1KBBm+3g4GAFBwc7dWxubq5iYmLUu3dvZWRkqFkzx5PyUVFRWrBggfLz89W2bVtJl2+a5u3trd69e5ueHQAAAACAmljibuR5eXkaOHCgOnTooJdfflk//vijfV9oaKgkafDgwerevbvGjh2rRYsW6aefftLs2bM1efJk7kQOAAAAAKhXlmi2161bp8OHD+vw4cNq3769wz7DMCRJHh4e+utf/6q4uDj17dtXPj4+Gj16tP2jwQAAAAAAqC+WaLbHjx+v8ePHX/O4Dh06aM2aNe4PBAAAAADAVVjyo78AAAAAAGjMaLYBAAAAADAZzTYAAAAAACaj2QYAAAAAwGQ02wAAAAAAmMwSdyMHAADWdOzFIQ0dAQCABsGZbQAAAAAATEazDQAAAACAyWi2AQAAAAAwGe/ZtiDe/wYAAAAAjRtntgEAAAAAMBnNNgAAAAAAJqPZBgAAAADAZDTbAAAAAACYjGYbAAAAAACT0WwDAAAAAGAymm0AAAAAAExGsw0AAAAAgMk8GzpAY2MYhiSppKSkgZMAAAAAANzpSt93pQ80E832r5w9e1aSFB4e3sBJAAAAAAD14ezZswoMDDR1TpvhjhbewiorK5WXlyd/f3/ZbLY6zVVSUqLw8HDl5OQoICDApIRwB2plLdTLOqiVdVAr66BW1kK9rINaWYeZtTIMQ2fPnlVYWJiaNTP3Xdac2f6VZs2aqX379qbOGRAQwIK1CGplLdTLOqiVdVAr66BW1kK9rINaWYdZtTL7jPYV3CANAAAAAACT0WwDAAAAAGAymm038vb2VlJSkry9vRs6Cq6BWlkL9bIOamUd1Mo6qJW1UC/roFbWYZVacYM0AAAAAABMxpltAAAAAABMRrMNAAAAAIDJaLYBAAAAADBZk2m2v/zySz300EMKCwuTzWbTJ598UuWYzMxMPfDAAwoODpbNZtOePXucmvv06dMaO3asAgMDFRgYqLFjx+rMmTMOx0yfPl29e/eWt7e3evXq5dS86enpGjhwoAICAmSz2arMeezYMU2cOFGdOnWSj4+POnfurKSkJJWXlzs1f2PVkLX65z//qVGjRik8PFw+Pj669dZb9eqrr15z3rKyMv3hD39QcHCwfH19NWzYMJ08edKl17YiK9aqqa4rqWHrVVRUpNjYWIWFhcnb21vh4eGaNm2aSkpKrjova8s6tWqqa6uhf7+4oqioSO3bt6/2e/9rrCvr1Kqpriup4etls9mqbGlpaVedl7VlnVrV19pqMs32uXPn1LNnT7322mtXPaZv37568cUXXZp79OjR2rNnj9auXau1a9dqz549Gjt2rMMxhmHoySef1GOPPeb0vD///LNiY2P1pz/9qdr93377rSorK7VixQodOHBAS5YsUVpaWo3HW0VD1iorK0utW7fWu+++qwMHDmju3LlKTEy8ahZJio+P1+rVq7Vq1Spt3bpVpaWlGjp0qCoqKpx+bSuyYq2a6rqSGrZezZo10/Dhw/XZZ5/pu+++08qVK/XFF19oypQpV52XtWWdWjXVtdXQv19cMXHiRN12221Ozcu6sk6tmuq6khpHvTIyMpSfn2/fxo0bd9V5WVvWqVW9rS2jCZJkrF69usb9R48eNSQZu3fvvuZc2dnZhiTj66+/to/t2LHDkGR8++23VY5PSkoyevbs6VLeTZs2GZKM06dPX/PYhQsXGp06dXJp/sasIWt1RVxcnBETE1Pj/jNnzhjNmzc3Vq1aZR/Lzc01mjVrZqxdu7ZOr20lVqjVLzXldWUYjaNer776qtG+ffsa97O2LrNCrX6pKa+thqrV66+/bgwYMMDYsGHDNb/3rKvLrFCrX2rK68owGqZe13rNX2NtXWaFWv2Su9dWkzmz7S47duxQYGCg7r77bvvYPffco8DAQG3fvr3e8xQXFysoKKjeX9cKalura31Ps7KydPHiRQ0ePNg+FhYWpsjISPu8je3npLFzV61qi3V1dbWpV15enjIzMzVgwIAa52Vtmc9dtaot1lbNnK1Vdna25s2bp//6r/9Ss2bX/rWOdWU+d9WqtlhXV+fKz/e0adMUHBysPn36KC0tTZWVlTXOy9oyn7tqVVu1WVs023VUUFCgNm3aVBlv06aNCgoK6jXLkSNHtHz58mte6tdU1aZWO3bs0IcffqinnnrqqvN6eXnphhtucBgPCQmxz9uYfk6swF21qg3W1bW5Uq9Ro0apZcuWateunQICAvTWW29ddV7WlrncVavaYG1dnTO1Kisr06hRo7Ro0SJ16NDB6XlZV+ZyV61qg3V1bc7+fL/wwgv66KOP9MUXX2jkyJGaNWuWUlJSrjova8tc7qpVbdR2bdFsu2DKlCny8/Ozb1fYbLYqxxqGUe24u+Tl5Sk2NlYjRozQpEmT6u11GyszanXgwAENHz5czz//vAYNGuRyhl/P2xh+ThqjxlCrmrCuqqprvZYsWaJdu3bpk08+0ZEjRzRz5kyXM7C2nNMYalUT1paj2tYqMTFRt956qx5//PE6Z2BdOacx1KomrKuq6vL34LPPPquoqCj16tVLs2bN0rx587Ro0SKXM7C2nNMYalWTuqwtmm0XzJs3T3v27LFvkhQaGqoffvihyrE//vijQkJC6iVXXl6eYmJiFBUVpfT09Hp5zcaurrXKzs7Wvffeq8mTJ+vZZ5+96muFhoaqvLxcp0+fdhgvLCy0z9sYfk4aq/qslStYV9Wra71CQ0PVrVs3DR8+XCtWrNAbb7yh/Pz8al+LtVU39VkrV7C2qqptrTZu3KiPPvpInp6e8vT01H333SdJCg4OVlJSUrWvxbqqm/qslStYV9Uz83f3e+65RyUlJdU+98q8rK3aq89auaKua4tm2wVt2rRRly5d7JskRUVFqbi4WH//+9/tx+3cuVPFxcWKjo52e6bc3FwNHDhQd9xxhzIyMtz6HiArqUutDhw4oJiYGI0bN04LFiy45mv17t1bzZs31/r16+1j+fn52r9/v33ehv45aczqs1bOYl3VzMy/Bw3DkHT58srqsLbqpj5r5SzWVvVqW6uPP/5Y//znP+2/nF651P+rr77S1KlTq30t1lXd1GetnMW6qpmZfw/u3r1bLVq0UKtWrardz9qqm/qslbPMWFuedUpgIaWlpTp8+LD98dGjR7Vnzx4FBQXZ3zvz008/6cSJE8rLy5MkHTp0SNLl/1UJDQ2tdt5bb71VsbGxmjx5slasWCFJ+v3vf6+hQ4fqlltusR93+PBhlZaWqqCgQOfPn7f/j0337t3l5eVV7dwFBQUqKCiw5963b5/8/f3VoUMHBQUFKS8vTwMHDlSHDh308ssv68cff7Q/t6a8VtCQtbrSvA0ePFgzZ860vx/Ew8NDrVu3rnbewMBATZw4UbNmzdKNN96ooKAgzZ49Wz169ND999/v9GtbkdVqJTXddSU1bL3+9re/6YcfflCfPn3k5+en7OxsJSQkqG/fvurYsWO187K2rFMrqemurYasVefOnR2ec+rUKftza/olk3VlnVpJTXddSQ1br//93/9VQUGBoqKi5OPjo02bNmnu3Ln6/e9/L29v72rnZW1Zp1ZSPa4tl+5dbmFXbuv+623cuHH2YzIyMqo9Jikp6apzFxUVGWPGjDH8/f0Nf39/Y8yYMVVuHz9gwIBq5z569GiN8yYlJVX7nIyMjKvmtXpZG7JWNX3Pb7rppqvOe/78eWPatGlGUFCQ4ePjYwwdOtQ4ceKES69tRVasVVNdV4bRsPXauHGjERUVZQQGBhotWrQwIiIijDlz5lxzDbC2rFOrprq2Gvr3i+qysK6qZ8VaNdV1ZRgNW6/PP//c6NWrl+Hn52e0bNnSiIyMNJYuXWpcvHjxqvOytqxTq/paWzbD+P/XhgEAAAAAAFPwpg4AAAAAAExGsw0AAAAAgMlotgEAAAAAMBnNNgAAAAAAJqPZBgAAAADAZDTbAAAAAACYjGYbAAAAAACT0WwDAAAAAGAymm0AAAAAAExGsw0AwHVk/Pjxstlsstlsat68uUJCQjRo0CC9/fbbqqysdHqelStXqlWrVu4LCgDAdY5mGwCA60xsbKzy8/N17Ngxff7554qJidH06dM1dOhQXbp0qaHjAQDQJNBsAwBwnfH29lZoaKjatWunO+64Q3/605/06aef6vPPP9fKlSslSYsXL1aPHj3k6+ur8PBwxcXFqbS0VJK0efNmTZgwQcXFxfaz5MnJyZKk8vJyJSQkqF27dvL19dXdd9+tzZs3N8wXCgBAI0azDQBAE3DvvfeqZ8+eyszMlCQ1a9ZMy5Yt0/79+/XOO+9o48aNSkhIkCRFR0dr6dKlCggIUH5+vvLz8zV79mxJ0oQJE7Rt2zatWrVKe/fu1YgRIxQbG6vvv/++wb42AAAaI5thGEZDhwAAAOYYP368zpw5o08++aTKvpEjR2rv3r3Kzs6usu+jjz7S008/rVOnTkm6/J7t+Ph4nTlzxn7MkSNHFBERoZMnTyosLMw+fv/99+uuu+5SSkqK6V8PAABW5dnQAQAAQP0wDEM2m02StGnTJqWkpCg7O1slJSW6dOmSLly4oHPnzsnX17fa5+/atUuGYahr164O42VlZbrxxhvdnh8AACuh2QYAoIk4ePCgOnXqpOPHj+vBBx/UlClT9MILLygoKEhbt27VxIkTdfHixRqfX1lZKQ8PD2VlZcnDw8Nhn5+fn7vjAwBgKTTbAAA0ARs3btS+ffs0Y8YM/eMf/9ClS5f0yiuvqFmzy7dv+fDDDx2O9/LyUkVFhcPY7bffroqKChUWFqpfv371lh0AACui2QYA4DpTVlamgoICVVRU6IcfftDatWuVmpqqoUOH6oknntC+fft06dIlLV++XA899JC2bdumtLQ0hzk6duyo0tJSbdiwQT179lTLli3VtWtXjRkzRk888YReeeUV3X777Tp16pQ2btyoHj166MEHH2ygrxgAgMaHu5EDAHCdWbt2rdq2bauOHTsqNjZWmzZt0rJly/Tpp5/Kw8NDvXr10uLFi/XSSy8pMjJS7733nlJTUx3miI6O1pQpU/TYY4+pdevWWrhwoSQpIyNDTzzxhGbNmqVbbrlFw4YN086dOxUeHt4QXyoAAI0WdyMHAAAAAMBknNkGAAAAAMBkNNsAAAAAAJiMZhsAAAAAAJPRbAMAAAAAYDKabQAAAAAATEazDQAAAACAyWi2AQAAAAAwGc02AAAAAAAmo9kGAAAAAMBkNNsAAAAAAJiMZhsAAAAAAJPRbAMAAAAAYLL/B8pcN4893tpuAAAAAElFTkSuQmCC"
class="
"
>
</div>
</div>
</div>
</div>
</div><div class="jp-Cell jp-CodeCell jp-Notebook-cell jp-mod-noOutputs ">
<div class="jp-Cell-inputWrapper">
<div class="jp-Collapser jp-InputCollapser jp-Cell-inputCollapser">
</div>
<div class="jp-InputArea jp-Cell-inputArea">
<div class="jp-InputPrompt jp-InputArea-prompt">In [ ]:</div>
<div class="jp-CodeMirrorEditor jp-Editor jp-InputArea-editor" data-type="inline">
<div class="CodeMirror cm-s-jupyter">
<div class=" highlight hl-ipython3"><pre><span></span>
</pre></div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
Vlr Traininghttp://www.blogger.com/profile/17043738417504853644noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-84568830773424307212024-03-14T17:02:00.004+05:302024-03-14T17:02:45.531+05:30How to sort an array? in MuleSoft 134<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"> How to sort an array? in MuleSoft</span></h2><div><span id="docs-internal-guid-c4da9aa6-7fff-21df-1058-cda9e1b1b5bc"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's how to sort an array in MuleSoft 4:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 1: Using DataWeave:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">DataWeave offers a convenient and efficient way to sort arrays. Here's how to achieve this:</span></p><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sample array</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var data = [4, 2, 1, 5, 3];</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sort the array in ascending order</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = data orderBy #[it]; // #[it] refers to the current element</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// For descending order (optional)</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = data orderBy #[it] descending;</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Define a sample array (data).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The orderBy function reorders the elements of the array based on the specified criteria.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">#[it] refers to the current element within the array during the sorting process.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">By default, the sorting happens in ascending order.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">To achieve descending order, add the keyword descending after the criteria.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 2: Using MEL (Message Expression Language):</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">MEL provides a basic approach for sorting using a custom function. Here's an example:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">scripting:component</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">script</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> <![CDATA[</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">function</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #996900; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">sortAscending</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">(arr) {</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">return</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> arr.sort((a, b) => a - b);</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> }</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Optional function for descending order</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">function</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #996900; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">sortDescending</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">(arr) {</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #8430ce; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">return</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> arr.sort((a, b) => b - a);</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> }</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> write(sortAscending(payload), application/json); </span><span style="background-color: #f0f4f9; color: #5f6368; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Call the desired function</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> ]]></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">script</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">scripting:component</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">A Scripting component is used to define custom JavaScript functions.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The sortAscending function takes an array as input and uses the sort method with a comparison function.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The comparison function (a - b) sorts elements in ascending order by comparing their values.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">An optional sortDescending function demonstrates achieving descending order by reversing the comparison logic.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The sorted array is written to the output stream using the desired function (e.g., sortAscending).</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Choosing the Right Approach:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This is the recommended method due to its:</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Readability</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Concise syntax</span></p></li><li aria-level="2" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: circle; margin-left: -9pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Ability to handle complex sorting scenarios (sorting based on multiple criteria, nested objects)</span></p></li></ul><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> While functional for simple sorting, MEL expressions can become complex for intricate sorting logic or conditional operations.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Ensure the payload is a valid array before applying these methods.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Error handling can be incorporated within DataWeave or the custom MEL function to gracefully handle cases where the payload might not be in the expected format.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Further Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">DataWeave also offers the ability to sort based on specific properties within objects contained in the array.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">You can leverage expressions and conditions within the orderBy function for more granular control over the sorting behavior.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here are some helpful resources for further reference:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave orderBy function:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/dataweave/latest/dw-core-functions-orderby" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/dataweave/latest/dw-core-functions-orderby</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL sort function:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort</span></a></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Sources</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">1. </span><a href="https://github.com/typeorm/typeorm/issues/6658" style="text-decoration-line: none;"><span style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; vertical-align: baseline; white-space-collapse: preserve;">https://github.com/typeorm/typeorm/issues/6658</span></a></p><div><br /></div></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-4794516625256449922024-03-14T16:51:00.004+05:302024-03-14T16:51:24.541+05:30 How to sort an array in descending order? in MuleSoft 135<h2 style="text-align: left;"><span style="background-color: #fce5cd; font-size: x-large;"><span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;">How to sort an array in descending order? in MuleSoft</span></span></h2><div><span id="docs-internal-guid-90c39d49-7fff-7e1b-4dc1-cff4584a0cfa"><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's how to sort an array in descending order in MuleSoft 4:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 1: Using DataWeave:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">DataWeave provides a versatile orderBy function for sorting data. Here's how to achieve descending order:</span></p><br /><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">%dw 2.0</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">---</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sample array</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">var data = [4, 2, 1, 5, 3];</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">// Sort the array in descending order</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">output = data orderBy #[it] descending; // #[it] refers to the current element</span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Define a sample array (data).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The orderBy function sorts the array based on the specified criteria.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">#[it] refers to the current element within the array during the sorting process.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">descending keyword ensures the sorting happens in descending order.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Method 2: Using MEL (Message Expression Language):</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">MEL offers a basic approach for sorting using a custom function. Here's an example:</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-left: 12pt; margin-right: 12pt; margin-top: 12pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">XML</span></p><br /><p dir="ltr" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">scripting:component</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">script</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> <![CDATA[</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> function sortDescending(arr) {</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> return arr.sort((a, b) => b - a);</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> }</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> write(sortDescending(payload), application/json);</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> ]]></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">script</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"></</span><span style="background-color: #f0f4f9; color: #d93025; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">scripting:component</span><span style="background-color: #f0f4f9; color: #444746; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">></span><span style="background-color: #f0f4f9; color: #1f1f1f; font-family: Courier, monospace; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><ol style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">A Scripting component is used to define a custom JavaScript function.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The sortDescending function takes an array as input.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The sort method is used on the array with a comparison function.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The comparison function (b - a) sorts elements in descending order by comparing their values.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: decimal; margin-left: -15pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">The sorted array is written to the output stream.</span></p></li></ol><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Choosing the Right Approach:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This is the recommended method due to its readability, concise syntax, and ability to handle more complex sorting scenarios (sorting based on multiple criteria, nested objects).</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> While functional for simple sorting, MEL expressions can become convoluted for intricate sorting logic or conditional operations.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Additional Considerations:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Ensure the payload is a valid array before applying these methods.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">Error handling can be incorporated within DataWeave or the custom MEL function to gracefully handle cases where the payload might not be in the expected format.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here are some helpful resources for further reference:</span></p><ul style="margin-bottom: 0; margin-top: 0; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">DataWeave orderBy function:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://docs.mulesoft.com/dataweave/latest/dw-core-functions-orderby" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://docs.mulesoft.com/dataweave/latest/dw-core-functions-orderby</span></a></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">MEL sort function:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> </span><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/sort" style="text-decoration-line: none;"><span style="color: #0b57d0; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; text-wrap: wrap; vertical-align: baseline;">https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/sort</span></a></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Remember that DataWeave provides a more efficient and comprehensive approach for data manipulation and sorting within your MuleSoft 4 applications.</span></p><div><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div><div><span style="background-color: #fce5cd; font-size: x-large;"><span style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif;"><br /></span></span></div>Venkathttp://www.blogger.com/profile/12394059670951854098noreply@blogger.com0tag:blogger.com,1999:blog-8161406210620520590.post-11990355887943995232024-03-14T16:45:00.002+05:302024-03-14T16:48:40.976+05:30 Q: A woman introduces a man as the son of the brother of her mother. How is the man related to the woman?<p> <span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;">Q: A woman introduces a man as the son of the brother of her mother. How is the man related to the woman?</span></p><span id="docs-internal-guid-36c7c37c-7fff-cd71-61ec-8820cea46279"><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">A) Nephew</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">B) Son</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">C) Cousin</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;">D) Uncle to Grandson</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Answer:</span><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> C) Cousin</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">Explanation:</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Here's how to break down the relationship:</span></p><ul style="margin-bottom: 0px; margin-top: 0px; padding-inline-start: 48px;"><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">The brother of her mother:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This refers to the woman's uncle.</span></p></li><li aria-level="1" dir="ltr" style="font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin-left: -22.5pt; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;">The son of the brother of her mother:</span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"> This refers to the woman's cousin.</span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Therefore, the man is the woman's cousin.</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Hindi</span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></p><p style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">प्रश्न: एक महिला एक पुरुष का परिचय अपनी माँ के भाई के बेटे के रूप में कराती है। पुरुष का महिला से क्या संबंध है?</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">भतीजा</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">बी) बेटा</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ग) चचेरा भाई</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">D) चाचा से पोते तक</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">उत्तर: </span></span></span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">सी) चचेरा भाई</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">स्पष्टीकरण:</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">यहां बताया गया है कि रिश्ते को कैसे तोड़ा जाए:</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">उसकी माँ का भाई: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">इसका तात्पर्य महिला के चाचा से है।</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">उसकी माँ के भाई का बेटा: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">यह महिला के चचेरे भाई को संदर्भित करता है।</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span id="docs-internal-guid-36c7c37c-7fff-cd71-61ec-8820cea46279" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; white-space-collapse: collapse;"></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">इसलिए, पुरुष महिला का चचेरा भाई है।</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Telugu</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ప్ర: ఒక స్త్రీ తన తల్లి సోదరుని కొడుకుగా ఒక వ్యక్తిని పరిచయం చేస్తుంది. పురుషుడు స్త్రీకి ఎలా సంబంధం కలిగి ఉంటాడు?</span></span></span></p><ul style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ఎ) మేనల్లుడు</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">బి) కొడుకు</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">సి) కజిన్</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span class="" style="vertical-align: inherit;">డి) మనవడికి మేనమామ</span></span></span></p></li></ul><p dir="ltr" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">జవాబు: </span></span></span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">సి) కజిన్</span></span></span></p><p dir="ltr" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">వివరణ:</span></span></span></p><p dir="ltr" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span class="VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q" style="background-color: #c9d7f1; box-shadow: rgb(153, 153, 170) 2px 2px 4px; box-sizing: border-box; position: relative; vertical-align: inherit;">సంబంధాన్ని ఎలా విచ్ఛిన్నం చేయాలో ఇక్కడ ఉంది:</span></span></span></p><ul style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ఆమె తల్లి సోదరుడు: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ఇది స్త్రీ మామను సూచిస్తుంది.</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ఆమె తల్లి సోదరుని కుమారుడు: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">ఇది స్త్రీ బంధువును సూచిస్తుంది.</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span id="docs-internal-guid-36c7c37c-7fff-cd71-61ec-8820cea46279"></span></span></span></span></p><p dir="ltr" style="-webkit-text-stroke-width: 0px; background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt; orphans: 2; text-align: start; text-decoration-color: initial; text-decoration-style: initial; text-decoration-thickness: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">కాబట్టి, పురుషుడు స్త్రీకి బంధువు.</span></span></span></p><p dir="ltr" style="-webkit-text-stroke-width: 0px; background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt; orphans: 2; text-align: start; text-decoration-color: initial; text-decoration-style: initial; text-decoration-thickness: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p dir="ltr" style="-webkit-text-stroke-width: 0px; background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt; orphans: 2; text-align: start; text-decoration-color: initial; text-decoration-style: initial; text-decoration-thickness: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Tamil</span></span></span></p><p dir="ltr" style="-webkit-text-stroke-width: 0px; background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; font-style: normal; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: 400; letter-spacing: normal; line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt; orphans: 2; text-align: start; text-decoration-color: initial; text-decoration-style: initial; text-decoration-thickness: initial; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">கே: ஒரு பெண் தன் தாயின் சகோதரனின் மகன் என்று ஒரு ஆணை அறிமுகப்படுத்துகிறாள். ஆணுக்கும் பெண்ணுக்கும் எப்படி தொடர்பு?</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">அ) மருமகன்</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">பி) மகன்</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">C) உறவினர்</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">D) பேரனுக்கு மாமா</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">பதில்: </span></span></span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">C) உறவினர்</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">விளக்கம்:</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">உறவை எப்படி உடைப்பது என்பது இங்கே:</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">அவளுடைய தாயின் சகோதரன்: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">இது பெண்ணின் மாமாவைக் குறிக்கிறது.</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">அவளுடைய தாயின் சகோதரனின் மகன்: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">இது பெண்ணின் உறவினரைக் குறிக்கிறது.</span></span></span></p></li></ul><p dir="ltr" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span id="docs-internal-guid-36c7c37c-7fff-cd71-61ec-8820cea46279" style="color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; white-space-collapse: collapse;"></span></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">எனவே, ஆண் பெண்ணின் உறவினர்.</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Spanish</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px;"> <span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">P: Una mujer presenta a un hombre como el hijo del hermano de su madre. ¿Cómo se relaciona el hombre con la mujer?</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Un sobrino</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">b) hijo</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">C) primo</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">D) Tío a nieto</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Respuesta: </span></span></span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">C) Primo</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Explicación:</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span class="VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q" style="background-color: #c9d7f1; box-shadow: rgb(153, 153, 170) 2px 2px 4px; box-sizing: border-box; position: relative; vertical-align: inherit;">A continuación se explica cómo romper la relación:</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">El hermano de su madre: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Se refiere al tío de la mujer.</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">El hijo del hermano de su madre: </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Se refiere al primo de la mujer.</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span id="docs-internal-guid-36c7c37c-7fff-cd71-61ec-8820cea46279" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; white-space-collapse: collapse;"></span></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Por tanto, el hombre es primo de la mujer.</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">French</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><br /></span></span></span></p><p style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px;"> <span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-weight: 700; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span class="VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q" style="background-color: #c9d7f1; box-shadow: rgb(153, 153, 170) 2px 2px 4px; box-sizing: border-box; position: relative; vertical-align: inherit;">Q : Une femme présente un homme comme étant le fils du frère de sa mère. Quel est le rapport entre l'homme et la femme ?</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Un neveu</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">B) Fils</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">C) Cousine</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">D) Oncle à petit-fils</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Réponse : </span></span></span><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">C) Cousine</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Explication:</span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Voici comment rompre la relation :</span></span></span></p><ul style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0px; padding-inline-start: 48px; padding: 0px 2.5em;"><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Le frère de sa mère : </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Il s'agit de l'oncle de la femme.</span></span></span></p></li><li aria-level="1" dir="ltr" style="border: none; color: #333333; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; list-style-type: disc; margin: 0px 0px 0.25em -22.5pt; padding: 0.25em 0px; vertical-align: baseline; white-space: pre;"><p dir="ltr" role="presentation" style="line-height: 1.2; margin-bottom: 0pt; margin-top: 0pt;"><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Le fils du frère de sa mère : </span></span></span><span style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; text-wrap: wrap; vertical-align: baseline;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">Il s'agit du cousin de la femme.</span></span></span></p></li></ul><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;"><span id="docs-internal-guid-36c7c37c-7fff-cd71-61ec-8820cea46279" style="background-color: #fefafa; color: #333333; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; white-space-collapse: collapse;"></span></span></span></span></p><p dir="ltr" style="line-height: 1.2; margin-bottom: 12pt; margin-top: 12pt;"><span style="color: #1f1f1f; font-family: Arial, sans-serif; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><span style="vertical-align: inherit;"><span style="vertical-align: inherit;">L’homme est donc le cousin de la femme.</span></span></span></p><div><span face="Arial, sans-serif" style="color: #1f1f1f; font-size: 16pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span>Vlr Traininghttp://www.blogger.com/profile/17043738417504853644noreply@blogger.com0