};
use paste::paste;
use std::ffi::CString;

macro_rules! get {

    ($method:ident->$field:ident->bool) => {
        #[inline]
        pub fn $method(&self) -> bool {
            self.inner.$field == 1
        }
    };

    // wrap raw ids into handle i.e NodeHandle, ParmHandle etc
    ($method:ident->$field:ident->[handle: $hdl:ident]) => {
        #[inline]
        pub fn $method(&self) -> $hdl {
            $hdl(self.inner.$field, ())
        }
    };

    ($self_:ident, $method:ident->$block:block->$tp:ty) => {
        #[inline]
        pub fn $method(&$self_) -> $tp {
            $block
        }
    };

    ($method:ident->$field:ident->Result<String>) => {
        #[inline]
        pub fn $method(&self) -> Result<String> {
            crate::stringhandle::get_string(self.inner.$field, &self.session)
        }
    };

    (with_session $method:ident->$field:ident->Result<String>) => {
        #[inline]
        pub fn $method(&self, session: &Session) -> Result<String> {
            crate::stringhandle::get_string(self.inner.$field, session)
        }
    };

    ($method:ident->$field:ident->Result<CString>) => {
        #[inline]
        pub fn $method(&self) -> Result<CString> {
            crate::stringhandle::get_cstring(self.inner.$field, &self.session)
        }
    };

    ($method:ident->$field:ident->$tp:ty) => {
        #[inline]
        pub fn $method(&self) -> $tp {
            self.inner.$field
        }
    };

    ($method:ident->$field:ident->[$($tp:tt)*]) => {
        get!($method->$field->[$($tp)*]);
    };
}
// Impl Default trait for struct
// Default StructName [HapiFunction => HapiType];
// Example: Default CurveInfo [HAPI_CurveInfo_Create => HAPI_CurveInfo];
//
// Generate getters, setters and with ("builder") methods
// [get|set|with] struct_field->ffiStructField->[ReturnType];
//  get:
//      fn get_struct_field(&self) -> ReturnType { self.ffiStructField }
//  set:
//      fn set_struct_field(&self, val: ReturnType)  { self.ffiStructField = val; }
//  with:
//      fn with_struct_field(self, val: ReturnType) -> Self  { self.ffiStructField = val; self }
//
// Special case for string handles:
// [get+session] name->name->[ReturnType]
// fn get_name(&self, session: &Session) -> Result<String> { session.get_string(self.inner.name) }
//

macro_rules! wrap {
    (_with_ $method:ident->$field:ident->bool) => {
        paste!{
            pub fn [<with_ $method>](mut self, val: bool) -> Self {self.inner.$field = val as i8; self}
        }
    };
    (_with_ $method:ident->$field:ident->$tp:ty) => {
        paste!{
            pub fn [<with_ $method>](mut self, val: $tp) -> Self {self.inner.$field = val; self}
        }
    };
    (_set_ $method:ident->$field:ident->bool) => {
        paste!{
            pub fn [<set_ $method>](&mut self, val: bool)  {self.inner.$field = val as i8}
        }
    };


from django.db import models
import uuid
from products.models import Product
from django.contrib.auth.models import AbstractUser

# Create your models here.
class CustomUser(AbstractUser):
    phone=models.CharField(max_length=20,null=True)
    address=models.CharField(max_length=200,null=True)

    REQUIRED_FIELDS = ['phone', 'address']

class Order(models.Model):
    STATUS=(
        ('Pending','pending'),
        ('Out for delivery', 'out for devilvery'),
        ('Delivered','delivered')
    )
    user=models.ForeignKey(CustomUser,null=True,on_delete=models.SET_NULL)
    product=models.ForeignKey(Product,null=True,on_delete=models.SET_NULL)
    quantity=models.IntegerField(default=0,null=True,blank=True)
    status=models.CharField(max_length=200,null=True,blank=True,choices=STATUS)
    in_cart=models.BooleanField(default=True)
    date_created=models.DateTimeField(auto_now_add=True,null=True)
    id=models.UUIDField(default=uuid.uuid4, unique=True, primary_key=True,editable=True)
    def __str__(self):
        return str(self.product)

    @property
    def get_cost(self):
        cost = self.product.price
        total_sum = self.quantity * cost
        return total_sum


from vpython import *

场景 = canvas(title="速度选择器\n", width=800, height=600, background=color.white)
粒子 = sphere(pos=vector(0, 0, 0), radius=0.5, color=color.cyan, make_trail=True)
上方 = box(pos=vector(0, -10, 0), size=vector(20, 0.1, 4), color=color.gray(0.2))
下方 = box(pos=vector(0, 10, 0), size=vector(20, 0.1, 4), color=color.gray(0.2))

电荷量 = 1
质量 = 1e-7
速度 = vector(1e6, 0, 0)
磁场 = vector(0, 0, 0.3)
电场 = vector(0, 0, 0)

磁场箭头组 = []
电场箭头组 = []

def 更新场():
    for i in 磁场箭头组:
        i.visible = False
        i.delete()
    for i in 电场箭头组:
        i.visible = False
        i.delete()

    for x in range(-10, 11, 5):
        for y in range(-10, 11, 5):
            磁场箭头组.append(arrow(pos=vector(x, y, 0), axis=vector(0,0,3), opacity=0.3,shaftwidth=磁场滑块.value))

    for x in range(-8, 12, 4):
        for z in range(0, 4, 1):
            电场箭头组.append(arrow(pos=vector(x, -10, z), axis=vector(0,20,0), color=color.red, shaftwidth=电场滑块.value*2e-7 , opacity=0.3 if 电场滑块.value > 0 else 0))

def 更新参数():
    global 磁场, 电场, 电荷量, 速度
    速度 = vector(速度滑块.value * 1e6, 0, 0)
    磁场 = vector(0, 0, 磁场滑块.value)
    电场 = vector(0, 电场滑块.value, 0)
    更新场()

    速度标签.text = f"粒子速度: {速度滑块.value*1e6:.1e}  m/s"
    磁场标签.text = f"磁场强度: {磁场.z:.1f} T\n"
    电场标签.text = f"电场强度: {电场.y:.1e} V/m\n"
    选择速度标签.text = f"选择速度: {abs(电场.y / 磁场.z):.1e}  m/s"

    粒子.pos = vector(0, 0, 0)
    粒子.clear_trail()

速度滑块 = slider(min=1, max=10, value=1.7, step=0.1, bind=更新参数)
速度标签 = wtext(text="")
磁场滑块 = slider(min=0.1, max=0.5, value=0.3, step=0.1, bind=更新参数)
磁场标签 = wtext(text="")
电场滑块 = slider(min=0, max=1e6, value=5e5, step=1e5, bind=更新参数)
电场标签 = wtext(text="")
选择速度标签 = wtext(text="")

更新参数()

dt = 2e-8
def RK4(位置, 速度, 磁场, 电场, 电荷量, 质量, dt):
    def 计算加速度(速度):
        力 = 电荷量 * (电场 + cross(速度, 磁场))
        return 力 / 质量

    k1速度 = 计算加速度(速度) * dt
    k1位置 = 速度 * dt

    k2速度 = 计算加速度(速度 + 0.5*k1速度) * dt
    k2位置 = (速度 + 0.5*k1速度) * dt

    k3速度 = 计算加速度(速度 + 0.5*k2速度) * dt
    k3位置 = (速度 + 0.5*k2速度) * dt

    k4速度 = 计算加速度(速度 + k3速度) * dt
    k4位置 = (速度 + k3速度) * dt

    新速度 = 速度 + (k1速度 + 2*k2速度 + 2*k3速度 + k4速度) / 6
    新位置 = 位置 + (k1位置 + 2*k2位置 + 2*k3位置 + k4位置) / 6

    return 新位置, 新速度

while True:
    rate(100)
    粒子.pos, 速度 = RK4(粒子.pos, 速度, 磁场, 电场, 电荷量, 质量, dt)
    if abs(粒子.pos.x) > 11:
        粒子.clear_trail()
        粒子.pos.x = - 粒子.pos.x


 null) && !isUsingAdaptiveKeys)
                return@safeApiCall

            val id = Regex("id=([^&]+)").find(iframeUrl)!!.value.removePrefix("id=")

            var document: Document? = iframeDocument
            val foundIv =
                iv ?: (document ?: app.get(iframeUrl).document.also { document = it })
                    .select("""div.wrapper[class*=container]""")
                    .attr("class").split("-").lastOrNull() ?: return@safeApiCall
            val foundKey = secretKey ?: getKey(base64Decode(id) + foundIv) ?: return@safeApiCall
            val foundDecryptKey = secretDecryptKey ?: foundKey

            val uri = URI(iframeUrl)
            val mainUrl = "https://" + uri.host

            val encryptedId = cryptoHandler(id, foundIv, foundKey)
            val encryptRequestData = if (isUsingAdaptiveData) {
                // Only fetch the document if necessary
                val realDocument = document ?: app.get(iframeUrl).document
                val dataEncrypted =
                    realDocument.select("script[data-name='episode']").attr("data-value")
                val headers = cryptoHandler(dataEncrypted, foundIv, foundKey, false)
                "id=$encryptedId&alias=$id&" + headers.substringAfter("&")
            } else {
                "id=$encryptedId&alias=$id"
            }

            val jsonResponse =
                app.get(
                    "$mainUrl/encrypt-ajax.php?$encryptRequestData",
                    headers = mapOf("X-Requested-With" to "XMLHttpRequest")
                )
            val dataencrypted =
                jsonResponse.text.substringAfter("{\"data\":\"").substringBefore("\"}")
            val datadecrypted = cryptoHandler(dataencrypted, foundIv, foundDecryptKey, false)
            val sources = AppUtils.parseJson<GogoSources>(datadecrypted)

            fun invokeGogoSource(
                source: GogoSource,
                sourceCallback: (ExtractorLink) -> Unit
            ) {
                sourceCallback.invoke(
                    ExtractorLink(
                        mainApiName,
                        mainApiName,
                        source.file,
                        mainUrl,
                        getQualityFromName(source.label),
                        isM3u8 = source.type == "hls" || source.label?.contains(
                            "auto",
                            ignoreCase = true
                        ) == true
                    )
                )
            }

            sources.source?.forEach {
                invokeGogoSource(it, callback)
            }
            sources.sourceBk?.forEach {
                invokeGogoSource(it, callback)
            }
        }
    }

    override var mainUrl = "https://gogoanime.lu"
    override var name = "GogoAnime"
    override val hasQuickSearch = false
    override val hasMainPage = true

    override val supportedTypes = setOf(
        TvType.AnimeMovie,
        TvType.Anime,
        TvType.OVA
    )

    val headers = mapOf(
        "authority" to "ajax.gogo-load.com",
        "sec-ch-ua" to "\"Google Chrome\";v=\"89\", \"Chromium\";v=\"89\", \";Not A Brand\";v=\"99\"",
        "accept" to "text/html, */*; q=0.01",
        "dnt" to "1",
        "sec-ch-ua-mobile" to "?0",
        "user-agent" to "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36",
        "origin" to mainUrl,
        "sec-fetch-site" to "cross-site",
        "sec-fetch-mode" to "cors",
        "sec-fetch-dest" to "empty",
        "referer" to "$mainUrl/"
    )


en: "Water Gun",
				fr: "Pistolet à O"
			},
			effect: {
				en: "This attack does 20 damage plus 10 more damage for each Water Energy attached to Wailmer but not used to pay for this attack's Energy cost. You can't add more than 20 damage in this way.",
				fr: "Cette attaque inflige 20 dégâts plus 10 dégâts supplémentaires pour chaque Énergie  attachée à Wailmer qui n'a pas été utilisée pour payer le coût en Énergie de cette attaque. Vous ne pouvez pas ajouter plus de 20 dégâts de cette façon."
			},
			damage: "20+",

		},
	],
	weaknesses: [
		{
			type: "Lightning",
			value: "×2"
		},
	],

}

export default card
import {Injectable} from '@angular/core';

@Injectable()
export class Dice {
  protected _die1: number;
  protected _die2: number;

  roll() {
    let randoms = new Uint8Array(2);
    window.crypto.getRandomValues(randoms);
    this._die1 = 1 + randoms[0] % 6;
    this._die2 = 1 + randoms[1] % 6;
  }

  get die1() {
    return this._die1;
  }

  get die2() {
    return this._die2;
  }

  get total() {
    return this._die1 + this._die2;
  }

}
// https://rxjs-dev.firebaseapp.com/guide/subject#Reference-counting

