 a result, the mutex will always be released.
     *
     * The behavior of [ATOMIC] can be described with the following examples:
     *
     * ```
     * // Example of cancelling atomically started coroutines
     * runBlocking {
     *     println("1. Atomically starting a coroutine that goes through a dispatch.")
     *     launch(start = CoroutineStart.ATOMIC) {
     *         check(!isActive) // attempting to suspend later will throw
     *         println("4. The coroutine was cancelled (isActive = $isActive), but starts anyway.")
     *         try {
     *             delay(10.milliseconds) // will throw: the coroutine is cancelled
     *             println("This code will never run.")
     *         } catch (e: CancellationException) {
     *             println("5. Cancellation at later points still works.")
     *             throw e
     *         }
     *     }
     *     println("2. Cancelling this coroutine and all of its children.")
     *     cancel()
     *     launch(Dispatchers.Unconfined, start = CoroutineStart.ATOMIC) {
     *         check(!isActive) // attempting to suspend will throw
     *         println("3. An undispatched coroutine starts.")
     *     }
     *     ensureActive() // we can even crash the current coroutine.
     * }
     * ```
     *
     * This is a **delicate** API. The coroutine starts execution even if its [Job] is cancelled before starting.
     * However, the resources used within a coroutine may rely on the cancellation mechanism,
     * and cannot be used after the [Job] cancellation. For instance, in Android development, updating a UI element
     * is not allowed if the coroutine's scope, which is tied to the element's lifecycle, has been cancelled.
     */
    @DelicateCoroutinesApi
    ATOMIC,

    /**
     * Immediately executes the coroutine until its first suspension point _in the current thread_.
     *
     * Starting a coroutine using [UNDISPATCHED] is similar to using [Dispatchers.Unconfined] with [DEFAULT], except:
     * - Resumptions from later suspensions will properly use the actual dispatcher from the coroutine's context.
     *   Only the code until the first suspension point will be executed immediately.
     * - Even if the coroutine was cancelled already, its code will still start running, similar to [ATOMIC].
     * - The coroutine will not form an event loop. See [Dispatchers.Unconfined] for an explanation of event loops.
     *
     * This set of behaviors makes [UNDISPATCHED] well-suited for cases where the coroutine has a distinct
     * initialization phase whose side effects we want to rely on later.
     *
     * Example:
     * ```
     * var tasks = 0
     * repeat(3) {
     *     launch(start = CoroutineStart.UNDISPATCHED) {
     *         tasks++
     *         try {
     *             println("Waiting for a reply...")
     *             delay(50.milliseconds)
     *             println("Got a reply!")
     *         } finally {
     *             tasks--
     *         }
     *     }
     * }
     * // Because of UNDISPATCHED,
     * // we know that the tasks already ran to their first suspension point,
     * // so this number is non-zero initially.
     * while (tasks > 0) {
     *     println("currently active: $tasks")
     *     delay(10.milliseconds)
     * }
     * ```
     *
     * Here, we implement a publisher-subscriber interaction, where [UNDISPATCHED] ensures that the
     * subscribers do get registered before the publisher first checks if it can stop emitting values due to
     * the lack of subscribers.
     *
     * ```
     * // Constant usage of stack space
     *


_Word_t)RcvTimeout.raw, &dummy);
}

#if defined(__cplusplus)
L4_INLINE L4_MsgTag_t L4_Receive (L4_ThreadId_t from, L4_Time_t RcvTimeout)
{
    return L4_Receive_Timeout (from, RcvTimeout);
}
#endif

L4_INLINE L4_MsgTag_t L4_Receive (L4_ThreadId_t from)
{
    return L4_Receive_Timeout (from, L4_Never);
}

L4_INLINE L4_MsgTag_t L4_Wait_Timeout (L4_Time_t RcvTimeout,
				       L4_ThreadId_t * from)
{
    return L4_Ipc (L4_nilthread, L4_anythread, (L4_Word_t)RcvTimeout.raw, from);
}

#if defined(__cplusplus)
L4_INLINE L4_MsgTag_t L4_Wait (L4_Time_t RcvTimeout, L4_ThreadId_t * from)
{
    return L4_Wait_Timeout (RcvTimeout, from);
}
#endif

L4_INLINE L4_MsgTag_t L4_Wait (L4_ThreadId_t * from)
{
    return L4_Wait_Timeout (L4_Never, from);
}

L4_INLINE L4_MsgTag_t L4_ReplyWait_Timeout (L4_ThreadId_t to,
					    L4_Time_t RcvTimeout,
					    L4_ThreadId_t * from)
{
    return L4_Ipc (to, L4_anythread, L4_Timeouts (L4_ZeroTime, RcvTimeout),
		   from);
}

#if defined(__cplusplus)
L4_INLINE L4_MsgTag_t L4_ReplyWait (L4_ThreadId_t to,
				    L4_Time_t RcvTimeout,
				    L4_ThreadId_t * from)
{
    return L4_ReplyWait_Timeout (to, RcvTimeout, from);
}
#endif

L4_INLINE L4_MsgTag_t L4_ReplyWait (L4_ThreadId_t to, L4_ThreadId_t * from)
{
    return L4_ReplyWait_Timeout (to, L4_Never, from);
}

L4_INLINE void L4_Sleep (L4_Time_t t)
{
    L4_LoadMR(0, L4_Receive_Timeout (L4_MyGlobalId (), t).raw);
}

L4_INLINE L4_MsgTag_t L4_Lcall (L4_ThreadId_t to)
{
    L4_ThreadId_t dummy;
    return L4_Lipc (to, to, L4_Timeouts (L4_Never, L4_Never), &dummy);
}

L4_INLINE L4_MsgTag_t L4_LreplyWait (L4_ThreadId_t to, L4_ThreadId_t * from)
{
    return L4_Lipc (to, L4_anylocalthread,
		    L4_Timeouts (L4_ZeroTime, L4_Never), from);
}

#endif /* !__L4__IPC_H__ */


_trigon.icon_4.BackgroundTransparency = 1
_trigon.icon_4.Parent = _trigon.paid

_trigon.key.BorderSizePixel = 0
_trigon.key.BackgroundColor3 = Color3.fromRGB(34, 36, 40)
_trigon.key.AnchorPoint = Vector2.new(0.5, 0.5)
_trigon.key.Size = UDim2.new(0.287351, 0, 1, 0)
_trigon.key.BackgroundTransparency = 0.15
_trigon.key.Name = "key"
_trigon.key.Position = UDim2.new(0.5, 0, 0.5, 0)
_trigon.key.Parent = _trigon.info

_trigon.UICorner_61.CornerRadius = UDim.new(0.2, 0)
_trigon.UICorner_61.Parent = _trigon.key

_trigon.icon_5.ScaleType = Enum.ScaleType.Fit
_trigon.icon_5.Position = UDim2.new(0.5, 0, 0.5, 0)
_trigon.icon_5.Name = "icon"
_trigon.icon_5.AnchorPoint = Vector2.new(0.5, 0.5)
_trigon.icon_5.Image = "rbxassetid://13868208836"
_trigon.icon_5.Size = UDim2.new(0.512846, 0, 1, 0)
_trigon.icon_5.BackgroundTransparency = 1
_trigon.icon_5.Parent = _trigon.key

_trigon.mobile.BorderSizePixel = 0
_trigon.mobile.BackgroundColor3 = Color3.fromRGB(34, 36, 40)
_trigon.mobile.AnchorPoint = Vector2.new(0.5, 0.5)
_trigon.mobile.Size = UDim2.new(0.28735, 0, 1, 0)
_trigon.mobile.BackgroundTransparency = 0.15
_trigon.mobile.Name = "mobile"
_trigon.mobile.Position = UDim2.new(0.5, 0, 0.5, 0)
_trigon.mobile.Parent = _trigon.info

_trigon.UICorner_62.CornerRadius = UDim.new(0.2, 0)
_trigon.UICorner_62.Parent = _trigon.mobile

_trigon.icon_6.ScaleType = Enum.ScaleType.Fit
_trigon.icon_6.Position = UDim2.new(0.5, 0, 0.5, 0)
_trigon.icon_6.Name = "icon"
_trigon.icon_6.AnchorPoint = Vector2.new(0.5, 0.5)
_trigon.icon_6.Image = "rbxassetid://14943006926"
_trigon.icon_6.Size = UDim2.new(0.512846, 0, 1, 0)
_trigon.icon_6.BackgroundTransparency = 1
_trigon.icon_6.Parent = _trigon.mobile

_trigon.UIListLayout_23.HorizontalAlignment = Enum.HorizontalAlignment.Right
_trigon.UIListLayout_23.SortOrder = Enum.SortOrder.LayoutOrder
_trigon.UIListLayout_23.Padding = UDim.new(0.05, 0)
_trigon.UIListLayout_23.Parent = _trigon.top_right

_trigon.verified.ImageColor3 = Color3.fromRGB(255, 214, 48)
_trigon.verified.ScaleType = Enum.ScaleType.Fit
_trigon.verified.Position = UDim2.new(0.95, 0, 0.95, 0)
_trigon.verified.Name = "verified"
_trigon.verified.AnchorPoint = Vector2.new(0.95, 0.95)
_trigon.verified.Image = "rbxassetid://13858831405"
_trigon.verified.Size = UDim2.new(0.0589637, 0, 0.084879, 0)
_trigon.verified.BackgroundTransparency = 1
_trigon.verified.Parent = _trigon.item_nam


("Error resolving global config from configuration file. {}", err.to_string()),
  }
}

fn get_global_config_inner(config_map: ConfigMap, environment: &impl Environment, options: &GetGlobalConfigOptions) -> Result<GlobalConfiguration> {
  // now get and resolve the global config
  let global_config = get_global_config_from_config_map(config_map, options)?;
  let global_config_result = dprint_core::configuration::resolve_global_config(
    global_config,
    &ResolveGlobalConfigOptions {
      check_unknown_property_diagnostics: options.check_unknown_property_diagnostics,
    },
  );

  // check global diagnostics
  let mut diagnostic_count = 0;
  if !global_config_result.diagnostics.is_empty() {
    for diagnostic in &global_config_result.diagnostics {
      environment.log_stderr(&format!("{}", diagnostic));
      diagnostic_count += 1;
    }
  }

  return if diagnostic_count > 0 {
    bail!("Had {} config diagnostic(s).", diagnostic_count)
  } else {
    Ok(global_config_result.config)
  };

  fn get_global_config_from_config_map(config_map: ConfigMap, options: &GetGlobalConfigOptions) -> Result<ConfigKeyMap> {
    // at this point, there should only be key values inside the hash map
    let mut global_config = ConfigKeyMap::new();

    for (key, value) in config_map.into_iter() {
      if key == "$schema" {
        continue;
      } // ignore $schema property

      if let ConfigMapValue::KeyValue(value) = value {
        global_config.insert(key, value);
      } else if options.check_unknown_property_diagnostics {
        bail!("Unexpected non-string, boolean, or int property '{}'.", key);
      }
    }

    Ok(global_config)
  }
}

#[cfg(test)]
mod tests {
  use super::*;
  use crate::configuration::ConfigMap;
  use crate::environment::TestEnvironment;

  #[test]
  fn should_get_global_config() {
    let mut config_map = ConfigMap::new();
    config_map.insert(String::from("lineWidth"), ConfigMapValue::from_i32(80));
    assert_gets(
      config_map,
      GlobalConfiguration {
        line_width: Some(80),
        use_tabs: None,
        indent_width: None,
        new_line_kind: None,
      },
    );
  }

  #[test]
  fn should_error_on_unexpected_object_properties_when_check_unknown_property_diagnostics_true() {
    let mut config_map = ConfigMap::new();
    config_map.insert(String::from("test"), ConfigMapValue::PluginConfig(Default::default()));
    assert_errors_with_options(
      config_map,
      vec![],
      "Unexpected non-string, boolean, or int property 'test'.",
      &GetGlobalConfigOptions {
        check_unknown_property_diagnostics: true,
      },
    );
  }

  #[test]
  fn should_not_error_on_unexpected_object_properties_when_check_unknown_property_diagnostics_false() {
    let mut config_map = ConfigMap::new();
    config_map.insert(String::from("test"), ConfigMapValue::PluginConfig(Default::default()));
    assert_gets_with_options(
      config_map,
      GlobalConfiguration {
        line_width: None,
        use_tabs: None,
        indent_width: None,
        new_line_kind: None,
      },
      &GetGlobalConfigOptions {
        check_unknown_property_diagnostics: false,
      },
    );
  }

