an {
    font-size: 24px;
    /* FIXME: Use CSS4 color blend functions once they're available. */
    color: hsla(0, 0%, 0%, 0.65);
}

.content-view.audit-test-group > section > .audit-test-case:first-child,
.content-view.audit-test-group > section > .audit-test-case.filtered ~ .audit-test-case:not(.filtered),
.content-view.audit-test-group > section > .audit-test-group + .audit-test-case,
.content-view.audit-test-group > section > .audit-test-case + .audit-test-group {
    margin-top: var(--audit-test-vertical-space);
}

.content-view.audit-test-group > section > .audit-test-case:not(.filtered) ~ .audit-test-case:not(.filtered) {
    margin-top: unset;
}

.content-view.audit-test-group > section > .audit-test-case:last-child {
    margin-bottom: var(--audit-test-vertical-space);
}

@media (prefers-color-scheme: dark) {
    .content-view.audit-test-group > header > .percentage-pass {
        /* FIXME: Use CSS4 color blend functions once they're available. */
        color: hsla(0, 0%, 88%, 0.5);
    }

    .content-view.audit-test-group > header > .percentage-pass > span {
        /* FIXME: Use CSS4 color blend functions once they're available. */
        color: hsla(0, 0%, 88%, 0.65);
    }
}
/*
 * Copyright (C) 2017-2020 Apple Inc. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 * THE POSSIBILITY OF SUCH DAMAGE.
 */

.item.recording-action > .icon {
    content: url("../Images/TypeIcons.svg#Source-light");
}

.item.recording-action:not(.initial-state)::before {
    position: relative;
    top: 3px;
    margin-inline: 0 var(--tree-outline-icon-margin-end);
    content: attr(data-index);
    font-family: -webkit-system-font, sans-serif;
    font-size: 9px;
    color: var(--text-color-gray-medium);
    font-variant-numeric: tabular-nums;
    text-align: end;


n(Components);

  auto *GV = new llvm::GlobalVariable(
      CGM.getModule(), Descriptor->getType(),
      /*isConstant=*/true, llvm::GlobalVariable::PrivateLinkage, Descriptor);
  GV->setUnnamedAddr(true);
  CGM.getSanitizerMetadata()->disableSanitizerForGlobal(GV);

  // Remember the descriptor for this type.
  CGM.setTypeDescriptorInMap(T, GV);

  return GV;
}

llvm::Value *CodeGenFunction::EmitCheckValue(llvm::Value *V) {
  llvm::Type *TargetTy = IntPtrTy;

  // Floating-point types which fit into intptr_t are bitcast to integers
  // and then passed directly (after zero-extension, if necessary).
  if (V->getType()->isFloatingPointTy()) {
    unsigned Bits = V->getType()->getPrimitiveSizeInBits();
    if (Bits <= TargetTy->getIntegerBitWidth())
      V = Builder.CreateBitCast(V, llvm::Type::getIntNTy(getLLVMContext(),
                                                         Bits));
  }

  // Integers which fit in intptr_t are zero-extended and passed directly.
  if (V->getType()->isIntegerTy() &&
      V->getType()->getIntegerBitWidth() <= TargetTy->getIntegerBitWidth())
    return Builder.CreateZExt(V, TargetTy);

  // Pointers are passed directly, everything else is passed by address.
  if (!V->getType()->isPointerTy()) {
    Address Ptr = CreateDefaultAlignTempAlloca(V->getType());
    Builder.CreateStore(V, Ptr);
    V = Ptr.getPointer();
  }
  return Builder.CreatePtrToInt(V, TargetTy);
}

/// \brief Emit a representation of a SourceLocation for passing to a handler
/// in a sanitizer runtime library. The format for this data is:
/// \code
///   struct SourceLocation {
///     const char *Filename;
///     int32_t Line, Column;
///   };
/// \endcode
/// For an invalid SourceLocation, the Filename pointer is null.
llvm::Constant *CodeGenFunction::EmitCheckSourceLocation(SourceLocation Loc) {
  llvm::Constant *Filename;
  int Line, Column;

  PresumedLoc PLoc = getContext().getSourceManager().getPresumedLoc(Loc);
  if (PLoc.isValid()) {
    auto FilenameGV = CGM.GetAddrOfConstantCString(PLoc.getFilename(), ".src");
    CGM.getSanitizerMetadata()->disableSanitizerForGlobal(
                          cast<llvm::GlobalVariable>(FilenameGV.getPointer()));
    Filename = FilenameGV.getPointer();
    Line = PLoc.getLine();
    Column = PLoc.getColumn();
  } else {
    Filename = llvm::Constant::getNullValue(Int8PtrTy);
    Line = Column = 0;
  }

  llvm::Constant *Data[] = {Filename, Builder.getInt32(Line),
                            Builder.getInt32(Column)};

  return llvm::ConstantStruct::getAnon(Data);
}

namespace {
/// \brief Specify under what conditions this check can be recovered
enum class CheckRecoverableKind {
  /// Always terminate program execution if this check fails.
  Unrecoverable,
  /// Check supports recovering, runtime has both fatal (noreturn) and
  /// non-fatal handlers for this check.
  Recoverable,
  /// Runtime conditionally aborts, always need to support recovery.
  AlwaysRecoverable
};
}

static CheckRecoverableKind getRecoverableKind(SanitizerMask Kind) {
  assert(llvm::countPopulation(Kind) == 1);
  switch (Kind) {
  case SanitizerKind::Vptr:
    return CheckRecoverableKind::AlwaysRecoverable;
  case SanitizerKind::Return:
  case SanitizerKind::Unreachable:
    return CheckRecoverable


h4a1,1,0,0,0,1-1V8h3.38l-1.27,2.55a1,1,0,0,0,0,.9ZM2.69,4H12v6H4L2.69,4Zm15.43,7,1.77-3.55A1,1,0,0,0,19,6H14V3a1,1,0,0,0-1-1H2.25L2,.78a1,1,0,1,0-2,.43l4,18a1,1,0,0,0,2-.43H6L4.47,12H7v3a1,1,0,0,0,1,1H19a1,1,0,0,0,.89-1.45L18.12,11Z" transform="translate(0 0)"/></svg>',
    bell:           '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="#fff" d="M3 15c2-2 2-4 2-7 0-2.762 2.24-5 5-5s5 2.238 5 5c0 3 0 5 2 7H3z"/><path fill="#{$color}" d="M16 8c0-2.967-2.167-5.432-5-5.91V1c0-.553-.448-1-1-1S9 .447 9 1v1.09C6.167 2.568 4 5.033 4 8c0 2.957 0 4.586-1.707 6.293-.286.286-.372.716-.217 1.09S2.596 16 3 16h4.183c-.114.313-.183.647-.183 1 0 1.654 1.345 3 3 3s3-1.346 3-3c0-.353-.07-.687-.184-1H17c.404 0 .77-.243.924-.617s.07-.804-.217-1.09C16 12.586 16 10.957 16 8zM5.01 14C6 12.208 6 10.285 6 8c0-2.206 1.794-4 4-4s4 1.794 4 4c0 2.285 0 4.208.99 6H5.01zM11 17c0 .552-.45 1-1 1s-1-.448-1-1 .448-1 1-1c.55 0 1 .448 1 1z"/></svg>',
    exclamation:    '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="#fff" d="M19 10c0 4.97-4.03 9-9 9s-9-4.03-9-9 4.03-9 9-9 9 4.03 9 9z"/><path fill="#{$color}" d="M10 0C4.486 0 0 4.486 0 10s4.486 10 10 10 10-4.486 10-10S15.514 0 10 0zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-13c-.552 0-1 .447-1 1v4c0 .553.448 1 1 1s1-.447 1-1V6c0-.553-.448-1-1-1zm0 8c-.552 0-1 .447-1 1s.448 1 1 1 1-.447 1-1-.448-1-1-1z"/></svg>',
    prohibit:       '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="#{$color}" d="M10 16c-1.294 0-2.49-.416-3.47-1.115l8.355-8.356C15.585 7.51 16 8.705 16 10c0 3.31-2.69 6-6 6zm0-12c1.294 0 2.49.416 3.47 1.115L5.116 13.47C4.415 12.49 4 11.295 4 10c0-3.31 2.69-6 6-6zm0-2c-4.41 0-8 3.59-8 8s3.59 8 8 8 8-3.59 8-8-3.59-8-8-8z"/></svg


OxidizedCutCopper, // 1.17 (id: 22582)
    WaxedCutCopperStairs, // 1.17 (id: 23125, stack: 0)
    WaxedExposedCutCopperStairs, // 1.17 (id: 15532, stack: 0)
    WaxedWeatheredCutCopperStairs, // 1.17 (id: 29701, stack: 0)
    WaxedOxidizedCutCopperStairs, // 1.17 (id: 9842, stack: 0)
    WaxedCutCopperSlab, // 1.17 (id: 6271, stack: 0)
    WaxedExposedCutCopperSlab, // 1.17 (id: 22091, stack: 0)
    WaxedWeatheredCutCopperSlab, // 1.17 (id: 20035, stack: 0)
    WaxedOxidizedCutCopperSlab, // 1.17 (id: 11202, stack: 0)
    AzaleaLeaves, // 1.17 (id: 23001, stack: 0)
    FloweringAzaleaLeaves, // 1.17 (id: 20893, stack: 0)
    TintedGlass, // 1.17 (id: 19154)
    Azalea, // 1.17 (id: 29386)
    FloweringAzalea, // 1.17 (id: 28270)
    SporeBlossom, // 1.17 (id: 20627)
    MossCarpet, // 1.17 (id: 8221)
    MossBlock, // 1.17 (id: 9175)
    HangingRoots, // 1.17 (id: 15498, stack: 0)
    BigDripleaf, // 1.17 (id: 26173, stack: 0)
    SmallDripleaf, // 1.17 (id: 17540, stack: 0)
    SmoothBasalt, // 1.17 (id: 13617)
    InfestedDeepslate, // 1.17 (id: 9472, stack: 0)
    DeepslateBricks, // 1.17 (id: 13193)
    CrackedDeepslateBricks, // 1.17 (id: 17105)
    DeepslateTiles, // 1.17 (id: 11250)
    CrackedDeepslateTiles, // 1.17 (id: 26249)
    ChiseledDeepslate, // 1.17 (id: 23825)
    GlowLichen, // 1.17 (id: 19165, stack: 0)
    CobbledDeepslateWall, // 1.17 (id: 21893, stack: 0)
    PolishedDeepslateWall, // 1.17 (id: 6574, stack: 0)
    DeepslateBrickWall, // 1.17 (id: 13304, stack: 0)
    DeepslateTileWall, // 1.17 (id: 17077, stack: 0)
    Light,  // 1.17 (id: 17829, stack: 0)
    DirtPath, // 1.17 (id: 10846)
    CobbledDeepslateStairs, // 1.17 (id: 20699, stack: 0)
    PolishedDeepslateStairs, // 1.17 (id: 19513, stack: 0)
    DeepslateBrickStairs, // 1.17 (id: 29624, stack: 0)
    DeepslateTileStairs, // 1.17 (id: 6361, stack: 0)
    CobbledDeepslateSlab, // 1.17 (id: 17388, stack: 0)
    PolishedDeepslateSlab, // 1.17 (id: 32201, stack: 0)
    DeepslateBrickSlab, // 1.17 (id: 23910, stack: 0)
    DeepslateTileSlab, // 1.17 (id: 13315, stack: 0)
    LightningRod, // 1.17 (id: 30770, stack: 0)
    SculkSensor, // 1.17 (id: 5598, stack: 0)
    AmethystShard, // 1.17 (id: 7613)
    RawIron, // 1.17 (id: 5329)
    R


solid var(--warning-color);
}

/* Responsive Design */
@media (min-width: 768px) {
    .performance-grid {
        grid-template-columns: 1fr;
    }

    .metrics-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
}

@media (min-width: 1024px) {
    .metrics-grid {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    }
}

@media (min-width: 1280px) {
    .performance-grid {
        grid-template-columns: 1fr;
    }

    .metrics-grid {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    }
}

/* Error States */
.performance-monitor .error-message {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: var(--danger-color);
    padding: 1rem;
    border-radius: 0.5rem;
    margin-bottom: 1rem;
}

.performance-monitor .loading {
    text-align: center;
    padding: 2rem;
    color: var(--text-secondary);
}

.empty-state {
    text-align: center;
    padding: 3rem 1rem;
    color: var(--text-muted);
}

.empty-state p {
    margin: 0;
    font-size: 1rem;
} @font-face {
  font-family: 'Inter';
  font-weight: 400 600;
  font-display: swap;
  font-style: oblique 0 10deg;
  src: url("/fonts/inter.woff2") format("woff2");
  unicode-range: U + 0-00FF, U + 131, U + 152-0153, U + 2BB-02BC, U + 2C6, U + 2 DA, U + 2 DC, U + 2000-206F, U + 2074, U + 20 AC, U + 2122, U + 2191, U + 2193, U + 2212, U + 2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Inter-fallback';
  size-adjust: 107.00%;
  ascent-override: 90%;
  src: local("Arial");
}

@font-face {
  font-family: 'Epilogue';
  font-weight: 600 700;
  font-display: swap;
  src: url("/fonts/epilogue.woff2") format("woff2");
  unicode-range: U + 0-00FF, U + 131, U + 152-0153, U + 2BB-02BC, U + 2C6, U + 2 DA, U + 2 DC, U + 2000-206F, U + 2074, U + 20 AC, U + 2122, U + 2191, U + 2193, U + 2212, U + 2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Epilogue-fallback';
  size-adjust: 99%;
  ascent-override: 80%;
  src: local("Verdana");
}

@font-face {
  font-family: 'JetBrains Mono';
  font-weight: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/fonts/jetbrains-mono.woff2") format("woff2");
  unicode-range: U + 0-00FF, U + 131, U + 152-0153, U + 2BB-02BC, U + 2C6, U + 2 DA, U + 2 DC, U + 2000-206F, U + 2074, U + 20 AC, U + 2122, U + 2191, U + 2193, U + 2212, U + 2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'JetBrains-fallback';
  size-adjust: 108.00%;
  src: local("Consolas");
}
:root {
  /* Fonts */
  --font-display: 'Epilogue', 'Epilogue-fallback', var(--font-ui);


 3) =>
                            cmd_add = gtk::Button::with_label("Add item delayed");
                            .add(&cmd_add)

                            cmd_del = gtk::Button::with_label("Remove item");
                            .add(&cmd_del)
                    })
            })
    };

    // handle the "Add item" button events
    let counter = cmd_add.clicked_events().scan(0, |a, _| a + 1);
    let counter_str = counter.map(|n| format!("counter: {}", n));
    // do some work on another thread in response to this event
    let counter_worker = counter_str
        .map_n(|val, sender| {
            let val = val.into_owned();
            thread::spawn(move || {
                thread::sleep(Duration::from_millis(1000));
                sender.send(val);
            });
        })
        .to_main_thread();
    // count the pending jobs and use it to display a spinner
    let spinner_active = counter
        .merge_with(&counter_worker, |_| 1, |_| -1)
        .scan(0, |a, n| a + *n)
        .map(|a| *a != 0);
    // update the UI state using the data from the streams
    lbl_count.stream_label(&counter_str);
    listbox.stream_add(&counter_worker.map(|s| gtk::Label::new(Some(s.as_str())).show_()));
    spinner.stream_active(&spinner_active);

    // handle the "Remove item" button events
    let del_clicked = cmd_del.clicked_events();
    let deleted = gtk_lift!(listbox.selected_row)
        .snapshot(&del_clicked, |a, _| a)
        .filter_some();
    listbox.stream_remove(&deleted);

    // handle the window close event
    let win_ = window.wrap_fragile();
    window
        .delete_events(true)
        .map(move |_| {
            gtk::MessageDialog::new(
                Some(win_.get()),
                gtk::DialogFlags::MODAL,
                gtk::MessageType::Warning,
                gtk::ButtonsType::YesNo,
                "Are you sure you want to quit?",
            )
        })
        .run_dialog()
        .filter(|resp| *resp == gtk::ResponseType::Yes.into())
        .observe_strong(|_| gtk::main_quit());

    window.show_all();
    gtk::main();
}
<gh_stars>0
//! Serial interface
//!
//! You can use the `Serial` interface with these USART instances
//!
//! # USART2
//!
//! - TX = PA2
//! - RX = PA3
//! - Interrupt = USART2