import {
  from,
  Observable,
  Subject,
  ConnectableObservable,
  interval,
  Subscription,
  BehaviorSubject,
} from "rxjs";
import { multicast, refCount } from "rxjs/operators";
export default class Intro6BehaviorSubject {
  public run() {
    const subject = new BehaviorSubject(0);
    subject.subscribe({
      next: (v) => {
        console.log(`observerA: ${v}`);
      },
    });

    subject.next(1);
    subject.next(2);

    subject.subscribe({
      next: (v) => console.log(`observerB: ${v}`),
    });

    subject.next(3);
  }
}
import { readFile, access } from 'fs/promises';
import getStore, { setBasePath } from '../src';
interface TestStore {
  a: number;
  b: string;
  c: number[];
}
const wait = (time = 1000) => new Promise(resolve => setTimeout(resolve, time));
describe('db', () => {
  it('should load default values', () => {
    const data = getStore<{ test: boolean; hey: number; string: string }>({
      path: './test',
      initialData: {
        test: true,
        hey: 123,
        string: 'Hello!',
      },
    });
    expect(data.hey).toEqual(123);
    expect(data.test).toEqual(true);
    expect(data.string).toEqual('Hello!');
  });
  it('creates a database file', async () => {
    const store = getStore<TestStore>({
      path: './testDb.json',
      initialData: { a: 3, b: 'hello', c: [1, 2, 3] },
      safeMode: false,
    });
    store.a = 8;
    await store.writeFile(true);
    expect(await readFile('./testDb.json', 'utf-8')).toMatchInlineSnapshot(`
      "{
        \\"a\\": 8,
        \\"b\\": \\"hello\\",
        \\"c\\": [
          1,
          2,
          3
        ]
      }"
    `);
    await store.removeFile();
  });
  it('should work with a base path', async () => {
    setBasePath('./dbTest');
    const store = getStore<TestStore>({
      initialData: { a: 3, b: 'hello', c: [1, 2, 3] },
      throttle: 10,


ct-esp32-to-pc) recommended by ESPRESSIF.

- Have one of the following interfaces to your Azure IoT Hub set up:
  - [Azure Command Line Interface](https://docs.microsoft.com/cli/azure/install-azure-cli?view=azure-cli-latest) (Azure CLI) utility installed, along with the [Azure IoT CLI extension](https://github.com/Azure/azure-iot-cli-extension).

    On Windows:

      Download and install: https://aka.ms/installazurecliwindows

      ```powershell
      PS C:\>az extension add --name azure-iot
      ```

    On Linux:

      ```bash
      $ curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
      $ az extension add --name azure-iot
      ```

      A list of all the Azure IoT CLI extension commands can be found [here](https://docs.microsoft.com/cli/azure/iot?view=azure-cli-latest).

  - The most recent version of [Azure IoT Explorer](https://github.com/Azure/azure-iot-explorer/releases) installed. More instruction on its usage can be found [here](https://docs.microsoft.com/azure/iot-pnp/howto-use-iot-explorer).

  NOTE: This guide demonstrates use of the Azure CLI and does NOT demonstrate use of Azure IoT Explorer.

## Setup and Run Instructions

1. Run the Arduino IDE.

2. Install the Azure SDK for Embedded C library.

    - On the Arduino IDE, go to menu `Sketch`, `Include Library`, `Manage Libraries...`.
    - Search for and install `azure-sdk-for-c`.

3. Open the ESPRESSIF ESP32 sample.

    - On the Arduino IDE, go to menu `File`, `Examples`, `azure-sdk-for-c`.
    - Click on `az_esp32` to open the sample.

4. Configure the ESPRESSIF ESP32 sample.

    Enter your Azure IoT Hub and device information into the sample's `iot_configs.h`:
    - Add your Wi-Fi SSID to `IOT_CONFIG_WIFI_SSID`
    - Add your Wi-Fi password to `IOT_CONFIG_WIFI_PASSWORD`
    - Add you IoTHub Name to `IOT_CONFIG_IOTHUB_FQDN`
    - Add your Device ID to `IOT_CONFIG_DEVICE_ID`
    - If using **X.509 Cert**:
        - Uncomment the `#define IOT_CONFIG_USE_X509_CERT`
        - Add your cert to `IOT_CONFIG_USE_X509_CERT`
        - Add your cert PK to `IOT_CONFIG_DEVICE_CERT_PRIVATE_KEY`
    - If using **Symmetric Key**:
        - Add your device key to `IOT_CONFIG_DEVICE_KEY`

5. Connect the ESP32 microcontroller to your USB port.

6. On the Arduino IDE, select the board and port.

    - Go to menu `Tools`, `Board` and select `ESP32`.
    - Go to menu `Tools`, `Port` and select the port to which the microcontroller is connected.

7. Upload the sketch.

    - Go to menu `Sketch` and click on `Upload`.

        Expected output of the upload:

        ```text
        Executable segment sizes:
        IROM   : 361788          - code in flash         (default or ICACHE_FLASH_ATTR)
        IRAM   : 26972   / 32768 - code in IRAM          (ICACHE_RAM_ATTR, ISRs...)
        DATA   : 1360  )         - initialized variables (global, static) in RAM/HEAP
        RODATA : 2152  ) / 81920 - constants             (global, static) in RAM/HEAP
        BSS    : 26528 )         - zeroed variables      (global, static) in RAM/HEAP
        Sketch uses 392272 bytes (37%) of program storage space. Maximum is 1044464 bytes.
        Global variables use 30040 bytes (36%) of dynamic memory, leaving 51880 bytes for local variables. Maximum is


child(7n+1)), body .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
  -webkit-box-shadow: -10px 0 0 rgba(136, 136, 136, 0.3);
  box-shadow: -10px 0 0 rgba(136, 136, 136, 0.3);
}
body .flatpickr-day.flatpickr-disabled, body .flatpickr-day.flatpickr-disabled:hover, body .flatpickr-day.prevMonthDay, body .flatpickr-day.nextMonthDay, body .flatpickr-day.notAllowed, body .flatpickr-day.notAllowed.prevMonthDay, body .flatpickr-day.notAllowed.nextMonthDay {
  color: rgba(170, 170, 170, 0.3);
}
body .flatpickr-day.inRange {
  -webkit-box-shadow: -5px 0 0 rgba(136, 136, 136, 0.4), 5px 0 0 rgba(136, 136, 136, 0.4);
  box-shadow: -5px 0 0 rgba(136, 136, 136, 0.4), 5px 0 0 rgba(136, 136, 136, 0.4);
}
body .flatpickr-day.week.selected {
  -webkit-box-shadow: -5px 0 0 rgba(136, 136, 136, 0.3), 5px 0 0 rgba(136, 136, 136, 0.3);
  box-shadow: -5px 0 0 rgba(136, 136, 136, 0.3), 5px 0 0 rgba(136, 136, 136, 0.3);
}
body .flatpickr-weekwrapper .flatpickr-weeks {
  -webkit-box-shadow: 1px 0 0 rgba(170, 170, 170, 0.04);
  box-shadow: 1px 0 0 rgba(170, 170, 170, 0.04);
}
body .flatpickr-weekwrapper span.flatpickr-day, body .flatpickr-weekwrapper span.flatpickr-day:hover {
  color: rgba(170, 170, 170, 0.3);
}
body .flatpickr-time .numInputWrapper span.arrowUp::after {
  border-bottom-color: #aaa;
}
body .flatpickr-time .numInputWrapper span.arrowDown::after {
  border-top-color: #aaa;
}
body .flatpickr-time input {
  color: #aaa;
}
body .flatpickr-time .flatpickr-time-separator, body .flatpickr-time .flatpickr-am-pm {
  color: #aaa;
}
body .flatpickr-time input:hover, body .flatpickr-time .flatpickr-am-pm:hover, body .flatpickr-time input:focus, body .flatpickr-time .flatpickr-am-pm:focus {
  background: transparent;
}
/* stylelint-enable property-no-vendor-prefix */
/*!
 * ---------------------------------------------------------------------
 *
 * GLPI - Gestionnaire Libre de Parc Informatique
 *
 * http://glpi-project.org
 *
 * @copyright 2015-2023 Teclib' and contributors.
 * @copyright 2003-2014 by the INDEPNET Development Team.
 * @licence   https://www.gnu.org/licenses/gpl-3.0.html
 *
 * ---------------------------------------------------------------------
 *
 * LICENSE
 *
 * This file is part of GLPI.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <https://www.gnu.org/licenses/>.
 *
 * ---------------------------------------------------------------------
 */
.floating-buttons {
  position: fixed;
  bottom: 10px;
  left: 50%;
  z-index: 99999;
}
.floating-buttons #backtotop {
  cursor: pointer;
}
.floating-buttons #backtotop:hover {
  opacity: 0.8;
}
#maintenance-float {
  top: 0;
  left: 250px;
  posi


YTOzBrCzylducnZvP5/EreTThdm9SZqzaAsUphBxvhJ0e35vP55c38tGisgK0gbDqd5rB837csa1Uul/slJ1HkinuvVpe/FLZ5jf30yxPJbWpjW7Zw4cL36rrOtqn3Sil5Wzj1KXI1tl9Cq93h8PlwEK+DhCZozAu248qvQ8RdRkdHVztfYVHkinnnVhK/dLAmoo5mf2k+7vDbavdLbY/2HXz9FLni3rvT5S8drE+rdLmcvOY2rkUltTtbwziDyaptYeP6JNSaZ5pJQ624BQu3365iD/XXELHSE0esmufAs3yJ/ycAmHry1LKs1UmK7ptI28Ly8WwT6xuWZa2Y6WmYFuRBKE12xmLxUkHS1PKJJ1cmk1mMiNch4qnVLOC7u7vnjIyMbOfJ08tgUGn9IaDOXP5wa6pc9n3WeucdS7mAtgX95ZOTk1eXP+rdVI1JkDCKXDHvzEwmc6RtHLpW1/WKz+AUi8X9AOByRDSllBzNSn0RIKDIFQHIYVXBVgGIuBER59aqg4heR8R+KaXfSL21qlC/lyGgyBXTIdHX13egZVlsdfF+N00gog0dHR0rBwcH+cylvggQUOSKAGRVhUIgyQgkXluY5M5TbWtuBBS5mrt/lHQxRkCRK8adp0RvbgQUuZq7f5R0MUZAkSvGnadEb24EFLmau3+UdDFGQJErxp2nRG9uBP4LoLDWwdqxA6sAAAAASUVORK5CYII=" width="107.5" height="36">

Approximate the Demand

The Demand equation comes from Optimal Borrowing Choice Firm Maximization, Applying the formula above  with <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIQAAAAoCAYAAAA/mlIyAAAEg0lEQVR4Xu2aWchVZRSGHzWVSg00CgoxLxwiHAgisWi4cLhwREUcUkTRbhqF1AZNTUlxQFFRVMRyRsoESfPGgoimC40ISZCMEi8k9EJRxOSF9cE+x/2fs7d7n7P/f7s2HPCXb1jrXe9e31rvt9vhjyMQQaCdo+EIRBFwQjgfKhBwQjghnBDOgZYR8Azh7PAM4RzwDOEcSIiAHxkJgWrDw9oDQ4G5wArgbC1fnBBtONJ1TA9EeBcYD5wGJjsh


        self.as_str()
    }
}

#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(
    std::clone::Clone,
    std::cmp::Eq,
    std::cmp::Ord,
    std::cmp::PartialEq,
    std::cmp::PartialOrd,
    std::fmt::Debug,
    std::hash::Hash,
)]
pub enum Profile {
    #[allow(missing_docs)] // documentation missing in model
    Hbbtv15,
    #[allow(missing_docs)] // documentation missing in model
    None,
    /// Unknown contains new variants that have been added since this code was generated.
    Unknown(String),
}
impl std::convert::From<&str> for Profile {
    fn from(s: &str) -> Self {
        match s {
            "HBBTV_1_5" => Profile::Hbbtv15,
            "NONE" => Profile::None,
            other => Profile::Unknown(other.to_owned()),
        }
    }
}
impl std::str::FromStr for Profile {
    type Err = std::convert::Infallible;

    fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
        Ok(Profile::from(s))
    }
}
impl Profile {
    /// Returns the `&str` value of the enum member.
    pub fn as_str(&self) -> &str {
        match self {
            Profile::Hbbtv15 => "HBBTV_1_5",
            Profile::None => "NONE",
            Profile::Unknown(s) => s.as_ref(),
        }
    }
    /// Returns all the `&str` values of the enum members.
    pub fn values() -> &'static [&'static str] {
        &["HBBTV_1_5", "NONE"]
    }
}
impl AsRef<str> for Profile {
    fn as_ref(&self) -> &str {
        self.as_str()
    }
}

#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(
    std::clone::Clone,
    std::cmp::Eq,
    std::cmp::Ord,
    std::cmp::PartialEq,
    std::cmp::PartialOrd,
    std::fmt::Debug,
    std::hash::Hash,
)]
pub enum ManifestLayout {
    #[allow(missing_docs)] // documentation missing in model
    Compact,
    #[allow(missing_docs)] // documentation missing in model
    Full,
    /// Unknown contains new variants that have been added since this code was generated.
    Unknown(String),
}
impl std::convert::From<&str> for ManifestLayout {
    fn from(s: &str) -> Self {
        match s {
            "COMPACT" => ManifestLayout::Compact,
            "FULL" => ManifestLayout::Full,
            other => ManifestLayout::Unknown(other.to_owned()),
        }
    }
}
impl std::str::FromStr for ManifestLayout {
    type Err = std::convert::Infallible;

    fn from_str(s: &str) -> std::result::Result<Self, Self::Err> {
        Ok(ManifestLayout::from(s))
    }
}
impl ManifestLayout {
    /// Returns the `&str` value of the enum member.
    pub fn as_str(&self) -> &str {
        match self {
            ManifestLayout::Compact => "COMPACT",
            ManifestLayout::Full => "FULL",
            ManifestLayout::Unknown(s) => s.as_ref(),
        }
    }
    /// Returns all the `&str` values of the enum members.
    pub fn values() -> &'static [&'static str] {
        &["COMPACT", "FULL"]
    }
}
impl AsRef<str> for ManifestLayout {
    fn as_ref(&self) -> &str {
        self.as_str()
    }
}

/// A CMAF packaging configuration.
#[non_exhaustive]
#[derive(std::clone::Clone, std::cmp::PartialEq)]
pub struct CmafPackage {
    /// A CMAF encryption configuration.
    pub encryption: std::option::Option<crate::model::CmafEncryption>,
    /// A list of HLS man


from geopy.geocoders import Nominatim
from flask import Flask, request

# create an instance of the Flask application
app = Flask(__name__)

# calling the Nominatim tool
loc = Nominatim(user_agent="GetLoc")

# entering the location name
getLoc = loc.geocode("Gosainganj Lucknow")

# route for retrieving location information
@app.route('/api/Location', methods=['Get'])
def addJson():
    # return JSON object with location information
    return {
        'Latitude': getLoc.latitude,
        'Longitude': getLoc.longitude
    }

if __name__ == "__main__":
    app.run(debug=True)

#run with this url : http://localhost:5000/api/location


f;
	-moz-border-left-colors: #171e1f;
}
.rtl.skin-1 .nav-list li.pull_up > .arrow:after {
	border-right-color: transparent !important;
	-moz-border-right-colors: none !important;
	border-left-color: #353c3d !important;
	-moz-border-left-colors: #353c3d !important;
}
.rtl.skin-1 .nav-list li.pull_up > .arrow:before {
	border-right-color: transparent !important;
	-moz-border-right-colors: none !important;
	border-left-color: #1d2122 !important;
	-moz-border-left-colors: #1d2122 !important;
}
.rtl.skin-1 .nav-list li.pull_up.active > .arrow:after {
	border-right-color: transparent !important;
	-moz-border-right-colors: none !important;
	border-left-color: #171e1f !important;
	-moz-border-left-colors: #171e1f !important;
}
.rtl.skin-1 .nav-list li.pull_up.active > .arrow:before {
	border-right-color: transparent !important;
	-moz-border-right-colors: none !important;
	border-left-color: #50a0dd !important;
	-moz-border-left-colors: #50a0dd !important;
}

@media only screen and (min-width: 768px) {
.rtl.skin-1 .container.main-container:before {
	box-shadow: -0 0 0 1px rgba(255, 255, 255, 0.1);
}
}

@media only screen and (min-width: 992px) {
.rtl.skin-1 .sidebar.h-sidebar .nav-list > li.hover.active > a:after {
	-moz-border-left-colors: none;
	-moz-border-right-colors: none;
	right: 50%;
	left: auto;
	margin-left: auto;
	margin-right: -8px;
}
.rtl.skin-1 .sidebar.h-sidebar .nav-list > li.hover.active > .submenu {
	border-left-color: transparent;
	border-right-color: #232828;
}
.rtl.skin-1 .sidebar.h-sidebar .nav-list > li > .arrow:after {
	border-right-color: transparent;
	-moz-border-right-colors: none;
	border-left-color: transparent;
	-moz-border-left-colors: none;
}
.rtl.skin-1 .sidebar.h-sidebar .nav-list > li > .arrow:before {
	-moz-border-right-colors: none;
	border-right-color: transparent;
	-moz-border-left-colors: none;
	border-left-color: transparent;
}
.rtl.skin-1 .sidebar.h-sidebar .nav-list > li.active > .arrow:before,.rtl.skin-1 .sidebar.h-sidebar .sidebar-shortcuts-large:before {
	border-right-color: transparent;
	-moz-border-right-colors: none;
	border-left-color: transparent;
	-moz-border-left-colors: none;
}
.rtl.skin-1 .sidebar.h-sidebar .nav-list > li.active > .arrow:after,.rtl.skin-1 .sidebar.h-sidebar .sidebar-shortcuts-large:after {
	border-right-color: transparent;
	-moz-border-right-colors: none;
	border-left-color: transparent;
	-moz-border-left-colors: none;
}
}
.rtl.skin-2 .sidebar {
	border-right-width: transparent;
	border-left-width: 0;
}
.r


x_timeout = (int)config.Item( OZ_WEB_L_AJAX_TIMEOUT );\
    web_p_can_stream = (const char *)config.Item( OZ_WEB_P_CAN_STREAM );\
    web_p_stream_method = (const char *)config.Item( OZ_WEB_P_STREAM_METHOD );\
    web_p_default_scale = (int)config.Item( OZ_WEB_P_DEFAULT_SCALE );\
    web_p_default_rate = (int)config.Item( OZ_WEB_P_DEFAULT_RATE );\
    web_p_video_bitrate = (int)config.Item( OZ_WEB_P_VIDEO_BITRATE );\
    web_p_video_maxfps = (int)config.Item( OZ_WEB_P_VIDEO_MAXFPS );\
    web_p_scale_thumbs = (bool)config.Item( OZ_WEB_P_SCALE_THUMBS );\
    web_p_ajax_timeout = (int)config.Item( OZ_WEB_P_AJAX_TIMEOUT );\
    dyn_last_version = (const char *)config.Item( OZ_DYN_LAST_VERSION );\
    dyn_curr_version = (const char *)config.Item( OZ_DYN_CURR_VERSION );\
    dyn_db_version = (const char *)config.Item( OZ_DYN_DB_VERSION );\
    dyn_last_check = (int)config.Item( OZ_DYN_LAST_CHECK );\
    dyn_next_reminder = (const char *)config.Item( OZ_DYN_NEXT_REMINDER );\
    dyn_donate_reminder_time = (int)config.Item( OZ_DYN_DONATE_REMINDER_TIME );\
    dyn_show_donate_reminder = (bool)config.Item( OZ_DYN_SHOW_DONATE_REMINDER );\
    eyeoz_debug = (bool)config.Item( OZ_EYEOZ_DEBUG );\
    eyeoz_log_to_file = (bool)config.Item( OZ_EYEOZ_LOG_TO_FILE );\
    eyeoz_log_file = (const char *)config.Item( OZ_EYEOZ_LOG_FILE );\
    eyeoz_event_vcodec = (const char *)config.Item( OZ_EYEOZ_EVENT_VCODEC );\
    eyeoz_feed_vcodec = (const char *)config.Item( OZ_EYEOZ_FEED_VCODEC );\
    eyeoz_h264_default_br = (const char *)config.Item( OZ_EYEOZ_H264_DEFAULT_BR );\
    eyeoz_h264_default_evbr = (const char *)config.Item( OZ_EYEOZ_H264_DEFAULT_EVBR );\
    eyeoz_h264_timeout = (const char *)config.Item( OZ_EYEOZ_H264_TIMEOUT );\
    eyeoz_seg_duration = (const char *)config.Item( OZ_EYEOZ_SEG_DURATION );\
    audio_streaming = (bool)config.Item( OZ_AUDIO_STREAMING );\
    dyn_capture_card_type = (const char *)config.Item( OZ_DYN_CAPTURE_CARD_TYPE );\


FooterText = "Current version: " + Core.DisplayVersion
          }
        )
        {
          taskDialog.AddCommandLink(TaskDialogCommandLinkId.CommandLink1, "1. Run Revit without other Addins…", "Good for testing if Rhino.Inside would load if no other add-in were installed.");
          taskDialog.AddCommandLink(TaskDialogCommandLinkId.CommandLink2, "2. Run Rhino.Inside in verbose mode…", "Enables all logging mechanisms built in Rhino for support purposes.");
          taskDialog.AddCommandLink(TaskDialogCommandLinkId.CommandLink3, "3. Send report…", "Reports this problem by email to tech@mcneel.com");
          taskDialog.DefaultButton = TaskDialogResult.CommandLink3;

          while (true)
            switch (taskDialog.Show())
            {
              case TaskDialogResult.CommandLink1: RunWithoutAddIns(); break;
              case TaskDialogResult.CommandLink2: RunVerboseMode(); break;
              case TaskDialogResult.CommandLink3:
                SendEmail
                (
                  Core.Host,
                  subject: "Rhino.Inside Revit failed to load",
                  body: null,
                  includeAddinsList: !taskDialog.WasVerificationChecked(),
                  attachments: new string[]
                  {
                    Core.Host.Services.RecordingJournalFilename,
                    RhinoDebugMessages_txt,
                    RhinoAssemblyResolveLog_txt
                  }
                );
                return Result.Succeeded;
              default: return Result.Cancelled;
            }
        }
      }

      static void RunWithoutAddIns()
      {
        var SafeModeFolder = Path.Combine(Core.Host.Services.CurrentUserAddinsLocation, "RhinoInside.Revit", "SafeMode");
        Directory.CreateDirectory(SafeModeFolder);

        Settings.AddIns.GetInstalledAddins(Core.Host.Services.VersionNumber, out var manifests);
        if (manifests.FirstOrDefault(x => Path.GetFileName(x) == "RhinoInside.Revit.addin") is string manifestFile)
        {
          if (Settings.AddIns.LoadFrom(manifestFile, out var safeManifest))
          {
            // Make all paths absolute
            foreach(var addin in safeManifest)
              addin.Assembly = safeManifest.ToFileInfo(addin.Assembly).FullName;

            var safeManifestFile = Path.Combine(SafeModeFolder, Path.GetFileName(manifestFile));
            Settings.AddIns.SaveAs(safeManifest, safeManifestFile);
          }

          var journalFile = Path.Combine(SafeModeFolder, "RhinoInside.Revit-SafeMode.txt");
          using (var journal = File.CreateText(journalFile))
          {
            var TabName = "Rhino.Inside";
            journal.WriteLine("' ");
            journal.WriteLine("Dim Jrn");
            journal.WriteLine("Set Jrn = CrsJournalScript");
            journal.WriteLine($" Jrn.RibbonEvent \"TabActivated:{TabName}\"");
            journal.WriteLine($" Jrn.RibbonEvent \"Execute external command:CustomCtrl_%CustomCtrl_%{TabName}%More%CommandStart:RhinoInside.Revit.AddIn.Commands.CommandStart\"");
            journal.WriteLine($" Jrn.RibbonEvent \"Execute external command:CustomCtrl_%CustomCtrl_%{TabName}%Rhinoceros%CommandRhino:RhinoInside.Revit.AddIn.Commands.CommandRhino\"");
          }
#if DEBUG
          var batchFile = Path.Combine(SafeModeFolder, "RhinoInside.Revit-SafeMode.bat");
          using (var batch = File.CreateText(batchFile))
          {
            batch.WriteLine($"\"{Process.GetCurrentProcess().MainModule.FileName}\" \"{Path.GetFileName(journalFile)}\"");
          }
#endif
          var si = new ProcessStartInfo()
          {
            FileName = Process.GetCurrentProcess().MainModule.FileName,
            Arguments = $"\"{journalFile}\""
          };

          using (var RevitApp = Process.Start(si)) RevitApp.WaitForExit();
        }


: 0(show my glider when sheathed), 1(hide my glider when sheathed))

variable: e_custom_texture_share
type: int
current: 1
help: custom texture sharing on/off

variable: quest_cam_dof_range
type: float
current: 2.5
help: quest cam dof range

variable: e_DissolveDistMax
type: float
current: 8
help: At most how near to object MVD dissolve effect triggers (10% of MVD, clamped to this)

variable: e_DissolveDistMin
type: float
current: 2
help: At least how near to object MVD dissolve effect triggers (10% of MVD, clamped to this)

variable: r_Reflections DUMPTODISK
type: int
current: 1
help: Toggles reflections.
Usage: r_Reflections [0/1]
Default is 1 (reflects).

variable: s_HWChannels DUMPTODISK, REQUIRE_APP_RESTART
type: int
current: 0
help: Sets the number of sound hardware channels to use./nSo even if you have 256 channels only max of them will be used.
Default is 0.

variable: e_particles_lights
type: int
current: 1
help: Allows to have simpe light source attached to every article

variable: ignore_ui_permission
type: int
current: 0
help:

variable: e_DissolveDist
type: float
current: 1.5
help: How near to object MVD dissolve effect triggers

variable: e_DissolveTime
type: float
current: 0.4
help: How many seconds transition takes place

variable: ca_GameControlledStrafing
type: int
current: 1
help: Use game controlled strafing/curving flag, instead of low level calculated curving weight.

variable: ac_MCMHorLocalPlayer
type: int
current: 1
help: Overrides the horizontal movement control method specified by AG (overrides filter).

variable: r_ssdoAmount
type: float
current: 1.2
help: Strength of the directional occlusion

variable: r_ShadersPrecacheAllLights
type: int
current: 0
help:

variable: s_VariationLimiter REQUIRE_APP_RESTART
type: float
current: 1
help: Sets limiter to control sound variation.
Usage: s_VariationLimiter [0..1]
Default is 1.0.

variable: ai_DrawSpawner
type: int
current: 0
help: drawing spawner

variable: r_texturesStreamingUploadPerFrame
type: int
current: 1
help: max upload texture count per frame. (DX9 only)

variable: log_WriteToFile DUMPTODISK
type: int
current: 1
help: toggle whether to write log to file (game.log)

variable: e_custom_dressing_time_max
type: float
current: 0.5
help: set character customizer max dressing time threshold

variable: e_particles_receive_shadows
type: int
current: 0
help: Enable shadow maps receiving for particles

variable: ui_game_provider
type: int
current: 3
help: game provider for ui view(0 : real game provider, 1 : tencent, 2 : gameon, 3 : trion, 4 : mailru, 5 : playwith)

variable: s_X2CullingByMaxChannel
type: int
current: 1
help: allow early culling by max channel.
Usage: s_CullingByX2SoundPriority [0/1]
Default is 0 (off).

variable: e_dynamic_light_max_count
type: int
current: 128
help: Sets maximum amount of dynamic light sources

variable: ca_DecalSizeMultiplier
type: float
current: 1
help: The multiplier for the decal sizes

variable: option_use_cloud
type: int
current: 1
help: Console variable group


64f, 64f
        )
        RenderUtils.drawScaledCustomSizeModalRect(
            x, y, 40f, 8f, 8, 8, width, height,
            64f, 64f
        )
    }

    fun isInViewFrustrum(entity: Entity): Boolean {
        return isInViewFrustrum(entity.entityBoundingBox) || entity.ignoreFrustumCheck
    }

    private fun isInViewFrustrum(bb: AxisAlignedBB): Boolean {
        val current = mc.renderViewEntity
        frustrum.setPosition(current.posX, current.posY, current.posZ)
        return frustrum.isBoundingBoxInFrustum(bb)
    }

    fun interpolate(current: Float, old: Float, scale: Float): Float {
        return old + (current - old) * scale
    }

    fun interpolate(current: Double, old: Double, scale: Double): Double {
        return old + (current - old) * scale
    }

    fun SkyRainbow(var2: Int, st: Float, bright: Float): Int {
        var v1 = ceil((System.currentTimeMillis() + (var2 * 109).toLong()).toDouble()) / 5
        return Color.getHSBColor(if ((360.0.also { v1 %= it } / 360.0).toFloat()
                .toDouble() < 0.5) -(v1 / 360.0).toFloat() else (v1 / 360.0).toFloat(), st, bright).rgb
    }

    fun skyRainbow(var2: Int, st: Float, bright: Float): Color {
        var v1 = ceil((System.currentTimeMillis() + (var2 * 109).toLong()).toDouble()) / 5
        return Color.getHSBColor(if ((360.0.also { v1 %= it } / 360.0).toFloat()
                .toDouble() < 0.5) -(v1 / 360.0).toFloat() else (v1 / 360.0).toFloat(), st, bright)
    }

    fun getRainbowOpaque(
        seconds: Int,
        saturation: Float,
        brightness: Float,
        index: Int
    ): Int {
        val hue =
            (System.currentTimeMillis() + index) % (seconds * 1000) / (seconds * 1000).toFloat()
        return Color.HSBtoRGB(hue, saturation, brightness)
    }

    fun getNormalRainbow(delay: Int, sat: Float, brg: Float): Int {
        var rainbowState = ceil((System.currentTimeMillis() + delay) / 20.0)
        rainbowState %= 360.0
        return Color.getHSBColor((rainbowState / 360.0f).toFloat(), sat, brg).rgb
    }

    fun startSmooth() {
        GL11.glEnable(2848)
        GL11.glEnable(2881)
        GL11.glEnable(2832)
        GL11.glEnable(3042)
        GL11.glBlendFunc(770, 771)
        GL11.glHint(3154, 4354)
        GL11.glHint(3155, 4354)
        GL11.glHint(3153, 4354)
    }

    fun endSmooth() {
        GL11.glDisable(2848)
        GL11.glDisable(2881)
        GL11.glEnable(2832)
    }

    fun drawExhiRect(x: Float, y: Float, x2: Float, y2: Float) {
        drawRect(x - 3.5f, y - 3.5f, x2 + 3.5f, y2 + 3.5f, Color.black.rgb)
        drawRect(x - 3f, y - 3f, x2 + 3f, y2 + 3f, Color(50, 50, 50).rgb)
        //drawBorder(x - 1.5F, y - 1.5F, x2 + 1.5F, y2 + 1.5F, 2.5F, new Color(26, 26, 26).getRGB());


")]
mod threads;

#[cfg(all(target_arch = "aarch64", feature = "threads"))]
#[path = "arch-aarch64.rs"]
mod arch;
#[cfg(all(target_arch = "x86_64", feature = "threads"))]
#[path = "arch-x86_64.rs"]
mod arch;
#[cfg(all(target_arch = "x86", feature = "threads"))]
#[path = "arch-x86.rs"]
mod arch;
#[cfg(all(target_arch = "riscv64", feature = "threads"))]
#[path = "arch-riscv64.rs"]
mod arch;
#[cfg(all(target_arch = "arm", feature = "threads"))]
#[path = "arch-arm.rs"]
mod arch;

use std::ffi::c_void;

pub use program::{at_exit, exit, exit_immediately};
#[cfg(feature = "threads")]
pub use threads::{
    at_thread_exit, create_thread, current_thread, current_thread_id, current_thread_tls_addr,
    default_guard_size, default_stack_size, detach_thread, join_thread, thread_stack, Thread,
};

/// The program entry point.
///
/// # Safety
///
/// This function should never be called explicitly. It is the first thing
/// executed in the program, and it assumes that memory is laid out
/// according to the operating system convention for starting a new program.
#[cfg(target_vendor = "mustang")]
#[naked]
#[link_section = ".text.__mustang"]
#[no_mangle]
unsafe extern "C" fn _start() -> ! {
    use program::entry;

    // Jump to `program`, passing it the initial stack pointer value as an
    // argument, a NULL return address, a NULL frame pointer, and an aligned
    // stack pointer.

    #[cfg(target_arch = "x86_64")]
    asm!("mov rdi, rsp",
         "push rbp",
         "jmp {entry}",
         entry = sym entry,
         options(noreturn));

    #[cfg(target_arch = "aarch64")]
    asm!("mov x0, sp",
         "mov x30, xzr",
         "b {entry}",
         entry = sym entry,
         options(noreturn));

    #[cfg(target_arch = "arm")]
    asm!("mov r0, sp\n",
         "mov lr, #0",
         "b {entry}",
         entry = sym entry,
         options(noreturn));

    #[cfg(target_arch = "riscv64")]
    asm!("mv a0, sp",
         "mv ra, zero",
         "mv fp, zero",
         "tail {entry}",
         entry = sym entry,
         options(noreturn));

    #[cfg(target_arch = "x86")]
    asm!("mov eax, esp",
         "push ebp",
         "push ebp",
         "push ebp",
         "push eax",
         "push ebp",
         "jmp {entry}",
         entry = sym entry,
         options(noreturn));
}

#[repr(transparent)]
struct SendSyncVoidStar(*mut c_void);

unsafe impl Send for SendSyncVoidStar {}
unsafe impl Sync for SendSyncVoidStar {}

/// An ABI-conforming `__dso_handle`.
#[cfg(target_vendor = "mustang")]
#[link_section = ".data.__mustang"]
#[no_mangle]
#[used]
static __dso_handle: SendSyncVoidStar = SendSyncVoidStar(&__dso_handle as *const _ as *mut c_void);

/// Initialize logging, if enabled.
#[cfg(target_vendor = "mustang")]
#[cfg(feature = "env_logger")]
#[link_section = ".init_array.00099"]
#[used]
static INIT_ARRAY: unsafe extern "C" fn() = {
    unsafe extern "C" fn funct


Code: []byte{
						byte(vm.PC),
						byte(vm.PC),
						byte(vm.SLOAD),
						byte(vm.SLOAD),
					},
					Nonce:   0,
					Balance: big.NewInt(0),
				},
			},
		}
	)

	gspec.Config.BerlinBlock = common.Big0
	gspec.Config.LondonBlock = common.Big0
	signer := types.LatestSigner(gspec.Config)

	genDb, blocks, _ := GenerateChainWithGenesis(gspec, engine, 1, func(i int, b *BlockGen) {
		b.SetCoinbase(common.Address{1})

		// One transaction to 0xAAAA
		accesses := types.AccessList{types.AccessTuple{
			Address:     aa,
			StorageKeys: []common.Hash{{0}},
		}}

		txdata := &types.DynamicFeeTx{
			ChainID:    gspec.Config.ChainID,
			Nonce:      0,
			To:         &aa,
			Gas:        30000,
			GasFeeCap:  newGwei(5),
			GasTipCap:  big.NewInt(2),
			AccessList: accesses,
			Data:       []byte{},
		}
		tx := types.NewTx(txdata)
		tx, _ = types.SignTx(tx, signer, key1)

		b.AddTx(tx)
	})
	chain, err := NewBlockChain(rawdb.NewMemoryDatabase(), nil, gspec, nil, engine, vm.Config{}, nil, nil)
	if err != nil {
		t.Fatalf("failed to create tester chain: %v", err)
	}
	defer chain.Stop()

	if n, err := chain.InsertChain(blocks); err != nil {
		t.Fatalf("block %d: failed to insert into chain: %v", n, err)
	}

	block := chain.GetBlockByNumber(1)

	// 1+2: Ensure EIP-1559 access lists are accounted for via gas usage.
	expectedGas := params.TxGas + params.TxAccessListAddressGas + params.TxAccessListStorageKeyGas +
		vm.GasQuickStep*2 + params.WarmStorageReadCostEIP2929 + params.ColdSloadCostEIP2929
	if block.GasUsed() != expectedGas {
		t.Fatalf("incorrect amount of gas spent: expected %d, got %d", expectedGas, block.GasUsed())
	}

	state, _ := chain.State()

	// 3: Ensure that miner received only the tx's tip.
	actual := state.GetBalance(block.Coinbase())
	expected := new(big.Int).Add(
		new(big.Int).SetUint64(block.GasUsed()*block.Transactions()[0].GasTipCap().Uint64()),
		ethash.ConstantinopleBlockReward,
	)
	if actual.Cmp(expected) != 0 {
		t.Fatalf("miner balance incorrect: expected %d, got %d", expected, actual)
	}

	// 4: Ensure the tx sender paid for the gasUsed * (tip + block baseFee).
	actual = new(big.Int).Sub(funds, state.GetBalance(addr1))
	expected = new(big.Int).SetUint64(block.GasUsed() * (block.Transactions()[0].GasTipCap().Uint64() + block.BaseFee().Uint64()))
	if actual.Cmp(expected) != 0 {
		t.Fatalf("sender balance incorrect: expected %d, got %d", expected, actual)
	}

	blocks, _ = GenerateChain(gspec.Config, block, engine, genDb, 1, func(i int, b *BlockGen) {
		b.SetCoinbase(common.Address{2})

		txdata := &types.LegacyTx{
			Nonce:    0,
			To:       &aa,
			Gas:      30000,
			GasPrice: newGwei(5),
		}
		tx := types.NewTx(txdata)
		tx, _ = types.SignTx(tx, signer, key2)

		b.AddTx(tx)


014 2.745h10.693c.303 0 .549-.225.549-.498v-6.74c-.008-1.523-1.363-2.75-3.014-2.744H2.531c-.302 0-.547.224-.547.497zm14.936 2.63l4.416-2.963c.383-.292.68-.219.68.309v9.036c0 .601-.363.528-.68.309L16.92 13.87v-3.734z"/>',
    },
  },
  width: 24,
  height: 24,
})
addCollection({
  prefix: 'bxs',
  lastModified: 1663655073,
  icons: {
    'add-to-queue': {
      body: '<path fill="currentColor" d="M4 22h12v-2H4V8H2v12c0 1.103.897 2 2 2z"/><path fill="currentColor" d="M20 2H8c-1.103 0-2 .897-2 2v12c0 1.103.897 2 2 2h12c1.103 0 2-.897 2-2V4c0-1.103-.897-2-2-2zm-2 9h-3v3h-2v-3h-3V9h3V6h2v3h3v2z"/>',
    },
    adjust: {
      body: '<path fill="currentColor" d="M12 2C6.579 2 2 6.58 2 12s4.579 10 10 10s10-4.58 10-10S17.421 2 12 2zm0 17V5c3.829 0 7 3.169 7 7c0 3.828-3.171 7-7 7z"/>',
    },
    'adjust-alt': {
      body: '<path fill="currentColor" d="M19.071 19.071c3.833-3.833 3.833-10.31 0-14.143s-10.31-3.833-14.143 0s-3.833 10.31 0 14.143s10.31 3.833 14.143 0zM7.051 7.051c2.706-2.707 7.191-2.708 9.898 0l-9.898 9.898c-2.708-2.707-2.71-7.19 0-9.898z"/>',
    },
    alarm: {
      body: '<path fill="currentColor" d="M12 4c-4.878 0-9 4.122-9 9s4.122 9 9 9c4.879 0 9-4.122 9-9s-4.121-9-9-9zm5 10h-6V8h2v4h4v2zm3.292-7.292l-3.01-3l1.412-1.417l3.01 3zM5.282 2.294L6.7 3.706l-2.99 3l-1.417-1.413z"/>',
    },
    'alarm-add': {
      body: '<path fill="currentColor" d="M12 4c-4.879 0-9 4.121-9 9s4.121 9 9 9s9-4.121 9-9s-4.121-9-9-9zm4 10h-3v3h-2v-3H8v-2h3V9h2v3h3v2zm1.284-10.293l1.412-1.416l3.01 3l-1.413 1.417zM5.282 2.294L6.7 3.706l-2.99 3l-1.417-1.413z"/>',
    },
    'alarm-exclamation': {
      body: '<path fill="currentColor" d="m17.284 3.707l1.412-1.416l3.01 3l-1.413 1.417zm-10.586 0l-2.99 2.999L2.29 5.294l2.99-3zM12 4c-4.879 0


                   colorbar=dict(title='D (cm²/s)'),
                        ),
                    )
                )
                # Add labels for the five elements
                fig = set_labels_plotly(fig, labels)
                fig.update_layout(
                    title='UMAP Projection of Predicted Diffusion Coefficient:',
                    **kwargs_fig
                )
                st.plotly_chart(fig, use_container_width=False)

    # Add a footer
    st.divider()
    st.markdown(
    '''
    <div style='color: rgba(0, 0, 0, 0.4); font-weight: bold;'>
        Copyright © 2025 HEP-Explorer | Developed by Guangchen Liu. All rights reserved.
    </div>
    ''',
    unsafe_allow_html=True
    )

if __name__ == '__main__':

    main()


oString(Map<String, String> map) {
        StringBuilder builder = new StringBuilder();
        map.forEach((key, value) -> {
            if (value.toLowerCase().contains("password")) {
                value = "******";
            }
            builder.append(key).append("=").append(value).append("
");
        });
        return builder.toString();
    }

    private Pair<String, Integer> replaceLine(String script) {
        Matcher pattern = Pattern.compile("\n+").matcher(script);
        StringBuilder builder = new StringBuilder();
        int start = 0, end = script.length(), line = 1;
        while (pattern.find()) {
            builder.append(script, start, pattern.start());
            builder.append("
");
            start = pattern.end();
            line++;
        }
        builder.append(script, start, end);
        return new MutablePair<>(builder.toString(), line);
    }

    private String markAsRed(String source, String word) {
        if (StringUtils.isBlank(word)) {
            return source;
        }
        Matcher matcher = Pattern.compile(word, Pattern.CASE_INSENSITIVE).matcher(source);
        StringBuilder builder = new StringBuilder();
        int start = 0, end = source.length();
        while (matcher.find()) {
            builder.append(source, start, matcher.start());
            builder.append("").append(matcher.group()).append("");
            start = matcher.end();
        }

        builder.append(source, start, end);
        return builder.toString();
    }

    private String getLowerCase(String val) {
        if (StringUtils.isBlank(val)) {
            return null;
        }
        return val.toLowerCase();
    }

}
package com.dfire.core.emr;

import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.emr.model.v20160408.*;
import com.aliyuncs.emr.model.v20160408.CreateClusterV2Request.Config;
import com.aliyuncs.emr.model.v20160408.CreateClusterV2Request.HostGroup;
import com.aliyuncs.emr.model.v20160408.DescribeClusterV2Response.ClusterInfo;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.profile.IClientProfile;
import com.dfire.common.exception.HeraException;
import com.dfire.common.util.EnvUtils;
import com.dfire.config.HeraGlobalEnv;
import com.dfire.logs.ErrorLog;
import com.dfire.logs.MonitorLog;
import org.apache.commons.lang3.StringUtils;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
 * desc:
 *
 * @author scx
 * @create 2019/04/01
 */
public class AliYunEmr extends AbstractEmr {

    public static final String NAME = "aliYun";

    private boolean isShutdown = true;

    private DefaultAcsClient client;

    private List<String> aliveStatus = new ArrayList<>();

    {
        aliveStatus.add("CREATING");
        aliveStatus.add("IDLE");
        aliveStatus.add("RUNNING");
    }

    public static void main(String[] args) {
        AliYunEmr emr = new AliYunEmr();
        emr.init();
    }

    @Override
    protected void init() {
        if (client == null || isShutdown) {
            synchronized (this) {
                if (client == null || isShutdown) {
                    String region = "cn-hangzhou";
                    if (EnvUtils.isDaily()) {
                        region = "cn-shanghai";
                    }
                    IClientProfile profile = DefaultProfile.getProfile(region, HeraGlobalEnv.getAliYunAccessKey(), HeraGlobalEnv.getAliYunAccessSecret());
                    client = new DefaultAcsClient(profile);
                    isShutdown = false;
                }
            }
        }
    }

    @Override
    protected void terminateCluster(String clusterId


   });
  }

  NfeExportacaosCompanion copyWith(
      {Value<int?>? id,
      Value<int?>? idNfeDetalhe,
      Value<int?>? drawback,
      Value<int?>? numeroRegistro,
      Value<String?>? chaveAcesso,
      Value<double?>? quantidade}) {
    return NfeExportacaosCompanion(
      id: id ?? this.id,
      idNfeDetalhe: idNfeDetalhe ?? this.idNfeDetalhe,
      drawback: drawback ?? this.drawback,
      numeroRegistro: numeroRegistro ?? this.numeroRegistro,
      chaveAcesso: chaveAcesso ?? this.chaveAcesso,
      quantidade: quantidade ?? this.quantidade,
    );
  }

  @override
  Map<String, Expression> toColumns(bool nullToAbsent) {
    final map = <String, Expression>{};
    if (id.present) {
      map['ID'] = Variable<int>(id.value);
    }
    if (idNfeDetalhe.present) {
      map['ID_NFE_DETALHE'] = Variable<int>(idNfeDetalhe.value);
    }
    if (drawback.present) {
      map['DRAWBACK'] = Variable<int>(drawback.value);
    }
    if (numeroRegistro.present) {
      map['NUMERO_REGISTRO'] = Variable<int>(numeroRegistro.value);
    }
    if (chaveAcesso.present) {
      map['CHAVE_ACESSO'] = Variable<String>(chaveAcesso.value);
    }
    if (quantidade.present) {
      map['QUANTIDADE'] = Variable<double>(quantidade.value);
    }
    return map;
  }

  @override
  String toString() {
    return (StringBuffer('NfeExportacaosCompanion(')
          ..write('id: $id, ')
          ..write('idNfeDetalhe: $idNfeDetalhe, ')
          ..write('drawback: $drawback, ')
          ..write('numeroRegistro: $numeroRegistro, ')
          ..write('chaveAcesso: $chaveAcesso, ')
          ..write('quantidade: $quantidade')
          ..write(')'))
        .toString();
  }
}

class $NfeFaturasTable extends NfeFaturas
    with TableInfo<$NfeFaturasTable, NfeFatura> {
  @override
  final GeneratedDatabase attachedDatabase;
  final String? _alias;
  $NfeFaturasTable(this.attachedDatabase, [this._alias]);
  static const VerificationMeta _idMeta = const VerificationMeta('id');
  @override
  late final GeneratedColumn<int> id = GeneratedColumn<int>(
      'ID', aliasedName, true,
      type: DriftSqlType.int, requiredDuringInsert: false);
  static const VerificationMeta _idNfeCabecalhoMeta =
      const VerificationMeta('idNfeCabecalho');
  @override
  late final GeneratedColumn<int> idNfeCabecalho = GeneratedColumn<int>(
      'ID_NFE_CABECALHO', aliasedName, true,
      type: DriftSqlType.int,
      requiredDuringInsert: false,
      $customConstraints: 'NULLABLE REFERENCES NFE_CABECALHO(ID)');
  static const VerificationMeta _numeroMeta = const VerificationMeta('numero');
  @override
  late final GeneratedColumn<String> numero = GeneratedColumn<String>(
      'NUMERO', aliasedName, true,
      additionalChecks:
          GeneratedColumn.checkTextLength(minTextLength: 0, maxTextLength: 60),
      type: DriftSqlType.string,
      requiredDuringInsert: false);
  static const VerificationMeta _valorOriginalMeta =
      const VerificationMeta('valorOriginal');


="text" name="textfield" id="textfield" value="{{ data.pname }}" />

    Product Image

      <input type="file" name="fileField" id="fileField" value="{{ data.pic }}" />

    Discription

      <textarea name="textarea" id="textarea" cols="45" rows="5">{{ data.discri }}</textarea>

    Price

      <input type="text" name="textfield2" id="textfield2" value="{{ data.price }}"/>

    Status
{#  {% if data.status == 'free charge' %}#}

        <input  type="radio" name="RadioGroup1"   value="free charge" {% if data.status == 'free charge' %}checked{% endif %} id="RadioGroup1_0" />
        Free Delivery Charge

        <input type="radio" name="RadioGroup1" value="extra charge" id="RadioGroup1_1" />
        Extra Delivery Charge

    <input type="submit" name="button" id="button" value="Edit" />

</form>

{% endblock %}{% extends 'dealer/index.html' %}
{% block body %}

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>

<form action="/contractor_complaint_post" method="post">
    {% csrf_token %}

{#
#}
{#    contractor	#}
{#    <select name="contractor">#}
{#        {% for i in data %}#}
{#        <option value="{{ i.id }}">{{ i.name }}</option>#}
{#        {% endfor %}#}
{#    </select> 	#}
{#
#}

    complaint

      <textarea name="textarea" id="textarea" cols="45" rows="5"></textarea>

    <input type="submit" name="button" id="button" value="Submit" />

</form>

{% endblock %}{% extends 'dealer/index.html' %}
{% block body %}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<meta http-equiv="C


absent(),
    this.valorTotal = const Value.absent(),
  });
  ComandaDetalheComplementosCompanion.insert({
    this.id = const Value.absent(),
    this.idComandaDetalhe = const Value.absent(),
    this.idProduto = const Value.absent(),
    this.nomeProduto = const Value.absent(),
    this.quantidade = const Value.absent(),
    this.valorUnitario = const Value.absent(),
    this.valorTotal = const Value.absent(),
  });
  static Insertable<ComandaDetalheComplemento> custom({
    Expression<int?>? id,
    Expression<int?>? idComandaDetalhe,
    Expression<int?>? idProduto,
    Expression<String?>? nomeProduto,
    Expression<double?>? quantidade,
    Expression<double?>? valorUnitario,
    Expression<double?>? valorTotal,
  }) {
    return RawValuesInsertable({
      if (id != null) 'ID': id,
      if (idComandaDetalhe != null) 'ID_COMANDA_DETALHE': idComandaDetalhe,
      if (idProduto != null) 'ID_PRODUTO': idProduto,
      if (nomeProduto != null) 'NOME_PRODUTO': nomeProduto,
      if (quantidade != null) 'QUANTIDADE': quantidade,
      if (valorUnitario != null) 'VALOR_UNITARIO': valorUnitario,
      if (valorTotal != null) 'VALOR_TOTAL': valorTotal,
    });
  }

  ComandaDetalheComplementosCompanion copyWith(
      {Value<int?>? id,
      Value<int?>? idComandaDetalhe,
      Value<int?>? idProduto,
      Value<String?>? nomeProduto,
      Value<double?>? quantidade,
      Value<double?>? valorUnitario,
      Value<double?>? valorTotal}) {
    return ComandaDetalheComplementosCompanion(
      id: id ?? this.id,
      idComandaDetalhe: idComandaDetalhe ?? this.idComandaDetalhe,
      idProduto: idProduto ?? this.idProduto,
      nomeProduto: nomeProduto ?? this.nomeProduto,
      quantidade: quantidade ?? this.quantidade,
      valorUnitario: valorUnitario ?? this.valorUnitario,
      valorTotal: valorTotal ?? this.valorTotal,
    );
  }

  @override
  Map<String, Expression> toColumns(bool nullToAbsent) {
    final map = <String, Expression>{};
    if (id.present) {
      map['ID'] = Variable<int?>(id.value);
    }
    if (idComandaDetalhe.present) {
      map['ID_COMANDA_DETALHE'] = Variable<int?>(idComandaDetalhe.value);
    }
    if (idProduto.present) {
      map['ID_PRODUTO'] = Variable<int?>(idProduto.value);
    }
    if (nomeProduto.present) {
      map['NOME_PRODUTO'] = Variable<String?>(nomeProduto.value);
    }
    if (quantidade.present) {
      map['QUANTIDADE'] = Variable<double?>(quantidade.value);
    }
    if (valorUnitario.present) {
      map['VALOR_UNITARIO'] = Variable<double?>(valorUnitario.value);
    }
    if (valorTotal.present) {
      map['VALOR_TOTAL'] = Variable<double?>(valorTotal.value);
    }
    return map;
  }

  @override
  String toString() {
    return (StringBuffer('ComandaDetalheComplementosCompanion(')
          ..write('id: $id, ')
          ..write('idComandaDetalhe: $idComandaDetalhe, ')
          ..write('idProduto: $idProduto, ')
          ..write('nomeProduto


:"قوس مربع يشير الى اليمين",
	loz:"المعين",
	spades:"بدلة بستوني أسود",
	clubs:"بدلة نادي سوداء\nshamrock",
	hearts:"بدلة قلب أسود\nvalentine",
	diams:"بدلة شكل معين سوداء",
	OElig:"حرف لاتيني كبير مزدوج OE",
	oelig:"حرف لاتيني صغير مزدوج oe",
	Scaron:"حرف لاتيني كبير S مع علامة قبعة معكوسة",
	scaron:"حرف لاتيني صغير s مع علامة قبعة معكوسة",
	Yuml:"حرف لاتيني كبير Y مع علامة حرف العلة",
	circ:"نبرة علامة صوتية حرف تعديل",
	tilde:"علامة التلدة صغيرة",
	ensp:"مساحة en",
	emsp:"مساحة em",
	thinsp:"مساحة رفيعة",
	zwnj:"عرض صفر غير مرتبط",
	zwj:"عرض صفر مرتبط",
	lrm:"علامة يسار الى يمين",
	rlm:"علامة يمين الى يسار",
	ndash:"شرطة en",
	mdash:"شرطة em",
	lsquo:"علامة تنصيص يسار منفردة",
	rsquo:"علامة تنصيص يمين منفردة",
	sbquo:"علامة تنصيص low-9 منفردة",
	ldquo:"علامة تنصيص يسار مزدوجة",
	rdquo:"علامة تنصيص يمين مزدوجة",
	bdquo:"علامة تنصيص low-9 مزدوجة",
	dagger:"خنجرية",
	Dagger:"خنجرية مزدوجة",
	permil:"علامة بالألف",
	lsaquo:"علامة تنصيص زاوية منفردة تشير الى اليسار",
	rsaquo:"علامة تنصيص زاوية منفردة تشير الى اليمين",
	euro:"علامة اليورو"
})
);
define(["dojo", "../library/icons", "../util/common", "../Drawing", "../manager/_registry"],
function(dojo, icons, utilCommon, Drawing, registry){

return dojo.declare("dojox.drawing.ui.Toolbar", [], {
	// summary:
	//		A Toolbar used for holding buttons; typically representing the Stencils
	//		used for a DojoX Drawing.
	// description:
	//		Creates a GFX-based toolbar that holds GFX-based buttons. Can be either created
	//		within the actual drawing or within a separate DOM element. When within the
	//		drawing, the toolbar will cover a portion of the drawing; hence the option.
	//
	//		A Tool


graphs/contributors
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */.bootstrap-timepicker{position:relative}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu{left:auto;right:0}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before{left:auto;right:12px}.bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after{left:auto;right:13px}.bootstrap-timepicker .add-on{cursor:pointer}.bootstrap-timepicker .add-on i{display:inline-block;width:16px;height:16px}.bootstrap-timepicker-widget.dropdown-menu{padding:2px 3px 2px 2px}.bootstrap-timepicker-widget.dropdown-menu.open{display:inline-block}.bootstrap-timepicker-widget.dropdown-menu:before{border-bottom:7px solid rgba(0,0,0,0.2);border-left:7px solid transparent;border-right:7px solid transparent;content:"";display:inline-block;left:9px;position:absolute;top:-7px}.bootstrap-timepicker-widget.dropdown-menu:after{border-bottom:6px solid #fff;border-left:6px solid transparent;border-right:6px solid transparent;content:"";display:inline-block;left:10px;position:absolute;top:-6px}.bootstrap-timepicker-widget a.btn,.bootstrap-timepicker-widget input{border-radius:4px}.bootstrap-timepicker-widget table{width:100%;margin:0}.bootstrap-timepicker-widget table td{text-align:center;height:30px;margin:0;padding:2px}.bootstrap-timepicker-widget table td:not(.separator){min-width:30px}.bootstrap-timepicker-widget table td span{width:100%}.bootstrap-timepicker-widget table td a{border:1px transparent solid;width:100%;display:inline-block;margin:0;padding:8px 0;outline:0;color:#333}.bootstrap-timepicker-widget table td a:hover{text-decoration:none;background-color:#eee;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;border-color:#ddd}.bootstrap-timepicker-widget table td a i{margin-top:2px}.bootstrap-timepicker-widget table td input{width:25px;margin:0;text-align:center}.bootstrap-timepicker-widget .modal-content{padding:4px}@media(min-width:767px){.bootstrap-timepicker-widget.modal{width:200px;margin-left:-100px}}@media(max-width:767px){.bootstrap-timepicker{width:100%}.bootstrap-timepicker .dropdown-menu{width:100%}}/*
 * This combined file was created by the DataTables downloader builder:
 *   https://datatables.net/download
 *
 * To rebuild or modify this file with the latest versions of the included
 * software please visit:
 *   https://datatables.net/download/#bs/dt-1.10.12,af-2.1.2,cr-1.3.2,fc-3.2.2,fh-3.1.2,kt-2.1.2,r-2.1.0,rr-1.1.2,sc-1.4.2,se-1.2.0
 *
 * Included libraries:
 *   DataTables 1.10.12, AutoFill 2.1.2, ColReorder 1.3.2, FixedColumns 3.2.2, FixedHeader 3.1.2, KeyTable 2.1.2, Responsive 2.1.0, RowReorder 1.1.2, Scroller 1.4.2, Select 1.2.0
 */

table.dataTable{clear:both;margin-top:6px !important;margin-bottom:6px !important;max-width:none !important;border-collapse:separate !important;font-size:14px;}table.dataTable td,table.dataTable th{-webkit-box-siz


 border-box;
  box-sizing: border-box;
}
.noUi-target {
  position: relative;
  direction: ltr;
}
.noUi-base,
.noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}
/* Wrapper for all connect elements.
 */
.noUi-connects {
  overflow: hidden;
  z-index: 0;
}
.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  transform-style: flat;
}
.noUi-connect {
  height: 100%;
  width: 100%;
}
.noUi-origin {
  height: 10%;
  width: 10%;
}
/* Offset direction
 */
html:not([dir="rtl"]) .noUi-horizontal .noUi-origin {
  left: auto;
  right: 0;
}
/* Give origins 0 height/width so they don't interfere with clicking the
 * connect elements.
 */
.noUi-vertical .noUi-origin {
  width: 0;
}
.noUi-horizontal .noUi-origin {
  height: 0;
}
.noUi-handle {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  position: absolute;
  outline: none;
}
.noUi-touch-area {
  height: 100%;
  width: 100%;
}
.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  -webkit-transition: transform 0.3s;
  transition: transform 0.3s;
}
.noUi-state-drag * {
  cursor: inherit !important;
}
/* Slider size and handle placement;
 */
.noUi-horizontal {
  height: 1px;
}
.noUi-horizontal .noUi-handle {
  width: 15px;
  height: 15px;
  left: -7px;
  top: -6px;
  border-radius: 50%;
}
.noUi-vertical {
  width: 18px;
}
.noUi-vertical .noUi-handle {
  width: 15px;
  height: 15px;
  left: 0px;
  top: -7px;
}
html:not([dir="rtl"]) .noUi-horizontal .noUi-handle {
  right: -7px;
  left: auto;
}
/* Styling;
 * Giving the connect element a border radius causes issues with using transform: scale
 */
.noUi-target {
  background-color: rgba(182, 182, 182, 0.3);
  border-radius: 3px;
}
.noUi-connects {
  border-radius: 3px;
}
.noUi-connect {
  background: #3FB8AF;
}
/* Handles and cursors;
 */
.noUi-draggable {
  cursor: ew-resize;
}
.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}
.noUi-handle {
  border-radius: 3px;
  background: #FFF;
  cursor: default;
  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #EBEBEB, 0 3px 6px -3px #BBB;
}
.noUi-active {
  box-shadow: inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB;
}
/* Disabled state;
 */
[disabled] .noUi-connect {
  background: #B8B8B8;
}
[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
  cursor: not-allowed;
}
/* Base;
 *
 */
.noUi-pips,
.noUi-pips * {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.noUi


finitionConfigInjection.actorDefinitionId)
          .and(Tables.ACTOR_DEFINITION_CONFIG_INJECTION.INJECTION_PATH.eq(actorDefinitionConfigInjection.injectionPath))
      val isExistingConfig =
        ctx.fetchExists(
          DSL
            .select()
            .from(Tables.ACTOR_DEFINITION_CONFIG_INJECTION)
            .where(matchActorDefinitionIdAndInjectionPath),
        )

      if (isExistingConfig) {
        ctx
          .update(Tables.ACTOR_DEFINITION_CONFIG_INJECTION)
          .set(
            Tables.ACTOR_DEFINITION_CONFIG_INJECTION.JSON_TO_INJECT,
            JSONB.valueOf(Jsons.serialize(actorDefinitionConfigInjection.jsonToInject)),
          ).set(Tables.ACTOR_DEFINITION_CONFIG_INJECTION.UPDATED_AT, timestamp)
          .where(matchActorDefinitionIdAndInjectionPath)
          .execute()
      } else {
        ctx
          .insertInto(Tables.ACTOR_DEFINITION_CONFIG_INJECTION)
          .set(Tables.ACTOR_DEFINITION_CONFIG_INJECTION.INJECTION_PATH, actorDefinitionConfigInjection.injectionPath)
          .set(Tables.ACTOR_DEFINITION_CONFIG_INJECTION.ACTOR_DEFINITION_ID, actorDefinitionConfigInjection.actorDefinitionId)
          .set(
            Tables.ACTOR_DEFINITION_CONFIG_INJECTION.JSON_TO_INJECT,
            JSONB.valueOf(Jsons.serialize(actorDefinitionConfigInjection.jsonToInject)),
          ).set(Tables.ACTOR_DEFINITION_CONFIG_INJECTION.CREATED_AT, timestamp)
          .set(Tables.ACTOR_DEFINITION_CONFIG_INJECTION.UPDATED_AT, timestamp)
          .execute()
      }
    }

    companion object {
      private const val INJECTED_DECLARATIVE_MANIFEST_KEY = "__injected_declarative_manifest"

      private val BASE_CONNECTOR_BUILDER_PROJECT_COLUMNS: List<Field<*>> =
        Arrays.asList<Field<*>>(
          Tables.CONNECTOR_BUILDER_PROJECT.ID,
          Tables.CONNECTOR_BUILDER_PROJECT.WORKSPACE_ID,
          Tables.CONNECTOR_BUILDER_PROJECT.NAME,
          Tables.CONNECTOR_BUILDER_PROJECT.ACTOR_DEFINITION_ID,
          Tables.CONNECTOR_BUILDER_PROJECT.TOMBSTONE,
          Tables.CONNECTOR_BUILDER_PROJECT.TESTING_VALUES,
          DSL.field(Tables.CONNECTOR_BUILDER_PROJECT.MANIFEST_DRAFT.isNotNull()).`as`("hasDraft"),
          Tables.CONNECTOR_BUILDER_PROJECT.UPDATED_AT,
          Tables.CONNECTOR_BUILDER_PROJECT.BASE_ACTOR_DEFINITION_VERSION_ID,
          Tables.CONNECTOR_BUILDER_PROJECT.CONTRIBUTION_PULL_REQUEST_URL,
          Tables.CONNECTOR_BUILDER_PROJECT.CONTRIBUTION_ACTOR_DEFINITION_ID,
          Tables.CONNECTOR_BUILDER_PROJECT.COMPONENTS_FILE_CONTENT,
        )

      /**
       * Checks if a given config injection is a manifest injection by comparing its injection path.
       *
       * @param injection The config injection to check
       * @return true if the injection is a manifest injection, false otherwise
       */
      private fun isManifestInjection(injection: ActorDefinitionConfigInjection): Boolean =
        INJECTED_DECLARATIVE_MANIFEST_KEY == injection.injectionPath

      private fun insertDeclarativeManifest(
        declarativeManifest: DeclarativeManifest,
        ctx: DSLContext,
      ) {
        // Since "null" is a valid JSON object, `JSONB.valueOf(Jsons.serialize(null))` returns a valid JSON
        // object that is not null. Therefore, we will validate null values for JSON fields here
        if (declarativeMan


题：本方案以公安实战指挥中心平台为核心，警车车载设备、警员单兵设备为终端，3G/4G无线传输技术为桥梁，搭建一套集警力调度、即时通讯、结构化数据交互功能与一体的移动警务系统，为公安民警一线执勤和公安实战指挥提供解决方案。

### 1. 基于GPS定位的勤务管理和指挥调度功能

警力查询∶系统支持结合警用业务，可以方便地划定查询区域，在可视范围内进行警员信息的查找。同时对于特殊事件时，可以联动一定区域内的执勤警力信息进行协同管理。警力实时展示∶ 系统可以根据实际警务 ID 信息，实时地与地图的经纬度信息进行同步，显示其巡逻轨迹。GPS实时预览∶系统支持通过将警员、警车 GPS 信息与地图的经纬度信息相关联，实时显示执勤人员的轨迹信息。GPS轨迹回放∶ 系统支持按照警员信息、车牌号码等筛选条件查询 GPS 轨迹。警员巡逻和勤务管理∶系统支持对巡逻任务的配置，可以划定既定的巡逻线路以及巡逻区域。同时跟踪巡逻区域内的警员 GPS目标。指挥调度∶当有警卫任务或突发事件时，系统可在GIS时实时显示关注区域的警力分布信息，实现可视化指挥调试。

### 2. 基于3G、4G的即时通讯功能

多种信息通讯方式∶ 系统文字、图片、语音、视频的即时通讯。
点对点通讯∶中心指挥人员可在地图上点选移动警务前端设备的图标，开启点对点即时通讯，可实现文字、图片、语音、视频的实时通讯，系统还支持单兵与单兵的点对点通讯。
群组对讲功能∶可根据日常业务需要和临时事件处理需要组建通讯群组，实现多人间的同时通讯。

### 3. 基于中心数据库的车辆信息快速查询

车辆移动布控功能∶可基于移动布控球和单兵设备实现车辆移动布控功能。布控球自带 3G/4G 无线通讯模块和电池供电模块，支持车辆智能检测和车牌自动识别功能，可采用车辆吸顶、支架安装的方式实现移动布控点位的快速�


//
// ClassDump By HuangBai Private
//  Copyright (C) 1997-2019 Steve Nygard. Updated HuangBai-2024
//

@class NSMutableArray, WCFinderGetFeedAsyncInfoCGIConfig;

@interface WCFinderGetFeedAsyncInfoCGI
{
    int _asyncLoadInfoScene;
    CDUnknownBlockType _successful;
    CDUnknownBlockType _failure;
    NSMutableArray *_scenesArray;
    WCFinderGetFeedAsyncInfoCGIConfig *_config;
}

- (void).cxx_destruct;
@property(retain, nonatomic) WCFinderGetFeedAsyncInfoCGIConfig *config; // @synthesize config=_config;
@property(retain, nonatomic) NSMutableArray *scenesArray; // @synthesize scenesArray=_scenesArray;
@property(nonatomic) int asyncLoadInfoScene; // @synthesize asyncLoadInfoScene=_asyncLoadInfoScene;
@property(copy, nonatomic) CDUnknownBlockType failure; // @synthesize failure=_failure;
@property(copy, nonatomic) CDUnknownBlockType successful; // @synthesize successful=_successful;
- (void)finderCgiDidFailWithError:(id)arg1 response:(id)arg2;
- (void)didGetResponse:(id)arg1;
- (id)additionalUdfKVInfo;
- (id)initWithObjectUidList:(id)arg1 scenes:(id)arg2 commentScene:(int)arg3 config:(id)arg4 triggerScene:(int)arg5 location:(id)arg6 successful:(CDUnknownBlockType)arg7 failure:(CDUnknownBlockType)arg8;
- (id)initWithObjectUidList:(id)arg1 scene:(int)arg2 commentScene:(int)arg3 config:(id)arg4 successful:(CDUnknownBlockType)arg5 failure:(CDUnknownBlockType)arg6;

@end


class Car:
    def __init__(self, brand, model):
        self.brand = brand
        self.model = model

    def sayCarDetails(self):
        print("Brand of Car is: ", self.brand)
        print("Model of Car is: ", self.model)
        return f"{self.brand} {self.model}"

my_car = Car("Toyota", "Corolla")
print(my_car.brand)
print(my_car.model)
print(my_car.sayCarDetails())

my_new_car = Car("TATA", "Safari")
print(my_new_car.brand)
print(my_new_car.model)
print(my_new_car.sayCarDetails())
# in python __init__ is constructor and self is important for
# for differeciete betwwen class members and parameters it similar to js this


lags NotifyOthersOnDeactivation = new AudioSessionActivationFlags(1L);
    /*</values>*/

    /*<bind>*/
    /*</bind>*/
    /*<constants>*//*</constants>*/
    /*<methods>*//*</methods>*/

    private static final /*<name>*/AudioSessionActivationFlags/*</name>*/[] values = _values(/*<name>*/AudioSessionActivationFlags/*</name>*/.class);

    public /*<name>*/AudioSessionActivationFlags/*</name>*/(long value) { super(value); }
    private /*<name>*/AudioSessionActivationFlags/*</name>*/(long value, long mask) { super(value, mask); }
    protected /*<name>*/AudioSessionActivationFlags/*</name>*/ wrap(long value, long mask) {
        return new /*<name>*/AudioSessionActivationFlags/*</name>*/(value, mask);
    }
    protected /*<name>*/AudioSessionActivationFlags/*</name>*/[] _values() {
        return values;
    }
    public static /*<name>*/AudioSessionActivationFlags/*</name>*/[] values() {
        return values.clone();
    }
}
/*
 * Copyright (C) 2013-2015 RoboVM AB
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.robovm.apple.audiotoolbox;

/*<imports>*/
import java.io.*;
import java.nio.*;
import java.util.*;
import org.robovm.objc.*;
import org.robovm.objc.annotation.*;
import org.robovm.objc.block.*;
import org.robovm.rt.*;
import org.robovm.rt.annotation.*;
import org.robovm.rt.bro.*;
import org.robovm.rt.bro.annotation.*;
import org.robovm.rt.bro.ptr.*;
import org.robovm.apple.foundation.*;
import org.robovm.apple.corefoundation.*;
import org.robovm.apple.coreaudio.*;
import org.robovm.apple.coremidi.*;
import org.robovm.apple.avfoundation.*;
import org.robovm.apple.uikit.*;
/*</imports>*/

/*<javadoc>*/

/*</javadoc>*/
/*<annotations>*/@Marshaler(ValuedEnum.AsMachineSizedSIntMarshaler.class)/*</annotations>*/
public enum /*<name>*/AUAudioUnitBusType/*</name>*/ implements ValuedEnum {
    /*<values>*/
    Input(1L),
    Output(2L);
    /*</values>*/

    /*<bind>*/
    /*</bind>*/
    /*<constants>*//*</constants>*/
    /*<methods>*//*</methods>*/

    private final long n;

    private /*<name>*/AUAudioUnitBusType/*</name>*/(long n) { this.n = n; }
    public long value() { return n; }
    public static /*<name>*/AUAudioUnitBusType/*</name>*/ valueOf(long n) {
        for (/*<name>*/AUAudioUnitBusType/*</name>*/ v : values()) {
            if (v.n == n) {
                return v;
            }
        }
        throw new IllegalArgumentException("No constant with value " + n + " found in "
            + /*<name>*/AUAudioUnitBusType/*</name>*/.class.getName());
    }
}
/*
 * Copyright (C) 2013-2015 RoboVM AB
 *


: 1.25rem; /* 20px */
  --md-typescale-label-large-weight: 500;
  --md-typescale-label-large-tracking: 0.00625em;

  --md-typescale-label-medium-font: var(--md-ref-typeface-plain);
  --md-typescale-label-medium-size: 0.75rem; /* 12px */
  --md-typescale-label-medium-line-height: 1rem; /* 16px */
  --md-typescale-label-medium-weight: 500;
  --md-typescale-label-medium-tracking: 0.03125em;

  --md-typescale-label-small-font: var(--md-ref-typeface-plain);
  --md-typescale-label-small-size: 0.6875rem; /* 11px */
  --md-typescale-label-small-line-height: 1rem; /* 16px */
  --md-typescale-label-small-weight: 500;
  --md-typescale-label-small-tracking: 0.03125em;

  /* furigana */

  --mac-font-size-furigana: 0.625rem; /* ~10px */
  --mac-line-height-furigana: 0.75rem; /* ~12px */

  --ios-font-size-furigana: 0.6875rem; /* ~11px */
  --ios-line-height-furigana: 0.8125rem; /* ~13px */

  --android-font-size-furigana: 0.6875rem; /* ~11px */
  --android-line-height-furigana: 0.8125rem; /* ~13px */

  /* macOS Code Typography Scale */
  --mac-code-font-family:
    ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Consolas,
    'DejaVu Sans Mono', monospace;

  --mac-code-font-size-large: 1rem; /* ~16px / 16 For larger blocks, headings */
  --mac-code-line-height-large: 1.5rem; /* ~24px / 16 */

  --mac-code-font-size-medium: 0.875rem; /* ~14px / 16 For most inline code, smaller blocks */
  --mac-code-line-height-medium: 1.25rem; /* ~20px / 16 */

  --mac-code-font-size-small: 0.75rem; /* ~12px / 16 For small inline snippets, metadata, etc. */
  --mac-code-line-height-small: 1rem; /* ~16px / 16 */

  /* iOS Code Typography Scale */
  --ios-code-font-family:
    'SF Mono', ui-monospace, Menlo, Consolas, 'DejaVu Sans Mono', monospace;

  --ios-code-font-size-large: 1rem; /* ~16px / 16 For larger blocks, headings */
  --ios-code-line-height-large: 1.5rem; /* ~24px / 16 */

  --ios-code-font-size-medium: 0.875rem; /* ~14px / 16 For most inline code, smaller blocks */
  --ios-code-line-height-medium: 1.25rem; /* ~20px / 16 */

  --ios-code-font-size-small: 0.75rem; /* ~12px / 16 For small inline snippets, metadata, etc. */
  --ios-code-line-height-small: 1rem; /* ~16px / 16 */

  /* Android Code Typography Scale */
  --android-code-font-family:
    'Roboto Mono', 'Cascadia Code', 'Source Code Pro', 'DejaVu Sans Mono',
    monospace;

  --android-code-font-size-large: 1rem; /* ~16px / 16 For larger blocks, headings */
  --android-code-line-height-large: 1.5rem; /* ~24px / 16 */

  --android-code-font-size-medium: 0.875rem; /* ~14px / 16 For most inline code, smaller blocks */
  --android-code-line-height-medium: 1.25rem; /* ~20px /


tton, outputLabel, outputTextArea);

        Scene scene = new Scene(grid, 400, 400);
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    private void encryptMessage() {
        try {
            String message = inputTextArea.getText();
            SecretKey aesKey = generateAESKey();
            String encryptedAES = encryptMessageAES(message, aesKey);
            String encodedKey = Base64.getEncoder().encodeToString(aesKey.getEncoded());
            outputTextArea.setText("Hasil Enkripsi (AES): " + encryptedAES + "\nKunci AES (simpan untuk dekripsi): " + encodedKey);
        } catch (Exception e) {
            outputTextArea.setText("Error: " + e.getMessage());
        }
    }

    private void decryptMessage() {
        try {
            String message = inputTextArea.getText();
            String encodedKey = keyTextField.getText();
            SecretKey aesKey = decodeAESKey(encodedKey);
            String decryptedAES = decryptMessageAES(message, aesKey);
            outputTextArea.setText("Hasil Dekripsi (AES): " + decryptedAES);
        } catch (Exception e) {
            outputTextArea.setText("Error: " + e.getMessage());
        }
    }

    public static String encryptMessageAES(String message, SecretKey key) throws Exception {
        Cipher cipher = Cipher.getInstance(AES_ALGORITHM);
        cipher.init(Cipher.ENCRYPT_MODE, key);
        byte[] encryptedBytes = cipher.doFinal(message.getBytes());
        return Base64.getEncoder().encodeToString(encryptedBytes);
    }

    public static String decryptMessageAES(String encryptedMessage, SecretKey key) throws Exception {
        Cipher cipher = Cipher.getInstance(AES_ALGORITHM);
        cipher.init(Cipher.DECRYPT_MODE, key);
        byte[] decryptedBytes = cipher.doFinal(Base64.getDecoder().decode(encryptedMessage));
        return new String(decryptedBytes);
    }

    public static SecretKey generateAESKey() throws Exception {
        KeyGenerator keyGenerator = KeyGenerator.getInstance(AES_ALGORITHM);
        keyGenerator.init(AES_KEY_SIZE);
        return keyGenerator.generateKey();
    }

    public static SecretKey decodeAESKey(String encodedKey) {
        byte[] decodedKey = Base64.getDecoder().decode(encodedKey);
        return new SecretKeySpec(decodedKey, 0, decodedKey.length, AES_ALGORITHM);
    }
}import java.util.*;

public class NinjaFruit {

    public static void main(String[] args) {
        List<String> buah = Arrays.asList("apel", "pisang", "kiwi", "anggur", "semangka");

        System.out.println("Total huruf: " + calculateTotalLength(buah));
        System.out.println("Kata terpanjang: " + findLongestWord(buah));
        System.out.println("Daftar kata dalam huruf kapital: " + capitalizeWords(buah));
        System.out.println("Panjang masing-masing kata: " + wordLengths(buah));
    }

    public static int calculateTotalLength(List<String> words) {
        int totalLength = 0;

        for (int i = 0; i < words.size(); i++) { //kesalahan looping yang menggunakan <=, logic error
            totalLength += words.get(i).length();
        }

        return totalLength;
    }

    public static String findLongestWord(List<String> words) { //menemukan kata terpanjang
        if (words.isEmpty()) {
            throw new IllegalArgumentException("List kosong");
        }

        String longestWord = "";
        for (String word : words) { //condition if else tidak diperlukan, logic error
            if (word != null && word.length() > longestWord.length()) {
                longestWord = word;
            }
        }


 @returns Whether the [DroidDifficultyHitObject] is considered overlapping.
     */
    fun isOverlapping(considerDistance: Boolean): Boolean {
        if (obj is Spinner) {
            return false
        }

        val previous = previous(0)

        if (previous == null || previous.obj is Spinner) {
            return false
        }

        if (deltaTime >= 5) {
            return false
        }

        if (considerDistance) {
            val position = obj.difficultyStackedPosition
            var distance = previous.obj.difficultyStackedEndPosition.getDistance(position)

            if (previous.lazyEndPosition != null) {
                distance = min(
                    distance,
                    previous.lazyEndPosition!!.getDistance(position)
                )
            }

            return distance <= 2 * obj.difficultyRadius
        }

        return true
    }
}package com.rian.osu.mods

import com.rian.osu.beatmap.Beatmap
import com.rian.osu.math.Interpolation
import kotlin.math.max
import kotlinx.coroutines.CoroutineScope
import org.json.JSONObject

/**
 * Represents a [Mod] that gradually adjusts the track's playback rate over time.
 */
abstract class ModTimeRamp : Mod(), IModApplicableToBeatmap, IModApplicableToTrackRate {
    /**
     * The starting speed of the track.
     */
    abstract var initialRate: Float

    /**
     * The final speed to ramp to.
     */
    abstract var finalRate: Float

    final override val isValidForMultiplayerAsFreeMod = false
    override val incompatibleMods = super.incompatibleMods + ModTimeRamp::class

    private var initialRateTime = 0.0
    private var finalRateTime = 0.0

    // Graph: https://www.desmos.com/calculator/1zp4vwl3o7
    override val scoreMultiplier: Float
        get() =
            Interpolation.linear(
                calculateScoreMultiplierAt(initialRate),
                calculateScoreMultiplierAt(finalRate),
                FINAL_RATE_PROGRESS.toFloat()
            )

    override fun copySettings(settings: JSONObject) {
        super.copySettings(settings)

        initialRate = settings.optDouble("initialRate", initialRate.toDouble()).toFloat()
        finalRate = settings.optDouble("finalRate", finalRate.toDouble()).toFloat()
    }

    override fun serializeSettings() = JSONObject().apply {
        put("initialRate", initialRate)
        put("finalRate", finalRate)
    }

    override fun applyToBeatmap(beatmap: Beatmap, scope: CoroutineScope?) {
        initialRateTime = beatmap.hitObjects.objects.firstOrNull()?.startTime ?: 0.0

        finalRateTime = Interpolation.linear(
            initialRateTime,
            beatmap.hitObjects.objects.lastOrNull()?.endTime ?: 0.0,
            FINAL_RATE_PROGRESS
        )
    }

    override fun applyToRate(time: Double, rate: Float): Float {
        val amount = (time - initialRateTime) / max(1.0, finalRateTime - initialRateTime)

        return rate * Interpolation.linear(initialRate, finalRate, amount.toFloat().coerceIn(0f, 1f))
    }

    override val extraInformation
        get() = "%.2fx - %.2fx".format(initialRate, finalRate)

    private fun calculateScoreMultiplierAt(rate: Float) = ModRateAdjustHelper(rate).scoreMultiplier

    companion object {
        /**
         * The point in the beatmap at which the final rate should be reached.
         */
        const val FINAL_RATE_PROGRESS = 0.75
    }
}package com.rian.osu.mods

import com.rian.osu.beatmap.Beatmap
import com.rian.osu.beatmap.hitobject.HitObject
import com.rian.osu.beatmap.hitobject.Slider
import com.rian.osu.beatmap.hitobject.Spinner
import com


input_buffer_bitaccumulator;

		result = result >> 7 & 1;

		new_accumulator = (alac.input_buffer_bitaccumulator + 1);

		alac.ibIdx += new_accumulator / 8;

		alac.input_buffer_bitaccumulator = (new_accumulator % 8);

		return result;
	}

	static void unreadbits(AlacFile alac, int bits )
	{
		int new_accumulator  = (alac.input_buffer_bitaccumulator - bits);

		alac.ibIdx += (new_accumulator >> 3);

		alac.input_buffer_bitaccumulator = (new_accumulator & 7);
		if (alac.input_buffer_bitaccumulator < 0)
			alac.input_buffer_bitaccumulator *= -1;
	}

	static LeadingZeros count_leading_zeros_extra(int curbyte, int output, LeadingZeros lz)
	{

        if ((curbyte & 0xf0)==0)
		{
			output += 4;
		}
		else
			curbyte = curbyte >> 4;

		if ((curbyte & 0x8) != 0)
		{
			lz.output = output;
			lz.curbyte = curbyte;
			return lz;
		}
		if ((curbyte & 0x4) != 0)
		{
			lz.output = output + 1;
			lz.curbyte = curbyte;
			return lz;
		}
		if ((curbyte & 0x2) != 0)
		{
			lz.output = output + 2;
			lz.curbyte = curbyte;
			return lz;
		}
		if ((curbyte & 0x1) != 0)
		{
			lz.output = output + 3;
			lz.curbyte = curbyte;
			return lz;
		}

		/* shouldn't get here: */

		lz.output = output + 4;
		lz.curbyte = curbyte;
		return lz;

	}
	static int count_leading_zeros(int input, LeadingZeros lz)
	{
		int output  = 0;
		int curbyte  = 0;

        curbyte = input >> 24;
		if (curbyte != 0)
		{
			count_leading_zeros_extra(curbyte, output, lz);
			output = lz.output;
			curbyte = lz.curbyte;
			return output;
		}
		output += 8;

		curbyte = input >> 16;
		if ((curbyte & 0xFF) != 0)
		{
			count_leading_zeros_extra(curbyte, output, lz);
			output = lz.output;
			curbyte = lz.curbyte;

			return output;
		}
		output += 8;

		curbyte = input >> 8;
		if ((curbyte & 0xFF) != 0)
		{
			count_leading_zeros_extra(curbyte, output, lz);
			output = lz.output;
			curbyte = lz.curbyte;

			return output;
		}
		output += 8;

		curbyte = input;
		if ((curbyte & 0xFF) != 0)
		{
			count_leading_zeros_extra(curbyte, output, lz);
			output = lz.output;
			curbyte = lz.curbyte;

			return output;
		}
		output += 8;

		return output;
	}

	public static int entropy_decode_value(AlacFile alac, int readSampleSize , int k , int rice_kmodifier_mask )
	{
		int x  = 0; // decoded value

		// read x, number of 1s before 0 represent the rice value.
		while (x <= Defines.RICE_THRESHOLD && readbit(alac) != 0)
		{
			x++;
		}

		if (x > Defines.RICE_THRESHOLD)
		{
			// read the number from the bit stream (raw value)
			int value  = 0;

			value = readbits(alac, readSampleSize);

			// mask value
			value &= ((0xffffffff) >> (32 - readSampleSize));

			x = value;
		}
		else
		{
			if (k != 1)


       $i = $145;
       $146 = HEAP32[40>>2]|0;
       $147 = ((($146)) + 20|0);
       HEAP32[$147>>2] = $144;
       $148 = HEAP32[12>>2]|0;
       $149 = ($148|0)==(44);
       if (!($149)) {
        continue;
       }
       _next();
      }
      _next();
     }
    }
   }
  } while(0);
  while(1) {
   $150 = HEAP32[12>>2]|0;
   $151 = ($150|0)!=(59);
   $152 = HEAP32[12>>2]|0;
   $153 = ($152|0)!=(125);
   $154 = $151 ? $153 : 0;
   if (!($154)) {
    break;
   }
   $155 = $bt;
   $ty = $155;
   while(1) {
    $156 = HEAP32[12>>2]|0;
    $157 = ($156|0)==(159);
    if (!($157)) {
     break;
    }
    _next();
    $158 = $ty;
    $159 = (($158) + 2)|0;
    $ty = $159;
   }
   $160 = HEAP32[12>>2]|0;
   $161 = ($160|0)!=(133);
   if ($161) {
    label = 62;
    break L56;
   }
   $163 = HEAP32[40>>2]|0;
   $164 = ((($163)) + 12|0);
   $165 = HEAP32[$164>>2]|0;
   $166 = ($165|0)!=(0);
   if ($166) {
    label = 64;
    break L56;
   }
   _next();
   $168 = $ty;
   $169 = HEAP32[40>>2]|0;
   $170 = ((($169)) + 16|0);
   HEAP32[$170>>2] = $168;
   $171 = HEAP32[12>>2]|0;
   $172 = ($171|0)==(40);
   $173 = HEAP32[40>>2]|0;
   $174 = ((($173)) + 12|0);
   L89: do {
    if ($172) {
     HEAP32[$174>>2] = 129;
     $175 = HEAP32[32>>2]|0;
     $176 = ((($175)) + 4|0);
     $177 = $176;
     $178 = HEAP32[40>>2]|0;
     $179 = ((($178)) + 20|0);
     HEAP32[$179>>2] = $177;
     _next();
     $i = 0;
     while(1) {
      $180 = HEAP32[12>>2]|0;
      $181 = ($180|0)!=(41);
      if (!($181)) {
       break;
      }
      $ty = 1;
      $182 = HEAP32[12>>2]|0;
      $183 = ($182|0)==(138);
      do {
       if ($183) {
        _next();
       } else {
        $184 = HEAP32[12>>2]|0;
        $185 = ($184|0)==(134);
        if (!($185)) {
         break;
        }
        _next();
        $ty = 0;
       }
      } while(0);
      while(1) {
       $186 = HEAP32[12>>2]|0;
       $187 = ($186|0)==(159);
       if (!($187)) {
        break;
       }
       _next();
       $188 = $ty;
       $189 = (($188) + 2)|0;
       $ty = $189;
      }
      $190 = HEAP32[12>>2]|0;
      $191 = ($190|0)!=(133);
      if ($191) {
       label = 75;
       break L56;


#!/usr/bin/env python3
"""
Простой скрипт для запуска FastAPI сервера
"""
import uvicorn

from app.main import app

if __name__ == "__main__":
    print("🚀 Запускаем FastAPI сервер...")
    print("📡 Хост: 0.0.0.0")
    print("🔌 Порт: 8000")
    print("🌐 CORS: включен для localhost:5173")
    print("=" * 50)

    uvicorn.run(app, host="0.0.0.0", port=8000, reload=False, log_level="info")


iptor::AstraBouquetListDescriptor() :
    AbstractDescriptor(MY_EDID, MY_XML_NAME)
{
}

void ts::AstraBouquetListDescriptor::clearContent()
{
    bouquet_names.clear();
}

ts::AstraBouquetListDescriptor::AstraBouquetListDescriptor(DuckContext& duck, const Descriptor& desc) :
    AstraBouquetListDescriptor()
{
    deserialize(duck, desc);
}

//----------------------------------------------------------------------------
// Serialization
//----------------------------------------------------------------------------

void ts::AstraBouquetListDescriptor::serializePayload(PSIBuffer& buf) const
{
    for (const auto& name : bouquet_names) {
        buf.putStringWithByteLength(name);
    }
}

void ts::AstraBouquetListDescriptor::deserializePayload(PSIBuffer& buf)
{
    while (buf.canRead()) {
        bouquet_names.push_back(buf.getStringWithByteLength());
    }
}

//----------------------------------------------------------------------------
// Static method to display a descriptor.
//----------------------------------------------------------------------------

void ts::AstraBouquetListDescriptor::DisplayDescriptor(TablesDisplay& disp, const ts::Descriptor& desc, PSIBuffer& buf, const UString& margin, const ts::DescriptorContext& context)
{
    while (buf.canRead()) {
        disp << margin << "Bouquet name: \"" << buf.getStringWithByteLength() << "\"" << std::endl;
    }
}

//----------------------------------------------------------------------------
// XML serialization
//----------------------------------------------------------------------------

void ts::AstraBouquetListDescriptor::buildXML(DuckContext& duck, xml::Element* root) const
{
    for (const auto& name : bouquet_names) {
        root->addElement(u"bouquet")->setAttribute(u"name", name);
    }
}

bool ts::AstraBouquetListDescriptor::analyzeXML(DuckContext& duck, const xml::Element* element)
{
    xml::ElementVector xbouquets;
    bool ok = element->getChildren(xbouquets, u"bouquet");
    bouquet_names.resize(xbouquets.size());
    for (size_t i = 0; i < xbouquets.size(); ++i) {
        ok = xbouquets[i]->getAttribute(bouquet_names[i], u"name") && ok;
    }
    return ok;
}
//----------------------------------------------------------------------------
//
// TSDuck - The MPEG Transport Stream Toolkit
// Copyright (c) 2005-2025, Thierry Lelegard
// BSD-2-Clause license, see LICENSE.txt file or https://tsduck.io/license
//
//----------------------------------------------------------------------------

#include "tsPrivateDataIndicatorDescriptor.h"
#include "tsDescriptor.h"
#include "tsTablesDisplay.h"
#include "tsPSIRepository.h"
#include "tsPSIBuffer.h"
#include "tsDuckContext.h"
#include "tsxmlElement.h"

#define MY_XML_NAME u"private_data_indicator_descriptor"
#define MY_CLASS    ts::PrivateDataIndicatorDescriptor
#define MY_EDID     ts::EDID::Regular(ts::DID_MPEG_PRIV_DATA_IND, ts::Standards::MPEG)

TS_REGISTER_DESCRIPTOR(MY_CLASS, MY_EDID, MY_XML_NAME, MY_CLASS::DisplayDescriptor);

//----------------------------------------------------------------------------
// Constructors
//----------------------------------------------------------------------------

ts::PrivateDataIndicatorDescriptor::PrivateDataIndicatorDescriptor(uint32_t pdi) :
    AbstractDescriptor(MY_EDID, MY_XML_NAME),
    private_data_indicator(pdi)
{
}

ts::PrivateDataIndicatorDescriptor::PrivateDataIndicatorDescriptor(DuckContext& duck, const Descriptor& desc) :
    PrivateDataIndicatorDescriptor(0)
{


.getFlatLabels
import hu.bme.mit.theta.xcfa.model.*

/**
 * Transforms mallocs into address assignments. Requires the ProcedureBuilder be `deterministic`.
 */
class MallocFunctionPass(val parseContext: ParseContext) : ProcedurePass {

  companion object {
    private val mallocVars: MutableMap<XcfaBuilder, VarDecl<*>> = mutableMapOf()

    private fun XcfaBuilder.mallocVar(parseContext: ParseContext) =
      mallocVars.getOrPut(this) { Var("__malloc", CPointer(null, null, parseContext).smtType) }
  }

  override fun run(builder: XcfaProcedureBuilder): XcfaProcedureBuilder {
    val mallocVar = builder.parent.mallocVar(parseContext)
    checkNotNull(builder.metaData["deterministic"])
    for (edge in ArrayList(builder.getEdges())) {
      val edges = edge.splitIf(this::predicate)
      if (
        edges.size > 1 ||
          (edges.size == 1 && predicate((edges[0].label as SequenceLabel).labels[0]))
      ) {
        builder.removeEdge(edge)
        edges.forEach { e ->
          if (predicate((e.label as SequenceLabel).labels[0])) {
            val invokeLabel = e.label.labels[0] as InvokeLabel
            val ret = invokeLabel.params[0] as RefExpr<*>
            val arg = invokeLabel.params[1]
            if (builder.parent.getVars().none { it.wrappedVar == mallocVar }) { // initial creation
              builder.parent.addVar(
                XcfaGlobalVar(mallocVar, CComplexType.getType(ret, parseContext).nullValue)
              )
              if (MemsafetyPass.NEED_CHECK) {
                builder.parent.addVar(
                  XcfaGlobalVar(mallocVar, CComplexType.getType(ret, parseContext).nullValue)
                )
              }
              val initProc = builder.parent.getInitProcedures().map { it.first }
              check(initProc.size == 1) { "Multiple start procedure are not handled well" }
              initProc.forEach { proc ->
                val initAssign =
                  StmtLabel(
                    Assign(
                      cast(mallocVar, mallocVar.type),
                      cast(CComplexType.getType(ret, parseContext).nullValue, mallocVar.type),
                    )
                  )
                val newEdges =
                  proc.initLoc.outgoingEdges.map {
                    it.withLabel(
                      SequenceLabel(
                        listOf(initAssign) + it.label.getFlatLabels(),
                        it.label.metadata,
                      )
                    )
                  }
                proc.initLoc.outgoingEdges.forEach(proc::removeEdge)
                newEdges.forEach(proc::addEdge)
              }
            }
            val assign1 =
              AssignStmtLabel(
                mallocVar,
                Add(mallocVar.ref, CComplexType.getType(ret, parseContext).getValue("3")),
                ret.type,
                invokeLabel.metadata,
              )
            val assign2 = AssignStmtLabel(ret, cast(mallocVar.ref, ret.type))
            val labels =
              if (MemsafetyPass.NEED_CHECK) {
                val assign3 = builder.parent.allocate(parseContext, ret, arg)
                listOf(assign1, assign2, assign3)
              } else {
                listOf(assign1, assign2)
              }
            builder.addEdge(XcfaEdge(e.source, e.target, SequenceLabel(labels), e.metadata))
          } else {
            buil


Item lbi = _listbox.ItemContainerGenerator.ContainerFromIndex(0) as ListBoxItem;
            UserInput.MouseRightDownCenter(lbi);
            QueueHelper.WaitTillQueueItemsProcessed();

            // to get the effect we want, release the mouse button and remove the
            // item at the same time (without waiting for the queue to drain)
            Microsoft.Test.Input.Input.SendMouseInput(0,0, 0, SendMouseInputFlags.RightUp);
            _model.ItemList.RemoveAt(0);

            // when the dust settles, the lbi should not be in the tree, and
            // therefore the context menu should not be open
            QueueHelper.WaitTillQueueItemsProcessed();
            Assert.AssertTrue("ListBoxItem should be removed from tree", !lbi.IsVisible);
            Assert.AssertTrue("context menu for removed item should not be open", !_contextMenu.IsOpen);

            return TestResult.Pass;
        }

        /// <summary>
        /// 1. right mouse-button click over first item
        ///
        /// Verify context menu opened
        /// </summary>
        private TestResult OpenContextMenu()
        {
            Status("OpenContextMenu");

            ListBoxItem lbi = _listbox.ItemContainerGenerator.ContainerFromIndex(0) as ListBoxItem;
            UserInput.MouseRightClickCenter(lbi);

            QueueHelper.WaitTillQueueItemsProcessed();
            Assert.AssertTrue("context menu should be open at this point", _contextMenu.IsOpen);

            return TestResult.Pass;
        }

        /// <summary>
        /// 1. click away from the listbox
        ///
        /// Verify context menu closed
        /// </summary>
        private TestResult CloseContextMenu()
        {
            Status("CloseContextMenu");

            UserInput.MouseLeftDown(_listbox, -4, -4);
            QueueHelper.WaitTillQueueItemsProcessed();
            UserInput.MouseLeftUp(_listbox, -4, -4);
            QueueHelper.WaitTillQueueItemsProcessed();

            Assert.AssertTrue("context menu should be closed at this point", !_contextMenu.IsOpen);

            return TestResult.Pass;
        }

        #endregion Test Steps

        #region Local types

        public class Model
        {
            ItemList _itemList;
            public ItemList ItemList
            {
                get { return _itemList; }
            }

            public static Model Create(int n)
            {
                ItemList list = new ItemList();
                for (int i=0; i<n; ++i)
                {
                    list.Add(new MyItem { Text = "Item " + i } );
                }

                Model model = new Model();
                model._itemList = list;
                return model;
            }
        }

        public class MyItem
        {
            public string Text { get; set; }
        }

        public class ItemList : ObservableCollection<MyItem>
        {
        }

        #endregion Local types
    }
}