  #[test]
  fn should_log_config_file_diagnostics() {
    let mut config_map = Co


/****************************************************************************
*
*                            Open Watcom Project
*
*    Portions Copyright (c) 1983-2002 Sybase, Inc. All Rights Reserved.
*
*  ========================================================================
*
*    This file contains Original Code and/or Modifications of Original
*    Code as defined in and that are subject to the Sybase Open Watcom
*    Public License version 1.0 (the 'License'). You may not use this file
*    except in compliance with the License. BY USING THIS FILE YOU AGREE TO
*    ALL TERMS AND CONDITIONS OF THE LICENSE. A copy of the License is
*    provided with the Original Code and Modifications, and is also
*    available at www.sybase.com/developer/opensource.
*
*    The Original Code and all software distributed under the License are
*    distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
*    EXPRESS OR IMPLIED, AND SYBASE AND ALL CONTRIBUTORS HEREBY DISCLAIM
*    ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF
*    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR
*    NON-INFRINGEMENT. Please see the License for the specific language
*    governing rights and limitations under the License.
*
*  ========================================================================
*
* Description:  common block size computations
*
****************************************************************************/

extern void         SetComBlkSize( sym_id com, intstar4 com_size );
extern intstar4     GetComBlkSize( sym_id com );


�的查询，返回特定信息，如果发生了网络分区，一些节点将无法返回最新的特定信息，它们将返回自己当前的相对新的信息。

**这里我想强调一点，大部分人对CAP理论有个误解，认为无论在什么情况下，分布式系统都只能在C和A中选择1个。**其实，在不存在网络分区的情况下，也就是分布式系统正常运行时（这也是系统在绝大部分时候所处的状态），就是说在不需要P时，C和A能够同时保证。只有当发生分区故障的时候，也就是说需要P时，才会在C和A之间做出选择。而且如果读操作会读到旧数据，影响到了系统运行或业务运行（也就是说会有负面的影响），推荐选择C，否则选A。

那么我当时是怎么根据场景特点，进行CAP权衡，设计适合的分布式系统呢？为了便于你理解，我先来说说背景。

开源版的InfluxDB，缺乏集群能力和可用性，而且，InfluxDB是由META节点和DATA节点2个逻辑单元组成，这2个节点的功能和数据特点不同，需要我们分别为它们设计分区容错一致性模型。

我具体是这么设计的：

**作为分布式系统，分区容错性是必须要实现的，**不能因为节点间出现了分区故障，而出现整个系统不工作的情况。

考虑到META节点保存的是系统运行的关键元信息，比如数据库名、表名、保留策略信息等，所以必须实现一致性。也就是说，每次读，都要能读取到最新数据，这样才能避免因为查询不到指定的元信息，时序数据记录写入失败或者系统没办法正常运行。比如，创建了数据库telegraf之后，如果系统不能立刻读取到这条新的元信息，那么相关的时序数据记录，就会因为找不到指定数据库信息而写入失败，**所以，我选择CAP理论中的C和P，采用CP架构。**

DATA节点保存的是具体的时序数据记录，比如一条记录CPU负载的时序数据，“cpu_usage,host=server01,location=cn-sz user=23.0,system=57.


ce
    Rendered

    linky filter

<div ng-bind-html="snippet | linky">
</div>

   linky target

<div ng-bind-html="snippetWithSingleURL | linky:'_blank'">
</div>

   linky custom attributes

<div ng-bind-html="snippetWithSingleURL | linky:'_self':{rel: 'nofollow'}">
</div>

    no filter

<div ng-bind="snippet">
</div>

<!doctype html>

  <meta charset="UTF-8">
  <title>Example - example-month-input-directive-jquery</title>

<form name="myForm" ng-controller="DateController as dateCtrl">
  Pick a month in 2013:
  <input id="exampleInput" type="month" name="input" ng-model="example.value"
     placeholder="yyyy-MM" min="2013-01" max="2013-12" required />

       Required!

       Not a valid month!

  <tt>value = {{example.value | date: "yyyy-MM"}}</tt>

  <tt>myForm.input.$valid = {{myForm.input.$valid}}</tt>

  <tt>myForm.input.$error = {{myForm.input.$error}}</tt>

  <tt>myForm.$valid = {{myForm.$valid}}</tt>

  <tt>myForm.$error.required = {{!!myForm.$error.required}}</tt>

</form>

<!doctype html>

  <meta charset="UTF-8">
  <title>Example - example-example34</title>

  <form novalidate class="css-form">
    Name: <input type="text" ng-model="user.name" required />

    E-mail: <input type="email" ng-model="user.email" required />

    Gender: <input type="radio" ng-model="user.gender" value="male" />male
    <input type="radio" ng-model="user.gender" value="female" />female

    <input type="button" ng-click="reset()" value="Reset" />
    <input type="submit" ng-click="update(user)"


gned long size)
{
	fdt_addr_t addr = devfdt_get_addr(dev);

	if (addr == FDT_ADDR_T_NONE)
		return NULL;

	return map_physmem(addr, size, MAP_NOCACHE);
}

fdt_addr_t devfdt_get_addr_pci(const struct udevice *dev)
{
	ulong addr;

	addr = devfdt_get_addr(dev);
	if (CONFIG_IS_ENABLED(PCI) && IS_ENABLED(CONFIG_DM_PCI) &&
	    addr == FDT_ADDR_T_NONE) {
		struct fdt_pci_addr pci_addr;
		u32 bar;
		int ret;

		ret = ofnode_read_pci_addr(dev_ofnode(dev), FDT_PCI_SPACE_MEM32,
					   "reg", &pci_addr);
		if (ret) {
			/* try if there is any i/o-mapped register */
			ret = ofnode_read_pci_addr(dev_ofnode(dev),
						   FDT_PCI_SPACE_IO, "reg",
						   &pci_addr);
			if (ret)
				return FDT_ADDR_T_NONE;
		}
		ret = fdtdec_get_pci_bar32(dev, &pci_addr, &bar);
		if (ret)
			return FDT_ADDR_T_NONE;
		addr = bar;
	}

	return addr;
}


        "n_features": [Interval(Integral, 1, np.iinfo(np.int32).max, closed="both")],
        "input_type": [StrOptions({"dict", "pair", "string"})],
        "dtype": "no_validation",  # delegate to numpy
        "alternate_sign": ["boolean"],
    }

    def __init__(
        self,
        n_features=(2**20),
        *,
        input_type="dict",
        dtype=np.float64,
        alternate_sign=True,
    ):
        self.dtype = dtype
        self.input_type = input_type
        self.n_features = n_features
        self.alternate_sign = alternate_sign

    @_fit_context(prefer_skip_nested_validation=True)
    def fit(self, X=None, y=None):
        """Only validates estimator's parameters.

        This method allows to: (i) validate the estimator's parameters and
        (ii) be consistent with the scikit-learn transformer API.

        Parameters
        ----------
        X : Ignored
            Not used, present here for API consistency by convention.

        y : Ignored
            Not used, present here for API consistency by convention.

        Returns
        -------
        self : object
            FeatureHasher class instance.
        """
        return self

    def transform(self, raw_X):
        """Transform a sequence of instances to a scipy.sparse matrix.

        Parameters
        ----------
        raw_X : iterable over iterable over raw features, length = n_samples
            Samples. Each sample must be iterable an (e.g., a list or tuple)
            containing/generating feature names (and optionally values, see
            the input_type constructor argument) which will be hashed.
            raw_X need not support the len function, so it can be the result
            of a generator; n_samples is determined on the fly.

        Returns
        -------
        X : sparse matrix of shape (n_samples, n_features)
            Feature matrix, for use with estimators or further transformers.
        """
        raw_X = iter(raw_X)
        if self.input_type == "dict":
            raw_X = (_iteritems(d) for d in raw_X)
        elif self.input_type == "string":
            first_raw_X = next(raw_X)
            if isinstance(first_raw_X, str):
                raise ValueError(
                    "Samples can not be a single string. The input must be an iterable"
                    " over iterables of strings."
                )
            raw_X_ = chain([first_raw_X], raw_X)
            raw_X = (((f, 1) for f in x) for x in raw_X_)

        indices, indptr, values = _hashing_transform(
            raw_X, self.n_features, self.dtype, self.alternate_sign, seed=0
        )
        n_samples = indptr.shape[0] - 1

        if n_samples == 0:
            raise ValueError("Cannot vectorize empty sequence.")

        X = sp.csr_matrix(
            (values, indices, indptr),
            dtype=self.dtype,
            shape=(n_samples, self.n_features),
        )
        X.sum_duplicates()  # also sorts the indices

        return X

    def __sklearn_tags__(self):
        tags = super().__sklearn_tags__()
        tags.input_tags.two_d_array = False
        if self.input_type == "string":
            tags.input_tags.string = True
        elif self.input_type == "dict":
            tags.input_tags.dict = True
        return tags


he list of alternative representations for a given value (to be cycled through by the users). */
object AlternativeRepresentations {

    private val shortHands: Map<BigInteger, MutableList<OptionalDescription>>

    init {
        shortHands = mutableMapOf()

        fun add(value: BigInteger, desc: String, condition: (ValueMeta?) -> Boolean) {
            val vd = OptionalDescription(desc, condition)
            shortHands
                .getOrPut(value) { mutableListOf() }
                .add(vd)
        }

        for (bitWidth in evmBitWidths) {
            add(powerOfTwoMinusOne(bitWidth), "MAX_UINT$bitWidth") { it is ValueMeta.UIntK && it.bitwidth == bitWidth }

            add(powerOfTwoMinusOne(bitWidth - 1), "MAX_INT$bitWidth") { it is ValueMeta.SignedIntK && it.bitwidth == bitWidth }
            add(powerOfTwo(bitWidth - 1).negate(), "MIN_INT$bitWidth") { it is ValueMeta.SignedIntK && it.bitwidth == bitWidth }

            add(powerOfTwo(bitWidth), "2^$bitWidth") { it is ValueMeta.Mathint }
            add(powerOfTwo(bitWidth).negate(), "-(2^$bitWidth)") { it is ValueMeta.Mathint }
        }

        // would be dead code now, and I'm not sure how useful the shorthand is
        // add(powerOfTwoMinusOne(EVM_ADDRESS_SIZE), "MAX_EVM_ADDRESS") { it is ValueMeta.Address }
    }

    /** This whole mechanism is overlapping with [BigInteger.prettyString], however it takes into account ValueMeta, so
     * it's not subsumed by it. Just keeping it for now -- we can play with these representations later. */
    fun matchingDescriptions(rawValue: BigInteger, meta: ValueMeta?) =
        shortHands[rawValue]
            ?.filter { it.condition(meta) }
            ?.map { it.description }?.firstOrNull()

    enum class Representations(val shortName: String, val example: String) {
        Pretty("PRETTY", "MAX_UINT8"),
        Decimal("DEC", "255") ,
        Hex("HEX", "0xff"),
        ;
    }

    @JvmInline
    value class RepresentationsMap(val map: Map<Representations, String>): Map<Representations, String> by map {
        constructor(pair: Pair<Representations, String>) : this(mapOf(pair))

        init {
            require(Representations.Pretty in map) {
                "the representations List/Map must always at least contain the Pretty representation (but doesn't: $map)"
            }
        }

        fun asRepList() = Representations.values().mapNotNull { map[it] }

        val pretty get() = map[Representations.Pretty]!!
    }

    private data class OptionalDescription(val description: String, val condition: (ValueMeta?) -> Boolean)

    fun computeRepresentations(tv: TACValue, tacValuePrettyPrint: String?, type: FormatterType.Value<*>): RepresentationsMap {
        checkWarn(tacValuePrettyPrint != null) { "tacValuePrettyPrint needs to be set at this point, but is `null`" }
        val default = RepresentationsMap(Representations.Pretty to tacValuePrettyPrint!!)
        return when (type) {
            is FormatterType.Value.Unknown -> default
            is FormatterType.Value.CVL,
            is FormatterType.Value.EVM -> {
                val bigInt = tv.asBigIntOrNull()
                // nb address gets three values here, so goes to the `else` case here, because we may want to replace
                // two of them with the contract name later
                if (type.isBool
                    || type.isBytes
                    || bigInt == null) {
                    default
               } else {
                    RepresentationsMap(
                        mapOf(
                            Representations.Pretty to tacValuePrettyPrint,
                            Representations.Decimal to bigInt.toString(10),
                            Representations.Hex to bigInt.toHexString(),
                        )
                    )
                }
            }
        }
    }
}

private fun powerOfTwo(exp: Int) = ONE


	move.l		pxCurrentTCB, %a0
	move.l		%sp, (%a0)

	.endm

.macro portRESTORE_CONTEXT

	move.l		pxCurrentTCB, %a0
	move.l		(%a0), %sp
	movem.l		(%sp), %d0-%fp
	lea.l		%sp@(60), %sp
	rte

	.endm

/********************************************************************/
/*
 * This routines changes the IPL to the value passed into the routine.
 * It also returns the old IPL value back.
 * Calling convention from C:
 *   old_ipl = asm_set_ipl(new_ipl);
 * For the Diab Data C compiler, it passes return value thru D0.
 * Note that only the least significant three bits of the passed
 * value are used.
 */

ulPortSetIPL:
    link    A6,#-8
    movem.l D6-D7,(SP)

    move.w  SR,D7       /* current sr    */

    move.l  D7,D0       /* prepare return value  */
    andi.l  #0x0700,D0  /* mask out IPL  */
    lsr.l   #8,D0       /* IPL   */

    move.l  8(A6),D6    /* get argument  */
    andi.l  #0x07,D6    /* least significant three bits  */
    lsl.l   #8,D6       /* move over to make mask    */

    andi.l  #0x0000F8FF,D7  /* zero out current IPL  */
    or.l    D6,D7           /* place new IPL in sr   */
    move.w  D7,SR

    movem.l (SP),D6-D7
    lea     8(SP),SP
    unlk    A6
    rts
/********************************************************************/

mcf5xxx_wr_cacr:
    move.l  4(sp),d0
    .long   0x4e7b0002  /* movec d0,cacr   */
    nop
    rts

/********************************************************************/

/* Yield interrupt. */
__cs3_isr_interrupt_80:
	portSAVE_CONTEXT
	jsr vPortYieldHandler
	portRESTORE_CONTEXT

/********************************************************************/

vPortStartFirstTask:
	portRESTORE_CONTEXT

    .end


</title>
  <link rel="stylesheet" type="text/css" href="../mesa.css">

The Mesa 3D Graphics Library

Mesa 7.4.3 Release Notes / 19 June 2009

Mesa 7.4.3 is a stable development release fixing bugs since the 7.4.2 release.

Mesa 7.4.3 implements the OpenGL 2.1 API, but the version reported by
glGetString(GL_VERSION) depends on the particular driver being used.
Some drivers don't support all the features required in OpenGL 2.1.

See the Compiling/Installing page for prerequisites
for DRI hardware acceleration.

MD5 checksums

34c5a6c47ed51f31c4fa36e269831352  MesaLib-7.4.3.tar.gz
70a983ba3deaa8bd63b18bbab283f698  MesaLib-7.4.3.tar.bz2
34f21b3205b271d575030aa98a2dda51  MesaLib-7.4.3.zip
56752b7adede212e6097afb10d0c0d59  MesaDemos-7.4.3.tar.gz
8ffa51c4833b1e298300a005e2d7ca2a  MesaDemos-7.4.3.tar.bz2
0037d24d41400d6fb9800ae55b8c863f  MesaDemos-7.4.3.zip
20e24f6692c0c90e7e3b220f79c4108d  MesaGLUT-7.4.3.tar.gz
03a4beeef74fc5ef0b1d6d04710e5a8a  MesaGLUT-7.4.3.tar.bz2
273788230adbdb9d57371309adedcf5f  MesaGLUT-7.4.3.zip