use core::any::{Any, TypeId};
use core::marker::Unsize;
use core::ops::Deref;
use core::ptr;

use cast::u16;
use hal;
use nb;
use static_ref::Static;
use stm32f40x::{gpioa, DMA1, USART2, usart6, GPIOA, RCC};

use dma::{self, Buffer, Dma1Stream5, Dma1Stream6};

use core::fmt;

/// Specialized `Result` type
pub type Result<T> = ::core::result::Result<T, nb::Error<Error>>;

/// IMPLEMENTATION DETAIL
pub unsafe trait Usart: Deref<Target = usart6::RegisterBlock> {
    /// IMPLEMENTATION DETAIL
    type GPIO: Deref<Target = gpioa::RegisterBlock>;
    /// IMPLEMENTATION DETAIL
    type Ticks: Into<u32>;
}

unsafe impl Usart for USART2 {
    type GPIO = GPIOA;
    type Ticks = ::apb2::Ticks;
}

/// An error
#[derive(Debug)]
pub enum Error {
    ///


// Framework: GraphFlow
// Class: VectorBroadcastMat
// Author: Machine Learning Group of UChicago
// Institution: Department of Computer Science, The University of Chicago
// Copyright 2017 (c) UChicago. All rights reserved.

#ifndef __VECTORBROADCASTMAT_H_INCLUDED__
#define __VECTORBROADCASTMAT_H_INCLUDED__

#include <iostream>
#include <string>
#include <cstring>
#include <cstdio>
#include <cstdlib>
#include <vector>
#include <cmath>
#include <assert.h>

#include "Tensor3D.h"

class VectorBroadcastMat: public Tensor3D {
public:
	VectorBroadcastMat(int max_nRows, int max_nColumns, int max_nDepth) : Tensor3D(max_nRows, max_nColumns, max_nDepth) {

	}

	VectorBroadcastMat(Vector *first, Matrix *second) : Tensor3D(second -> nRows, second -> nColumns, first -> size) {
		this -> first = first;
		this -> second = second;
	}

	void setParameter(Vector *first, Matrix *second) {
		this -> first = first;
		this -> second = second;

		nRows = second -> nRows;
		nColumns = second -> nColumns;
		nDepth = first -> size;
		size = nRows * nColumns * nDepth;
	}

	void forward() {
		for (int i = 0; i < nRows; ++i) {
			for (int j = 0; j < nColumns; ++j) {
				for (int d = 0; d < nDepth; ++d) {
					int ind = index(i, j, d);
					value[ind] = second -> value[second -> index(i, j)] * first -> value[d];
				}
			}
		}

		for (int i = 0; i < size; ++i) {
			gradient[i] = 0.0;
		}
	}

	void backward() {
		for (int i = 0; i < nRows; ++i) {
			for (int j = 0; j < nColumns; ++j) {
				for (int d = 0; d < nDepth; ++d) {
					int ind = index(i, j, d);
					second -> gradient[second -> index(i, j)] += gradient[ind] * first -> value[d];
					first -> gradient[d] += gradient[ind] * second -> value[second -> index(i, j)];
				}
			}
		}
	}

	Vector *first;
	Matrix *second;

	~VectorBroadcastMat() {
	}
};

#endif


 usize) -> Arc {
    Arc { id: id, from: from, to: to, kind: kind }
}

#[inline]
pub fn new_deadline(id: usize, on: usize, at: usize) -> Deadline {
    Deadline { id: id, on: on, at: at }
}

#[inline]
pub fn new_table(name: String, id: usize) -> Table {
    Table {
        name: name,
        id: id,
        attributes: HashMap::new(),
        columns: Vec::new(),
    }
}

#[inline]
pub fn new_column(name: String) -> Column {
    Column { name: name, data: vec![] }
}
#![cfg(test)]

use std::mem::MaybeUninit;

use serial_test::serial;

#[test]
#[serial]
fn new() {
    use crate::prelude::*;

    let s = crate::Initializer::default().initialize().unwrap();
    s.new_chip("").unwrap_err();
    let chip0 = s.new_chip("*-isa-*").unwrap();

    let mut state = 0;
    let chip1 = unsafe {
        let chip_ref = sensors_sys::sensors_get_detected_chips(chip0.as_ref().as_ref(), &mut state)
            .as_ref()
            .unwrap();
        s.new_chip_ref(chip_ref)
    };

    let _name = chip1.name().unwrap();
    let c_name = chip1.raw_name().unwrap();
    assert!(!chip1.to_string().is_empty());

    let mut sensors_chip_name = MaybeUninit::zeroed();
    let mut chip2 = unsafe {
        let r = sensors_sys::sensors_parse_chip_name(
            c_name.as_ptr().cast(),
            sensors_chip_name.as_mut_ptr(),
        );
        assert_eq!(r, 0);
        s.new_raw_chip(sensors_chip_name.assume_init())
    };
    chip2.bus_mut().set_raw_number(0); // Workaround for libsensors.
    let _name = chip2.name().unwrap();
    assert!(!chip2.to_string().is_empty());
}

#[test]
#[serial]
fn raw() {
    use crate::prelude::*;

    let s = crate::Initializer::default().initialize().unwrap();
    let chip0 = s.new_chip("*-isa-*").unwrap();

    assert!(chip0.raw_prefix().is_none());
    assert!(chip0.prefix().is_none());

    let _address = chip0.raw_address();
    assert!(chip0.address().is_none());

    chip0.raw_name().unwrap_err();
    chip0.name().unwrap_err();

    assert!(chip0.raw_path().is_none());
    assert!(chip0.path().is_none());

    let _b0 = chip0.bus();

    drop(unsafe { s.new_raw_chip(chip0.into_raw_parts()) });

    let mut iter = s.chip_iter(None);
    let chip1 = iter.next().unwrap();

    assert!(!chip1.raw_prefix().unwrap().to_bytes().is_empty());
    assert!(!chip1.prefix().unwrap().unwrap().is_empty());

    let _address = chip1.raw_address();
    let _address = chip1.address().unwrap();

    let _name = chip1.raw_name().unwrap();
    let _name = chip1.name().unwrap();

    assert!(!chip1.raw_path().unwrap().to_bytes().is_empty());
    assert!(!chip1.path().unwrap().as_os_str().is_empty());

    let _b1 = chip1.bus();

    let chip2 = iter.next().unwrap();
    assert_ne!(chip1, chip2);

    let chip3 = s.new_chip("*-isa-*").unwrap();
    assert_ne!(


mageClustersItem["CustomLabels"].asString();
		auto allFilesNode = valueSimilarImageClustersSimilarImageClustersItem["Files"]["FilesItem"];
		for (auto valueSimilarImageClustersSimilarImageClustersItemFilesFilesItem : allFilesNode)
		{
			SimilarImageClustersItem::FilesItem filesObject;
			if(!valueSimilarImageClustersSimilarImageClustersItemFilesFilesItem["URI"].isNull())
				filesObject.uRI = valueSimilarImageClustersSimilarImageClustersItemFilesFilesItem["URI"].asString();
			if(!valueSimilarImageClustersSimilarImageClustersItemFilesFilesItem["ImageScore"].isNull())
				filesObject.imageScore = valueSimilarImageClustersSimilarImageClustersItemFilesFilesItem["ImageScore"].asString();
			similarImageClustersObject.files.push_back(filesObject);
		}
		similarImageClusters_.push_back(similarImageClustersObject);
	}
	if(!value["NextToken"].isNull())
		nextToken_ = value["NextToken"].asString();

}

std::vector<QuerySimilarImageClustersResult::SimilarImageClustersItem> QuerySimilarImageClustersResult::getSimilarImageClusters()const
{
	return similarImageClusters_;
}

std::string QuerySimilarImageClustersResult::getNextToken()const
{
	return nextToken_;
}

/*
 * Copyright 2009-2017 Alibaba Cloud All rights reserved.
 *
 * 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.
 */

#include <alibabacloud/imm/model/UpdateProjectResult.h>
#include <json/json.h>

using namespace AlibabaCloud::Imm;
using namespace AlibabaCloud::Imm::Model;

UpdateProjectResult::UpdateProjectResult() :
	ServiceResult()
{}

UpdateProjectResult::UpdateProjectResult(const std::string &payload) :
	ServiceResult()
{
	parse(payload);
}

UpdateProjectResult::~UpdateProjectResult()
{}

void UpdateProjectResult::parse(const std::string &payload)
{
	Json::Reader reader;
	Json::Value value;
	reader.parse(payload, value);
	setRequestId(value["RequestId"].asString());
	auto projectNode = value["Project"];
	if(!projectNode["ProjectName"].isNull())
		project_.projectName = projectNode["ProjectName"].asString();
	if(!projectNode["ServiceRole"].isNull())
		project_.serviceRole = projectNode["ServiceRole"].asString();
	if(!projectNode["TemplateId"].isNull())
		project_.templateId = projectNode["TemplateId"].asString();
	if(!projectNode["CreateTime"].isNull())
		project_.createTime = projectNode["CreateTime"].asString();
	if(!projectNode["UpdateTime"].isNull())
		project_.updateTime = projectNode["UpdateTime"].asString();
	if(!projectNode["Description"].isNull())
		project_.description = projectNode["Description"].asString();
	if(!projectNode["ProjectQueriesPerSecond"].isNull())
		project_.projectQueriesPerSecond = std::stol(projectNode["ProjectQueriesPerSecond"].asString());
	if(!projectNode["EngineConcurrency"].isNull())
		project_.engineConcurrency = std::stol(projectNode["EngineConcurrency"].asString());
	if(!projectNode["ProjectMaxDatasetCount"].isNull())
		project_.projectMaxDatasetCount = std::stol(projectNode["ProjectMaxDatasetCount"].asString());
	if(!projectNode["DatasetMaxBindCount"].isNull())
		project_.datasetMaxBindCount = std::stol(projectNode["DatasetMaxBindCount"].asString());
	if(!projectNode["DatasetMaxFileCount"].is


e I2C bus reset
                    // Found out that waiting a little bit is needed. Exact time may be lower
                    Thread.Sleep(100);
                    // Try one more time
                    if (!_ak8963.IsVersionCorrect())
                    {
                        throw new IOException($"This device does not contain the correct signature 0x48 for a AK8963 embedded into the MPU9250");
                    }
                }
            }

            _ak8963.MeasurementMode = MeasurementMode.SingleMeasurement;
        }

        /// <summary>
        /// Return true if the version of MPU9250 is the correct one
        /// </summary>
        /// <returns>True if success</returns>
        internal new bool CheckVersion()
        {
            // Check if the version is thee correct one
            return ReadByte(Register.WHO_AM_I) == 0x71;
        }

        /// <summary>
        /// Setup the Wake On Motion. This mode generate a rising signal on pin INT
        /// You can catch it with a normal GPIO and place an interruption on it if supported
        /// Reading the sensor won't give any value until it wakes up periodically
        /// Only Accelerator data is available in this mode
        /// </summary>
        /// <param name="accelerometerThreshold">Threshold of magnetometer x/y/z axes. LSB = 4mg. Range is 0mg to 1020mg</param>
        /// <param name="acceleratorLowPower">Frequency used to measure data for the low power consumption mode</param>
        public new void SetWakeOnMotion(uint accelerometerThreshold, AccelerometerLowPowerFrequency acceleratorLowPower)
        {
            // We can't use the magnetometer, only Accelerometer will be measured
            _ak8963.MeasurementMode = MeasurementMode.PowerDown;
            base.SetWakeOnMotion(accelerometerThreshold, acceleratorLowPower);
        }

        /// <summary>
        /// Cleanup everything
        /// </summary>
        public new void Dispose()
        {
            if (_shouldDispose)
            {
                _i2cDevice?.Dispose();
                _i2cDevice = null!;
            }
        }

    }
}