Bug fixes

Fixed texture object reference counting bug (bug 21756)

Allow depth/stencil textures to be attached to GL_STENCIL_ATTACHMENT point
    (SF bug 2793846)

Added missing glGet case for GL_VERTEX_ARRAY_BINDING_APPLE

Fixed some OSMesa build issues

Fixed a vertex buffer object crash

Fixed broken glTexImage3D() when image type = GL_BITMAP

Fixed some GLSL preprocessor bugs

Fixed framebuffer mem leak in i945/i965 DRI drivers

Fixed texture coordinate repeat bug in swrast (bug 21872)

Fixed incorrect viewport clamping (lower bound is zero, not one)

GLX fix for glean's makeCurrent test case

Driver Status

Driver			Status
----------------------	----------------------
DRI drivers		varies with the driver
XMesa/GLX (on Xlib)	implements OpenGL 2.1
OSMesa (off-screen)	implements OpenGL 2.1
Windows/Win32		implements OpenGL 2.1
Glide (3dfx Voodoo1/2)	implements OpenGL 1.3
SVGA			unsupported
Wind River UGL		unsupported
DJGPP			unsupported
GGI			unsupported
BeOS			unsupported
Allegro			unsupported
D3D			unsupported

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

  <meta http-equiv="


h())
	voteSet := types.NewVoteSet(evidenceChainID, height, 1, tmproto.SignedMsgType(2), conflictingVals)
	commit, err := factory.MakeCommit(blockID, height, 1, voteSet, conflictingPrivVals, defaultEvidenceTime)
	require.NoError(t, err)
	ev = &types.LightClientAttackEvidence{
		ConflictingBlock: &types.LightBlock{
			SignedHeader: &types.SignedHeader{
				Header: conflictingHeader,
				Commit: commit,
			},
			ValidatorSet: conflictingVals,
		},
		CommonHeight:        commonHeight,
		TotalVotingPower:    commonValSet.TotalVotingPower(),
		ByzantineValidators: byzValSet,
		Timestamp:           commonTime,
	}

	common = &types.LightBlock{
		SignedHeader: &types.SignedHeader{
			Header: commonHeader,
			// we can leave this empty because we shouldn't be checking this
			Commit: &types.Commit{},
		},
		ValidatorSet: commonValSet,
	}
	trustedBlockID := factory.MakeBlockIDWithHash(trustedHeader.Hash())
	trustedVals, privVals := factory.RandValidatorSet(totalVals, defaultVotingPower)
	trustedVoteSet := types.NewVoteSet(evidenceChainID, height, 1, tmproto.SignedMsgType(2), trustedVals)
	trustedCommit, err := factory.MakeCommit(trustedBlockID, height, 1, trustedVoteSet, privVals, defaultEvidenceTime)
	require.NoError(t, err)
	trusted = &types.LightBlock{
		SignedHeader: &types.SignedHeader{
			Header: trustedHeader,
			Commit: trustedCommit,
		},
		ValidatorSet: trustedVals,
	}
	return ev, trusted, common
}

func makeVote(
	t *testing.T, val types.PrivValidator, chainID string, valIndex int32, height int64,
	round int32, step int, blockID types.BlockID, time time.Time) *types.Vote {
	pubKey, err := val.GetPubKey(context.Background())
	require.NoError(t, err)
	v := &types.Vote{
		ValidatorAddress: pubKey.Address(),
		ValidatorIndex:   valIndex,
		Height:           height,
		Round:            round,
		Type:             tmproto.SignedMsgType(step),
		BlockID:          blockID,
		Timestamp:        time,
	}

	vpb := v.ToProto()
	err = val.SignVote(context.Background(), chainID, vpb)
	if err != nil {
		panic(err)
	}
	v.Signature = vpb.Signature
	return v
}

func makeBlockID(hash []byte, partSetSize uint32, partSetHash []byte) types.BlockID {
	var (
		h   = make([]byte, crypto.HashSize)
		psH = make([]byte, crypto.HashSize)
	)
	copy(h, hash)
	copy(psH, partSetHash)
	return types.BlockID{
		Hash: h,
		PartSetHeader: types.PartSetHeader{
			Total: partSetSize,
			Hash:  psH,
		},
	}
}

func orderPrivValsByValSet(
	t *testing.T, vals *types.ValidatorSet, privVals []types.PrivValidator) []types.PrivValidator {
	output := make([]types.PrivValidator, len(privVals))
	for idx, v := range vals.Validators {
		for _, p := range privVals {
			pubKey, err := p.GetPubKey(context.Background())
			require.NoError(t, err)
			if bytes.Equal(v.Address, pubKey.Address()) {
				output[idx] = p
				break
			}
		}
		require.NotEmpty(t, output[idx])
	}
	return output
}
package statesync

import (
	"context"
	"fmt"
	"strings"
	"sync"
	"testing"
	"time"

	"github.


// const VIEW_WINDOW = 0x3090;
// const VIEWPORT_LAYOUT_OLD = 0x7000;
// const VIEWPORT_DATA_OLD = 0x7010;
// const VIEWPORT_LAYOUT = 0x7001;
// const VIEWPORT_DATA = 0x7011;
// const VIEWPORT_DATA_3 = 0x7012;
// const VIEWPORT_SIZE = 0x7020;
// const NETWORK_VIEW = 0x7030;

export { TDSLoader };
import {
    BackSide,
    BoxGeometry,
    BufferAttribute,
    BufferGeometry,
    ClampToEdgeWrapping,
    Color,
    ConeGeometry,
    CylinderGeometry,
    DataTexture,
    DoubleSide,
    FileLoader,
    Float32BufferAttribute,
    FrontSide,
    Group,
    LineBasicMaterial,
    LineSegments,
    Loader,
    LoaderUtils,
    Mesh,
    MeshBasicMaterial,
    MeshPhongMaterial,
    Object3D,
    Points,
    PointsMaterial,
    Quaternion,
    RepeatWrapping,
    Scene,
    ShapeUtils,
    SphereGeometry,
    TextureLoader,
    Vector2,
    Vector3
} from 'v3d';
import chevrotain from '../libs/chevrotain.module.min.js';

class VRMLLoader extends Loader {

    constructor(manager) {

        super(manager);

    }

    load(url, onLoad, onProgress, onError) {

        const scope = this;

        const path = (scope.path === '') ? LoaderUtils.extractUrlBase(url) : scope.path;

        const loader = new FileLoader(scope.manager);
        loader.setPath(scope.path);
        loader.setRequestHeader(scope.requestHeader);
        loader.setWithCredentials(scope.withCredentials);
        loader.load(url, function(text) {

            try {

                onLoad(scope.parse(text, path));

            } catch (e) {

                if (onError) {

                    onError(e);

                } else {

                    console.error(e);

                }

                scope.manager.itemError(url);

            }

        }, onProgress, onError);

    }

    parse(data, path) {

        const nodeMap = {};

        function generateVRMLTree(data) {

            // create lexer, parser and visitor

            const tokenData = createTokens();

            const lexer = new VRMLLexer(tokenData.tokens);
            const parser = new VRMLParser(tokenData.tokenVocabulary);
            const visitor = createVisitor(parser.getBaseCstVisitorConstructor());

            // lexing

            const lexingResult = lexer.lex(data);
            parser.input = lexingResult.tokens;

            // parsing

            const cstOutput = parser.vrml();

            if (parser.errors.length > 0) {

                console.error(parser.errors);

                throw Error('v3d.VRMLLoader: Parsing errors detected.');

            }

            // actions

            const ast = visitor.visit(cstOutput);

            return ast;

        }

        function createTokens() {

            const createToken = chevrotain.createToken;

            // from http://gun.teipir.gr/VRML-amgem/spec/part1/concepts.html#SyntaxBasics

            const RouteIdentifier = createToken({ name: 'RouteIdentifier', pattern: /[^\x30-\x39\0-\x20\x22\x27\x23\x2b\x2c\x2d\x2e\x5b\x5d\x5c\x7b\x7d][^\0-\x20\x22\x27\x23\x2b\x2c\x2d\x2e\x5b\x5d\x5c\x7b\x7d]*[\.][^\x30-\x39\0-\x20\x22\x27\x23\x2b\x2c\x2d\x2e\x5b\x5d\x5c\x7b\x7d][^\0-\x20\x22\x27\x23\x2b\x2c\x2d\x2e\x5b\x5d\x5c\x


b.a,b.b)
return s},
bci(a,b,c){var s=a.aMq()
if(c!=null)A.b38(s,A.agI(c,b).a)
return s},
b37(){var s=0,r=A.N(t.H)
var $async$b37=A.I(function(a,b){if(a===1)return A.K(b,r)
while(true)switch(s){case 0:if(!$.b2g){$.b2g=!0
A.n(self.window,"requestAnimationFrame",[t.g.a(A.c2(new A.aZ8()))])}return A.L(null,r)}})
return A.M($async$b37,r)},
bkk(a,b){var s=t.S,r=A.dS(null,t.H),q=A.a(["Roboto"],t.s)
s=new A.aoU(a,A.b0(s),A.b0(s),b,B.b.uc(b,new A.aoV()),B.b.uc(b,new A.aoW()),B.b.uc(b,new A.aoX()),B.b.uc(b,new A.aoY()),B.b.uc(b,new A.aoZ()),B.b.uc(b,new A.ap_()),r,q,A.b0(s))
q=t.Te
s.b=new A.X2(s,A.b0(q),A.w(t.N,q))
return s},
bqp(a,b,c){var s,r,q,p,o,n,m,l=A.a([],t.t),k=A.a([],c.h("v<0>"))
for(s=a.length,r=0,q=0,p=1,o=0;o<s;++o){n=a.charCodeAt(o)
if(65<=n&&n<91){m=b[q*26+(n-65)]
r+=p
l.push(r)
k.push(m)
q=0
p=1}else if(97<=n&&n<123){p=q*26+(n-97)+2
q=0}else if(48<=n&&n<58)q=q*10+(n-48)
else throw A.d(A.Z("Unreachable"))}if(r!==1114112)throw A.d(A.Z("Bad map size: "+r))
return new A.aeo(l,k,c.h("aeo<0>"))},
agt(a){return A.buE(a)},
buE(a){var s=0,r=A.N(t.jU),q,p,o,n,m,l
var $async$agt=A.I(function(b,c){if(b===1)return A.K(c,r)
while(true)switch(s){case 0:n={}
l=t.Lk
s=3
return A.U(A.yU(a.C6("FontManifest.json")),$async$agt)
case 3:m=l.a(c)
if(!m.gGT()){$.fC().$1("Font manifest does not exist at `"+m.a+"` - ignoring.")
q=new A.HQ(A.a([],t.z8))
s=1
break}p=B.ew.aeg(B.um,t.X)
n.a=null
o=p.iM(new A.acG(new A.aXD(n),[],t.kS))
s=4
return A.U(m.gwM().bu(0,new A.aXE(o),t.u9),$async$agt)
case 4:o.aH(0)
n=n.a
if(n==null)throw A.d(A.mZ(u.u))
n=J.eV(t.j.a(n),new A.aXF(),t.VW)
q=new A.HQ(A.a1(n,!0,n.$ti.h("ax.E")))
s=1
break
case 1:return A.L(q,r)}})
return A.M($async$agt,r)},
bkj(a,b){return new A.HO()},
bhM(a,b,c){var s,r,q,p,o,n,m,l=A.bV(self.document,"flt-canvas"),k=A.a([],t.J)
$.cV()
s=s


Node<A> {
  return thunk(sel, key, fn, [a, b, c]);
}

export function lazy4<S, T, U, V, A>(
  sel: string, a: S, b: T, c: U, d: V,
  fn: (a: S, b: T, c: U, d: V) => VNode<A>, key?: string | undefined
): VNode<A> {
  return thunk(sel, key, fn, [a, b, c, d]);
}
import { DomainEntity } from 'domain-objects';
import { Address } from './Address';
import { DeliveryVan } from './DeliveryVan';

interface Package {
  id?: number;
  uuid?: string;
  trackingNumber: string;
  weight: number;
}
class Package extends DomainEntity<Package> implements Package {
  public static unique = ['trackingNumber'];
}

export enum DeliveryStatus {
  SCHEDULED = 'SCHEDULED',
  IN_PROGRESS = 'IN_PROGRESS',
  DELIVERED = 'DELIVERED',
  FAILED = 'FAILED',
  CANCELED = 'CANCELED',
}
export interface Delivery {
  id?: number;
  uuid?: string;
  van: DeliveryVan;
  destination: Address;
  contactInfo: string[];
  packages: Package[];
  status: DeliveryStatus;
}
export class Delivery extends DomainEntity<Delivery> implements Delivery {
  public static unique = []; // deliveries are not uniquely identified by any of their natural keys
  public static updatable = ['status', 'contactInfo']; // the status and contactInfo of a delivery are updatable
}
import Resizable from 'resizable'

function closest(v, grid) {
  let i = 0
  let num

  while(i < grid - 1) {
    num = v + i
    if (num % grid === 0) {
      break
    }

    num = v - i
    if (num % grid === 0) {
      break
    }

    i++
  }

  return num
}

function nextClassOnGrid(size, breakpoints = {}) {
  const sizes = []

  for (let i in breakpoints) {
    sizes.push({num: +breakpoints[i] - size, class: i})
  }

  sizes.sort((a, b) => {
    return Math.abs(a.num) - Math.abs(b.num)
  })

  return sizes[0].class
}

export function setupElement({element, state, dispatch}) {
  const factor = state.grid.factor
  const resizable = new Resizable(element, {
    within: element.parent,
    // handles: 's, se, e',
    threshold: 10,
    draggable: true
  });

  // Override move @TODO refactor
  const move = resizable.draggable.move

  function moveGrid(x, y) {
    move.call(this, x, y)

    if (this.prevX % factor !== 0) {
      x = closest(this.prevX, factor)
    }

    if (this.prevX % factor !== 0) {
      y = closest(this.prevY, factor)
    }

    if (x !== this.prevX || y !== this.prevY) {
      this.setCoords(x, y)
    }
  }

  resizable.draggable.move = moveGrid.bind(resizable.draggable)

  resizable.on('resize', function() {
    let height = parseInt(this.element.style.height.replace('px', ''))
    let width = parseInt(this.element.style.width.replace('px', ''))

    if (height % factor !== 0) {
      this.element.style.height = `${closest(height, factor)}px`
    }

    this.element.style.width = ''
    this.element.classList.remove.apply(this.element.classList, state.grid.breakpoints.allIds)
    const cl = nextClassOnGrid(width, state.grid.breakpoints.byId)
    this.element.classList.add(cl)
    //console.log(`#${this.element.id}:before { content:"${state.grid.breakpoints.text[cl]}" }`)
  })

  return resizable
}
/**
 * Custo


oo. I’m filled with dread.” She says. “How come?” Archie asks her. “Are you familiar with Truman Capote’s oeuvre? I’m “Breakfast at Tiffany’s,” but this town is strictly “In Cold Blood.”"     Betty and Archie exchange a look of confusion, not understanding the metaphors. The girl offers Archie a hand, and he takes it. “Veronica Lodge,” She says and Archie smiles. “Archie Andrews,” He declares. “And this is Betty Cooper.”     “Wait,” Veronica says, looking at Betty. “Are you-?”     “- Supposed to give you a tour tomorrow?” Betty finishes. “Yes, I’m your peer mentor.”     “Fun.” Veronica states, but Archie has the feeling she doesn’t truly mean it. “Do you want to join us?” Archie asks her, quickly. “Maybe we can un-fill you with dread?”     Archie glances over and sees Jughead’s amused expression at Archie’s stumbling. Betty stares at the redhead and Veronica smiles demurely. “My mum’s waiting for me. But… Maybe I’ll see you tomorrow?” Veronica questions and looks between him and Betty, before settling on Archie. Archie nods and Betty smiles politely as Veronica pays for her food and walks out of the diner. Archie catches Betty’s questioning look and he shrugs. But, his thoughts drift to the beautiful Veronica Lodge. * * *     FP Jones watches his son silently as the teenager unleashes his fury. FP understands why his son is furious at the deal made between the Ghoulies and the Serpents, but he wishes Jughead would understand why the deal was made. Their fighting was destroying the Southside and that was not something anyone could afford

Agent (2024-04-21 12:54:45.636216): Okay.

Test (2024-04-21 12:54:46.403903): 9th and last page:

“Jughead,” FP says. “I don’t want you doing anything to jeopardize this deal.”     “Don’t worry, dad.” Jughead says sardonically. “I won’t. FP grits his teeth; his son is too predictable but there is a part of FP that hopes Jughead won’t do anything. He wishes he had more faith. * * *     “Are we going to let this slide?” Sweet Pea asks as he leans against a table. Jughead sits throwing a ball into the air and catching it, again. “What’s our play, Jones?” Sweet Pea asks again and the teenage Serpents watch Jughead. “I think we should make a deal of our own.” Jughead says lightly. “What did you have in mind?” Fangs Fogarty asks. “A race.” Jughead replies nonchalantly. “Loser leaves the Southside.”     “High stakes,” Toni remarks. Jughead smiles coldly. They are high stakes, but Jughead doesn’t plan on losing. * * *     “A race?” Archie asks Jughead as they walk to class. “And the Ghoulies accepted?”     “Stupid of them.” Jughead replies and Archie raises his brow. “All I need is someone who can fix up a car.” Archie thoughts drift to Betty, whose mechanical skills were amazing. “Make it better.”     “You could ask Betty?” Archie suggests and Jughead looks at him. “Betty?” Jughead asks, confirming what he had heard. “Yeah, she’s great with cars.” The redhead replies and Jughead appears contemplative. “Alright.” Jughead says, smiling at the thought of Betty. “I’ll ask her.”     Jughead catches sight of Sweet Pea and sends a quick wave to his fellow Serpent. Out of the corner of his eye, he sees Betty and Kevin walking with the new girl, Veronica Lodge, the daughter of the man who had Southside High shut down. Disgusted, Jughead looks away and his eyes catch Archie. The red-haired Bulldog was looking at Veronica, but then his gaze wavers and switches to Sweet Pea. Jug


org(?:$|\/))/,"https:$1"),a=a.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r=r.replace(/^https:\/\/registry\.npmjs\.org($|\/)/,"https://registry.yarnpkg.com$1"),r===a+n||r===a+n.replace(/%2f/g,"/")}static getLocatorUrl(e){let r=Ur.clean(e.reference.slice(Zn.length));if(r===null)throw new zt(10,"The npm semver resolver got selected, but the version isn't semver");return`${rF(e)}/-/${e.name}-${r}.tgz`}};Ve();Ve();Ve();var lG=et(ni());var sF=G.makeIdent(null,"node-gyp"),C1t=/\b(node-gyp|prebuild-install)\b/,kv=class{supportsDescriptor(e,r){return e.range.startsWith(Zn)?!!Ur.validRange(e.range.slice(Zn.length)):!1}supportsLocator(e,r){if(!e.reference.startsWith(Zn))return!1;let{selector:o}=G.parseRange(e.reference);return!!lG.default.valid(o)}shouldPersistResolution(e,r){return!0}bindDescriptor(e,r,o){return e}getResolutionDependencies(e,r){return{}}async getCandidates(e,r,o){let a=Ur.validRange(e.range.slice(Zn.length));if(a===null)throw new Error(`Expected a valid range, got ${e.range.slice(Zn.length)}`);let n=await MC(e,{cache:o.fetchOptions?.cache,project:o.project,version:lG.default.valid(a.raw)?a.raw:void 0}),u=qe.mapAndFilter(Object.keys(n.versions),h=>{try{let E=new Ur.SemVer(h);if(a.test(E))return E}catch{}return qe.mapAndFilter.skip}),A=u.filter(h=>!n.versions[h.raw].deprecated),p=A.length>0?A:u;return p.sort((h,E)=>-h.compare(E)),p.map(h=>{let E=G.makeLocator(e,`${Zn}${h.raw}`),w=n.versions[h.raw].dist.tarball;return np.isConventionalTarballUrl(E,w,{configuration:o.project.configuration})?E:G.bindLocator(E,{__archiveUrl:w})})}async getSatisfying(e,r,o,a){let n=Ur.validRange(e.range.slice(Zn.length));if(n===null)throw new Error(`Expected a valid range, got ${e.range.slice(Zn.length)}`);return{locators:qe.mapAndFilter(o,p=>{if(p.identHash!==e.identHash)return qe.mapAndFilter.skip;let h=G.tryParseRange(p.reference,{requireProtocol:Zn});if(!h)return qe.mapAndFilter.skip;let E=new Ur.SemVer(h.selector);return n.test(E)?{locator:p,version:E}:qe.mapAndFilter.skip}).sort((p,h)=>-p.version.compare(h.version)).map(({locator:p})=>p),sorted:!0}}async resolve(e,r){let{selector:o}=G.parseRange(e.reference),a=Ur.clean(o);if(a===null)throw new zt(10,"The npm semver resolver got selected, but the version isn't semver");let n=await MC(e,{cache:r.fetchOptions?.cache,project:r.project,version:a});if(!Object.hasOwn(n,"versions"))throw new zt(15,'Registry returned invalid data for - missing "versions" field');if(!Object.hasOwn(n.versions,a))throw new zt(16,`Registry failed to return reference "${a}"`);let u=new _t;if(u.load(n.ve


 yellow;

}
.sm-dox.sm-vertical a span.sub-arrow {
	right: 8px;
	top: 50%;
	margin-top: -5px;
	border-width: 5px;
	border-style: dashed dashed dashed solid;
	border-color: transparent transparent transparent #555;
}
.sm-dox.sm-vertical > li > ul:before, .sm-dox.sm-vertical > li > ul:after {
	display: none;
}
.sm-dox.sm-vertical ul a {
	padding: 10px 20px;
}
.sm-dox.sm-vertical ul a:hover, .sm-dox.sm-vertical ul a:focus, .sm-dox.sm-vertical ul a:active, .sm-dox.sm-vertical ul a.highlighted {
	background: #eee;
}
.sm-dox.sm-vertical ul a.disabled {
	background: #fff;
}
}
vti_encoding:SR|utf8-nl
vti_timelastmodified:TR|02 Feb 2019 03:47:41 -0000
vti_extenderversion:SR|12.0.0.0
vti_author:SR|DESKTOP-BP508R4\\John
vti_modifiedby:SR|DESKTOP-BP508R4\\John
vti_timecreated:TR|31 Jan 2019 02:54:14 -0000
vti_backlinkinfo:VX|Candidate\\ 1/class_keccak256.html Candidate\\ 1/fact_sheet_template.html
vti_nexttolasttimemodified:TW|02 Feb 2019 03:47:18 -0000
vti_cacheddtm:TX|02 Feb 2019 03:47:41 -0000
vti_filesize:IR|168661
vti_cachedlinkinfo:VX|S|../fonts/socialglyphs-webfont.eot S|../fonts/socialglyphs-webfont.eot S|../fonts/socialglyphs-webfont.woff S|../fonts/socialglyphs-webfont.ttf S|../fonts/socialglyphs-webfont.svg S|../img/colors/blue/logo.png S|../img/slide_back.jpg S|../img/bx_loader.gif S|../img/controls.png S|../img/controls.png S|../img/back.jpg S|../img/back.png S|../img/colors/blue/logo50.png S|../img/back_profile.jpg S|../img/back_services.jpg S|../img/back.png S|../img/coming_back.jpg S|../img/logo50_white.png S|../img/dragon13sm.png S|../img/logo_white.png S|../img/plan.jpg S|data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAE0lEQVQIW2NkYGD4D8SMjEACDAAOKQEDKKNmJgAAAABJRU5ErkJggg== S|../img/back_polygons.jpg S|../img/back_lead5.jpg S|../img/bg_ny.jpg S|../img/back_wrap_commerce.jpg
vti_cachedsvcrellinks:VX|NSUS|Candidate\\ 1/assets/fonts/socialglyphs-webfont.eot NSUS|Candidate\\ 1/assets/fonts/socialglyphs-webfont.eot NSUS|Candidate\\ 1/assets/fonts/socialglyphs-webfont.woff NSUS|Candidate\\ 1/assets/fonts/socialglyphs-webfont.ttf NSUS|Candidate\\ 1/assets/fonts/socialglyphs-webfont.svg NSUS|Candidate\\ 1/assets/img/colors/blue/logo.png NSUS|Candidate\\ 1/assets/img/slide_back.jpg FSUS|Candidate\\ 1/assets/img/bx_loader.gif FSUS|Candidate\\ 1/assets/img/controls.png FSUS|Candidate\\ 1/assets/img/controls.png NSUS|Candidate\\ 1/assets/img/back.jpg FSUS|Candidate\\ 1/assets/img/back.png


XML as opposed to being defined in code
                windowDockingLayout.size = layout.size;
            }

            windowDockingLayout.ApplySize(this);
            windowDockingLayout.ApplyPosition(this);
        }

        void SerializeLayout()
        {
            windowDockingLayout.size = layout.size;
            var serializedLayout = JsonUtility.ToJson(windowDockingLayout);


/*
 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
 * From ASN.1 module "NR-RRC-Definitions"
 * 	found in "asn/nr-rrc-15.6.0.asn1"
 * 	`asn1c -fcompound-names -pdu=all -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example -D rrc`
 */

#include "ASN_RRC_PagingCycle.h"

/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
asn_per_constraints_t asn_PER_type_ASN_RRC_PagingCycle_constr_1 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 2,  2,  0,  3 }	/* (0..3) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_PagingCycle_value2enum_1[] = {
	{ 0,	4,	"rf32" },
	{ 1,	4,	"rf64" },
	{ 2,	5,	"rf128" },
	{ 3,	5,	"rf256" }
};
static const unsigned int asn_MAP_ASN_RRC_PagingCycle_enum2value_1[] = {
	2,	/* rf128(2) */
	3,	/* rf256(3) */
	0,	/* rf32(0) */
	1	/* rf64(1) */
};
const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_PagingCycle_specs_1 = {
	asn_MAP_ASN_RRC_PagingCycle_value2enum_1,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_PagingCycle_enum2value_1,	/* N => "tag"; sorted by N */
	4,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_PagingCycle_tags_1[] = {
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_PagingCycle = {
	"PagingCycle",
	"PagingCycle",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_PagingCycle_tags_1,
	sizeof(asn_DEF_ASN_RRC_PagingCycle_tags_1)
		/sizeof(asn_DEF_ASN_RRC_PagingCycle_tags_1[0]), /* 1 */
	asn_DEF_ASN_RRC_PagingCycle_tags_1,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_PagingCycle_tags_1)
		/sizeof(asn_DEF_ASN_RRC_PagingCycle_tags_1[0]), /* 1 */
	{ 0, &asn_PER_type_ASN_RRC_PagingCycle_constr_1, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_PagingCycle_specs_1	/* Additional specs */
};


d[int, string]()

		// Set an item with a 1-second expiration
		c.Set(1, "test", 1*time.Second)

		// Retrieve the item immediately
		if value, found := c.Get(1); !found || value != "test" {
			t.Errorf("Expected 'test', got %v", value)
		}

		// Wait for 2 seconds and check if it expires
		time.Sleep(2 * time.Second)
		if _, found := c.Get(1); found {
			t.Error("Expected item to be expired, but it was found")
		}
	})
}

func TestReadHeavyCacheExpired_SetAndGet(t *testing.T) {
	synctest.Test(t, func(t *testing.T) {
		c := cache.NewReadHeavyCacheExpired[int, string]()

		// Set an item with a 1-second expiration
		c.Set(1, "test", 1*time.Second)

		// Retrieve the item immediately
		if value, found := c.Get(1); !found || value != "test" {
			t.Errorf("Expected 'test', got %v", value)
		}

		// Wait for 2 seconds and check if it expires
		time.Sleep(2 * time.Second)
		if _, found := c.Get(1); found {
			t.Error("Expected item to be expired, but it was found")
		}
	})
}

func TestWriteHeavyCacheExpired_GetWithExpireStatus(t *testing.T) {
	synctest.Test(t, func(t *testing.T) {
		c := cache.NewWriteHeavyCacheExpired[int, string]()

		c.Set(1, "value", 100*time.Millisecond)

		if v, found, expired := c.GetWithExpireStatus(1); !found || expired || v != "value" {
			t.Errorf("expected found=true expired=false value, got found=%v expired=%v value=%v", found, expired, v)
		}

		time.Sleep(150 * time.Millisecond)

		if v, found, expired := c.GetWithExpireStatus(1); !found || !expired || v != "value" {
			t.Errorf("expected found=true expired=true value, got found=%v expired=%v value=%v", found, expired, v)
		}

		if _, found := c.Get(1); found {
			t.Errorf("expected Get to report not found for expired item")
		}
	})
}

func TestReadHeavyCacheExpired_GetWithExpireStatus(t *testing.T) {
	synctest.Test(t, func(t *testing.T) {
		c := cache.NewReadHeavyCacheExpired[int, string]()

		c.Set(1, "value", 100*time.Millisecond)

		if v, found, expired := c.GetWithExpireStatus(1); !found || expired || v != "value" {
			t.Errorf("expected found=true expired=false value, got found=%v expired=%v value=%v", found, expired, v)
		}

		time.Sleep(150 * time.Millisecond)

		if v, found, expired := c.GetWithExpireStatus(1); !found || !expired || v != "value" {
			t.Errorf("expected found=true expired=true value, got found=%v expired=%v value=%v", found, expired, v)
		}

		if _, found := c.Get(1); found {
			t.Errorf("expected Get to report not found for expired item")
		}
	})
}

func TestWriteHeavyCache_GetItems(t *testing.T) {
	cache := cache.NewWriteHeavyCache[string, int]()
	cache.Set("key1", 100)
	cache.Set("key2", 200)

	items := cache.GetItems()

	if len(items) != 2 {
		t.Errorf("Expected 2 items, got %d", len(items))
	}

	if items["key1"] != 100 || items["key2"] != 200 {


ページがロードされたとき内容が2倍の大きさで表示されるということです。

さて、viewport の幅、高さ、初期ズーム倍率のどれかが指定された時点で、ブラウザはセットされていない値を自動的に推測します。たとえば、幅に device-width を指定したとき、初期ズーム倍率は自動的に 1 と判断されます。反対に、初期ズーム率を 1 と指定したとき、幅は端末の幅になります。
ですから、推測されない値を利用したい場合以外で、プロパティを複数指定しても特に意味はありません。

拡大縮小の制約

ユーザーがどこまでズームできるかを制御したい場合は、maximum-scale と minimum-scale を記述します。

<meta name="viewport" content="width=device-width, maximum-scale=2, minimum-scale=0.5">

@viewport 規則ではこうです。

@-o-viewport {
  width: device-width;
  max-zoom: 2;
  min-zoom: 0.5;
}

ズームを無効化することもできます。しかし、ズームは多くの人にとって重要なアクセシビリティ機能であることを忘れないでください。ですから、ズームを無効化するのは何らかのゲームやアプリケーションなど、ほんとうに必要な場合だけにとどめるべきです。<canvas> ゲームのデモ で使われているコードを紹介します。

<meta name="viewport" content="width=372, user-scalable=no">

@viewport 規則ではこうです。

@-o-viewport {
  width: 372px;
  user-zoom: fixed;
}

メディアクエリーと組み合わせる

メディアクエリーを知らないという方は、特定の環境下で適用される CSS を書けるという条件つき CSS の仕組みと考えてください。メディアクエリーを使うことで、多様な画面サイズにサイトを最適化させることや、端末の利用環境に応じてレイアウトを調整もしくは大きく変更させることなどもできるのです。

次の例では、viewport の幅が 360px 以下の場合に、すべての画像をコンテナ幅の 96% の大きさに縮小し、また背景を黒に変更しています。こうすることで小さい画面でも画像が真ん中寄せで表示され、黒い背景によって画像がハイライトされ、なにか特別なことが起こっていると伝えられるわけです。

@media screen and (max-width: 360px) {
  img {
    width:


/* Multiple versions of __floor.
   Copyright (C) 2017-2024 Free Software Foundation, Inc.
   This file is part of the GNU C Library.

   The GNU C Library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public
   License as published by the Free Software Foundation; either
   version 2.1 of the License, or (at your option) any later version.

   The GNU C Library 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
   Lesser General Public License for more details.

   You should have received a copy of the GNU Lesser General Public
   License along with the GNU C Library; if not, see
   <https://www.gnu.org/licenses/>.  */

#include <sysdeps/x86/isa-level.h>
#if MINIMUM_X86_ISA_LEVEL < SSE4_1_X86_ISA_LEVEL
# define NO_MATH_REDIRECT
# include <libm-alias-double.h>

# define floor __redirect_floor
# define __floor __redirect___floor
# include <math.h>
# undef floor
# undef __floor

# define SYMBOL_NAME floor
# include "ifunc-sse4_1.h"

libc_ifunc_redirected (__redirect_floor, __floor, IFUNC_SELECTOR ());
libm_alias_double (__floor, floor)
#endif


 允许攻击者向 mainfunction.cgi 注入恶意命令，并通过调用 doSSLTunnel 函数执行任意命令。 | [1]https://github.com/fu37kola/cve/blob/main/DrayTek/Vigor3900/1.5.1.3/DrayTek_Vigor_3900_1.5.1.3.pdf |
| 29 | CVE-2024-10456 | 9.8  | CRITICAL | 德尔塔电子基础设施设备管理器版本在1.0.12之前受到影响，存在反序列化漏洞，该漏洞针对设备网关，在认证之前可能允许任意.NET对象的反序列化。 | [1]https://www.cisa.gov/news-events/ics-advisories/icsa-24-303-03 |
| 30 | CVE-2024-9419 | 7.8  | HIGH | 安装了HP Smart Universal打印驱动程序的客户端/服务器PC可能存在远程代码执行和/或权限提升的风险。使用HP Smart Universal打印驱动程序的客户端发送由恶意XPS文件组成的打印作业，可能会导致在PC上进行远程代码执行和/或权限提升。 | [1]https://support.hp.com/us-en/document/ish_11505949-11505972-16 |
| 31 | CVE-2024-10005 | 8.1  | HIGH | 在Consul和Consul企业版（“Consul”）中发现了一个漏洞，该漏洞使得在第7层（L7）流量意图中使用URL路径可以绕过基于HTTP请求路径的访问规则。 | [1]https://discuss.hashicorp.com/t/hcsec-2024-22-consul-l7-intentions-vulnerable-to-url-path-bypass |
| 32 | CVE-2024-10006 | 8.3  | HIGH | 在Consul和Consul企业版（“Consul”）中发现了一个漏洞，该漏洞使得在第七层（L7）流量意图中使用Header可以绕过基于HTTP头部的访问规则。 | [1]https://discuss.hashicorp.com/t/hcsec-2024-23-consul-l7-intentions-vulnerable-to-headers-bypass |总结果数：153，高危数：61，时间戳：2025-03-25 08:10:05
开始日期：现在；结束日期：2025-03-24

| 编号 | CVE ID | 基准分数 | 严重程度 | 描述 | 参考资料 |
|-----|--------|------------|----------|-------------|------------|
| 1 | CVE-2025-2674 | 7.3  | HIGH | 在PHPGurukul银行保险柜管理系统1.0中发现一个被归类为严重的漏洞。该漏洞影响了文件 `/aboutus.php` 中的一个未知功能。通过操纵参数 `pagetitle` 可以导致SQL注入攻击。此漏洞可以远程利用。该漏洞利用方式已被公开，可能会被使用。 | [1]https://github.com/ARPANET-cyber/CVE/issues/3<br>[2]h


' then
        AArch64.SystemAccessTrap(EL2, 0x18);
    elsif EL2Enabled() && HCR_EL2.<E2H,TGE> == '11' && CNTHCTL_EL2.EL0PTEN == '0' then
        AArch64.SystemAccessTrap(EL2, 0x18);
    elsif EL2Enabled() && HCR_EL2.<E2H,TGE> == '11' && SCR_EL3.NS == '0' && IsFeatureImplemented(FEAT_SEL2) then
        X[t, 64] = CNTHPS_CVAL_EL2;
    elsif EL2Enabled() && HCR_EL2.<E2H,TGE> == '11' && SCR_EL3.NS == '1' then
        X[t, 64] = CNTHP_CVAL_EL2;
    else
        X[t, 64] = CNTP_CVAL_EL0;
elsif PSTATE.EL == EL1 then
    if EL2Enabled() && HCR_EL2.E2H == '0' && CNTHCTL_EL2.EL1PCEN == '0' then
        AArch64.SystemAccessTrap(EL2, 0x18);
    elsif EL2Enabled() && HCR_EL2.E2H == '1' && CNTHCTL_EL2.EL1PTEN == '0' then
        AArch64.SystemAccessTrap(EL2, 0x18);
    elsif EL2Enabled() && HCR_EL2.<NV2,NV1,NV> == '111' then
        X[t, 64] = NVMem[0x178];
    else
        X[t, 64] = CNTP_CVAL_EL0;
elsif PSTATE.EL == EL2 then
    if HCR_EL2.E2H == '1' && SCR_EL3.NS == '0' && IsFeatureImplemented(FEAT_SEL2) then
        X[t, 64] = CNTHPS_CVAL_EL2;
    elsif HCR_EL2.E2H == '1' && SCR_EL3.NS == '1' then
        X[t, 64] = CNTHP_CVAL_EL2;
    else
        X[t, 64] = CNTP_CVAL_EL0;
elsif PSTATE.EL == EL3 then
    X[t, 64] = CNTP_CVAL_EL0;

When FEAT_VHE is implemented

MSR CNTP_CVAL_EL0, <Xt>

op0	op1	CRn	CRm	op2

0b11	0b011	0b1110	0b0010	0b010

if PSTATE.EL == EL0 then
    if !(EL2Enabled() && HCR_EL2.<E2H,TGE> == '11') && CNTKCTL_EL1.EL0PTEN == '0' then
        if EL2Enabled() && HCR_EL2.TGE == '1' then
            AArch64.SystemAccessTrap(EL2, 0x18);
        else
            AArch64.SystemAccessTrap(EL1, 0x18);
    elsif EL2Enabled() && HCR_EL2.E2H == '0' && CNTHCTL_EL2.EL1PCEN == '0' then
        AArch64.SystemAccessTrap(EL2, 0x18);
    elsif EL2Enab


>): MsgMintItemResponse {
    const message = { ...baseMsgMintItemResponse } as MsgMintItemResponse
    return message
  }
}

/** Msg defines the Msg service. */
export interface Msg {
  /** this line is used by starport scaffolding # proto/tx/rpc */
  MintItem(request: MsgMintItem): Promise<MsgMintItemResponse>
}

export class MsgClientImpl implements Msg {
  private readonly rpc: Rpc
  constructor(rpc: Rpc) {
    this.rpc = rpc
  }
  MintItem(request: MsgMintItem): Promise<MsgMintItemResponse> {
    const data = MsgMintItem.encode(request).finish()
    const promise = this.rpc.request('harish551.cosmostore.store.Msg', 'MintItem', data)
    return promise.then((data) => MsgMintItemResponse.decode(new Reader(data)))
  }
}

interface Rpc {
  request(service: string, method: string, data: Uint8Array): Promise<Uint8Array>
}

type Builtin = Date | Function | Uint8Array | string | number | undefined
export type DeepPartial<T> = T extends Builtin
  ? T
  : T extends Array<infer U>
  ? Array<DeepPartial>
  : T extends ReadonlyArray<infer U>
  ? ReadonlyArray<DeepPartial>
  : T extends {}
  ? { [K in keyof T]?: DeepPartial<T[K]> }
  : Partial<T>
import {Component, Input} from '@angular/core';
import {async, TestBed} from '@angular/core/testing';
import {By} from '@angular/platform-browser';

import {Hero} from 'app/hero';
import {createHeroes} from 'testing-support/testing-utils';

@Component({
  selector: 'my-hero-info',
  template: `
    {{hero.name}}
    <button *ngIf="hero.active" (click)="retire()">Retire</button>
  `
})
export class HeroInfoComponent {
  @Input() hero: Hero;

  retire() {
    this.hero.active = false;
  }
}

@Component({
  selector: 'my-hero-list',
  template: `

        <my-hero-info [hero]="hero"></my-hero-info>

  `
})
export class HeroListComponent {
  @Input() heroes: Hero[] = [];
  remove(hero: Hero) {
    this.heroes = this.heroes.filter(h => h !== hero);
  }
}

describe('Debug Element', () => {
  beforeEach(async(() => {
    TestBed.configureTestingModule({
      declarations: [
        HeroInfoComponent,
        HeroListComponent
      ]
    }).compileComponents();
  }));

  it('has a similar CSS element match API as nativeElement', () => {
    const fixture = TestBed.createComponent(HeroListComponent);
    fixture.componentInstance.heroes = createHeroes();
    fixture.detectChanges();
    expect(fixture.debugElement.queryAll(By.css('li')).length).toBe(3);
    expect(fixture.debugElement.queryAll(By.css('.active')).length).toBe(2);
    expect(fixture.debugElement.queryAll(By.css('.retired')).length).toBe(1);
  });

  it('allows child component instances to be accessed', () => {
    const fixture = TestBed.createComponent(HeroListComponent),
      heroes = createHeroes();
    fixture.componentInstance.heroes = her


(key, value) {\n            return key === '' ? value : decodeURIComponent(value)\n        }\n    ) : {};\n\n    if (window.opener) {\n        window.opener.onOAuthFinished(qp);\n        window.close();\n    }</script> </html>"),e.put("hub/index.html",'<!doctype html> <html ng-app="hub"> <head> <meta charset="utf-8"> <title>Material Swagger UI Hub</title> <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"/> <link rel="stylesheet" href="//fonts.googleapis.com/icon?family=Material+Icons"> <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:300,400,500,700,400italic"> <link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/angular_material/1.0.5/angular-material.min.css"> <style>.ng-cloak {\r\n            display: none;\r\n        }</style> <style>md-toolbar small {\r\n            max-width: 120px;\r\n            text-overflow: ellipsis;\r\n            display: block;\r\n            overflow: hidden;\r\n            white-space: nowrap;\r\n        }\r\n\r\n        a:focus {\r\n            outline: none;\r\n        }\r\n\r\n        .md-errors-spacer {\r\n            display: none;\r\n        }\r\n\r\n        a.md-button {\r\n            font-weight: normal;\r\n        }\r\n\r\n        .tools a.md-button {\r\n            font-weight: 500;\r\n        }\r\n\r\n        .tools .md-button {\r\n            font-weight: 500;\r\n            min-width: 0;\r\n            margin: 3px;\r\n            height: 28px;\r\n            min-height: 28px;\r\n            line-height: 28px;\r\n        }\r\n\r\n        .tools {\r\n            padding: 3px;\r\n            background-color: #fff;\r\n        }\r\n\r\n        .info .md-body-1,\r\n        .info .md-body-2 {\r\n            line-height: 14px;\r\n        }\r\n\r\n        .info {\r\n            padding: 12px;\r\n            margin: 6px;\r\n        }\r\n\r\n        .info md-divider {\r\n            padding: 0;\r\n            margin: 6px 6px;\r\n        }\r\n\r\n        .show-hide {\r\n            transition: all ease-in-out 0.2s;\r\n            max-height: 290px;\r\n            overflow: hidden;\r\n            position: relative;\r\n            top: 0;\r\n            z-index: 1;\r\n        }\r\n\r\n        .show-hide.ng-hide {\r\n            max-height: 0;\r\n            top: -100px;\r\n        }\r\n\r\n        .info a,\r\n        p a,\r\n        ul a {\r\n            color: rgb(61, 90, 254);\r\n            text-decoration: none;\r\n        }\r\n\r\n        .info a:hover,\r\n        p a:hover,\r\n        ul a:hover {\r\n            text-decoration: underline;\r\n        }\r\n\r\n        .info md-icon {\r\n            margin: -5px 0 -5px 5px;\r\n        }\r\n\r\n        .info .md-body-2,\r\n        .info .right {\r\n            text-align: right;\r\n            word-break: break-all;\r\n            padding-left: 24px;\r\n        }\r\n\r\n        .


NameLink">PlayPlugin (implements java.lang.Comparable<T>)

play.db.jpa.JPAPlugin

play.PlayPlugin.Filter<T>

play.db.jpa.JPAPlugin.TransactionalFilter

java.lang.Throwable (implements java.io.Serializable)

java.lang.Exception

java.lang.RuntimeException

play.db.jpa.JPABase.JPAQueryException

Annotation Type Hierarchy

play.db.jpa.Transactional (implements java.lang.annotation.Annotation)

play.db.jpa.NoTransaction (implements java.lang.annotation.Annotation)

Skip navigation links

Overview

Package

Class

Use

Tree

Deprecated

Index

Help

Prev

Next

Frames

No Frames

All Classes


sota')).toEqual('Rose Minnesota');
//   });
//
//   it('Should allow us to clear a search for destination and then still successfully search again', () => {
//     page.navigateTo();
//     page.click("filter");
//     page.getDestination('mo');
//     page.getRides().then((rides) => {
//       expect(rides.length).toBe(2);
//     });
//     page.backspace();
//     page.backspace();
//     page.getRides().then((rides) => {
//       expect(rides.length).toBe(50);
//     });
//     page.getDestination('ef');
//     page.getRides().then((rides) => {
//       expect(rides.length).toBe(1);
//     });
//   });
//
//   it('Should allow us to search for destination, update that search string, and then still successfully search', () => {
//     page.navigateTo();
//     page.click("filter");
//     page.getDestination('v');
//     page.getRides().then((rides) => {
//       expect(rides.length).toBe(9);
//     });
//     page.field('rideDestination').sendKeys('e');
//     page.getRides().then((rides) => {
//       expect(rides.length).toBe(2);
//     });
//   });
//
// // For examples testing modal dialog related things, see:
// // https://code.tutsplus.com/tutorials/getting-started-with-end-to-end-testing-in-angular-using-protractor--cms-29318
// // https://github.com/blizzerand/angular-protractor-demo/tree/final
//
//   it('Should have an add ride button', () => {
//     page.navigateTo();
//     expect(page.elementExistsWithId('addNewRide')).toBeTruthy();
//   });
//
//   it('Should open a dialog box when add ride button is clicked', () => {
//     page.navigateTo();
//     expect(page.elementExistsWithCss('add-ride')).toBeFalsy('There should not be a modal window yet');
//     page.click('addNewRide');
//     expect(page.elementExistsWithCss('add-ride')).toBeTruthy('There should be a modal window now');
//   });
//
//   describe('Add Ride', () => {
//
//     beforeEach(() => {
//       page.navigateTo();
//       page.click('addNewRide');
//     });
//
//     it('Should actually add the ride with the information we put in the fields', () => {
//       page.navigateTo();
//       page.click('addNewRide');
//       page.field('vehicleField').sendKeys('Chevy');
//       page.field('mileageField').sendKeys('26');
//       page.field('destinationField').sendKeys('Saint Cloud Minnesota');
//       page.field('startField').sendKeys('Morris');
//       page.field('tagsField').sendKeys('Fun');
//       page.field('conditionField').sendKeys('Good');
//       expect(page.button('confirmAddRideButton').isEnabled()).toBe(true);
//       page.click('confirmAddRideButton');
//
//       /*
//        * This tells the browser to wait until the (new) element with ID
//        * 'tracy@awesome.com' becomes present, or until 10,000ms whichever
//        * comes first. This allows the test to wait for the server to respond,
//        * and then for the client to display this new user.
//        * http://www.protractortest.org/#/api?view=ProtractorExpectedConditions
//        */
//       const ride_element = element(by.id('Saint Cloud Minnesota'));
//       browser.wait(protractor.ExpectedConditions.presenceOf(ride_element), 10000);
//
//       expect(page.getUniqueRide('Saint Cloud Minnesota')).toMatch('


using DownloadAssistant.Base;
using NLog;
using NzbDrone.Common.Http;
using NzbDrone.Core.Indexers;
using NzbDrone.Core.IndexerSearch.Definitions;
using Requests;
using System.Text.Json;

namespace Tubifarry.Indexers.Spotify
{
    public interface ISpotifyRequestGenerator : IIndexerRequestGenerator
    {
        void StartTokenRequest();
        bool TokenIsExpired();
        bool RequestNewToken();
    }

    public class SpotifyRequestGenerator : ISpotifyRequestGenerator
    {
        private const int MaxPages = 3;
        private const int PageSize = 20;
        private const int NewReleaseLimit = 20;

        private string _token = string.Empty;
        private DateTime _tokenExpiry = DateTime.MinValue;
        private OwnRequest? _tokenRequest;

        private readonly Logger _logger;

        public SpotifyRequestGenerator(Logger logger) => _logger = logger;

        public IndexerPageableRequestChain GetRecentRequests()
        {
            IndexerPageableRequestChain pageableRequests = new();
            pageableRequests.Add(GetRecentReleaseRequests());
            return pageableRequests;
        }

        private IEnumerable<IndexerRequest> GetRecentReleaseRequests()
        {
            HandleToken();

            string url = $"https://api.spotify.com/v1/browse/new-releases?limit={NewReleaseLimit}";

            IndexerRequest req = new(url, HttpAccept.Json);
            req.HttpRequest.Headers.Add("Authorization", $"Bearer {_token}");

            _logger.Trace($"Created request for recent releases: {url}");
            yield return req;
        }

        public IndexerPageableRequestChain GetSearchRequests(AlbumSearchCriteria searchCriteria)
        {
            _logger.Debug($"Generating search requests for album: {searchCriteria.AlbumQuery} by artist: {searchCriteria.ArtistQuery}");
            IndexerPageableRequestChain chain = new();

            string searchQuery = $"album:{searchCriteria.AlbumQuery} artist:{searchCriteria.ArtistQuery}";
            for (int page = 0; page < MaxPages; page++)
                chain.AddTier(GetRequests(searchQuery, "album", page * PageSize));
            return chain;
        }

        public IndexerPageableRequestChain GetSearchRequests(ArtistSearchCriteria searchCriteria)
        {
            _logger.Debug($"Generating search requests for artist: {searchCriteria.ArtistQuery}");
            IndexerPageableRequestChain chain = new();


will be send again by the server.
	it := s.docTree.BeforeIndex(0)
	for it.Next() {
		s.changeMap[it.Key.(*DocumentSnapshot).Ref.Path] = nil
	}
}

func (s *watchStream) currentSize() int {
	_, adds, deletes := extractChanges(s.docMap, s.changeMap)
	return len(s.docMap) + len(adds) - len(deletes)
}

// Return the changes that have occurred since the last snapshot.
func extractChanges(docMap, changeMap map[string]*DocumentSnapshot) (updates, adds []*DocumentSnapshot, deletes []string) {
	for name, doc := range changeMap {
		switch {
		case doc == nil:
			if _, ok := docMap[name]; ok {
				deletes = append(deletes, name)
			}
		case docMap[name] != nil:
			updates = append(updates, doc)
		default:
			adds = append(adds, doc)
		}
	}
	return updates, adds, deletes
}

// For development only.
// TODO(jba): remove.
func assert(b bool) {
	if !b {
		panic("assertion failed")
	}
}

// Applies the mutations in changeMap to both the document tree and the
// document lookup map. Modifies docMap in place and returns a new docTree.
// If there were no changes, returns docTree unmodified.
func (s *watchStream) computeSnapshot(docTree *btree.BTree, docMap, changeMap map[string]*DocumentSnapshot, readTime time.Time) (*btree.BTree, []DocumentChange) {
	var changes []DocumentChange
	updatedTree := docTree
	assert(docTree.Len() == len(docMap))
	updates, adds, deletes := extractChanges(docMap, changeMap)
	if len(adds) > 0 || len(deletes) > 0 {
		updatedTree = docTree.Clone()
	}
	// Process the sorted changes in the order that is expected by our clients
	// (removals, additions, and then modifications). We also need to sort the
	// individual changes to assure that oldIndex/newIndex keep incrementing.
	deldocs := make([]*DocumentSnapshot, len(deletes))
	for i, d := range deletes {
		deldocs[i] = docMap[d]
	}
	sort.Sort(byLess{deldocs, s.less})
	for _, oldDoc := range deldocs {
		assert(oldDoc != nil)
		delete(docMap, oldDoc.Ref.Path)
		_, oldi := updatedTree.GetWithIndex(oldDoc)
		// TODO(jba): have btree.Delete return old index
		_, found := updatedTree.Delete(oldDoc)
		assert(found)
		changes = append(changes, DocumentChange{
			Kind:     DocumentRemoved,
			Doc:      oldDoc,
			OldDoc:   oldDoc,
			OldIndex: oldi,
			NewIndex: -1,
		})
	}
	sort.Sort(byLess{adds, s.less})
	for _, newDoc := range adds {
		name := newDoc.Ref.Path
		assert(docMap[name] == nil)
		newDoc.ReadTime = readTime
		docMap[name] = newDoc
		updatedTree.Set(newDoc, nil)
		// TODO(jba): change btree so Set returns index as second value.
		_, newi := updatedTree.GetWithIndex(newDoc)
		changes = append(changes, DocumentChange{
			Kind:     DocumentAdded,
			Doc:      newDoc,
			OldIndex: -1,
			NewIndex: newi,
		})
	}
	sort.Sort(byLess{updates, s.less})
	for _, newDoc := range updates {
		name := newDoc.Ref.Path
		oldDoc := docMap[name]
		assert(oldDoc != nil)
		if newDoc.UpdateTime.Equal(oldDoc.UpdateTime) {
			continue
		}
		if updatedTree == docTree {
			updatedTree = docTree.Clone()


/*
 * pomdp-solve
 *
 * Copyright © 1998-2003, Anthony R. Cassandra
 * Copyright © 1994-1997, Brown University
 *
 * Licensed under the Creative Commons Attribution-NonCommercial 4.0
 * International License (CC BY-NC 4.0).
 *
 * See the LICENSE.txt file for details.
 */

/*
 *   Used in witness algorithm to keep track of what alpha vectors
 *   we have worked on.
 *   Needs alpha.h also.
 *
 */

typedef struct Agenda_Type *Agenda;
struct Agenda_Type {

   union agenda_u1_tag {

      double *alpha;
      /* A vector of length gNumStates representing the actual vector */

      Agenda head;
      /* for list headers */
   } u1;

   union agenda_u2_tag{

      int id;
      /* The ID of the vector in the Q-list */

      int length;
      /* for header elements to keep length of list */
   } u2;

   union agenda_u3_tag {

      Agenda next;
      /* for list elements */

      Agenda tail;
      /* for list headers */
   } u3;

   int last_obs;
   /*  Indicates where last search stopped */

   Alpha_List last_k;
   /* for agenda list items, to indicate where last search stopped.  It
      is a pointer into the V_{t-1} alpha list */

   Alpha_List *choice;
   /* For agenda elements to remember the previous alpha vectors that
      were used to construct it.  It is an array of pointers into
      the V_{t-1} list and are needed when setting up LPs */

};

/***** External Functions *****/

extern void initAgenda( Agenda list );
extern void destroyAgendaItem( Agenda item );
extern void enqueueAgendaItem( Agenda agenda, Agenda item );
extern Agenda dequeueAgendaItem( Agenda agenda );
extern void addAgenda( Agenda agenda, double *alpha,
                      Alpha_List *choice, int id );
extern void displayAgenda( FILE *file, Agenda agenda );
extern void showAgenda( Agenda agenda );


 255.,b / 255.];
    }*/

    decimalAdjust(type: string, value: any, exp:number) {
        // Если степень не определена, либо равна нулю...
        if (typeof exp === 'undefined' || +exp === 0) {
            return Math[type](value);
        }
        value = +value;
        exp = +exp;
        // Если значение не является числом, либо степень не является целым числом...
        if (isNaN(value) || !(typeof exp === 'number' && exp % 1 === 0)) {
            return NaN;
        }
        // Сдвиг разрядов
        value = value.toString().split('e');
        value = Math[type](+(value[0] + 'e' + (value[1] ? (+value[1] - exp) : -exp)));
        // Обратный сдвиг
        value = value.toString().split('e');
        return +(value[0] + 'e' + (value[1] ? (+value[1] + exp) : exp));
    }

    rv2(v: Vec2, r: number): Vec2 {
        let ca = Math.cos(r);
        let sa = Math.sin(r);
        return [ca*v[0] - sa*v[1], sa*v[0] + ca*v[1]];
    }

    round10(value, exp = -1) {
        return this.decimalAdjust('round', value, exp);
    }

    lerp(a, b, d) {
        return a + (b - a) * d;
    }

    sign(v: number) {
        if (v == 0) return 0;
        if (v > 0) return 1; else return -1;
    }

    rint(min, max) {
        return Math.floor(Math.random() * (max - min + 1)) + min;
    }

    getRand(obj: Array<any>): any {
        return obj[Math.floor(Math.random() * obj.length)];
    }

    ARGBNormal(a: ARGBColor): ARGBColor {
        a[0] = a[0] / 255.;
        a[1] = a[1] / 255.;
        a[2] = a[2] / 255.;
        a[3] = a[3] / 255.;

        return a;
    }

    hexToRgb(hex, normal: boolean = true): ARGBColor {
        var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
        let res: ARGBColor = result ? [
                parseInt(result[1], 16),
                parseInt(result[2], 16),
                parseInt(result[3], 16),
                parseInt(result[4], 16),
            ] : null;
        if (res && normal) {
            return this.ARGBNormal(res)
        }
    }

    hslToRgb(h: number, s: number, l: number): number {
        var r, g, b;

        if (s == 0) {
            r = g = b = l; // achromatic
        } else {
            var hue2rgb = function hue2rgb(p, q, t) {
                if (t < 0) t += 1;
                if (t > 1) t -= 1;
                if (t < 1 / 6) return p + (q - p) * 6 * t;
                if (t < 1 / 2) return q;
                if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;
                return p;
            };

            var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
            var p = 2 * l - q;
            r = hue2rgb(p, q, h + 1 / 3);
            g = hue2rgb(p, q, h);


class ICustomMarshaler:
 """ Provides custom wrappers for handling method calls. """
 def CleanUpManagedData(self,ManagedObj):
  """
  CleanUpManagedData(self: ICustomMarshaler,ManagedObj: object)

   Performs necessary cleanup of the managed data when it is no longer needed.

   ManagedObj: The managed object to be destroyed.
  """
  pass
 def CleanUpNativeData(self,pNativeData):
  """
  CleanUpNativeData(self: ICustomMarshaler,pNativeData: IntPtr)

   Performs necessary cleanup of the unmanaged data when it is no longer needed.

   pNativeData: A pointer to the unmanaged data to be destroyed.
  """
  pass
 def GetNativeDataSize(self):
  """
  GetNativeDataSize(self: ICustomMarshaler) -> int

   Returns the size of the native data to be marshaled.

   Returns: The size,in bytes,of the native data.
  """
  pass
 def MarshalManagedToNative(self,ManagedObj):
  """
  MarshalManagedToNative(self: ICustomMarshaler,ManagedObj: object) -> IntPtr

   Converts the managed data to unmanaged data.

   ManagedObj: The managed object to be converted.

   Returns: A pointer to the COM view of the managed object.
  """
  pass
 def MarshalNativeToManaged(self,pNativeData):
  """
  MarshalNativeToManaged(self: ICustomMarshaler,pNativeData: IntPtr) -> object

   Converts the unmanaged data to managed data.

   pNativeData: A pointer to the unmanaged data to be wrapped.

   Returns: An object that represents the managed view of the COM data.
  """
  pass
 def __init__(self,*args):
  """ x.__init__(...) initializes x; see x.__class__.__doc__ for signaturex.__init__(...) initializes x; see x.__class__.__doc__ for signature """
  pass


iraSans-SemiBold'),
    url('../../../media/fonts/FiraSans-SemiBold.woff2') format('woff2');
  font-weight: bolder;
  font-style: normal;
}

@font-face {
  font-family: 'Fira Sans';
  src:
    local('FiraSans-Bold'),
    url('../../../media/fonts/FiraSans-Bold.woff2') format('woff2');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Fira Sans';
  src:
    local('FiraSans-ExtraBold'),
    url('../../../media/fonts/FiraSans-ExtraBold.woff2') format('woff2');
  font-weight: 900;
  font-style: normal;
}
@use "../mixins/" as *;
@use "../vars/" as *;

@font-face {
  font-display: swap;
  font-family: zillaslab;
  font-style: normal;
  font-weight: bold;
  src: url("../../typography/ZillaSlab-Bold.subset.woff2") format("woff2"),
    url("../../typography/ZillaSlab-Bold.subset.woff") format("woff");
}

@font-face {
  font-display: swap;
  font-family: zillaslab;
  font-style: normal;
  font-weight: normal;
  src: url("../../typography/ZillaSlab-Regular.subset.woff2") format("woff2"),
    url("../../typography/ZillaSlab-Regular.subset.woff") format("woff");
}

h1,
h2,
h3,
h4,
h5 {
  @include headings-common-base();
}

h3,
h4,
h5 {
  font-weight: normal;
}

h4,
h5 {
  line-height: $heading-line-height;
}

h1 {
  @include heading-1();
}

h2 {
  @include heading-2();
}

h3 {
  @include heading-3();
}

h4 {
  @include heading-4();
}

h5 {
  @include heading-5();
}

p {
  margin-bottom: $content-block-margin;
}

.smaller-text {
  font-size: $small-font-size;
}

.tiny-text {
  font-size: $tiny-text;
}

.slab-highlight {
  @include slab-highlight();
}

.readable-line-length {
  @include readable-line-length();
}

/* text links */
a:link,
a:visited {
  color: $link-color;
  text-decoration: none;

  &:hover,
  &:focus,
  &:active {
    text-decoration: underline;
  }
}
@use "../vars/" as *;
@use "./utils" as *;

@mixin set-heading-font-family() {
  font-family: $heading-font-family;
}

@mixin set-site-font-family() {
  font-family: $site-font-family;
  letter-spacing: -0.0027777778rem;
}

@mixin headings-common-base() {
  @include set-heading-font-family();
  letter-spacing: 0.035rem;
  line-height: $heading-line-height;
}

@mixin heading-1() {
  font-size: $xxl-font-size-mobile;

  @media #{$mq-tablet-and-up} {
    font-size: $xxl-font-size;
  }
}

@mixin heading-2() {
  font-size: $xl-font-size-mobile;

  @media #{$mq-tablet-and-up} {
    font-size: $xl-font-size;
  }
}

@mixin heading-3() {
  font-size: $large-font-size-mobile;

  @media #{$mq-tablet-and-up


, 0, 1), -1.0);
        assert_eq!(f.f(2, 0, 1), -1.0);
        assert_eq!(f.f(0, 1, 1), -1.0);
        assert_eq!(f.f(1, 1, 1), 1.0);
        assert_eq!(f.f(2, 1, 1), -1.0);
        assert_eq!(f.f(0, 2, 1), -1.0);
        assert_eq!(f.f(1, 2, 1), -1.0);
        assert_eq!(f.f(2, 2, 1), -1.0);

        assert_eq!(f.f(0, 0, 2), -1.0);
        assert_eq!(f.f(1, 0, 2), -1.0);
        assert_eq!(f.f(2, 0, 2), -1.0);
        assert_eq!(f.f(0, 1, 2), -1.0);
        assert_eq!(f.f(1, 1, 2), -1.0);
        assert_eq!(f.f(2, 1, 2), -1.0);
        assert_eq!(f.f(0, 2, 2), -1.0);
        assert_eq!(f.f(1, 2, 2), -1.0);
        assert_eq!(f.f(2, 2, 2), -1.0);

        f
    }

}
/*
 * Copyright 2021 Fluence Labs Limited
 *
 * 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.
 */

use std::sync::Arc;

use futures::future::BoxFuture;
use futures::FutureExt;

use particle_args::Args;

use crate::{FunctionOutcome, ParticleParams};

pub type Output<'a> = BoxFuture<'a, FunctionOutcome>;
pub trait ParticleFunction: 'static + Send + Sync {
    fn call(&self, args: Args, particle: ParticleParams) -> Output<'_>;
}

pub trait ParticleFunctionMut: 'static + Send + Sync {
    fn call_mut(&mut self, args: Args, particle: ParticleParams) -> Output<'_>;
}

pub trait ParticleFunctionStatic: 'static + Send + Sync {
    fn call(&self, args: Args, particle: ParticleParams) -> Output<'static>;
}

impl<F: ParticleFunction> ParticleFunctionStatic for Arc<F> {
    fn call(self: &Arc<F>, args: Args, particle: ParticleParams) -> Output<'static> {
        let this = self.clone();
        async move { ParticleFunction::call(this.as_ref(), args, particle).await }.boxed()
    }
}
<filename>adaptors/cli/src/add_item.rs
use backlog::{Assignee, BacklogItem, Story, StoryPoint, Task};
use backlog_service::{AddItemCmd, BacklogUseCase, Command, IncommingResult};

use super::{error_handler, CliAdaptoer};

pub async fn add_item_handler(ctx: CliAdaptoer, cmd: AddItemCliCmd) {
    error_handler(|| ctx.add_item(cmd)).await
}

#[derive(Clone, Debug, clap::Parser)]
pub struct AddItemCliCmd {
    item_type: String,
    title: String,
    point: Option<u8>,
    assignee: Option<String>,
}

impl Command for AddItemCliCmd {}

impl AddItemCmd for AddItemCliCmd {
    fn item(&self) -> IncommingResult<Box<dyn BacklogItem>> {
        let point = self.point.map(StoryPoint::new).transpose().unwrap();
        let assignee = self.assignee.as_ref().map(|v|


/*************************************************************************
    > File Name: DefWriter.h
    > Author: Yibo Lin
    > Mail: yibolin@utexas.edu
    > Created Time: Mon 22 Jun 2015 08:11:03 PM CDT
 ************************************************************************/

#ifndef DREAMPLACE_DEFWRITER_H
#define DREAMPLACE_DEFWRITER_H

#include <cstdio>
#include <vector>
#include "PlaceWriter.h"

DREAMPLACE_BEGIN_NAMESPACE

class DefWriter : public PlaceSolWriter
{
    public:
        typedef PlaceSolWriter base_type;

        DefWriter(PlaceDB const& db) : base_type(db) {}
        DefWriter(DefWriter const& rhs) : base_type(rhs) {}

        /// write DEF file, by replacing the component block of the input DEF file
        /// \param first, last should contain components to write
        bool write(std::string const& outFile, std::string const& inFile,
                std::vector<Node> const& vNode, std::vector<PlaceDB::index_type> const& vNodeIndex,
                PlaceDB::coordinate_type const* x = NULL, PlaceDB::coordinate_type const* y = NULL) const;
        /// write simplified DEF file for iccad contest
        /// \param first, last should contain components to write
        bool writeSimple(std::string const& outFile, std::string const& version, std::string const& designName,
                std::vector<Node> const& vNode, std::vector<PlaceDB::index_type> const& vNodeIndex,
                PlaceDB::coordinate_type const* x = NULL, PlaceDB::coordinate_type const* y = NULL) const;

    protected:
        /// write components block
        void writeCompBlock(FILE* os, std::vector<Node> const& vNode, std::vector<PlaceDB::index_type> const& vNodeIndex,
                PlaceDB::coordinate_type const* x, PlaceDB::coordinate_type const* y) const;
        void writeComp(FILE* os, Node const& n,
                PlaceDB::coordinate_type const* x, PlaceDB::coordinate_type const* y) const;
        /// trim leading whitespaces
        std::string ltrim(std::string const& s) const;
        /// trim tailing whitespaces
        std::string rtrim(std::string const& s) const;
        /// trim leading and tailing whitespaces
        std::string trim(std::string const& s) const;
};

DREAMPLACE_END_NAMESPACE

#endif


6 */	mtctr r12
/* 80295BEC 00292B2C  4E 80 04 21 */	bctrl
/* 80295BF0 00292B30  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 80295BF4 00292B34  40 82 00 0C */	bne .L_80295C00
/* 80295BF8 00292B38  7F E3 FB 78 */	mr r3, r31
/* 80295BFC 00292B3C  4B E6 BD 09 */	bl createEfxHamon__Q24Game9EnemyBaseFv
.L_80295C00:
/* 80295C00 00292B40  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80295C04 00292B44  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80295C08 00292B48  7C 08 03 A6 */	mtlr r0
/* 80295C0C 00292B4C  38 21 00 10 */	addi r1, r1, 0x10
/* 80295C10 00292B50  4E 80 00 20 */	blr
.endfn createEfxHamon__Q34Game9SnakeCrow3ObjFv

.fn isUnderground__Q34Game9SnakeCrow3ObjFv, weak
/* 80295C14 00292B54  88 63 02 C0 */	lbz r3, 0x2c0(r3)
/* 80295C18 00292B58  4E 80 00 20 */	blr
.endfn isUnderground__Q34Game9SnakeCrow3ObjFv

.fn __dt__Q23efx9THebiWaitFv, weak
/* 80295C1C 00292B5C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80295C20 00292B60  7C 08 02 A6 */	mflr r0
/* 80295C24 00292B64  90 01 00 14 */	stw r0, 0x14(r1)
/* 80295C28 00292B68  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80295C2C 00292B6C  7C 9F 23 78 */	mr r31, r4
/* 80295C30 00292B70  93 C1 00 08 */	stw r30, 8(r1)
/* 80295C34 00292B74  7C 7E 1B 79 */	or. r30, r3, r3
/* 80295C38 00292B78  41 82 00 64 */	beq .L_80295C9C
/* 80295C3C 00292B7C  3C 60 80 4D */	lis r3, __vt__Q23efx9THebiWait@ha
/* 80295C40 00292B80  38 63 B6 20 */	addi r3, r3, __vt__Q23efx9THebiWait@l
/* 80295C44 00292B84  90 7E 00 00 */	stw r3, 0(r30)
/* 80295C48 00292B88  38 03 00 14 */	addi r0, r3, 0x14
/* 80295C4C 00292B8C  90 1E 00 04 */	stw r0, 4(r30)
/* 80295C50 00292B90  41 82 00 3C */	beq .L_80295C8C
/* 80295C54 00292B94  3C 60 80 4B */	lis r3, __vt__Q23efx8TForever@ha
/* 80295C58 00292B98  38 63 2C 24 */	addi r3, r3, __vt__Q23efx8TForever@l
/* 80295C5C 00292B9C  90 7E 00 00 */	stw r3, 0(r30)
/* 80295C60 00292BA0  38 03 00 14 */	addi r0, r3, 0x14
/* 80295C64 00292BA4  90 1E


RegExp matchExp(regExp, Qt::CaseInsensitive);
	int count=0;
	int position=0;

	matchExp.setMinimal(true);
	while ((position=matchExp.indexIn(inputString, position))>-1)
	{
		position+=matchExp.cap(0).length();
		count++;
	}

	return count;
}

///Calculates the weight of the supplied HTML.
///<param name="inputString">QString instance with a part of a HTML document that should be weighted.</param>
///<returns>Returns an integer containing the relative weight of the supplied HTML snippet.</returns>
int CRSSItem::CalcWeight(QString inputString)
{
	int htmlLength;
	int textLength;
	int position;
	int weight;

	//-- Define the regular expressions to remove all tags for creating the text weight
	char* tagRemoveFilter[]=
	{
		"<a.*",
		"<.*>",
		NULL
	};

	//-- Define the regular expression to remove characters from the HTML version to ease comparison
	char* htmlCleanFilter[]=
	{
		"[ \\f\\n\\r\\t\\v]+",
		NULL
	};

	//-- Initialize the weight to 0
	weight=0;

	//-- Penalty for a tags
	weight-=CountMatches(inputString, "")*3;

	//-- If there are headlines in this div, make it worth 10 times the number of headlines
	weight+=CountMatches(inputString, "<(h[0-9]).*>")*10;

	RemoveByRegex(htmlCleanFilter, inputString);
	htmlLength=inputString.length();
	RemoveByRegex(tagRemoveFilter, inputString);
	textLength=inputString.length();

	//-- If the text is shorter than 20 Chars, it can't be any important content.
	//   If htmlLength is 0 then we would get a div/0
	if ((textLength>20)&&(htmlLength>0))
	{
		weight+=(textLength*100)/htmlLength;
	}

	return weight;
}

///Detects if the attributes portion of a tag contains any of the given hints.
///<param name="attributes">QString instance containing the attributes portion of a HTML tag.</param>
///<param name="hints">List of hints separated by a colon.</param>
///<returns>Returns true if one of the elements of the hints string is contained within attributes. False if not.</returns>
bool CRSSItem::HasHint(QString attributes, const QString& hints)
{
	if (hints.length()==0)
		return false;

	QStringList hintList=hints.split(",", QString::SkipEmptyParts);
	QStringListIterator hintListI(hintList);

	while (hintListI.hasNext())
	{
		if (attributes.indexOf(hintListI.next().trimmed(), Qt::CaseInsensitive)!=-1)
			return true;
	}

	return false;
}

///Copies the supplied noed to the resultPage string.
///<param name="resultPage">Reference to a QString instance. The append method is used to append the supplied node to this instance.</param>
///<param name="inputString">Reference to the whole HTML page. The node parameter contains positional references relative to this string.</param>
///<param name="node">Pointer to a CSectionNode instance specifying the portion of inputString to add to resultPage.</param>
///<param name="threshold">The portion specified by node is only added if the weight of this node is greater than this value.</param>
///<param name="linkThreshold">Currently not used. TBD!</param>
void CRSSItem::WriteNodes(QString &resultPage, QString &inputString, CSectionNode* node, int threshold, int linkThreshold)
{
	//-- If the node's weight is less then the threshold mark it as disposible
	if (node->Weight>threshold)
	{
		node->Kept=true;

		resultPage.append


        /** And */
        AllAround
    }
}

macro_attr! {
    #[derive(EnumDisplay!)]
    pub enum Degenerate {}
}

#[test]
fn test_next_variant() {
    assert_eq!(format!("{}", Get::Up), "Up");
    assert_eq!(format!("{}", Get::Down), "Down");
    assert_eq!(format!("{}", Get::AllAround), "AllAround");
}
<filename>src/bin/simulator.rs
fn main() {
    println!("Hello from Pegasus");
}

#[cfg(test)]
mod tests {
    use std::{
        io::{BufRead, BufReader},
        vec,
    };

    use pegasus::cell::Cell;
    use pegasus::utility::{keep_alive ,talk_to_cell};
    #[test]
    fn comm_test() {
        let test_msg = "test message\n";
        let program_plus_args = ["cargo", "test", "--bin", "cell", "--test", "chaos_monkey"];
        let mut cell = Cell::new("Cell", &program_plus_args, None);
        talk_to_cell(&mut cell, test_msg);
        let mut cells = vec![&mut cell];
        let msgs = listen_to_cells(&mut cells);
        println!("Simulator got {}", msgs[0]);
        assert_eq!(test_msg.trim(), &msgs[0]);
        keep_alive("Enter anything to tell the simulator to exit");
        println!("Simulator exiting");
    }
    fn listen_to_cells(cells: &mut [&mut Cell]) -> Vec<String> {
        cells
            .iter_mut()
            .map(|cell| {
                let pid = cell.pid;
                println!("Simulator listening to cell with PID {}", pid);
                let from_cell = &mut cell.cell_stdout;
                let mut reader = BufReader::new(from_cell).lines();
                reader
                    .next()
                    .expect("No message from cell")
                    .expect("Cannot read from cell")
            })
            .collect()
    }
}
use super::*;

pub struct BinOpBuilder;

impl BinOpBuilder {
    pub fn build<'f, 'o>(
        builder: &mut ScopedFunctionBuilder<'f, 'o>,
        ir_value: Option<ir::Value>,
        op: BinaryOperator,
    ) -> Result<Option<Value>> {
        let builder_ref = builder.as_ref();
        let lhs_ref = builder.value_ref(op.lhs);
        let rhs_ref = builder.value_ref(op.rhs);

        let result_ref = match op.kind {
            ir::BinOp::Equal => unsafe {
                MLIRBuildIsEqualOp(
                    builder_ref,
                    op.loc,
                    lhs_ref,
                    rhs_ref,
                    /* isExact= */ false,
                )
            },
            ir::BinOp::ExactEqual => unsafe {
                MLIRBuildIsEqualOp(
                    builder_ref,
                    op.loc,
                    lhs_ref,
                    rhs_ref,
                    /* isExact= */ true,
                )
            },
            ir::BinOp::NotEqual => unsafe {
                MLIRBuildIsNotEqualOp(
                    builder_ref,
                    op.loc,
                    lhs_ref,
                    rhs_ref,
                    /* isExact= */ false,
                )
            },
            ir::BinOp::ExactNotEqual => unsafe {
                MLIRBuildIsNotEqualOp(
                    builder_ref,
                    op.loc,
                    lhs_ref,
                    rhs_ref,
                    /* isExact= */ true,
                )
            },
            ir::BinOp::LessEqual => unsafe {
                MLIRBuildLessThanOrEqualOp(builder_ref, op.loc, lhs_ref, rhs_ref)
            },
            ir::BinOp::Less =>


a

d}@shdZGdddeZGdddeZGdddeZGdddeZGd	d
d
eZGdddeZd
S)zr
All of the Enums that are used throughout the chardet package.

:author: Dan Blanchard (dan.blanchard@gmail.com)
c@seZdZdZdZdZdZdS)
InputStatezS
    This enum represents the different states a universal detector can be in.
    N)__name__
__module____qualname____doc__
PURE_ASCII	ESC_ASCII	HIGH_BYTErrb/home/tom/ab/renpy-build-fix/tmp/install.linux-x86_64/lib/python3.9/site-packages/chardet/enums.pyrsrc@s<eZdZdZdZdZdZdZdZdZ	eeBZ
e
eBeBZdS)	LanguageFilterzj
    This enum represents the different language filters we can apply to a
    ``UniversalDetector``.
    rrN)rrrrCHINESE_SIMPLIFIEDCHINESE_TRADITIONALJAPANESEKOREANNON_CJKALLCHINESECJKrrrr
rsrc@seZdZdZdZdZdZdS)ProbingStatezG
    This enum represents the different states a prober can be in.
    rrrN)rrrr	DETECTINGFOUND_ITNOT_MErrrr