Store clinVarDao = new ClinVarDaoMvStore(mvStore);

        MVStore alleleStore = new MVStore.Builder().fileName(dataDir + dataVersion + "/" + dataVersion + "_variants.mv.db").readOnly().open();
        AllelePropertiesDao allelePropertiesDao = new AllelePropertiesDaoMvStore(alleleStore);

        JannovarData jannovarData = JannovarDataSourceLoader.loadJannovarData(Path.of(dataDir + dataVersion + "/" + dataVersion + "_transcripts_ensembl.ser"));
        VariantAnnotator variantAnnotator = new JannovarVariantAnnotator(assembly, jannovarData, ChromosomalRegionIndex.empty());
        // 18-57550760-A-T NA
        // 18-57550753-A-C LP // 55217985 (hg19)
        // 1-226923505-G-T // hg19
        // PS1: 10-123247514-C-A and 10-123247514-C-G - FGFR2 c.1704G>T p.(Lys568Asn) / c.1704G>C  p.(Lys568Asn) PATH
        // 10-123276886-G-C and 10-123276887-C-G - FGFR2 c.1031C>G p.(Ala344Gly) / c.1030G>C p.(Ala344Pro)  PATH
        // PS1: 10-123279562-C-A and 10-123279562-C-G - FGFR2 c.870G>T p.(Trp290Cys) / c.870G>C p.(Trp290Cys)  PATH
        // PS1: 10-123279564-A-T and 10-123279564-A-G - NM_000141.5(FGFR2):c.868T>A / c.868T>C (p.Trp290Arg)
        // TODO: Jannovar does not choose the same transcript as VEP as it does not apply any CDSlength rules as per:
        // https://mart.ensembl.org/info/genome/genebuild/canonical.html (see also vitt). Ideally the Jannovar Annotations
        // should be sorted before being converted to TranscriptAnnotations. This isn't an issue if MANE only
        // transcripts are being used as these are the only ones available to report on.
        GenomicVariant genomicVariant = parseVariant(assembly, vua); // 10-123256215-T-G hg38:10-121496701-T-G

        // hg38:4-25145092-C-T ENST00000382103.7(SEPSECS):c.846G>A (SEPSECS)p.(Leu282=) SpliceAI=0.42
        // 10-89624227-A-G (PTEN)
        // 10-123247514-C-G : PS1, PM1, PM2_Supporting, PM5_Supporting, PP3, PP5_Strong
        // 10-123247517-T-G : PS1_Supporting, PM1, PM2_Supporting, PM5_Supporting, PP2, PP3
        System.out.println("Searching for: " + toBroad(genomicVariant));
        AlleleProto.AlleleKey alleleKey = AlleleProtoAdaptor.toAlleleKey(genomicVariant);
        // encode as VariantKey (https://doi.org/10.1101/473744) == 8 bytes fixed size (long);
//        System.out.println("AlleleKey size (bytes): " + alleleKey.getSerializedSize()); // SNP = 13 bytes, 11 bases = 23

        System.out.println();
        Set<PathogenicitySource> pathSources = EnumSet.of(REVEL, MVP, ALPHA_MISSENSE, SPLICE_AI, REMM);
        List<VariantAnnotation> variantAnnotations = variantAnnotator.annotate(genomicVariant);
        AlleleProto.AlleleProperties alleleProperties = allelePropertiesDao.getAlleleProperties(alleleKey, assembly);
        FrequencyData frequencyData = AlleleProtoAdaptor.toFrequencyData(alleleProperties).toBuilder().filterSources(FrequencySource.NON_FOUNDER_POPS).build();
        PathogenicityData pathogenicityData = AlleleProtoAdaptor.toPathogenicityData(alleleProperties);
        pathogenicityData = PathogenicityData.of(pathogenicityData.pathogenicityScores().stream().filter(score -> pathSources.contains(score.getSource())).toList());
        ClinVarData clinVarData = clinVarDao.getClinVarData(genomicVariant);
        VariantAnnotation variantAnnotation = variantAnnotations.isEmpty() ? null :


larFlowUnit.MolePerSecond).ToString("s2", culture));
            Assert.Equal("0.123 mol/s", new MolarFlow(0.123456, MolarFlowUnit.MolePerSecond).ToString("s3", culture));
            Assert.Equal("0.1235 mol/s", new MolarFlow(0.123456, MolarFlowUnit.MolePerSecond).ToString("s4", culture));
        }

        [Theory]
        [InlineData(null)]
        [InlineData("en-US")]
        public void ToString_NullFormat_DefaultsToGeneralFormat(string cultureName)
        {
            var quantity = MolarFlow.FromMolesPerSecond(1.0);
            CultureInfo formatProvider = cultureName == null
                ? null
                : CultureInfo.GetCultureInfo(cultureName);

            Assert.Equal(quantity.ToString("G", formatProvider), quantity.ToString(null, formatProvider));
        }

        [Theory]
        [InlineData(null)]
        [InlineData("g")]
        public void ToString_NullProvider_EqualsCurrentCulture(string format)
        {
            var quantity = MolarFlow.FromMolesPerSecond(1.0);
            Assert.Equal(quantity.ToString(format, CultureInfo.CurrentCulture), quantity.ToString(format, null));
        }

        [Fact]
        public void GetHashCode_Equals()
        {
            var quantity = MolarFlow.FromMolesPerSecond(1.0);
            Assert.Equal(Comparison.GetHashCode(quantity.Unit, quantity.Value), quantity.GetHashCode());
        }

        [Theory]
        [InlineData(1.0)]
        [InlineData(-1.0)]
        public void NegationOperator_ReturnsQuantity_WithNegatedValue(double value)
        {
            var quantity = MolarFlow.FromMolesPerSecond(value);
            Assert.Equal(MolarFlow.FromMolesPerSecond(-value), -quantity);
        }
    }
}


##"gtk-media-next"##;
pub const GTK_STOCK_MEDIA_PAUSE: &'static str = r##"gtk-media-pause"##;
pub const GTK_STOCK_MEDIA_PLAY: &'static str = r##"gtk-media-play"##;
pub const GTK_STOCK_MEDIA_PREVIOUS: &'static str = r##"gtk-media-previous"##;
pub const GTK_STOCK_MEDIA_RECORD: &'static str = r##"gtk-media-record"##;
pub const GTK_STOCK_MEDIA_REWIND: &'static str = r##"gtk-media-rewind"##;
pub const GTK_STOCK_MEDIA_STOP: &'static str = r##"gtk-media-stop"##;
pub const GTK_STOCK_MISSING_IMAGE: &'static str = r##"gtk-missing-image"##;
pub const GTK_STOCK_NETWORK: &'static str = r##"gtk-network"##;
pub const GTK_STOCK_NEW: &'static str = r##"gtk-new"##;
pub const GTK_STOCK_NO: &'static str = r##"gtk-no"##;
pub const GTK_STOCK_OK: &'static str = r##"gtk-ok"##;
pub const GTK_STOCK_OPEN: &'static str = r##"gtk-open"##;
pub const GTK_STOCK_ORIENTATION_LANDSCAPE: &'static str = r##"gtk-orientation-landscape"##;
pub const GTK_STOCK_ORIENTATION_PORTRAIT: &'static str = r##"gtk-orientation-portrait"##;
pub const GTK_STOCK_ORIENTATION_REVERSE_LANDSCAPE: &'static str = r##"gtk-orientation-reverse-landscape"##;
pub const GTK_STOCK_ORIENTATION_REVERSE_PORTRAIT: &'static str = r##"gtk-orientation-reverse-portrait"##;
pub const GTK_STOCK_PAGE_SETUP: &'static str = r##"gtk-page-setup"##;
pub const GTK_STOCK_PASTE: &'static str = r##"gtk-paste"##;
pub const GTK_STOCK_PREFERENCES: &'static str = r##"gtk-preferences"##;
pub const GTK_STOCK_PRINT: &'static str = r##"gtk-print"##;
pub const GTK_STOCK_PRINT_ERROR: &'static str = r##"gtk-print-error"##;
pub const GTK_STOCK_PRINT_PAUSED: &'static str = r##"gtk-print-paused"##;
pub const GTK_STOCK_PRINT_PREVIEW: &'static str = r##"gtk-print-preview"##;
pub const GTK_STOCK_PRINT_REPORT: &'static str = r##"gtk-print-report"##;
pub const GTK_STOCK_PRINT_WARNING: &'static str = r##"gtk-print-warning"##;
pub const GTK_STOCK_PROPERTIES: &'static str = r##"gtk-properties"##;
pub const GTK_STOCK_QUIT: &'static str = r##"gtk-quit"##;
pub const GTK_STOCK_REDO: &'static str = r##"gtk-redo"##;
pub const GTK_STOCK_REFRESH: &'static str = r##"gtk-refresh"##;
pub const GTK_STOCK_REMOVE: &'static str = r##"gtk-remove"##;
pub const GTK_STOCK_REVERT_TO_SAVED: &'static str = r##"gtk-revert-to-saved"##;
pub const GTK_STOCK_SAVE: &'static str = r##"gtk-save"##;
pub const GTK_STOCK_SAVE_AS: &'static str = r##"gtk-save-as"##;
pub const GTK_STOCK_SELECT_A