r src@seZdZdZdZdZdZdS)MachineStatezN
    This enum represents the different states a state machine can be in.
    rrrN)rrrrSTARTERRORITS_MErrrr
r)src@s,eZdZdZdZdZdZdZeddZ	dS)	SequenceLikelihoodzX
    This enum represents the likelihood of a character following the previous one.
    rrrcCsdS)z::returns: The number of likelihood categories in the enum.rr)clsrrr
get_num_categories;sz%SequenceLikelihood.get_num_categoriesN)
rrrrNEGATIVEUNLIKELYLIKELYPOSITIVEclassmethodr&rrrr
r#2sr#c@s$eZdZdZdZdZdZdZdZdS)CharacterCategoryz
    This enum represents the different categories language models for
    ``SingleByteCharsetProber`` put characters into.

    Anything less than CONTROL is considered a letter.
    N)	rrrr	UNDEFINED
LINE_BREAKSYMBOLDIGITCONTROLrrrr
r,Asr,N)robjectrrrrr#r,rrrr
<module>s


 nullable types but then I realized
      // that the Terpal-Controller can handle null values by taking the nullable-version of
      // a encoder ad-hoc. It does not necessarily need to handed a nullable serializer form the start.
      // (This makes sense when you think about it because PreparedStatementElementEncoder can always
      // check if the value is null upfront and if the value is null it can set it to null on the
      // PreparedStatement without doing anything else!)
      //   primitiveType == PrimitiveType.CHAR && isNullable -> classIdOf<ParamSerializer.CharNullable>()
      //   primitiveType == PrimitiveType.INT && isNullable -> classIdOf<ParamSerializer.IntNullable>()
      primitiveType == PrimitiveType.CHAR -> classIdOf<ParamSerializer.Char>()
      primitiveType == PrimitiveType.INT -> classIdOf<ParamSerializer.Int>()
      primitiveType == PrimitiveType.SHORT -> classIdOf<ParamSerializer.Short>()
      primitiveType == PrimitiveType.LONG -> classIdOf<ParamSerializer.Long>()
      primitiveType == PrimitiveType.FLOAT -> classIdOf<ParamSerializer.Float>()
      primitiveType == PrimitiveType.DOUBLE -> classIdOf<ParamSerializer.Double>()
      primitiveType == PrimitiveType.BOOLEAN -> classIdOf<ParamSerializer.Boolean>()
      else -> null
    }
  } ?: when {
    type.isClass<java.lang.Void>() -> classIdOf<ParamSerializer.NullType>()
    type.isNothing() -> classIdOf<ParamSerializer.NullType>()
    type.isNullableNothing() -> classIdOf<ParamSerializer.NullType>()
    type.isNullableString() -> classIdOf<ParamSerializer.String>()
    type.isString() -> classIdOf<ParamSerializer.String>()
    type.isClassStrict<kotlinx.datetime.LocalDate>() -> classIdOf<ParamSerializer.LocalDate>()
    type.isClassStrict<kotlinx.datetime.LocalTime>() -> classIdOf<ParamSerializer.LocalTime>()
    type.isClassStrict<kotlinx.datetime.LocalDateTime>() -> classIdOf<ParamSerializer.LocalDateTime>()
    type.isClassStrict<kotlinx.datetime.Instant>() -> classIdOf<ParamSerializer.Instant>()

    //type.isClassStrict<java.util.Date>() -> classIdOf<ParamSerializer.Date>(),

    /*
    val JDateEncoder: SqlEncoder<Session, Stmt, Date>
    val JLocalDateEncoder: SqlEncoder<Session, Stmt, LocalDate>
    val JLocalTimeEncoder: SqlEncoder<Session, Stmt, LocalTime>
    val JLocalDateTimeEncoder: SqlEncoder<Session, Stmt, LocalDateTime>
    val JZonedDateTimeEncoder: SqlEncoder<Session, Stmt, ZonedDateTime>
    val JInstantEncoder: SqlEncoder<Session, Stmt, Instant>
    val JOffsetTimeEncoder: SqlEncoder<Session, Stmt, OffsetTime>
    val JOffsetDateTimeEncoder: SqlEncoder<Session, Stmt, OffsetDateTime>
     */

    else -> null
  }
}

object ParseFree {
  context(CX.Scope, CX.Parsing)
  fun match() =
    Ir.Call.FunctionMem0[ExtractorsDomain.Call.FreeInvoke[Is()], Is.of("invoke", "asPure", "asConditon", "asPureConditon")]

  context(CX.Scope, CX.Parsing)
  fun parse(expr: IrExpression, components: List<IrExpression>, funName: String) = run {
    val segs = components.map { Seg.parse(it) }
    val (partsRaw, paramsRaw) =
      UnzipPartsParams<Seg>({ it is Seg.Const }, { a, b -> (a.constOrFail()).mergeWith(a.constOrFail()) }, { Seg.Const("") })
        .invoke(segs)
    val parts = partsRaw.map { it.constOrFail().value }
    val paramsExprs = paramsRaw.map { it.exprOrFail() }
    val paramsIrs = paramsExprs.map { paramExpr ->
      when {