esult = loadFlowRunner.run(network, parameters);
        assertTrue(result.isFullyConverged());

        var expectedDistributedActivePower = -network.getGeneratorStream().mapToDouble(g -> g.getTargetP() + g.getTerminal().getP()).sum();
        assertEquals(120.200, expectedDistributedActivePower, LoadFlowAssert.DELTA_POWER);
        assertEquals(expectedDistributedActivePower, result.getComponentResults().get(0).getDistributedActivePower(), LoadFlowAssert.DELTA_POWER);

        // Generators should increase generation by 120.1986 MW
        // generator | targetP | maxP    init_P + mismatch * margin / total_margin = final_P
        // ----------|---------|-------
        //   g1      |  100    |  100  --> 100  + 120.200 *   0     /   150       = 100.0000
        //   g2      |  200    |  310  --> 200  + 120.200 *   110   /   150       = 288.147
        //   g3      |   90    |  110  --> 90   + 120.200 *   20    /   150       = 106.02666
        //   g4      |   90    |  110  --> 90   + 120.200 *   20    /   150       = 106.02666
        assertActivePowerEquals(-100.000, g1.getTerminal());
        assertActivePowerEquals(-288.147, g2.getTerminal());
        assertActivePowerEquals(-106.026, g3.getTerminal());
        assertActivePowerEquals(-106.026, g4.getTerminal());
    }

    @Test
    void testSlackMismatchChangingSignRemainingMargin3() {
        parameters
                .setUseReactiveLimits(true)
                .setBalanceType(LoadFlowParameters.BalanceType.PROPORTIONAL_TO_GENERATION_REMAINING_MARGIN)
                .getExtension(OpenLoadFlowParameters.class)
                .setSlackBusPMaxMismatch(0.0001);
        network = DistributedSlackNetworkFactory.createWithLossesAndPvPqTypeSwitch();
        g1 = network.getGenerator("g1");
        g2 = network.getGenerator("g2");
        g3 = network.getGenerator("g3");
        g4 = network.getGenerator("g4");
        network.getLoad("l1").setP0(300.);

        g1.setMinP(-100.0).setMaxP(150.0);
        g2.setMinP(200.0).setMaxP(310.0);
        g3.setMinP(-50.0).setMaxP(110.0);
        g4.setMinP(-60.0).setMaxP(110.0).setTargetP(-10.);
        LoadFlowResult result = loadFlowRunner.run(network, parameters);
        assertTrue(result.isFullyConverged());

        var expectedDistributedActivePower = -network.getGeneratorStream().mapToDouble(g -> g.getTargetP() + g.getTerminal().getP()).sum();
        assertEquals(-79.8564, expectedDistributedActivePower, LoadFlowAssert.DELTA_POWER);
        assertEquals(expectedDistributedActivePower, result.getComponentResults().get(0).getDistributedActivePower(), LoadFlowAssert.DELTA_POWER);

        // Generators should decrease generation by -79.84712 MW
        // - margin counted till zero for Generators injecting
        // - margin counted till Pmin for Generators pumping
        //
        // generator | targetP | minP    init_P + mismatch * margin / total_margin = final_P
        // ----------|---------|-------
        //   g1      |  100    | -100  --> 100  + -79.8564 *   100   /   240       = 66.7265
        //   g2      |  200    |  200  --> 200  + -79.8564 *   0     /   240       = 200
        //   g3      |   90    |  -50  --> 90   + -79.8564 *   90    /   240       = 60.0538
        //   g4      |  -10    |  -60


-Learn 提供的 Ran domizedSearchCV 和 GridSearchCV 函数已自动对此类模型的超参数训练集进行优化。这些函数指定要为每个超参数测试的一组值。在网格搜索的情况下，系统在所有超参数值的所有组合上进行评估，而随机搜索从指定的分布中随机抽取超参数的值，执行预定次数的迭代。超参数的最佳值是通过首先使用 Randomized SearchCV 来确定数量级并缩小要测试的值的范围，然后使用 GridSearchCV 来微调最佳值的搜索来找到的。根据执行的测试，随机森林使用以下超参数实现了 98.5% 的精度和 89.1% 的召回率的最高性能：

[![](https://p2.ssl.qhimg.com/t012dbc800d682745f8.png)](https://p2.ssl.qhimg.com/t012dbc800d682745f8.png)

RBF SVM 使用以下超参数实现了 92.4% 的精度和 88.9% 的最高性能召回率：

[![](https://p2.ssl.qhimg.com/t017862b89e0b82ca7d.png)](https://p2.ssl.qhimg.com/t017862b89e0b82ca7d.png)

然后使用两个模型的这些超参数值进行后续分析。

[![](https://p5.ssl.qhimg.com/t018a7f0707762c5a34.png)](https://p5.ssl.qhimg.com/t018a7f0707762c5a34.png)

上图显示了 RBF SVM 和随机森林的精度、召回率和 F-measure，改变了分配给两个类别的权重。随机森林在一般情况下具有更好的性能（F-measure 为 93.8%）。另一方面，RBF SVM 以牺牲精度 (90.6%) 为代价获得了更高的召回率 (90.3%)。在某些情况下，RBF SVM 可能更适合最大化召回率（高达 90.3%）并最小化风险。在其他情况下，可能更普遍的是，与精度（下降到 90.6%）的权衡意味着过多的误报。随机森林的 Re call 值略小（高达 89.1%），但精度值要高得多（高达 98.5%）。因此选择的类权重是：

[![](https://p4.ssl.qhimg.com/t0193d5f6901708e348.png)](https://p4.ssl.qhimg.com/t0193d5f6901708e348.png)

分类阈值已使用上面报告的类权重进行了调整。下图显示了作为分类阈值函数的 RBF SVM 和随机森林的精度、召


tps://mp.weixin.qq.com/s?__biz=MzkwNTI3MjIyOQ==&mid=2247484152&idx=1&sn=6a80f77be924da050ae95ba3340da4cb)
- 迪哥讲事
  - [ ] [一个 $9000 的漏洞](https://mp.weixin.qq.com/s?__biz=MzIzMTIzNTM0MA==&mid=2247497759&idx=1&sn=76d5def436c5e13a8d11a9514cce189b)
- TorrentFreak
  - [ ] [Sky Views Personal Data as a Potential Weapon in IPTV Piracy War](https://torrentfreak.com/sky-views-personal-data-as-new-weapon-in-iptv-piracy-war-250622/)
- Your Open Hacker Community
  - [ ] [WooCommerce/Wordpress anonymous webshop](https://www.reddit.com/r/HowToHack/comments/1lhmh8d/woocommercewordpress_anonymous_webshop/)
  - [ ] [A little help](https://www.reddit.com/r/HowToHack/comments/1lhcp5g/a_little_help/)
  - [ ] [is there way where i can get acces to admins PIN or to simply extract the hash file of the admin?](https://www.reddit.com/r/HowToHack/comments/1lhhv3f/is_there_way_where_i_can_get_acces_to_admins_pin/)
  - [ ] [hello, I was wondering if anyone can help me get into my chromebook, i don't have the password and I'm not sure what to do to get into it.](https://www.reddit.com/r/HowToHack/comments/1lham5g/hello_i_was_wondering_if_anyone_can_help_me_get/)
- netsecstudents: Subreddit for students studying Network Security and its related subjects
  - [ ] [arcsight](https://www.reddit.com/r/netsecstudents/comments/1lhfx3c/arcsight/)
  - [ ] [Used our private intel scraper (WRAITH) + SØPHIA overlays to locate a buried data hub during passive recon — AMA](https://www.reddit.com/r/netsecstudents/comments/1lhda6t/used_our_private_intel_scraper_wraith_søphia/)
- Blackhat Library: Hacking techniques and research
  - [ ] [MaaS [Malware]](https://www.reddit.com/r/blackhat/comments/1lhpo7i/maas_malware/)
- Deep Web
  - [ ] [how i now its a real link ?](https://www.reddit.com/r/deepweb/comments/1lhnhl9/how_i_now_its_a_real_link/)
- Security Affairs
  - [ ] [Qilin ransomware gang now offers a “Call Lawyer” feature to pressure victims](https://securityaffairs.com/179205/breaking-news/qilin-ransomware-gang-now-offers-a-call-lawyer-feature.html)
  - [ ] [SECURITY AFFAIRS MALWARE NEWSLETTER ROUND 50](https://securityaffairs.com/179215/breaking-news/security-affairs-malware-newsletter-round-50


 = {}

	for n = 1, Nx.Map.ContCnt do

		self.ContFrms[n] = {}

		local mapFileName = self.MapInfo[n].FileName
		local texi = 1

--		Nx.prt ("Map Update ".. mapFileName)
		local tileX = self.MapInfo[n].TileX or 4
		local tileY = self.MapInfo[n].TileY or 3

		local numtiles = tileX * tileY

		for i = 1, numtiles do

			if Nx.ContBlks[n][i] ~= 0 then

				local cf = CreateFrame ("Frame", nil, f)
				m.ContFrms[n][i] = cf

				local t = cf:CreateTexture()
				t:SetAllPoints (cf)
				cf.texture = t

				if n == 1 then
					t:SetTexture ("Interface\\AddOns\\Carbonite\\Gfx\\Map\\Cont\\".."Kal_"..i)
				elseif n == 2 then
					t:SetTexture ("Interface\\AddOns\\Carbonite\\Gfx\\Map\\Cont\\".."Eas_"..i)
				else
					t:SetTexture ("Interface\\WorldMap\\"..mapFileName.."\\"..mapFileName..i)
				end

				t:SetSnapToPixelGrid(false)
				t:SetTexelSnappingBias(0)
			end
		end
	end

	-- Create mini frames

	self.MiniFrms = {}

	for n = 1, self.MiniBlks ^ 2 do

		local tf = CreateFrame ("Frame", nil, f)
		m.MiniFrms[n] = tf

		local t = tf:CreateTexture()
		tf.texture = t
		t:SetAllPoints (tf)

		t:SetSnapToPixelGrid(false)
		t:SetTexelSnappingBias(0)
	end

	self:InitHotspots()
end

--------
-- Init hotspots

function Nx.Map:InitHotspots()

	local quad = {}
	self.WorldHotspots = quad
	local quadCity = {}
	self.WorldHotspotsCity = quadCity

	for contN = 1, Nx.Map.ContCnt do

		cname = self:GetWorldContinentInfo (contN)
		if not cname then
			break
		end
		for _,zoneN in pairs(Nx.Map.MapZones[contN]) do
			zname, zx, zy, zw, zh = self:GetWorldZoneInfo (contN, zoneN)
			if not zx then
				break
			end

			local color, infoStr = self:GetMapNameDesc (zoneN)
			local tipStr = format ("%s, %s%s (%s)", L[cname], color, zname, infoStr)

			local loc = Nx.MapWorldHotspots[nxz]	-- Old way
			local locSize = 4
			local mapId = zoneN

			if not loc then

				loc = Nx.MapWorldHotspots2[mapId]
				if loc then
					locSize = 12
				else
					loc = format ("%c%c%c%c", 85, 85, 135, 135)
				end
			end

			for n = 0, 100 do

				local locN = n * locSize + 1

				local loc1 = strsub (loc, locN, locN + locSize - 1)
				if loc1 == "" then
					break
				end

				local zx, zy, zw, zh

				if locSize == 4 then
					zx, zy, zw, zh = Nx.Map:UnpackLocRect (loc1)
				else
					zx = tonumber (strsub (loc1, 1, 3), 16) * 100 / 4095
					zy = tonumber (strsub (loc1, 4, 6), 16) * 100 / 4095
					zw


inline-block;
  cursor: pointer;
  vertical-align: text-top;
}
.checkbox-styled:not(ie8) input ~ span:before,
.radio-styled:not(ie8) input ~ span:before {
  content: "";
  position: absolute;
  left: 0;
  z-index: 1;
  width: 20px;
  height: 20px;
  border: 2px solid #535858;
}
.checkbox-styled:not(ie8) input[type="radio"],
.radio-styled:not(ie8) input[type="radio"],
.checkbox-styled:not(ie8) input[type="checkbox"],
.radio-styled:not(ie8) input[type="checkbox"] {
  position: absolute;
  z-index: -1;
  opacity: 0;
  filter: alpha(opacity=0);
}
.checkbox-styled:not(ie8) label,
.radio-styled:not(ie8) label {
  padding-left: 0;
}
.checkbox-styled:not(ie8).radio-inline,
.radio-styled:not(ie8).radio-inline,
.checkbox-styled:not(ie8).checkbox-inline,
.radio-styled:not(ie8).checkbox-inline {
  padding-left: 0;
}
.checkbox-styled:not(ie8).disabled ~ span:before,
.radio-styled:not(ie8).disabled ~ span:before,
.checkbox-styled:not(ie8) input[disabled] ~ span:before,
.radio-styled:not(ie8) input[disabled] ~ span:before,
.checkbox-styled:not(ie8) input[readonly] ~ span:before,
.radio-styled:not(ie8) input[readonly] ~ span:before {
  border-color: #e5e6e6;
}
.checkbox-styled:not(ie8).disabled:checked ~ span:before,
.radio-styled:not(ie8).disabled:checked ~ span:before,
.checkbox-styled:not(ie8) input[disabled]:checked ~ span:before,
.radio-styled:not(ie8) input[disabled]:checked ~ span:before,
.checkbox-styled:not(ie8) input[readonly]:checked ~ span:before,
.radio-styled:not(ie8) input[readonly]:checked ~ span:before {
  border-color: #e5e6e6;
}
.checkbox-styled:not(ie8).disabled:checked ~ span:after,
.radio-styled:not(ie8).disabled:checked ~ span:after,
.checkbox-styled:not(ie8) input[disabled]:checked ~ span:after,
.radio-styled:not(ie8) input[disabled]:checked ~ span:after,
.checkbox-styled:not(ie8) input[readonly]:checked ~ span:after,
.radio-styled:not(ie8) input[readonly]:checked ~ span:after {
  background-color: #e5e6e6;
}
.checkbox-styled:not(ie8) input ~ span:before {
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.checkbox-styled:not(ie8) input:checked ~ span:before {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  height: 10px;
  border-color: #0aa89e;
  border-top-style: none;
  border-right-style: none;
}
.radio-styled:not(ie8) input ~ span:before {
  top: 0;
  border-radius: 50%;
  -webkit-


6:00'
model: gpt-4-0125-preview
summary: "Com a IDE do Arduino, voc\xEA pode usar impress\xF5es Serial para depurar,\
  \ mas \xE9 um pouco como usar uma lanterna para explorar uma caverna."
title: Usando um depurador
weight: 35
---

## Como Fazer:
Com a IDE do Arduino, você pode usar impressões Serial para depurar, mas é um pouco como usar uma lanterna para explorar uma caverna. Para uma depuração de verdade, você pode querer elevar o nível com algo como o depurador Atmel-ICE, que se integra ao ambiente Arduino. Aqui está um gostinho da pseudo-depuração usando Serial:

```Arduino
void setup() {
  Serial.begin(9600);
}
void loop() {
  int sensorValue = analogRead(A0);
  Serial.print("Valor do Sensor: ");
  Serial.println(sensorValue);
  // Imagine que você está esperando 512 aqui, mas recebe 0.
  // Hora de inspecionar a conexão do sensor
  delay(1000); // Aguarde um segundo antes de ler novamente
}
```
Execute isso com o Monitor Serial aberto, e você verá o que seu sensor emite em tempo real.

## Mergulho Profundo
Antes dos depuradores, era o mundo das declarações de impressão - você só podia adivinhar o que estava acontecendo imprimindo tudo. Depurar com impressões ainda é comum, especialmente em ambientes mais simples ou em hardware limitado como o Arduino.

Alternativas a emuladores em circuito como o Atmel-ICE incluem ferramentas de depuração de software como `avr-gdb`. Você pode combiná-lo com `avarice` para criar uma ponte entre o GDB e seu hardware, o que é super útil para uma depuração mais avançada diretamente no chip.

Usando um depurador, você pode definir pontos de interrupção para parar a execução em certos pontos. Você pode avançar pelo seu código linha por linha, inspecionar memória, registros e variáveis. Isso permite que você identifique problemas ao invés de fazer tentativas no escuro. Ao implementar um depurador, garanta que seu ambiente esteja configurado corretamente - versões incompatíveis ou ferramentas mal configuradas podem levar a frustração.

## Veja Também
Pronto para aprofundar? Mergulhe nestes:
- O guia de depuração do Arduino em [Depuração Arduino](https://www.arduino.cc/en/Guide/Environment#toc7)
- O manual de referência AVR Libc para configurar avr-gdb: [Página Inicial AVR Libc](http://www.nongnu.org/avr-libc/)
---
changelog:
- 2024-02-03, gpt-4-0125-preview, translated from English
date: 2024-02-03 19:06:40.543879-07:00
description: "Como Fazer: O Arduino n\xE3o suporta nativamente opera\xE7\xF5es complexas\
  \ de sistema de arquivos logo de cara. No entanto, com o uso da biblioteca SD, que\
  \ \xE9 parte\u2026"
lastmod: '2024-03-13T22:44:46.853015-06:00'
model: gpt-4-0125-preview
summary: "O Arduino n\xE3o suporta nativamente opera\xE7\xF5es complexas de sistema\
  \ de arquivos logo de cara."
title: "Verificando se um diret\xF3rio existe"
weight: 20


ratch, 0x0, 0xf, 0x0, 0x0, x23, x1, 24, x2)   # Testcase 158
    TEST_CSR_IMM_OP(csrrsi, x23, 30, mscratch, 0x0, 0x1e, 0x0, 0x0, x24, x1, 32, x2)   # Testcase 159

    RVTEST_SIGBASE(x1,signature_33_0)

    TEST_CSR_IMM_OP(csrrsi, x24, 29, mscratch, 0x0, 0x1d, 0x0, 0x0, x25, x1, 0, x2)   # Testcase 160
    TEST_CSR_IMM_OP(csrrsi, x25, 27, mscratch, 0x0, 0x1b, 0x0, 0x0, x26, x1, 8, x2)   # Testcase 161
    TEST_CSR_IMM_OP(csrrsi, x26, 23, mscratch, 0x0, 0x17, 0x0, 0x0, x27, x1, 16, x2)   # Testcase 162
    TEST_CSR_IMM_OP(csrrsi, x27, 15, mscratch, 0x0, 0xf, 0x0, 0x0, x28, x1, 24, x2)   # Testcase 163
    TEST_CSR_IMM_OP(csrrsi, x28, 30, mscratch, 0x0, 0x1e, 0x0, 0x0, x29, x1, 32, x2)   # Testcase 164

    RVTEST_SIGBASE(x2,signature_34_0)

    TEST_CSR_IMM_OP(csrrsi, x29, 29, mscratch, 0x0, 0x1d, 0x0, 0x0, x30, x2, 0, x4)   # Testcase 165
    TEST_CSR_IMM_OP(csrrsi, x30, 27, mscratch, 0x0, 0x1b, 0x0, 0x0, x31, x2, 8, x4)   # Testcase 166
    TEST_CSR_IMM_OP(csrrsi, x31, 23, mscratch, 0x0, 0x17, 0x0, 0x0, x1, x2, 16, x4)   # Testcase 167
    TEST_CSR_IMM_OP(csrrsi, x0, 23, mscratch, 0x0, 0x1ce2b97f, 0x0, 0x1ce2b96b, x3, x2, 24, x4)   # Testcase 168

#endif

RVTEST_CODE_END
RVMODEL_HALT

RVTEST_DATA_BEGIN
.align 4
rvtest_data:
.word 0xbabecafe

# Input data section.
	.data

RVTEST_DATA_END

RVMODEL_DATA_BEGIN

signature_1_0:
	.fill 5, 4, 0xdeadbeef
signature_2_0:
	.fill 5, 4, 0xdeadbeef
signature_3_0:
	.fill 5, 4, 0xdeadbeef
signature_4_0:
	.fill 5, 4, 0xdeadbeef
signature_5_0:
	.fill 5, 4, 0xdeadbeef
signature_6_0:
	.fill 5, 4, 0xdeadbeef
signature_7_0:
	.fill 5, 4, 0xdeadbeef
signature_8_0:
	.fill 5, 4, 0xdeadbeef
signature_9_0:
	.fill 5, 4, 0xdeadbeef
signature_10_0:
	.fill 5, 4, 0xdeadbeef
signature_11_0:
	.fill 5, 4, 0xdeadbeef
signature_12_0:
	.fill 5, 4, 0xdeadbeef
signature_13_0:
	.


sum().reset_index()

recommendations = []
for cluster in topProductsPerCluster['cluster'].unique():
    topProducts = topProductsPerCluster[topProductsPerCluster['cluster'] == cluster]
    customersInCluster = customerDataCleaned[customerDataCleaned['cluster'] == cluster]['CustomerID']

    for customer in customersInCluster:
        customerPurchasedProducts = customerPurchases[(customerPurchases['CustomerID'] == customer) &
                                                        (customerPurchases['cluster'] == cluster)][
            'StockCode'].tolist()

        topProductsNotPurchased = topProducts[~topProducts['StockCode'].isin(customerPurchasedProducts)]
        top3ProductsNotPurchased = topProductsNotPurchased.head(3)

        recommendations.append(
            [customer, cluster] + top3ProductsNotPurchased[['StockCode', 'Description']].values.flatten().tolist())

recommendationsDF = pd.DataFrame(recommendations, columns=['CustomerID', 'cluster', 'Recommendation 1 Stock Code',
                                                            'Recommendation 1 Description', \
                                                            'Recommendation 2 Stock Code',
                                                            'Recommendation 2 Description',
                                                            'Recommendation 3 Stock Code',
                                                            'Recommendation 3 Description'])
customerDataWithRecommendations = customerDataCleaned.merge(recommendationsDF, on=['CustomerID', 'cluster'],
                                                            how='right')
customerDataWithRecommendations.set_index('CustomerID').iloc[:, -6:].sample(10, random_state=0)

# excel dosyasının üzerine yazma yetkisi ver pythona.
recommendationsDF.to_excel('kmeans_customer_recommendations.xlsx', index=False)


ew Array()));
        assert.isFalse(regexInstance.validate(new Object()));
        assert.isFalse(regexInstance.validate(Object.create(null)));
        assert.isFalse(regexInstance.validate(Boolean(true)));
        assert.isFalse(regexInstance.validate(Number(1)));
        assert.isFalse(regexInstance.validate(String('fooBar')));
        assert.isFalse(regexInstance.validate('foo'));
        assert.isFalse(regexInstance.validate({foo: 'bar'}));
        assert.isFalse(regexInstance.validate(['foo']));
        assert.isFalse(regexInstance.validate(1));
        assert.isFalse(regexInstance.validate(-1));
        assert.isFalse(regexInstance.validate(1.0));
        assert.isFalse(regexInstance.validate(-1.0));
        assert.isFalse(regexInstance.validate(1));
        assert.isFalse(regexInstance.validate(1.0));
        assert.isFalse(regexInstance.validate(1.1));
        assert.isFalse(regexInstance.validate(new Array('foo')));
        assert.isFalse(regexInstance.validate(new Object({foo: 'bar'})));

        class Foo {}
        assert.isFalse(regexInstance.validate(new Foo()));
    });

});
export class Display
{
    /**
     * Экран для отображения результата
     */
    output: HTMLElement;

    constructor(output: HTMLElement | null)
    {
        this.output = output;
    }

    /**
     * Устанавливает значение
     */
    setValue( value: string ): void
    {
        this.output.textContent = value;
    }

    /**
     * Подготавливает число к отображения на экране
     */
    prepare( number: number ): string
    {
        return number.toPrecision( 11 )
            .replace( /(?:\.0*|(\.\d+?)0*)$/, '$1' );
    }
}import { ModelBuilderBuildConfig } from "../BuildConfig"

describe( `BuildConfig`, () => {

	describe( `Instantiation`, () => {
		it( `Should require a default step`, () => {
			// @ts-ignore
			expect( () => new ModelBuilderBuildConfig() ).toThrow()
		} )

		it( `Should automatically add defaultStep to steps`, () => {

			const builderConfig = new ModelBuilderBuildConfig( "state object here" as any )

			expect( builderConfig.getSteps().pop() ).toBe( "state object here" )
		} )
	} )

	describe( `setTimes`, () => {

		it( `Should set number of instances to be created`, () => {

			let builderConfig = new ModelBuilderBuildConfig( {} as any )

			builderConfig.setTimes( 8 )

			expect( builderConfig.getTimes() ).toBe( 8 )
		} )

		it( `Should never go under 1`, () => {

			let builderConfig = new ModelBuilderBuildConfig( {} as any )

			builderConfig.setTimes( 0 )

			expect( builderConfig.getTimes() ).toBe( 1 )

			builderConfig.setTimes( -1 )

			expect( builderConfig.getTimes() ).toBe( 1 )
		} )
	} )

	describe( `addStep()`, () => {
		it( `Should add passed step to steps`, () => {

			const builderConfig = new ModelBuilderBuildConfig( "🙌" as any )

			builderConfig.addStep( "🍩" as any )

			expect( builderConfig.getSteps() ).toEqual( [ "🙌", "🍩" ] )
		} )
	} )

	describe( `reset()`, () => {
		it( `Should reset builder time and steps to 1 and defaultStep`, () => {

			const builderConfig = new ModelBuilderBuildConfig( "🙌" as any )

			builderConfig.addStep( "🍩" as any )
			builderConfig.setTimes( 8 )

			expect( builderConfig.getTimes() ).toBe( 8 )
			expect( builderConfig.getSteps() ).toEqual( [ "🙌", "🍩" ] )


/* Copyright (c) 2005-2006 Russ Cox, MIT; see COPYRIGHT */

#if defined(__FreeBSD__) && defined(__i386__) && __FreeBSD__ < 5
#define NEEDX86CONTEXT 1
#define SET setmcontext
#define GET getmcontext
#endif

#if defined(__OpenBSD__) && defined(__i386__)
#define NEEDX86CONTEXT 1
#define SET setmcontext
#define GET getmcontext
#endif

#if defined(__APPLE__)
#if defined(__i386__)
#define NEEDX86CONTEXT 1
#define SET _setmcontext
#define GET _getmcontext
#elif defined(__x86_64__)
#define NEEDAMD64CONTEXT 1
#define SET _setmcontext
#define GET _getmcontext
#else
#define NEEDPOWERCONTEXT 1
#define SET __setmcontext
#define GET __getmcontext
#endif
#endif

#if defined(__linux__) && defined(__arm__)
#define NEEDARMCONTEXT 1
#define SET setmcontext
#define GET getmcontext
#endif

#ifdef NEEDX86CONTEXT
.globl SET
SET:
	movl	4(%esp), %eax

	movl	8(%eax), %fs
	movl	12(%eax), %es
	movl	16(%eax), %ds
	movl	76(%eax), %ss
	movl	20(%eax), %edi
	movl	24(%eax), %esi
	movl	28(%eax), %ebp
	movl	36(%eax), %ebx
	movl	40(%eax), %edx
	movl	44(%eax), %ecx

	movl	72(%eax), %esp
	pushl	60(%eax)	/* new %eip */
	movl	48(%eax), %eax
	ret

.globl GET
GET:
	movl	4(%esp), %eax

	movl	%fs, 8(%eax)
	movl	%es, 12(%eax)
	movl	%ds, 16(%eax)
	movl	%ss, 76(%eax)
	movl	%edi, 20(%eax)
	movl	%esi, 24(%eax)
	movl	%ebp, 28(%eax)
	movl	%ebx, 36(%eax)
	movl	%edx, 40(%eax)
	movl	%ecx, 44(%eax)

	movl	$1, 48(%eax)	/* %eax */
	movl	(%esp), %ecx	/* %eip */
	movl	%ecx, 60(%eax)
	leal	4(%esp), %ecx	/* %esp */
	movl	%ecx, 72(%eax)

	movl	44(%eax), %ecx	/* restore %ecx */
	movl	$0, %eax
	ret
#endif

#ifdef NEEDAMD64CONTEXT
.globl SET
SET:
	movq	16(%rdi), %rsi
	movq	24(%rdi), %rdx
	movq	32(%rdi), %rcx
	movq	40(%rdi), %r8
	movq	48(%rdi), %r9
	movq	56(%rdi), %rax
	movq	64(%rdi), %rbx
	movq	72(%rdi), %rbp
	movq	80(%rdi),


h.02a.42.42 0 0 1 0 .8l-1.07.35a2.2 2.2 0 0 0-1.4 1.4l-.35 1.07a.42.42 0 0 1-.64.2l-.02-.01a.43.43 0 0 1-.14-.2l-.35-1.06a2.2 2.2 0 0 0-1.4-1.4L7.28 3.9a.42.42 0 0 1 0-.8l1.07-.35a2.21 2.21 0 0 0 1.38-1.4l.35-1.07a.42.42 0 0 1 .4-.28Z\"/>") { } }
    public class Teaching : Icon { public Teaching() : base("Teaching", IconVariant.Filled, IconSize.Size16, "<path d=\"M2 2.75C2 1.78 2.78 1 3.75 1h5.5c.97 0 1.75.78 1.75 1.75v.74c-.18.12-.35.25-.5.4a4.04 4.04 0 0 0-.5-.34v-.8A.75.75 0 0 0 9.25 2h-5.5a.75.75 0 0 0-.75.75v.75h.5a.5.5 0 0 1 0 1H3v2h.5a.5.5 0 0 1 0 1H3v2h.5a.5.5 0 0 1 0 1H3v.75c0 .41.34.75.75.75h1.57c.1.35.24.69.39 1H3.75C2.78 13 2 12.22 2 11.25v-.75h-.5a.5.5 0 0 1 0-1H2v-2h-.5a.5.5 0 0 1 0-1H2v-2h-.5a.5.5 0 0 1 0-1H2v-.75Zm10.72 2.2a.5.5 0 1 0-.44-.9l-.35.17a3.5 3.5 0 0 0-1.37 1.23A3.02 3.02 0 0 0 7.97 4H7.5a.5.5 0 0 0-.5.5v.47c0 .83.33 1.58.87 2.12C6.87 7.4 6 8.42 6 10c0 2.02 1.21 3.74 1.8 4.45.3.37.74.55 1.19.55.53 0 1.03-.26 1.34-.69a.2.2 0 0 1 .34 0c.31.43.81.69 1.34.69.45 0 .9-.18 1.2-.55.58-.71 1.79-2.43 1.79-4.45 0-1.91-1.26-3-2.5-3-.47 0-.88.1-1.2.23l-.3.11c0-.94.54-1.8 1.38-2.22l.34-.17ZM10 7a2.03 2.03 0 0 1-2-2c1.1.01 1.99.9 2 2Zm-.8 2.28a.5.5 0 0 1-.23.67.2.2 0 0 0-.1.22l.05.2a.5.5 0 0 1-.97.25l-.05-.2a1.2 1.2 0 0 1 .63-1.37.5.5 0 0 1 .67.23Z\"/>") { } }
    public class TeardropBottomRight : Icon { public TeardropBottomRight() : base("TeardropBottomRight", IconVariant.Filled, IconSize.Size16, "<path d=\"M1 8a7 7 0 0 1 14 0v5.25c0 .97-.78 1.75-1.75 1.75H8a7 7 0 0 1-7-7Z\"/>") { } }
    public class Temperature : Icon { public Temperature() : base("Temperature", IconVariant.Filled, IconSize.Size16, "<path d=\"M4.5 3.5a3 3 0 1 1 6 0v5.35a3.99 3.99 0 0 1-3 6.65 4 4 0 0 1-3-6.65V3.5Zm3-1.5C6.67 2 6 2.67 6 3.5v5.97l


PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

package com.teamdev.jxbrowser.examples

import androidx.compose.runtime.LaunchedEffect
import androidx.compose.ui.window.singleWindowApplication
import com.teamdev.jxbrowser.dsl.Engine
import com.teamdev.jxbrowser.dsl.browser.mainFrame
import com.teamdev.jxbrowser.dsl.browser.navigation
import com.teamdev.jxbrowser.dsl.dom.documentElement
import com.teamdev.jxbrowser.dsl.frame.document
import com.teamdev.jxbrowser.dsl.subscribe
import com.teamdev.jxbrowser.engine.RenderingMode
import com.teamdev.jxbrowser.navigation.event.FrameLoadFinished
import com.teamdev.jxbrowser.view.compose.BrowserView

/**
 * This example demonstrates how to use `querySelector` DOM API.
 */
fun main() {
    val engine = Engine(RenderingMode.OFF_SCREEN)
    val browser = engine.newBrowser()

    browser.navigation.subscribe<FrameLoadFinished> {
        val document = browser.mainFrame?.document?.documentElement!!
        val paragraphs = document.findElementsByCssSelector("p")
        paragraphs.forEach { paragraph ->
            println("innerHTML: ${paragraph.innerHtml()}")
        }
    }

    singleWindowApplication(title = "DOM query selector") {
        BrowserView(browser)
        LaunchedEffect(Unit) {
            browser.navigation.loadHtml(HTML_PARAGRAPHS)
        }
    }
}

private val HTML_PARAGRAPHS = """

paragraph1

paragraph2

paragraph3

""".trimIndent()
/*
 *  Copyright 2025, TeamDev. All rights reserved.
 *
 *  Redistribution and use in source and/or binary forms, with or without
 *  modification, must retain the above copyright notice and the following
 *  disclaimer.
 *
 *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

package com.teamdev.jxbrowser.examples

import androidx.compose.runtime.LaunchedEffect
import androidx.compose.ui.window.singleWindowApplication
import com.teamdev.jxbrowser.dsl.Engine
import com.teamdev.jxbrowser.dsl.browser.navigation
import com.teamdev.jxbrowser.dsl.plugin.pdfViewerEnabled
import com.teamdev.jxbrowser.dsl.plugin.settings
import com.teamdev.jxbrowser.dsl.plugins
import com.teamdev.jxbrowser.engine.RenderingMode
import com.teamdev.jxbrowser


s.begin(), fs.end());
      loopController.stop();
    });

    loopController.loop([]() {});

    // Fiber stack high watermark stat is only available for build without ASAN
    // since Folly always returns 0 when FOLLY_SANITIZE_ADDRESS is set.
    auto stackHighWatermark = fm.stackHighWatermark();
    if (stackHighWatermark > 0) {
      VLOG(2) << "fiber stack high watermark: " << stackHighWatermark;
    }
  }

  folly::fibers::FiberManager& getFiberManager() {
    return fm_;
  }

 private:
  folly::fibers::FiberManager fm_;
  static constexpr size_t kRecordFiberStackEveryDefault = 0;

  static folly::fibers::FiberManager::Options getFiberOptions(
      size_t recordFiberStackEvery = 0) {
    folly::fibers::FiberManager::Options ret;
    ret.recordStackEvery = recordFiberStackEvery;
    return ret;
  }
};

inline std::string toString(const folly::IOBuf& buf) {
  auto b = buf.clone();
  return coalesceAndGetRange(b).str();
}

template <class Rh>
std::string replyFor(Rh& rh, const std::string& key) {
  auto reply = rh.route(McGetRequest(key));
  return carbon::valueRangeSlow(reply).str();
}

} // namespace memcache
} // namespace facebook


writeByte(r.getHL(), r.getE()),
    )
    this.registerCommand(0x74, 8, 0, 'LD (HL), H', (r: any, m: any, a: any) =>
      m.writeByte(r.getHL(), r.getH()),
    )
    this.registerCommand(0x75, 8, 0, 'LD (HL), L', (r: any, m: any, a: any) =>
      m.writeByte(r.getHL(), r.getL()),
    )
    this.registerCommand(0x36, 12, 1, 'LD (HL), n', (r: any, m: any, a: any) =>
      m.writeByte(r.getHL(), a[0]),
    )

    this.registerCommand(0x7f, 4, 0, 'LD A, A', (r: any, m: any, a: any) =>
      r.setA(r.getA()),
    )
    this.registerCommand(0x47, 4, 0, 'LD B, A', (r: any, m: any, a: any) =>
      r.setB(r.getA()),
    )
    this.registerCommand(0x4f, 4, 0, 'LD C, A', (r: any, m: any, a: any) =>
      r.setC(r.getA()),
    )
    this.registerCommand(0x57, 4, 0, 'LD D, A', (r: any, m: any, a: any) =>
      r.setD(r.getA()),
    )
    this.registerCommand(0x5f, 4, 0, 'LD E, A', (r: any, m: any, a: any) =>
      r.setE(r.getA()),
    )
    this.registerCommand(0x67, 4, 0, 'LD H, A', (r: any, m: any, a: any) =>
      r.setH(r.getA()),
    )
    this.registerCommand(0x6f, 4, 0, 'LD L, A', (r: any, m: any, a: any) =>
      r.setL(r.getA()),
    )

    this.registerCommand(0x0a, 8, 0, 'LD A, (BC)', (r: any, m: any, a: any) =>
      r.setA(m.readByte(r.getBC())),
    )
    this.registerCommand(0x1a, 8, 0, 'LD A, (DE)', (r: any, m: any, a: any) =>
      r.setA(m.readByte(r.getDE())),
    )
    this.registerCommand(0x7e, 8, 0, 'LD A, (HL)', (r: any, m: any, a: any) =>
      r.setA(m.readByte(r.getHL())),
    )
    this.registerCommand(0xfa, 16, 2, 'LD A, (nn)', (r: any, m: any, a: any) =>
      r.setA(m.readByte(BitUtils.toWord(a))),
    )
    this.registerCommand(0x3e, 16, 1, 'LD A, #', (r: any, m: any, a: any) =>
      r.setA(a[0]),
    )

    this.registerCommand(0x02, 8, 0, 'LD (BC), A', (r: any, m: any, a: any) =>
      m.writeByte(r.getBC(), r.getA()),
    )
    this.registerCommand(0x12, 8, 0, 'LD (DE), A', (r: any, m: any, a: any) =>
      m.writeByte(r.getDE(), r.getA()),
    )
    this.registerCommand(0x77, 8, 0, 'LD (HL), A', (r: any, m: any, a: any) =>
      m.writeByte(r.getHL(), r.getA()),
    )
    this.registerCommand(0xea, 16, 2, 'LD (nn), A', (r: any, m: any, a: any) =>
      m.writeByte(BitUtils.toWord(a), r.getA()),
    )

    // ---------------------//


 />
/// <reference path='../../../typings/mocha/mocha.d.ts' />
/// <reference path='../../../typings/angularMocks.d.ts' />
/// <reference path='../../../typings/chaiAssertions.d.ts' />

/// <reference path='date.module.ts' />
/// <reference path='date.service.ts' />
/// <reference path="../../types/compareResult.ts" />
/// <reference path='../test/angularFixture.ts' />

module rl.utilities.services.date {
	'use strict';

	import compareResult = rl.utilities.types.compareResult;

	describe('dateUtility', () => {
		var dateUtility: date.IDateUtility;

		beforeEach(() => {
			angular.mock.module(date.moduleName);

			var services: any = test.angularFixture.inject(date.serviceName);
			dateUtility = services[date.serviceName];
		});

		describe('getFullString', (): void => {
			it('should get the month name', (): void => {
				expect(dateUtility.getFullString(0)).to.equal('January');
				expect(dateUtility.getFullString(1)).to.equal('February');
				expect(dateUtility.getFullString(2)).to.equal('March');
				expect(dateUtility.getFullString(3)).to.equal('April');
				expect(dateUtility.getFullString(4)).to.equal('May');
				expect(dateUtility.getFullString(5)).to.equal('June');
				expect(dateUtility.getFullString(6)).to.equal('July');
				expect(dateUtility.getFullString(7)).to.equal('August');
				expect(dateUtility.getFullString(8)).to.equal('September');
				expect(dateUtility.getFullString(9)).to.equal('October');
				expect(dateUtility.getFullString(10)).to.equal('November');
				expect(dateUtility.getFullString(11)).to.equal('December');
			});
		});

		describe('getDays', (): void => {
			it('should get the number of days in the month', (): void => {
				expect(dateUtility.getDays(0)).to.equal(31);
				expect(dateUtility.getDays(2)).to.equal(31);
				expect(dateUtility.getDays(3)).to.equal(30);
				expect(dateUtility.getDays(4)).to.equal(31);
				expect(dateUtility.getDays(5)).to.equal(30);
				expect(dateUtility.getDays(6)).to.equal(31);
				expect(dateUtility.getDays(7)).to.equal(31);
				expect(dateUtility.getDays(8)).to.equal(30);
				expect(dateUtility.getDays(9)).to.equal(31);
				expect(dateUtility.getDays(10)).to.equal(30);
				expect(dateUtility.getDays(11)).to.equal(31);
			});

			it('should account for leap years', (): void => {
				expect(dateUtility.getDays(1, 2015)).to.equal(28);
				expect(dateUtility.getDays(1, 2016)).to.equal(29);
			});
		});

		describe('getDate', (): void => {
			it('should handle dates in string or date format, defaulting to MM-DD-YYYY format', (): void => {
				var dateString: string = '1/1/2014';
				var date: Date = new Date(dateString);
				expect(dateUtility.getDate(date).getDate()).to.equal(date.getDate());
				expect(dateUtility.getDate(dateString).getDate()).to.equal(date.getDate());
			});

			it('should handle dates in a user-defined format', (): void => {
				var dateString: string = '2014-1-1T12:00:00';
				var date: Date = new Date('1/1/2014');
				expect(dateUtility.getDate(dateString, 'YYYY-MM-DDTHH:mm:ss').getDate()).to.equal(date.getDate());
			});
		});

		describe('subtractDates', (): void => {
			it('


/*=============================================================================
TexGen: Geometric textile modeller.
Copyright (C) 2021 Mikhail Matveev

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 2
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, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
=============================================================================*/

#pragma once

namespace TexGen
{
	using namespace std;

	/// Class used to generate Abaqus input file for periodic boundary conditions for a unit cell in tension and bending.
	class CLASS_DECLSPEC CBendingPeriodicBoundaries : public CPeriodicBoundaries
	{
	public:
		CBendingPeriodicBoundaries(void);
		~CBendingPeriodicBoundaries(void);

		/// Set up the domain size parameters used in the equations
		//void SetDomainSize( const CMesh& Mesh );

	private:
		/// Output equations for bending boundary conditions
		void OutputEquations( ostream& Output, int iBoundaryConditions );
		void OutputStep(  ostream& Output, int iBoundaryConditions );
		/// Displacement vectors for the three axes
		XYZ m_DispVec[3];
	};
}; // namespace TexGen


 ' ', '█', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '█'},
	{'█', ' ', ' ', ' ', ' ', ' ', '█', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'S', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '█'},
	{'█', ' ', ' ', ' ', ' ', ' ', '█', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '█'},
	{'█', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '█'},
	{'█', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', '█'},
	{'█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█', '█'},
}
package main

import (
	"bytes"
	"crypto/rand"
	"crypto/rsa"
	"crypto/x509"
	"crypto/x509/pkix"
	"encoding/pem"
	"math/big"
	"time"
)

// generateCert generate a self-signed CA for given organization
// and sign certificate with the CA for given common name and dns names
// it resurns the CA, certificate and private key in PEM format
func generateCert(orgs, dnsNames []string, commonName string) (*bytes.Buffer, *bytes.Buffer, *bytes.Buffer, error) {
	// init CA config
	ca := &x509.Certificate{
		SerialNumber:          big.NewInt(2022),
		Subject:               pkix.Name{Organization: orgs},
		NotBefore:             time.Now(),
		NotAfter:              time.Now().AddDate(1, 0, 0), // expired in 1 year
		IsCA:                  true,
		ExtKeyUsage:           []x509.ExtKeyUsage{x509.ExtKeyUsageClientAuth, x509.ExtKeyUsageServerAuth},
		KeyUsage:              x509.KeyUsageDigitalSignature | x509.KeyUsageCertSign,
		BasicConstraintsValid: true,
	}

	// generate private key for CA
	caPrivateKey, err := rsa.GenerateKey(rand.Reader, 4096)
	if err != nil {
		return nil, nil, nil, err
	}

	// create the CA certificate
	caBytes, err := x509.CreateCertificate(rand.Reader, ca, ca, &caPrivateKey.PublicKey, caPrivateKey)
	if err != nil {
		return nil, nil, nil, err
	}

	//


te readonly _corsOptions: CorsOptions;
  public use: (req: Request, res: Response, next: NextFunction) => any = cors(this._corsOptions);

  public constructor() {
    const whiteList = ['http://localhost:4200'];
    this._corsOptions = {
      origin: (origin: string, callback: (err: Error | null, allow?: boolean) => void) => {
        if (whiteList.indexOf(origin) !== -1) {
          callback(null, true)
        } else {
          callback(new Error('Not allowed by CORS'))
        }
      }
    }
  }
}
import { LanguageType } from "../enum/language-type.enum";
import { LanguageEnum } from "../enum/language.enum";

export interface LanguageObject {
    type: LanguageType;
    typicalSpeakers: string[];
    script: LanguageEnum;
}

// TODO: test that langauge deepspeech script logic is fine with null value
export const Language: { [key in LanguageEnum]: LanguageObject } = {
    Common: { type: LanguageType.Standard, typicalSpeakers: ["Humans"], script: LanguageEnum.Common },
    Dwarvish: { type: LanguageType.Standard, typicalSpeakers: ["Dwarves"], script: LanguageEnum.Dwarvish },
    Elvish: { type: LanguageType.Standard, typicalSpeakers: ["Elves"], script: LanguageEnum.Elvish },
    Giant: { type: LanguageType.Standard, typicalSpeakers: ["Ogres", "Giants"], script: LanguageEnum.Dwarvish },
    Gnomish: { type: LanguageType.Standard, typicalSpeakers: ["Gnomes"], script: LanguageEnum.Dwarvish },
    Goblin: { type: LanguageType.Standard, typicalSpeakers: ["Goblinoids"], script: LanguageEnum.Dwarvish },
    Halfling: { type: LanguageType.Standard, typicalSpeakers: ["Halflings"], script: LanguageEnum.Common },
    Orc: { type: LanguageType.Standard, typicalSpeakers: ["Orcs"], script: LanguageEnum.Dwarvish },
    Abyssal: { type: LanguageType.Exotic, typicalSpeakers: ["Demons"], script: LanguageEnum.Infernal },
    Celestial: { type: LanguageType.Exotic, typicalSpeakers: ["Celestials"], script: LanguageEnum.Celestial },
    Draconic: { type: LanguageType.Exotic, typicalSpeakers: ["Dragons", "Dragonborn"], script: LanguageEnum.Draconic },
    DeepSpeech: { type: LanguageType.Exotic, typicalSpeakers: ["Mindflayers", "Beholders"], script: null },
    Infernal: { type: LanguageType.Exotic, typicalSpeakers: ["Devils", "Tieflings"], script: LanguageEnum.Infernal },
    Primordial: { type: LanguageType.Exotic, typicalSpeakers: ["Elementa;s"], script: LanguageEnum.Dwarvish },
    Sylvan: { type: LanguageType.Exotic, typicalSpeakers: ["Fey Creatures"], script: LanguageEnum.Elvish },
    Undercommon: { type: LanguageType.Exotic, typicalSpeakers: ["Underdark Traders"], script: LanguageEnum.Elvish },
}
import BytecodeDecoder from "../BytecodeDecoder";

describe('InstructionDecoder', () => {

    let bytecodeDecoder: BytecodeDecoder;

    beforeEach(() => {
        bytecodeDecoder = new BytecodeDecoder();
    })

    it('Decodes the instruction correctly', () => {
        const bytecode = 0x4A1C;
        const opcode = 4;
        const reg1 = 10;
        const reg2 = 1;
        const reg3 = 12;
        const immediate = 28;
        const jumpAddress = 2588;

        const instruction = bytecodeDecoder.decode(bytecode);

        expect(instruction.opcode).toEqual(opcode);
        expect(instruction.reg1).toEqual(reg1);
        expect(instruction.reg2).toEqual(reg2);
        expect(instruction.reg3).toEqual(reg3);
        expect(instruction.immediate).toEqual(immediate);
        expect(instruction.jumpAddress).


r5, #16
	bne	.L5280
.LVL1423:
.L1332:
	.loc 3 7498 0
	tst	r5, #32
	bne	.L5281
.LVL1424:
.L1334:
	.loc 3 7499 0
	tst	r5, #64
	bne	.L5282
.LVL1425:
.L1336:
	.loc 3 7500 0
	tst	r5, #128
	bne	.L5283
.LVL1426:
.L1343:
	.loc 3 7502 0
	ldr	r7, .L5455+4
	ldr	r3, [r7, #0]
	cmp	r3, #17
	beq	.L5284
	.loc 3 7509 0
	tst	r5, #256
	bne	.L5285
.LVL1427:
.L1356:
	.loc 3 7510 0
	tst	r5, #512
	bne	.L5286
.LVL1428:
.L1358:
	.loc 3 7511 0
	tst	r5, #1024
	bne	.L5287
.LVL1429:
.L1360:
	.loc 3 7512 0
	tst	r5, #2048
	bne	.L5288
.LVL1430:
.L1362:
	.loc 3 7513 0
	tst	r5, #4096
	bne	.L5289
.LVL1431:
.L1354:
	.loc 3 7516 0
	ldr	r3, [r7, #0]
	cmp	r3, #31
	cmpne	r3, #16
	beq	.L1365
	.loc 3 7517 0
	tst	r5, #8192
	beq	.L1366
	.loc 3 7517 0 is_stmt 0 discriminator 1
	mov	r0, r6
	ldr	r1, [r4, #104]
	bl	_ZL16CPUWriteMemorypujj
.LVL1432:
	cmp	r8, #0
	streq	r9, [r4, sl, asl #2]
.LVL1433:
	add	r6, r6, #4
.LVL1434:
	mov	r8, #1
.LVL1435:
.L1366:
	.loc 3 7518 0 is_stmt 1
	tst	r5, #16384
	bne	.L5290
.LVL1436:
.L1368:
	.loc 3 7524 0
	tst	r5, #32768
	beq	.L152
	.loc 3 7525 0
	ldr	r1, [r4, #60]
	mov	r0, r6
	add	r1, r1, #4
	bl	_ZL16CPUWriteMemorypujj
.LVL1437:
	.loc 3 7527 0
	str	r9, [r4, sl, asl #2]
	b	.L152
.L5456:
	.align	2
.L5455:
	.word	.LC0
	.word	armMode
	.word	cpuFlashEnabled
	.word	cpuSramEnabled
	.word	eepromInUse
	.word	cpuSaveGameFunc
	.word	C_FLAG
	.word	cpuBitsSet
.LVL1438:
.L328:
.LBE1699:
.LBB1710:
	.loc 3 7739 0
	ldr	r3, .L5455+28
	mov	r1, r5, lsr #8
	.loc 3 7737 0
	and	r7, r5, #983040
	.loc 3 7739 0
	and	r2, r5, #255
	and	r1


the "parent_hood" edge.
func HasParentHood() predicate.User {
	return predicate.User(func(s *sql.Selector) {
		step := sqlgraph.NewStep(
			sqlgraph.From(Table, FieldID),
			sqlgraph.Edge(sqlgraph.O2M, true, ParentHoodTable, ParentHoodColumn),
		)
		schemaConfig := internal.SchemaConfigFromContext(s.Context())
		step.To.Schema = schemaConfig.Parent
		step.Edge.Schema = schemaConfig.Parent
		sqlgraph.HasNeighbors(s, step)
	})
}

// HasParentHoodWith applies the HasEdge predicate on the "parent_hood" edge with a given conditions (other predicates).
func HasParentHoodWith(preds ...predicate.Parent) predicate.User {
	return predicate.User(func(s *sql.Selector) {
		step := newParentHoodStep()
		schemaConfig := internal.SchemaConfigFromContext(s.Context())
		step.To.Schema = schemaConfig.Parent
		step.Edge.Schema = schemaConfig.Parent
		sqlgraph.HasNeighborsWith(s, step, func(s *sql.Selector) {
			for _, p := range preds {
				p(s)
			}
		})
	})
}

// And groups predicates with the AND operator between them.
func And(predicates ...predicate.User) predicate.User {
	return predicate.User(sql.AndPredicates(predicates...))
}

// Or groups predicates with the OR operator between them.
func Or(predicates ...predicate.User) predicate.User {
	return predicate.User(sql.OrPredicates(predicates...))
}

// Not applies the not operator on the given predicate.
func Not(p predicate.User) predicate.User {
	return predicate.User(sql.NotPredicates(p))
}
// Copyright 2019-present Facebook Inc. All rights reserved.
// This source code is licensed under the Apache 2.0 license found
// in the LICENSE file in the root directory of this source tree.

// Code generated by ent, DO NOT EDIT.

package internal

import "context"

// SchemaConfig represents alternative schema names for all tables
// that can be passed at runtime.
type SchemaConfig struct {
	CleanUser    string // CleanUser table.
	Friendship   string // Friendship table.
	Group        string // Group table.
	GroupUsers   string // Group-users->User table.
	Parent       string // Parent table.
	Pet          string // Pet table.
	User         string // User table.
	UserFriends  string // User-friends->User table.
	UserChildren string // User-children->User table.
}

type schemaCtxKey struct{}

// SchemaConfigFromContext returns a SchemaConfig stored inside a context, or empty if there isn't one.
func SchemaConfigFromContext(ctx context.Context) SchemaConfig {
	config, _ := ctx.Value(schemaCtxKey{}).(SchemaConfig)
	return config
}

// NewSchemaConfigContext returns a new context with the given SchemaConfig attached.
func NewSchemaConfigContext(parent context.Context, config SchemaConfig) context.Context {
	return context.WithValue(parent, schemaCtxKey{}, config)
}
// Copyright 2019-present Facebook Inc. All rights reserved.
// This source code is licensed under the Apache 2.0 license found
// in the LICENSE file in the root directory of this source tree.

// Code generated by ent, DO NOT EDIT.

package ent

import (
	"context"
	"errors"
	"fmt"

	"entgo.io/ent/dialect/sql"
	"entgo.io/ent/dialect/sql/sqlgraph"
	"entgo.io/ent/entc/integration/edgeschema/ent/tag"
	"entgo.io/ent/entc/integration/edgeschema/ent/tweet"
	"entgo.io/ent/entc/integration/edgeschema/ent/tweettag"
	"ent


"breakpoints": {
                "320": {
                  "slidesPerView": 1,
                  "spaceBetween": 0
                },
                "768": {
                  "slidesPerView": 3,
                  "spaceBetween": 20
                },
                "1200": {
                  "slidesPerView": 5,
                  "spaceBetween": 20
                }
              }
            }
          </script>

Contact

Need Help? Contact Us

          <iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3885.521635379394!2d77.58508387484422!3d13.1294626872006!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x3bae170d10bb559b%3A0x2bb3892a626cf9ba!2sNitte%20Meenakshi%20Institute%20of%20Technology!5e0!3m2!1sen!2sin!4v1720377425493!5m2!1sen!2sin" width="100%" height="600" style="border:0;" allowfullscreen="" loading="lazy" referrerpolicy="no-referrer-when-down


: 1.5rem;
  }

  table {
    font-size: 0.9rem;
  }
}

@media print {
  .sidebar,
  header,
  footer {
    display: none;
  }

  .content {
    max-width: 100%;
  }
}

.breadcrumbs {
    margin-top: 10px;
}
.clearfix{*zoom:1}.clearfix:after,.clearfix:before{display:table;content:""}.clearfix:after{clear:both}@font-face{font-family:FontAwesome;font-style:normal;font-weight:400;src:url(fonts/fontawesome-webfont.eot?674f50d287a8c48dc19ba404d20fe713?#iefix) format("embedded-opentype"),url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff"),url(fonts/fontawesome-webfont.ttf?b06871f281fee6b241d60582ae9369b9) format("truetype"),url(fonts/fontawesome-webfont.svg?912ec66d7572ff821749319396470bde#FontAwesome) format("svg")}.fa:before{font-family:FontAwesome;font-style:normal;font-weight:400;line-height:1}.fa:before,a .fa{text-decoration:inherit}.fa:before,a .fa,li .fa{display:inline-block}li .fa-large:before{width:1.875em}ul.fas{list-style-type:none;margin-left:2em;text-indent:-.8em}ul.fas li .fa{width:.8em}ul.fas li .fa-large:before{vertical-align:baseline}.fa-book:before,.icon-book:before{content:"\f02d"}.fa-caret-down:before,.icon-caret-down:before{content:"\f0d7"}.fa-caret-up:before,.icon-caret-up:before{content:"\f0d8"}.fa-caret-left:before,.icon-caret-left:before{content:"\f0d9"}.fa-caret-right:before,.icon-caret-right:before{content:"\f0da"}.rst-versions{position:fixed;bottom:0;left:0;width:300px;color:#fcfcfc;background:#1f1d1d;font-family:Lato,proxima-nova,Helvetica Neue,Arial,sans-serif;z-index:400}.rst-versions a{color:#2980b9;text-decoration:none}.rst-versions .rst-badge-small{display:none}.rst-versions .rst-current-version{padding:12px;background-color:#272525;display:block;text-align:right;font-size:90%;cursor:pointer;color:#27ae60}.rst-versions .rst-current-version:after{clear:both;content:"";display:block}.rst-versions .rst-current-version .fa{color:#fcfcfc}.rst-versions .rst-current-version .fa-book,.rst-versions .rst-current-version .icon-book{float:left}.rst-versions .rst-current-version.rst-out-of-date{background-color:#e74c3c;color:#fff}.rst-versions .rst-current-version.rst-active-old-version{background-color:#f1c40f;color:#000}.rst-versions.shift-up{height:auto;max-height:100%;overflow-y:scroll}.rst-versions.shift-up .rst-other-versions{display:block}.rst-versions .rst-other-versions{font-size:90%;padding:12px;color:grey;display:none}.rst-versions .rst-other-versions hr{display:block;height:1px;border:0;margin:20px 0;padding:0;border-top:1px solid #413d3d}.rst-versions .rst-other-versions dd{display:i


          JumpAroundTarget->succ_size() == 1;

            if (case1 || case2) {
              InvertAndChangeJumpTarget(MI, UncondTarget);
              MBB->removeSuccessor(JumpAroundTarget);
              MBB->addSuccessor(UncondTarget);

              // Remove the unconditional branch in LayoutSucc.
              LayoutSucc->erase(LayoutSucc->begin());
              LayoutSucc->removeSuccessor(UncondTarget);
              LayoutSucc->addSuccessor(JumpAroundTarget);

              // This code performs the conversion for case 2, which moves
              // the block to the fall-thru case (BB3 in the code above).
              if (case2 && !case1) {
                JumpAroundTarget->moveAfter(LayoutSucc);
                // only move a block if it doesn't have a fall-thru. otherwise
                // the CFG will be incorrect.
                if (!UncondTarget->canFallThrough()) {
                  UncondTarget->moveAfter(JumpAroundTarget);
                }
              }

              //
              // Correct live-in information. Is used by post-RA scheduler
              // The live-in to LayoutSucc is now all values live-in to
              // JumpAroundTarget.
              //
              std::vector<unsigned> OrigLiveIn(LayoutSucc->livein_begin(),
                                               LayoutSucc->livein_end());
              std::vector<unsigned> NewLiveIn(JumpAroundTarget->livein_begin(),
                                              JumpAroundTarget->livein_end());
              for (unsigned i = 0; i < OrigLiveIn.size(); ++i) {
                LayoutSucc->removeLiveIn(OrigLiveIn[i]);
              }
              for (unsigned i = 0; i < NewLiveIn.size(); ++i) {
                LayoutSucc->addLiveIn(NewLiveIn[i]);
              }
            }
          }
        }
      }
    }
  }
  return true;
}
}

//===----------------------------------------------------------------------===//
//                         Public Constructor Functions
//===----------------------------------------------------------------------===//

static void initializePassOnce(PassRegistry &Registry) {
  PassInfo *PI = new PassInfo("Hexagon CFG Optimizer", "hexagon-cfg",
                              &HexagonCFGOptimizer::ID, nullptr, false, false);
  Registry.registerPass(*PI, true);
}

void llvm::initializeHexagonCFGOptimizerPass(PassRegistry &Registry) {
  CALL_ONCE_INITIALIZATION(initializePassOnce)
}

FunctionPass *llvm::createHexagonCFGOptimizer(const HexagonTargetMachine &TM) {
  return new HexagonCFGOptimizer(TM);
}
//===-- HexagonISelDAGToDAG.cpp - A dag to dag inst selector for Hexagon --===//
//
//                     The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file defines an instruction selector for the Hexagon target.
//
//===----------------------------------------------------------------------===//

#include "Hexagon.h"
#include "HexagonISelLowering.h"
#include "HexagonTargetMachine.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/CodeGen/SelectionDAGISel.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
using namespace llvm;

#define DEBUG_TYPE "hexagon-isel"

static
cl::opt<unsigned>
MaxNumOfUsesForConstExtenders("ga-max-num-uses-for-constant-extenders


!;

		// Find first child node
		const child = node.childNodes[0] as SVGGElement;
		expect(child.tagName).toBe('g');
		expect(child.getAttribute('transform')).toBe('rotate(180 12 16)');
	});
});

describe('Flip', () => {
	test('boolean', () => {
		const component = render(Icon, { icon: iconData, hFlip: true });
		const node = component.container.querySelector('svg')!;

		// Find first child node
		const child = node.childNodes[0] as SVGGElement;
		expect(child.tagName).toBe('g');
		expect(child.getAttribute('transform')).toBe(
			'translate(24 0) scale(-1 1)'
		);
	});

	test('string', () => {
		const component = render(Icon, { icon: iconData, flip: 'vertical' });
		const node = component.container.querySelector('svg')!;

		// Find first child node
		const child = node.childNodes[0] as SVGGElement;
		expect(child.tagName).toBe('g');
		expect(child.getAttribute('transform')).toBe(
			'translate(0 32) scale(1 -1)'
		);
	});

	test('string and boolean', () => {
		const component = render(Icon, {
			icon: iconData,
			flip: 'horizontal',
			vFlip: true,
		});
		const node = component.container.querySelector('svg')!;

		// Find first child node
		const child = node.childNodes[0] as SVGGElement;
		expect(child.tagName).toBe('g');
		// horizontal + vertical = 180deg rotation
		expect(child.getAttribute('transform')).toBe('rotate(180 12 16)');
	});

	test('string for boolean attribute', () => {
		const component = render(Icon, {
			icon: iconData,
			hFlip: 'true',
		});
		const node = component.container.querySelector('svg')!;

		// Find first child node
		const child = node.childNodes[0] as SVGGElement;
		expect(child.tagName).toBe('g');
		expect(child.getAttribute('transform')).toBe(
			'translate(24 0) scale(-1 1)'
		);
	});

	test('shorthand and boolean', () => {
		// 'flip' is processed after 'hFlip' because of order of elements in object, overwriting value
		const component = render(Icon, {
			icon: iconData,
			hFlip: false,
			flip: 'horizontal',
		});
		const node = component.container.querySelector('svg')!;

		// Find first child node
		const child = node.childNodes[0] as SVGGElement;
		expect(child.tagName).toBe('g');
		expect(child.getAttribute('transform')).toBe(
			'translate(24 0) scale(-1 1)'
		);
	});

	test('shorthand and boolean as string', () => {
		const component = render(Icon, {
			icon: iconData,
			flip: 'vertical',
			hFlip: true,
		});
		const node = component.container.querySelector('svg')!;

		// Find first child node
		const child = node.childNodes[0] as SVGGElement;
		expect(child.tagName).toBe('g');
		expect(child.getAttribute('transform')).toBe('rotate(180 12 16)');
	});

	test('wrong case', () => {
		const component = render(Icon, {
			icon: iconData,
			vflip: true,
		});
		const node = component.container.querySelector('svg')!;

		// Find first child node
		const child = node.childNodes[0] as SVGGElement;
		expect(child.tagName).


ontent: attr(data-icon);
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}

/* Use the following CSS code if you want to have a class per icon */
/*
Instead of a list of all class selectors,
you can use the generic selector below, but it's slower:
[class*="custom"] {
*/
.custom-iconchevron-right, .custom-iconchevron-left, .custom-icondocument-alt-fill, .custom-icondocument-alt-stroke, .custom-iconreload, .custom-iconDropdown, .custom-iconCross, .custom-iconform, .custom-iconCross-2, .custom-iconThumbnails, .custom-iconSkin, .custom-iconSetting, .custom-iconMessage, .custom-iconLock, .custom-iconHome, .custom-iconEdit, .custom-iconDropdown-2, .custom-iconcomment, .custom-iconAdd, .custom-iconfile, .custom-iconfile-upload, .custom-iconfile-download, .custom-iconfile-add, .custom-iconfile-remove, .custom-iconlayout, .custom-iconcamera, .custom-iconstats, .custom-iconlist, .custom-iconlist-2, .custom-iconundo, .custom-iconinstagram, .custom-iconinstagram-2, .custom-iconnewspaper-alt, .custom-iconcalendar, .custom-iconlocation, .custom-iconbars, .custom-iconstats-2, .custom-iconmenu {
	font-family: 'custom';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}
.custom-iconchevron-right:before {
	content: "\f054";
}
.custom-iconchevron-left:before {
	content: "\f053";
}
.custom-icondocument-alt-fill:before {
	content: "\e006";
}
.custom-icondocument-alt-stroke:before {
	content: "\e007";
}
.custom-iconreload:before {
	content: "\e008";
}
.custom-iconDropdown:before {
	content: "\e014";
}
.custom-iconCross:before {
	content: "\e013";
}
.custom-iconform:before {
	content: "\e000";
}
.custom-iconCross-2:before {
	content: "\e001";
}
.custom-iconThumbnails:before {
	content: "\e00a";
}
.custom-iconSkin:before {
	content: "\e00b";
}
.custom-iconSetting:before {
	content: "\e00c";
}
.custom-iconMessage:before {
	content: "\e00d";
}
.custom-iconLock:before {
	content: "\e00e";
}
.custom-iconHome:before {
	content: "\e010";
}
.custom-iconEdit:before {
	content: "\e00f";
}
.custom-iconDropdown-2:before {
	content: "\e011";
}
.custom-iconcomment:before {
	content: "\e012";
}
.custom-iconAdd:before {
	content: "\e002";
}
.custom-iconfile:before {
	content: "\e003";
}
.custom-iconfile-upload:before {
	content: "\e004";
}
.custom-iconfile-download:before {
	content: "\e009";
}
.custom-iconfile-add:before {
	content: "\e015";
}
.custom-iconfile-remove:before {
	content: "\e016";
}
.custom-iconlayout:before {
	content: "\e017";
}
.custom-iconcamera:before {
	content: "\e019";
}
.custom-iconstats:before {
	content: "\e01b";
}
.custom-iconlist:before {
	content: "\e018";
}
.custom-icon


://www.whiteboxgeo.com/manual/wbw-user-manual/book/tool_help.html#histogram_matching_two_images">histogram_matching_two_images, histogram_equalization, gaussian_contrast_stretch

Function Signature

def balance_contrast_enhancement(self, image: Raster, band_mean: float = 100.0) -> Raster: ...

Project Links

    WbW Homepage
    User Manual
    Support WbW

This tool calculates the maximal curvature from a digital elevation model (DEM). Maximal curvature  is the curvature of a principal section with the highest value of curvature at a given point of the  topographic surface (Florinsky, 2017). The values of this curvature are unbounded, and positive  values correspond to ridge positions while negative values are indicative of closed depressions  (Florinsky, 2016). Maximal curvature is measured in units of m-1.

The user must input a DEM (dem). The Z conversion factor (zfactor) is only important when the vertical and horizontal units are not the same in the DEM. When this is the case, the algorithm will multiply each elevation in the DEM by the Z Conversion Factor. Curvature values are often very small and as such the user may opt to log-transform the output raster (log). Transforming the values applies the equation by Shary et al. (2002):

Θ' = sign(Θ) ln(1 + 10n|Θ|)

where Θ is the parameter value and n is dependent on the grid cell size.

For DEMs in projected coordinate systems, the tool uses the 3rd-order bivariate  Taylor polynomial method described by Florinsky (2016). Based on a polynomial fit  of the elevations within the 5x5 neighbourhood surrounding each cell, this method is considered more  robust against outlier elevations (noise) than other methods. For DEMs in geographic coordinate systems (i.e. angular units), the tool uses the 3x3 polynomial fitting method for equal angle grids also  described by Florinsky (2016).

References

Florinsky, I. (2016). Digital terrain analysis in soil science and geology. Academic Press.

Florinsky, I. V. (2017). An illustrated introduction to general geomorphometry. Progress in Physical  Geography, 41(6), 723-752.

Shary P. A., Sharaya L. S. and Mitusov A. V. (2002) Fundamental quantitative methods of land surface analysis.  Geoderma 107: 1–32.

minimal_curvature, tangential_curvature, <a href="https://www.whiteboxgeo.com/manual/wbw-


3a6:	e1 20       	mov	#32,r1
     3a8:	e1 10       	mov	#16,r1

000003aa <ccpl_lp_11>:
     3aa:	20 1b       	or	r1,r0
     3ac:	c0 a9       	mov.b	r0,@(169,gbr)
     3ae:	c6 0d       	mov.l	@(52,gbr),r0
     3b0:	63 46       	mov.l	@r4+,r3
     3b2:	67 46       	mov.l	@r4+,r7
     3b4:	68 46       	mov.l	@r4+,r8
     3b6:	6b 03       	mov	r0,r11
     3b8:	c6 0f       	mov.l	@(60,gbr),r0
     3ba:	2f 46       	mov.l	r4,@-r15
     3bc:	70 04       	add	#4,r0
     3be:	2f 06       	mov.l	r0,@-r15
     3c0:	2f 36       	mov.l	r3,@-r15
     3c2:	c6 1b       	mov.l	@(108,gbr),r0
     3c4:	ee ff       	mov	#-1,r14
     3c6:	61 03       	mov	r0,r1
     3c8:	c4 ad       	mov.b	@(173,gbr),r0
     3ca:	41 29       	shlr16	r1

000003cc <ccpl_lp_12>:
     3cc:	40 10       	dt	r0
     3ce:	8f fd       	bf.s	3cc <ccpl_lp_12>
     3d0:	41 01       	shlr	r1
     3d2:	2f 16       	mov.l	r1,@-r15
     3d4:	7f f4       	add	#-12,r15
     3d6:	c7 2b       	mova	484 <ccpl_lp_28>,r0
     3d8:	40 2a       	lds	r0,pr

000003da <ccpl_lp_20>:
     3da:	00 28       	clrmac
     3dc:	06 7f       	mac.l	@r7+,@r6+
     3de:	85 74       	mov.w	@(8,r7),r0
     3e0:	65 f3       	mov	r15,r5
     3e2:	06 7f       	mac.l	@r7+,@r6+
     3e4:	61 0f       	exts.w	r0,r1
     3e6:	41 08       	shll2	r1
     3e8:	06 7f       	mac.l	@r7+,@r6+
     3ea:	76 04       	add	#4,r6
     3ec:	77 f4       	add	#-12,r7
     3ee:	41 08       	shll2	r1
     3f0:	00 0a       	sts	mach,r0
     3f2:	0d 1a       	sts	macl,r13
     3f4:	00 28       	clrmac
     3f6:	06 7f       	mac.l	@r7+,@r6+
     3f8:	2d 0d       	xtrct	r0,r13
     3fa:	15 d0       	mov.l	r13,@(0,r5)
     3fc:	06 7f       	mac.l	@r7+,@r6+
     3fe:	31 ac       	add	r10,r1
     400:	e4 04       	mov	#4,r4
     402:	06 7f       	mac.l	@r7+,@r6+
     404:	76 04       	add	#4,r6
     406:	77 f4