() => {
    const urlHashbang = new URLHashbang();
    expect(urlHashbang.has('key1')).toBeFalsy();
  });
  test('single item', () => {
    const urlHashbang = new URLHashbang();
    urlHashbang.append('key1', 'value1');
    expect(urlHashbang.has('key1')).toBeTruthy();
    expect(urlHashbang.has('key2')).toBeFalsy();
  });
  test('multiple items', () => {
    const urlHashbang = new URLHashbang();
    urlHashbang.append('key1', 'value1');
    urlHashbang.append('key2', 'value2');
    urlHashbang.append('key3', 'value3');
    expect(urlHashbang.has('key1')).toBeTruthy();
    expect(urlHashbang.has('key2')).toBeTruthy();
    expect(urlHashbang.has('key3')).toBeTruthy();
    expect(urlHashbang.has('key4')).toBeFalsy();
  });
});
describe('#set', () => {
  test('empty', () => {
    const urlHashbang = new URLHashbang();
    urlHashbang.set('key1', 'another1');
    expect(urlHashbang.get('key1')).toEqual('another1');
  });
  test('single item', () => {
    const urlHashbang = new URLHashbang();
    urlHashbang.append('key1', 'value1');
    urlHashbang.set('key1', 'another1');
    expect(urlHashbang.get('key1')).toEqual('another1');
  });
  test('multiple items', () => {
    const urlHashbang = new URLHashbang();
    urlHashbang.append('key1', 'value1');
    urlHashbang.append('key2', 'value2');
    urlHashbang.append('key3', 'value3');
    urlHashbang.set('key1', 'another1');
    expect(urlHashbang.get('key1')).toEqual('another1');
    expect(urlHashbang.get('key2')).toEqual('value2');
    expect(urlHashbang.get('key3')).toEqual('value3');
  });
});
describe('#sort', () => {
  test('alphabet', () => {
    const urlHashbang = new URLHashbang();
    urlHashbang.append('orange', 'value3');
    urlHashbang.append('apple', 'value1');
    urlHashbang.append('banana', 'value2');
    urlHashbang.sort();
    expect(urlHashbang.toString()).toEqual(
      'apple=value1&banana=value2&orange=value3',
    );
  });
  test('jp', () => {
    const urlHashbang = new URLHashbang();
    urlHashbang.append('オレンジ', 'value3');
    urlHashbang.append('アップル', 'value1');
    urlHashbang.append('バナナ', 'value2');
    urlHashbang.sort();
    expect(urlHashbang.toString()).toEqual(
      'アップル=value1&オレンジ=value3&バナナ=value2',
    );
  });
});
describe('#append, #toString', () => {
  test('valid single item', () => {
    const urlHashbang = new URLHashbang();
    urlHashbang.append('key1', 'value1');
    expect(urlHashbang.toString()).toEqual('key1=value1');
  });
  test('valid single jp item', () => {
    const urlHashbang = new URLHashbang();
    urlHashbang.append('キー', 'バリュー');
    expect(urlHashbang.toString()).toEqual('キー=バリュー');
  });
  test('valid multiple items', () => {
    const urlHashbang = new URLHashbang();
    urlHashbang.append('key1', 'value1');
    urlHashbang.append('key2', 'value2');
    expect(urlHashbang.toString()).toEqual('key1=value1&key2=value2');
  });
  // not work!
  // test('valid multiple


//
//  TWTRGuestSession.h
//  TwitterKit
//
//  Copyright (c) 2015 Twitter. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "TWTRAuthSession.h"

@class TWTRGuestSession;

NS_ASSUME_NONNULL_BEGIN

/**
 *  Completion block called when guest login succeeds or fails.
 *
 *  @param guestSession A `TWTRGuestSession` containing the OAuth tokens or nil.
 *  @param error Error that will be non nil if the authentication request failed.
 */
typedef void (^TWTRGuestLogInCompletion)(TWTRGuestSession * __twtr_nullable guestSession, NSError * __twtr_nullable error);

/**
 *  `TWTRGuestSession` represents a guest session authenticated with the Twitter API. See `TWTRSession` for user sessions.
 */
@interface TWTRGuestSession : NSObject <TWTRBaseSession>

/**
 *  The bearer access token for guest auth.
 */
@property (nonatomic, copy, readonly) NSString *accessToken;

/**
 *  The guest access token.
 */
@property (nonatomic, copy, readonly) NSString *guestToken;

/**
 *  Returns an `TWTRGuestSession` object initialized by copying the values from the dictionary or nil if the dictionary is missing.
 *
 *  @param sessionDictionary (required) The dictionary received after successfull authentication from Twitter guest-only authentication.
 */
- (instancetype)initWithSessionDictionary:(NSDictionary *)sessionDictionary;

/**
 *  Returns a `TWTRGuestSession` object
 *
 *  @param accessToken the access token
 *  @param guestToken the guest access token
 */
- (instancetype)initWithAccessToken:(NSString *)accessToken guestToken:(twtr_nullable NSString *)guestToken NS_DESIGNATED_INITIALIZER;

/**
 *  Unavailable. Use `-initWithSessionDictionary:` instead.
 */
- (instancetype)init __attribute__((unavailable("Use -initWithSessionDictionary: or initWithAccessToken:guestToken: instead.")));

@end

NS_ASSUME_NONNULL_END


{
			d.SetId("")

			return nil
		}

		return diag.FromErr(err)
	}

	_ = d.Set("organization_id", user.OrganizationID)
	// User input data
	_ = d.Set("email", user.Email)
	_ = d.Set("tags", types.FlattenSliceString(user.Tags))
	_ = d.Set("username", user.Username)
	_ = d.Set("first_name", user.FirstName)
	_ = d.Set("last_name", user.LastName)
	_ = d.Set("phone_number", user.PhoneNumber)
	_ = d.Set("locale", user.Locale)
	// Computed data
	_ = d.Set("created_at", types.FlattenTime(user.CreatedAt))
	_ = d.Set("updated_at", types.FlattenTime(user.UpdatedAt))
	_ = d.Set("deletable", user.Deletable)
	_ = d.Set("last_login_at", types.FlattenTime(user.LastLoginAt))
	_ = d.Set("type", user.Type)
	_ = d.Set("status", user.Status.String()) //nolint:staticcheck // convert enum to string for schema compatibility
	_ = d.Set("mfa", user.Mfa)
	_ = d.Set("account_root_user_id", user.AccountRootUserID)
	_ = d.Set("locked", user.Locked)

	return nil
}

func resourceIamUserUpdate(ctx context.Context, d *schema.ResourceData, m any) diag.Diagnostics {
	api := NewAPI(m)

	user, err := api.GetUser(&iam.GetUserRequest{
		UserID: d.Id(),
	}, scw.WithContext(ctx))
	if err != nil {
		return diag.FromErr(err)
	}

	req := &iam.UpdateUserRequest{UserID: user.ID}

	if d.HasChanges("tags") {
		req.Tags = types.ExpandUpdatedStringsPtr(d.Get("tags"))
	}

	if d.HasChange("email") {
		req.Email = scw.StringPtr(d.Get("email").(string))
	}

	if d.HasChange("first_name") {
		req.FirstName = scw.StringPtr(d.Get("first_name").(string))
	}

	if d.HasChanges("last_name") {
		req.LastName = scw.StringPtr(d.Get("last_name").(string))
	}

	if d.HasChange("phone_number") {
		req.PhoneNumber = scw.StringPtr(d.Get("phone_number").(string))
	}

	if d.HasChange("locale") {
		req.Locale = scw.StringPtr(d.Get("locale").(string))
	}

	_, err = api.UpdateUser(req, scw.WithContext(ctx))
	if err != nil {
		return diag.FromErr(err)
	}

	if d.HasChange("username") {
		_, err = api.UpdateUserUsername(&iam.UpdateUserUsernameRequest{
			UserID:   user.ID,
			Username: d.Get("username").(string),
		}, scw.WithContext(ctx))
		if err != nil {
			return diag.FromErr(err)
		}
	}

	return resourceIamUserRead(ctx, d, m)
}

func resourceIamUserDelete(ctx context.Context, d *schema.ResourceData, m any) diag.Diagnostics {
	api := NewAPI(m)

	err := api.DeleteUser(&iam.DeleteUserRequest{
		UserID: d.Id(),
	}, scw.WithContext(ctx))
	if err != nil && !httperrors.Is404(err) {
		return diag.FromErr(err)
	}

	return nil
}
package instance

import (
	"context"
	"fmt"

	"github.com/hashicorp/terraform-plugin-log/tflog"
	"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
	"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
	instanceSDK "github.com/scaleway/scaleway-sdk-go/api/instance/v1"
	"github.com/scaleway/scaleway


_frame.dimen
    end)
end

function NaturalLightWidget:onShow()
    UIManager:setDirty(self, function()
        return "ui", self.nl_frame.dimen
    end)
    -- Store values in case user cancels
    self.old_values = self:getCurrentValues()
    return true
end

function NaturalLightWidget:onClose()
    UIManager:close(self)
    return true
end

function NaturalLightWidget:onShowKeyboard()
    if self._current_input then
        self._current_input:onShowKeyboard()
        self._current_input:focus()
    end
end

function NaturalLightWidget:onCloseKeyboard()
    if self._cu


    pub m_partid: ::windows_sys::core::GUID,
    pub m_pwszAppName: super::super::Foundation::PWSTR,
    pub m_pwszCtxName: super::super::Foundation::PWSTR,
    pub m_eAppType: COMPLUS_APPTYPE,
    pub m_cReferences: u32,
    pub m_cBound: u32,
    pub m_cPooled: u32,
    pub m_cInCall: u32,
    pub m_dwRespTime: u32,
    pub m_cCallsCompleted: u32,
    pub m_cCallsFailed: u32,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for CCLSIDData2 {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for CCLSIDData2 {
    fn clone(&self) -> Self {
        *self
    }
}
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub type COMAdminAccessChecksLevelOptions = i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminAccessChecksApplicationLevel: COMAdminAccessChecksLevelOptions = 0i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminAccessChecksApplicationComponentLevel: COMAdminAccessChecksLevelOptions = 1i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub type COMAdminActivationOptions = i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminActivationInproc: COMAdminActivationOptions = 0i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminActivationLocal: COMAdminActivationOptions = 1i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub type COMAdminApplicationExportOptions = i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminExportNoUsers: COMAdminApplicationExportOptions = 0i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminExportUsers: COMAdminApplicationExportOptions = 1i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminExportApplicationProxy: COMAdminApplicationExportOptions = 2i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminExportForceOverwriteOfFiles: COMAdminApplicationExportOptions = 4i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminExportIn10Format: COMAdminApplicationExportOptions = 16i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub type COMAdminApplicationInstallOptions = i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminInstallNoUsers: COMAdminApplicationInstallOptions = 0i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminInstallUsers: COMAdminApplicationInstallOptions = 1i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminInstallForceOverwriteOfFiles: COMAdminApplicationInstallOptions = 2i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub type COMAdminAuthenticationCapabilitiesOptions = i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminAuthenticationCapabilitiesNone: COMAdminAuthenticationCapabilitiesOptions = 0i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminAuthenticationCapabilitiesSecureReference: COMAdminAuthenticationCapabilitiesOptions = 2i32;
#[doc = "*Required features: 'Win32_System_ComponentServices'*"]
pub const COMAdminAuthenticationCapabilitiesStaticCloaking: COMAdminAuthenticationCa


  outer:
  for (var overlap = maxOverlap; overlap > 0; overlap--) {
    var firstStart = first.length - overlap;
    for (var j = 0; j < overlap; j++) {
      if (first[firstStart + j] != second[j]) continue outer;
    }
    return overlap;
  }
  return 0;
}
// Copyright (c) 2018, the Dart project authors.  Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'dart:io';
import 'dart:typed_data';

import 'package:characters/src/grapheme_clusters/constants.dart';

import 'debug_names.dart';
import 'string_literal_writer.dart';

// Builder for state automata used to find
// next/previous grapheme cluster break.

// The automaton states are described below, and the code builds tables
// for those automatons, then writes the table bytes as a string literal.

//////////////////////////////////////////////////////////////////////////////
// Transition table for grapheme cluster break automaton.
// For each previous state and each input character category,
// emit a new state and whether to break before that input character.
// The table uses `!` to mark a break before the input character,
// and then the output state.
//
// We do not care that there is no break between a start-of-text and
// and end-of-text (and empty text). We could handle that with one extra
// state, but it will never matter for the code using this table.
//
// Stored as string for comparison to actual generated automaton.
const expectedAutomatonDescription = r'''
Stat: Cat
    : CR   Ctl  Otr  Ext  Spc  Reg  Pic  LF   Pre  L    V    T    LV   LVT  OInC ZWJ  EInE EInL EoT :
-----------------------------------------------------------------------------------------------------
Brk :!CR  !Brk !Otr !Otr !Otr !Reg !Pic !Brk !Pre !L   !V   !T   !V   !T   !InC !Otr !Otr !Otr ! -  :
CR  :!CR  !Brk !Otr !Otr !Otr !Reg !Pic  Brk !Pre !L   !V   !T   !V   !T   !InC !Otr !Otr !Otr ! -  :
Otr :!CR  !Brk !Otr  Otr  Otr !Reg !Pic !Brk !Pre !L   !V   !T   !V   !T   !InC  Otr  Otr  Otr ! -  :
Pre :!CR  !Brk  Otr  Otr  Otr  Reg  Pic !Brk  Pre  L    V    T    V    T    InC  Otr  Otr  Otr ! -  :
L   :!CR  !Brk !Otr  Otr  Otr !Reg !Pic !Brk !Pre  L    V   !T    V    T   !InC  Otr  Otr  Otr


\param geometry \param_geometry
\param mbr \param_box \param_set{envelope}

\qbk{[include reference/algorithms/envelope.qbk]}
\qbk{
[heading Example]
[envelope] [envelope_output]
}
*/
template<typename Geometry, typename Box>
inline void envelope(Geometry const& geometry, Box& mbr)
{
    resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
}

/*!
\brief \brief_calc{envelope}
\ingroup envelope
\details \details_calc{return_envelope,\det_envelope}. \details_return{envelope}
\tparam Box \tparam_box
\tparam Geometry \tparam_geometry
\tparam Strategy \tparam_strategy{Envelope}
\param geometry \param_geometry
\param strategy \param_strategy{envelope}
\return \return_calc{envelope}

\qbk{distinguish,with strategy}
\qbk{[include reference/algorithms/envelope.qbk]}
\qbk{
[heading Example]
[return_envelope] [return_envelope_output]
}
*/
template<typename Box, typename Geometry, typename Strategy>
inline Box return_envelope(Geometry const& geometry, Strategy const& strategy)
{
    Box mbr;
    resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, strategy);
    return mbr;
}

/*!
\brief \brief_calc{envelope}
\ingroup envelope
\details \details_calc{return_envelope,\det_envelope}. \details_return{envelope}
\tparam Box \tparam_box
\tparam Geometry \tparam_geometry
\param geometry \param_geometry
\return \return_calc{envelope}

\qbk{[include reference/algorithms/envelope.qbk]}
\qbk{
[heading Example]
[return_envelope] [return_envelope_output]
}
*/
template<typename Box, typename Geometry>
inline Box return_envelope(Geometry const& geometry)
{
    Box mbr;
    resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
    return mbr;
}

}} // namespace boost::geometry

#endif // BOOST_GEOMETRY_ALGORITHMS_DETAIL_ENVELOPE_INTERFACE_HPP
// Boost.Geometry (aka GGL, Generic Geometry Library)

// Copyright (c) 2015, Oracle and/or its affiliates.

// Contributed and/or modified by Menelaos Karavelas, on behalf of Oracle

// Distributed under the Boost Software License, Version 1.0.
// (See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)

#ifndef BOOST_GEOMETRY_ALGORITHMS_DETAIL_ENVELOPE_INITIALIZE_HPP
#define BOOST_GEOMETRY_ALGORITHMS_DETAIL_ENVELOPE_INITIALIZE_HPP

#include <cstddef>

#include <boost/geometry/core/access.hpp>
#include <boost/geometry/core/coordinate_dimension.hpp>
#include <boost/geometry/core/coordinate_type.hpp>
#include <boost/geometry/util/bounds.hpp>

namespace boost { namespace geometry
{

#ifndef DOXYGEN_NO_DETAIL
namespace detail { namespace envelope
{

template <std::size_t Dimension, std::size_t DimensionCount>
struct initialize_loop
{
    template <typename Box, typename CoordinateType>
    static inline void apply(Box& box,
                             CoordinateType min_value,
                             CoordinateType max_value)
    {
        geometry::set<min_corner, Dimension>(box, min_value);
        geometry::set<max_corner, Dimension>(box, max_value);

        initialize_loop
            <
                Dimension + 1, DimensionCount
            >::apply(box, min_value, max_value);
    }
};

template <std::size_t DimensionCount>
struct initialize_loop


ResourceUsageTotalResponse.DescribeResourceUsageTotal_Data();

			DescribeResourceUsageTotalResponse.DescribeResourceUsageTotal_Data.DescribeResourceUsageTotal_TotalUsage totalUsage = new DescribeResourceUsageTotalResponse.DescribeResourceUsageTotal_Data.DescribeResourceUsageTotal_TotalUsage();
			totalUsage.PostpaidCost = _ctx.FloatValue("DescribeResourceUsageTotal.Data.TotalUsage.PostpaidCost");
			totalUsage.SavedCost = _ctx.FloatValue("DescribeResourceUsageTotal.Data.TotalUsage.SavedCost");
			totalUsage.UsagePercentage = _ctx.FloatValue("DescribeResourceUsageTotal.Data.TotalUsage.UsagePercentage");
			totalUsage.PotentialSavedCost = _ctx.FloatValue("DescribeResourceUsageTotal.Data.TotalUsage.PotentialSavedCost");
			totalUsage.ReservationCost = _ctx.FloatValue("DescribeResourceUsageTotal.Data.TotalUsage.ReservationCost");
			data.TotalUsage = totalUsage;

			List<DescribeResourceUsageTotalResponse.DescribeResourceUsageTotal_Data.DescribeResourceUsageTotal_Item> data_periodCoverage = new List<DescribeResourceUsageTotalResponse.DescribeResourceUsageTotal_Data.DescribeResourceUsageTotal_Item>();
			for (int i = 0; i < _ctx.Length("DescribeResourceUsageTotal.Data.PeriodCoverage.Length"); i++) {
				DescribeResourceUsageTotalResponse.DescribeResourceUsageTotal_Data.DescribeResourceUsageTotal_Item item = new DescribeResourceUsageTotalResponse.DescribeResourceUsageTotal_Data.DescribeResourceUsageTotal_Item();
				item.UsagePercentage = _ctx.FloatValue("DescribeResourceUsageTotal.Data.PeriodCoverage["+ i +"].UsagePercentage");
				item.Period = _ctx.StringValue("DescribeResourceUsageTotal.Data.PeriodCoverage["+ i +"].Period");

				data_periodCoverage.Add(item);
			}
			data.PeriodCoverage = data_periodCoverage;
			describeResourceUsageTotalResponse.Data = data;

			return describeResourceUsageTotalResponse;
        }
    }
}


	{
		CCryNameR("SVO_LightCol0"),
		CCryNameR("SVO_LightCol1"),
	};

	for (int g = 0; g < nLightGroupsNum; g++)
	{
		Vec4 LightPos[4];
		Vec4 LightDir[4];
		Vec4 LightCol[4];

		for (int x = 0; x < 4; x++)
		{
			int nId = g * 4 + x;

			LightPos[x] = (nId < lightsTI.Count()) ? lightsTI[nId].vPosR : Vec4(0, 0, 0, 0);
			LightDir[x] = (nId < lightsTI.Count()) ? lightsTI[nId].vDirF : Vec4(0, 0, 0, 0);
			LightCol[x] = (nId < lightsTI.Count()) ? lightsTI[nId].vCol : Vec4(0, 0, 0, 0);
		}

		rp.SetConstantArray(paramNamesLightPos[g], alias_cast<Vec4*>(&LightPos[0][0]), 4);
		rp.SetConstantArray(paramNamesLightDir[g], alias_cast<Vec4*>(&LightDir[0][0]), 4);
		rp.SetConstantArray(paramNamesLightCol[g], alias_cast<Vec4*>(&LightCol[0][0]), 4);
	}
}

void CSvoRenderer::SetupNodesForUpdate(int& nNodesForUpdateStartIndex, PodArray<I3DEngine::SSvoNodeInfo>& arrNodesForUpdate, CSvoComputePass& rp)
{
	static CCryNameR paramNames[SVO_MAX_NODE_GROUPS] =
	{
		CCryNameR("SVO_NodesForUpdate0"),
		CCryNameR("SVO_NodesForUpdate1"),
		CCryNameR("SVO_NodesForUpdate2"),
		CCryNameR("SVO_NodesForUpdate3"),
	};

	for (int g = 0; g < SVO_MAX_NODE_GROUPS; g++)
	{
		Vec4 matVal[4];

		for (int x = 0; x < 4; x++)
		{
			for (int y = 0; y < 4; y++)
			{
				int nId = nNodesForUpdateStartIndex + g * 16 + x * 4 + y;
				matVal[x][y] = 0.1f + ((nId < arrNodesForUpdate.Count()) ? arrNodesForUpdate[nId].nAtlasOffset : -2);

				if (nId < arrNodesForUpdate.Count())
				{
					float fNodeSize = arrNodesForUpdate[nId].wsBox.GetSize().x;

					if (e_svoDebug == 8)
						gRenDev->GetIRenderAuxGeom()->DrawAABB(arrNodesForUpdate[nId].wsBox, 0, ColorF(fNodeSize == 4.f, fNodeSize == 8.f, fNodeSize == 16.f), eBBD_Faceted);
				}
			}
		}

		rp.SetConstantArray(paramNames[g], &matVal[0], 4);
	}

	nNodesForUpdateStartIndex += 4 * 4 * SVO_MAX_NODE_GROUPS;
}

template<class T>
void CSvoRenderer::SetupSvoTexturesForRead(I3DEngine::SSvoStaticTexInfo& texInfo, T& rp, int nStage, int nStageOpa, int nStageNorm)
{
	rp.SetTexture(0, (static_cast<CTexture*>(texInfo.pTexTree.get())));

	rp.SetTexture(1, CRendererResources::s_ptexWhite3D);

#ifdef FEATURE_SVO_GI_ALLOW_HQ

	if (nStage == 0)
		rp.SetTexture(1, vp_RGB0.nTexId == 0 ? CRendererResources::s_ptexWhite3D : CTexture::GetByID(vp_RGB0.nTexId));
	else if (nStage == 1)
		rp.SetTexture(1, vp_RGB1


		modp.Reduce(result.c2, a.c1);
		modp.Reduce(result.c2, a.c1);
		return result;
	}

	// x * z - y * z^p
	const Element & SpecialOperation2(const Element &x, const Element &y, const Element &z) const
	{
		CRYPTOPP_ASSERT(&x != &result && &y != &result && &z != &result);
		t = modp.Add(x.c2, y.c2);
		result.c1 = modp.Multiply(z.c1, modp.Subtract(y.c1, t));
		modp.Accumulate(result.c1, modp.Multiply(z.c2, modp.Subtract(t, x.c1)));
		t = modp.Add(x.c1, y.c1);
		result.c2 = modp.Multiply(z.c2, modp.Subtract(y.c2, t));
		modp.Accumulate(result.c2, modp.Multiply(z.c1, modp.Subtract(t, x.c2)));
		return result;
	}

protected:
	BaseField modp;
	mutable GFP2Element result;
	mutable Integer t;
};

//! \brief Creates primes p,q and generator g for XTR
void XTR_FindPrimesAndGenerator(RandomNumberGenerator &rng, Integer &p, Integer &q, GFP2Element &g, unsigned int pbits, unsigned int qbits);

GFP2Element XTR_Exponentiate(const GFP2Element &b, const Integer &e, const Integer &p);

NAMESPACE_END

#endif


border-left:none}.plugin-update-tr .update-message{margin-left:0}.plugins .active.update+.plugin-update-tr:before,.plugins .active.updated+.plugin-update-tr:before{background-color:#f0f6fc;border-left:4px solid #72aee6}.plugins .plugin-update-tr .update-message{margin-left:0}.wp-list-table.plugins .plugin-title strong,.wp-list-table.plugins .theme-title strong{font-size:1.4em;line-height:1.5}.plugins tbody th.check-column{padding:8px 0 0 5px}.plugins .inactive th.check-column,.plugins tfoot td.check-column,.plugins thead td.check-column{padding-left:9px}table.plugin-install .column-description,table.plugin-install .column-name,table.plugin-install .column-rating,table.plugin-install .column-version{display:block;width:auto}table.plugin-install th.column-description,table.plugin-install th.column-name,table.plugin-install th.column-rating,table.plugin-install th.column-version{display:none}table.plugin-install td.column-name strong{font-size:1.4em;line-height:1.6em}table.plugin-install #the-list td{box-shadow:none}table.plugin-install #the-list tr{display:block;box-shadow:inset 0 -1px 0 rgba(0,0,0,.1)}.plugin-card{margin-left:0;margin-right:0;width:100%}table.media .column-title .has-media-icon~.row-actions{margin-left:0;clear:both}}@media screen and (max-width:480px){.tablenav-pages .current-page{margin:0}.tablenav.bottom .displaying-num{position:relative;top:0;display:block;text-align:right;padding-bottom:.5em}.tablenav.bottom .tablenav-pages.one-page{height:auto}.tablenav-pages .tablenav-paging-text{float:left;width:100%;padding-top:.5em}}/*! This file is auto-generated */
body{background:#f1f1f1}a{color:#0073aa}a:active,a:focus,a:hover{color:#0096dd}#post-body #visibility:before,#post-body .misc-pub-post-status:before,#post-body .misc-pub-revisions:before,.curtime #timestamp:before,span.wp-media-buttons-icon:before{color:currentColor}.wp-core-ui .button-link{color:#0073aa}.wp-core-ui .button-link:active,.wp-core-ui .button-link:focus,.wp-core-ui .button-link:hover{color:#0096dd}.media-modal .delete-attachment,.media-modal .trash-attachment,.media-modal .untrash-attachment,.wp-core-ui .button-link-delete{color:#a00}.media-modal .delete-attachment:focus,.media-modal .delete-attachment:hover,.media-modal .trash-attachment:focus,.media-modal .trash-attachment:hover,.media-modal .untrash-attachment:focus,.media-modal .untrash-attachment:hover,.wp-core-ui .button-link-delete:focus,.wp-core-ui .button-link-delete:hover{color:#dc3232}input[type=checkbox]:checked::before{content:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M14.


.addError("No stream configured yet");
    }
  }
  static void _expandUint8ListStereo(Uint8List raw, EventSink sink) async {
    switch (await bitDepth) {
      case 8: _listToPairList(raw.buffer.asInt8List()).forEach(sink.add); break;
      case 16: _listToPairList(raw.buffer.asInt16List()).forEach(sink.add); break;
      case 24: sink.addError("24 bit PCM encoding is not supported"); break;
      case 32: (__audioFormat == AudioFormat.ENCODING_PCM_32BIT)
          ? _listToPairList(raw.buffer.asInt32List()).forEach(sink.add)
          : _listToPairList(raw.buffer.asFloat32List()).forEach(sink.add);
      break;
      default:
        sink.addError("No stream configured yet");
    }
  }
  static List<(num, num)> _listToPairList(List<num> mono) {
    List<(num, num)> stereo = List.empty(growable: true);
    num? first;
    for (num sample in mono) {
      if (first == null) {
        first = sample;
      }
      else {
        stereo.add((first, sample));
        first = null;
      }
    }
    return stereo;
  }

  static void clean() {
    _microphoneMethodChannel.invokeMethod("clean");
  }

  /// Updates flag to determine whether to request audio recording permission. Set to false to disable dialogue, set to true (default) to request permission if necessary
  static bool shouldRequestPermission(bool requestPermission) {
    return _requestPermission = requestPermission;
  }
}
// ignore_for_file: public_member_api_docs, sort_constructors_first
import 'package:meta/meta.dart';

/// {@template stream_function_call_response_model}
/// This class is used to represent a stream function call response.
/// {@endtemplate}
@immutable
class StreamFunctionCallResponse {
  /// The name of the function that the model wants to call.
  final String? name;

  /// The arguments that the model wants to pass to the function.
  final String? arguments;

  // Weither the function have a name or not.
  bool get hasName => name != null;

  // Weither the function have arguments or not.
  bool get hasArguments => arguments != null;

  @override
  int get hashCode => name.hashCode ^ arguments.hashCode;

  /// {@macro stream_function_call_response_model}
  const StreamFunctionCallResponse({
    required this.name,
    required this.arguments,
  });

  /// This method is used to convert a [Map<String, dynamic>] object to a [StreamFunctionCallResponse] object.
  factory StreamFunctionCallResponse.fromMap(Map<String, dynamic> map) {
    return StreamFunctionCallResponse(
      name: map['name'],
      arguments: map['arguments'],
    );
  }

  /// This method is used to convert a [StreamFunctionCallResponse] object to a [Map<String, dynamic>] object.
  Map<String, dynamic> toMap() {
    return {
      'name': name,
      'arguments': arguments,
    };
  }

  @override
  String toString() =>
      'StreamFunctionCallResponse(name: $name, arguments: $arguments)';

  @override
  bool operator ==(covariant StreamFunctionCallResponse other) {
    if (identical(this, other)) return true;

    return other.name == name && other.arguments == arguments;
  }
}
import 'package:dart_openai/dart_openai.dart';

import '../../../../etc/message_adapter.dart';

/// {@template openai_stream_chat_completion_choice_delta_model}
/// This contains the [role] and [content] of the choice of the chat response.
/// {@endtemplate}
final class OpenAIStreamChatCompletionC


(including 1/3, 1/12, 1/7, and 2/3); if this is not desired, use DivideToExponent, or use the Divide overload that takes an EContext.

Parameters:

longValue: The parameter  longValue
 is a 64-bit signed integer.

Return Value:

The result of dividing this arbitrary-precision decimal floating-point number by a 64-bit signed integer. Returns infinity if the divisor (this arbitrary-precision decimal floating-point number) is 0 and the dividend (the other 64-bit signed integer) is nonzero. Returns not-a-number (NaN) if the divisor and the dividend are 0. Returns NaN if the result can’t be exact because it would have a nonterminating decimal expansion (examples include 1 divided by any multiple of 3, such as 1/3 or 1/12). If this is not desired, use DivideToExponent instead, or use the Divide overload that takes an  EContext  (such as  EContext.Decimal128  ) instead.

### Divide

public PeterO.Numbers.EDecimal Divide(
    PeterO.Numbers.EDecimal divisor,
    PeterO.Numbers.EContext ctx);

Divides this arbitrary-precision decimal floating-point number by another arbitrary-precision decimal floating-point number and returns the result.

Parameters:

divisor: The number to divide by.

ctx: An arithmetic context to control the precision, rounding, and exponent range of the result. If  HasFlags  of the context is true, will also store the flags resulting from the operation (the flags are in addition to the pre-existing flags). Can be null, in which case the precision is unlimited and no rounding is needed.

Return Value:

The result of dividing this arbitrary-precision decimal floating-point number by another arbitrary-precision decimal floating-point number. Signals FlagDivideByZero and returns infinity if the divisor (this arbitrary-precision decimal floating-point number) is 0 and the dividend (the other arbitrary-precision decimal floating-point number) is nonzero. Signals FlagInvalid and returns not-a-number (NaN) if the divisor and the dividend are 0; or, either  ctx
 is null or  ctx
 ‘s precision is 0, and the result would have a nonterminating decimal expansion (examples include 1 divided by any multiple of 3, such as 1/3 or 1/12); or, the rounding mode is ERounding.None and the result is not exact.

### Divide

public PeterO.Numbers.EDecimal Divide(
    PeterO.Numbers.EDecimal divisor);

Divides this arbitrary-precision decimal floating-point number by another arbitrary-precision decimal floating-point number and returns the result; returns NaN instead if the result would have a nonterminating decimal expansion (including 1/3, 1/12, 1/7, and 2/3); if this is not desired, use DivideToExponent, or use the Divide overload that takes an EContext.

Parameters:

divisor: The number to divide by.

Return Value:

The result of dividing this arbitrary-precision decimal floating-point number by another arbitrary-precision decimal floating-point number. Returns infinity if the divisor (th


        }

        [Test]
        public void LocalTest_CatchVariable()
        {
            GetContext(@"Declarations\Locals\CatchVariable.cs").GetClassifications().AssertContains(
                CSharpNames.LocalVariableName.ClassifyAt(256, 9));
        }

        [Test]
        public void LocalTest_UsingVariable()
        {
            GetContext(@"Declarations\Locals\UsingVariable.cs").GetClassifications().AssertContains(
                CSharpNames.LocalVariableName.ClassifyAt(157, 6));
        }

        [Test]
        public void LocalTest_RangeVariable()
        {
            GetContext(@"Declarations\Locals\RangeVariable.cs").GetClassifications().AssertContains(
                CSharpNames.RangeVariableName.ClassifyAt(186, 4),
                CSharpNames.RangeVariableName.ClassifyAt(242, 5),
                CSharpNames.RangeVariableName.ClassifyAt(250, 4),
                CSharpNames.RangeVariableName.ClassifyAt(292, 4));
        }

        [Test]
        public void LocalTest_DynamicVariable()
        {
            GetContext(@"Declarations\Locals\DynamicVariable.cs").GetClassifications().AssertContains(
                CSharpNames.LocalVariableName.ClassifyAt(156, 5));
        }
    }
}


ToRunResults.Last().Txt, 'bcd');
    equal(QueryToRunResults[QueryToRunResults.length - 2].Txt, 'abc');

    //****Lazy Execution Test****
    var CurrentResult: ToracTechnologies.JLinq.IteratorResult<UnitTestFramework.ITestObject>;

    //holds the index
    var Index = 0;

    //loop through the results 1 record at a time. this will never materialize an array
    while ((CurrentResult = QueryToRun.Next()).CurrentStatus !== ToracTechnologies.JLinq.IteratorStatus.Completed) {

        //is this the guys we added after we build the array?
        if (Index === 5) {
            equal(CurrentResult.CurrentItem.Id, 1000);
        }
        else if (Index === 6) {
            equal(CurrentResult.CurrentItem.Id, 1001);
        } else {
            //just make sure the results are whatever i is
            equal(CurrentResult.CurrentItem.Id, Index);
        }

        //increase the index
        Index++;
    }
});

test('JLinq.ReadonlyArray.OrderBy.Asc.String.Test.2', function () {

    //go build the query
    var QueryToRun: any = UnitTestFramework.BuildArray(UnitTestFramework._DefaultItemsToBuild);

    //push a new item now
    QueryToRun.push({ Id: 1000, Txt: 'abc' });

    //push that same item into the first element spot (with captials)
    QueryToRun.splice(0, 0, { Id: 1000, Txt: 'ABC' });

    //add a random item
    QueryToRun.splice(0, 0, { Id: 1001, Txt: 'bcd' });

    //go reset the query
    var QueryToRun = QueryToRun.OrderBy(x => x.Txt);

    //now go materialize the array
    var QueryToRunResults = QueryToRun.ToArray();

    //go test the items
    equal(QueryToRunResults.Last().Txt, 'bcd');
    equal(QueryToRunResults[QueryToRunResults.length - 2].Txt, 'abc');
    equal(QueryToRunResults[QueryToRunResults.length - 3].Txt, 'ABC');

    //****Lazy Execution Test****
    var CurrentResult: ToracTechnologies.JLinq.IteratorResult<UnitTestFramework.ITestObject>;

    //holds the index
    var Index = 0;

    //loop through the results 1 record at a time. this will never materialize an array
    while ((CurrentResult = QueryToRun.Next()).CurrentStatus !== ToracTechnologies.JLinq.IteratorStatus.Completed) {

        //is this the guys we added after we build the array?
        if (Index === 5) {
            equal(CurrentResult.CurrentItem.Txt, 'ABC');
        }
        else if (Index === 6) {
            equal(CurrentResult.CurrentItem.Txt, 'abc');
        } else if (Index === 7) {
            //just make sure the results are whatever i is
            equal(CurrentResult.CurrentItem.Txt, 'bcd');
        } else {
            equal(CurrentResult.CurrentItem.Txt, Index.toString());
        }

        //increase the index
        Index++;
    }
});

test('JLinq.ReadonlyArray.OrderBy.Asc.String.ChainTest.1', function () {

    //go build the query
    var QueryToRun: any = UnitTestFramework.BuildArray(UnitTestFramework._DefaultItemsToBuild);

    //push a new item now
    QueryToRun.splice(0, 0, { Id: 1000, Txt: 'abc' });

    //add a random item
    QueryToRun.splice(0, 0, { Id: 1001, Txt: 'bcd' });

    //reset the query
    QueryToRun = QueryToRun.Select(x => x.Txt).OrderBy(x => x);

    //go sort the array
    var QueryToRunResults = QueryToRun.ToArray();

    //is the last item bcd?
    equal(QueryToRunResults.Last(), 'bcd');
    equal(QueryToRunResults[QueryToRunResults.length - 2]


multiple .select2-selection__rendered{list-style:none;margin:0;padding:0 5px;}.select2-container--classic .select2-selection--multiple .select2-selection__clear{display:none;}.select2-container--classic .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px;}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove{color:#888;cursor:pointer;display:inline-block;font-weight:bold;margin-right:2px;}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover{color:#555;}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice{float:right;}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto;}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto;}.select2-container--classic.select2-container--open .select2-selection--multiple{border:1px solid #5897fb;}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0;}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;}.select2-container--classic .select2-search--dropdown .select2-search__field{border:1px solid #aaa;outline:0;}.select2-container--classic .select2-search--inline .select2-search__field{outline:0;}.select2-container--classic .select2-dropdown{background-color:white;border:1px solid transparent;}.select2-container--classic .select2-dropdown--above{border-bottom:none;}.select2-container--classic .select2-dropdown--below{border-top:none;}.select2-container--classic .select2-results>.select2-results__options{max-height:200px;overflow-y:auto;}.select2-container--classic .select2-results__option[role=group]{padding:0;}.select2-container--classic .select2-results__option[aria-disabled=true]{color:grey;}.select2-container--classic .select2-results__option--highlighted[aria-selected]{background-color:#3875d7;color:white;}.select2-container--classic .select2-results__group{cursor:default;display:block;padding:6px;}.select2-container--classic.select2-container--open .select2-dropdown{border-color:#5897fb;}/*
 *  Bootstrap Duallistbox - v3.0.5
 *  A responsive dual listbox widget optimized for Twitter Bootstrap. It works on all modern browsers and on touch devices.
 *  http://www.virtuosoft.eu/code/bootstrap-duallistbox/
 *
 *  Made by István Ujj-Mészáros
 *  Under Apache License v2.0 License
 */

.bootstrap-duallistbox-container .buttons{width:100%;margin-bottom:-1px}.bootstrap-duallistbox-containe


{\n\t\tsetDocument();\n\t},\n\n\tdisabledAncestor = addCombinator(\n\t\tfunction( elem ) {\n\t\t\treturn elem.disabled === true && (\"form\" in elem || \"label\" in elem);\n\t\t},\n\t\t{ dir: \"parentNode\", next: \"legend\" }\n\t);\n\n// Optimize for push.apply( _, NodeList )\ntry {\n\tpush.apply(\n\t\t(arr = slice.call( preferredDoc.childNodes )),\n\t\tpreferredDoc.childNodes\n\t);\n\t// Support: Android<4.0\n\t// Detect silently failing push.apply\n\tarr[ preferredDoc.childNodes.length ].nodeType;\n} catch ( e ) {\n\tpush = { apply: arr.length ?\n\n\t\t// Leverage slice if possible\n\t\tfunction( target, els ) {\n\t\t\tpush_native.apply( target, slice.call(els) );\n\t\t} :\n\n\t\t// Support: IE<9\n\t\t// Otherwise append directly\n\t\tfunction( target, els ) {\n\t\t\tvar j = target.length,\n\t\t\t\ti = 0;\n\t\t\t// Can't trust NodeList.length\n\t\t\twhile ( (target[j++] = els[i++]) ) {}\n\t\t\ttarget.length = j - 1;\n\t\t}\n\t};\n}\n\nfunction Sizzle( selector, context, results, seed ) {\n\tvar m, i, elem, nid, match, groups, newSelector,\n\t\tnewContext = context && context.ownerDocument,\n\n\t\t// nodeType defaults to 9, since context defaults to document\n\t\tnodeType = context ? context.nodeType : 9;\n\n\tresults = results || [];\n\n\t// Return early from calls with invalid selector or context\n\tif ( typeof selector !== \"string\" || !selector ||\n\t\tnodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {\n\n\t\treturn results;\n\t}\n\n\t// Try to shortcut find operations (as opposed to filters) in HTML documents\n\tif ( !seed ) {\n\n\t\tif ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) {\n\t\t\tsetDocument( context );\n\t\t}\n\t\tcontext = context || document;\n\n\t\tif ( documentIsHTML ) {\n\n\t\t\t// If the selector is sufficiently simple, try using a \"get*By*\" DOM method\n\t\t\t// (excepting DocumentFragment context, where the methods don't exist)\n\t\t\tif ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) {\n\n\t\t\t\t// ID selector\n\t\t\t\tif ( (m = match[1]) ) {\n\n\t\t\t\t\t// Document context\n\t\t\t\t\tif ( nodeType === 9 ) {\n\t\t\t\t\t\tif ( (elem = context.getElementById( m )) ) {\n\n\t\t\t\t\t\t\t// Support: IE, Opera, Webkit\n\t\t\t\t\t\t\t// TODO: identify versions\n\t\t\t\t\t\t\t// getElementById can match elements by name instead of ID\n\t\t\t\t\t\t\tif ( elem.id === m ) {\n\t\t\t\t\t\t\t\tresults.push( elem );\n\t\


5]);

        int stride = 16;
        int stride2 = 8;
        int nextBlock = 128;
        if (interlacing) {
            nextBlock = stride;
            stride *= 2;
        }

        idctColumnsPut(block[0], p[0], 0, stride);
        idctColumnsPut(block[1], p[0], 8, stride);
        idctColumnsPut(block[2], p[0], nextBlock, stride);
        idctColumnsPut(block[3], p[0], nextBlock + 8, stride);
        idctColumnsPut(block[4], p[1], 0, stride2);
        idctColumnsPut(block[5], p[2], 0, stride2);
    }

    public static void idctAdd(byte[][] p, short[] block, int index, boolean interlacing) {
        idctRows(block);

        switch (index) {
        case 0:
            idctColumnsAdd(block, p[0], 0, 16);
            break;

        case 1:
            idctColumnsAdd(block, p[0], 8, 16);
            break;

        case 2:
            if (interlacing) {
                idctColumnsAdd(block, p[0], 16, 32);
            } else {
                idctColumnsAdd(block, p[0], 128, 16);
            }
            break;

        case 3:
            if (interlacing) {
                idctColumnsAdd(block, p[0], 24, 32);
            } else {
                idctColumnsAdd(block, p[0], 136, 16);
            }
            break;

        case 4:
            idctColumnsAdd(block, p[1], 0, 8);
            break;

        case 5:
            idctColumnsAdd(block, p[2], 0, 8);
            break;
        }
    }

    private final static byte clamp255(int val) {
        val -= 255;
        val = -(255 + ((val >> 31) & val));
        return (byte) ((-((val >> 31) & val)) - 128);
    }

    public static void idctColumnsPut(short[] block, byte[] dst, int dstOffset, int stride) {
        int X0, X1, X2, X3, X4, X5, X6, X7, X8;

        for (int i = 0; i < 8; i++) {
            int offset = dstOffset + i;

            if (((X1 = (block[i + 8 * 4] << 8)) | (X2 = block[i + 8 * 6]) | (X3 = block[i + 8 * 2])
                    | (X4 = block[i + 8 * 1]) | (X5 = block[i + 8 * 7]) | (X6 = block[i + 8 * 5])
                    | (X7 = block[i + 8 * 3])) == 0) {
                dst[offset + stride * 0] = dst[offset + stride * 1] = dst[offset + stride * 2] = dst[offset
                        + stride * 3] = dst[offset + stride * 4] = dst[offset + stride * 5] = dst[offset
                                + stride * 6] = dst[offset + stride * 7] = clamp255(((block[i + 8 * 0] + 32) >> 6));

                continue;
            }

            X0 = (block[i + 8 * 0] << 8) + 8192;

            X8 = W7 * (X4 + X5) + 4;
            X4 = (X8 + (W1 - W7) * X4) >> 3;
            X5 = (X8 - (W1 + W7) * X5) >> 3;
            X8 = W3 * (X6 + X7) + 4;
            X6 = (X8 - (W3 - W5) * X6) >> 3;
            X7 = (X8 - (W3 + W5) * X7) >> 3;

            X8 = X0 + X1;
            X0 -


		V_0 = L_7;
		goto IL_0064;
	}

IL_001f:
	{
		Type_t * L_8 = ___type0;
		TypeFilter_t30BB04A68BC9FB949345457F71A9648BDB67FF18 * L_9 = (TypeFilter_t30BB04A68BC9FB949345457F71A9648BDB67FF18 *)il2cpp_codegen_object_new(TypeFilter_t30BB04A68BC9FB949345457F71A9648BDB67FF18_il2cpp_TypeInfo_var);
		TypeFilter__ctor_m5F16D7D0AB325EAF8F3DF7D8EFEABD6DC79A5D7F(L_9, NULL, (intptr_t)((intptr_t)Statics_IsGenericMatch_mB50849B2448DCAA07CD8C30B0EF05613CA6C4699_RuntimeMethod_var), /*hidden argument*/NULL);
		RuntimeTypeHandle_t7B542280A22F0EC4EAC2061C29178845847A8B2D  L_10 = { reinterpret_cast<intptr_t> (IEnumerable_1_t6FAC70CFE4E34421830AE8D9FE19DA2A83B85B75_0_0_0_var) };
		IL2CPP_RUNTIME_CLASS_INIT(Type_t_il2cpp_TypeInfo_var);
		Type_t * L_11 = Type_GetTypeFromHandle_m9DC58ADF0512987012A8A016FB64B068F3B1AFF6(L_10, /*hidden argument*/NULL);
		NullCheck(L_8);
		TypeU5BU5D_t7FE623A666B49176DE123306221193E888A12F5F* L_12 = VirtFuncInvoker2< TypeU5BU5D_t7FE623A666B49176DE123306221193E888A12F5F*, TypeFilter_t30BB04A68BC9FB949345457F71A9648BDB67FF18 *, RuntimeObject * >::Invoke(46 /* System.Type[] System.Type::FindInterfaces(System.Reflection.TypeFilter,System.Object) */, L_8, L_9, L_11);
		V_1 = L_12;
		V_2 = 0;
		goto IL_005e;
	}

IL_0040:
	{
		TypeU5BU5D_t7FE623A666B49176DE123306221193E888A12F5F* L_13 = V_1;
		int32_t L_14 = V_2;
		NullCheck(L_13);
		int32_t L_15 = L_14;
		Type_t * L_16 = (L_13)->GetAt(static_cast<il2cpp_array_size_t>(L_15));
		V_3 = L_16;
		Type_t * L_17 = V_0;
		IL2CPP_RUNTIME_CLASS_INIT(Type_t_il2cpp_TypeInfo_var);
		bool L_18 = Type_op_Inequality_m615014191FB05FD50F63A24EB9A6CCA785E7CEC9(L_17, (Type_t *)NULL, /*hidden argument*/NULL);
		if (!L_18)
		{
			goto IL_0051;
		}
	}
	{
		V_0 = (Type_t *)NULL;
		goto IL_0064;
	}

IL_0051:
	{
		Type_t * L_19 = V_3;
		IL2CPP_RUNTIME_CLASS_INIT(Statics_t5E1A1DC56C4617D3659228C6FA20FC98476ACF95_il2cpp_TypeInfo_var);
		TypeU5BU5D_t7FE623A666B49176DE123306221193E888A12F5F* L_20 = Statics_GetGenericArguments_m31D1FF50706DDF53DA40BACF27E0942F3A4E85A


p
    import matplotlib.pyplot as plt

    parser = argparse.ArgumentParser()

    parser.add_argument('input', type=str)
    parser.add_argument('--fp16', action='store_true', help="use float16 for training") # no use now, can only run in fp32

    parser.add_argument('--polar', type=float, default=0, help='delta polar angle in [-90, 90]')
    parser.add_argument('--azimuth', type=float, default=0, help='delta azimuth angle in [-180, 180]')
    parser.add_argument('--radius', type=float, default=0, help='delta camera radius multiplier in [-0.5, 0.5]')

    opt = parser.parse_args()

    device = torch.device('cuda')

    print(f'[INFO] loading image from {opt.input} ...')
    image = cv2.imread(opt.input, cv2.IMREAD_UNCHANGED)
    image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
    image = cv2.resize(image, (256, 256), interpolation=cv2.INTER_AREA)
    image = image.astype(np.float32) / 255.0
    image = torch.from_numpy(image).permute(2, 0, 1).unsqueeze(0).contiguous().to(device)

    print(f'[INFO] loading model ...')
    zero123 = Zero123(device, opt.fp16, opt=opt)

    print(f'[INFO] running model ...')
    outputs = zero123(image, polar=opt.polar, azimuth=opt.azimuth, radius=opt.radius)
    plt.imshow(outputs[0])
    plt.show()


* You may not use this work except in compliance with the Licence.
 *
 * You find a copy of the Licence in the "Licence" file or at
 * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the Licence is distributed on an "AS IS" basis,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either expressed or implied.
 * In case of changes by gematik GmbH find details in the "Readme" file.
 *
 * See the Licence for the specific language governing permissions and limitations under the Licence.
 *
 * *******
 *
 * For additional notes and disclaimer from gematik and in case of changes by gematik find details in the "Readme" file.
 */

@file:Suppress("ktlint:max-line-length", "ktlint:argument-list-wrapping", "UnusedPrivateMember")

package de.gematik.ti.erp.app.nfc.command

import de.gematik.ti.erp.app.card.model.card.CardKey
import de.gematik.ti.erp.app.card.model.identifier.ApplicationIdentifier
import de.gematik.ti.erp.app.card.model.identifier.FileIdentifier
import de.gematik.ti.erp.app.card.model.identifier.ShortFileIdentifier
import org.yaml.snakeyaml.Yaml
import java.io.File
import java.util.Locale

@Suppress("ktlint:enum-entry-name-case")
enum class ParameterEnum {
    PARAMETER_INT_OFFSET, PARAMETER_PIN, PARAMETER_INT_NE, PARAMETER_INT_RECORDNUMBER, PARAMETER_INT_FCPLENGTH, PARAMETER_INT_GETCHALLENGE_LENGTH, PARAMETER_INT_GETRANDOM, PARAMETER_INT_CHANNELNUMBER, PARAMETER_SID, PARAMETER_FILEIDENTIFIER, PARAMETER_APPLICATIONIDENTIFIER, PARAMETER_INT_IDDOMAIN, PARAMETER_GEMCVC, PARAMETER_ECPUBLICKEY, PARAMETER_FINGERPRINT, // PARAMETER_BYTEARRAY_MSE,
    PARAMETER_BYTEARRAY_DEFAULT, PARAMETER_RSAPUBLICKEY, PARAMETER_BYTEARRAY_INTERNLAUTH, PARAMETER_BYTEARRAY_REFERENCE, PARAMETER_BYTEARRAY_EXTERNALAUTH, PARAMETER_BYTEARRAY_CMDDATA, PARAMETER_BYTEARRAY_OID, PARAMETER_STRING_PACEINFOP256r1, PARAMETER_STRING_PACEINFOP384r1, PARAMETER_STRING_PACEINFOP512r1, PARAMETER_BYTEARRAY_CAN, PARAMETER_BYTEARRAY_NONZEZ, PARAMETER_BYTEARRAY_PK1, PARAMETER_BYTEARRAY_PK1PICC, PARAMETER_BYTEARRAY_PK2, PARAMETER_BYTEARRAY_PK2VP, PARAMETER_BYTEARRAY_PK2PICC, PARAMETER_BYTEARRAY_MACPCD, PARAMETER_BYTEARRAY_MACPICC, PARAMETER_STRING_ECCURVE_PK1
}

enum class ApduResultEnum {
    ACTIVATECOMMAND_APDU, ACTIVATERECORDCOMMAND_APDU, WRITECOMMAND_APDU, VERITYCOMMAND_APDU, TERMINATEDFCOMMAND_APDU, TERMINATECOMMAND_APDU, TERMINATECARDUSAGECOMMAND_APDU, SETLOGICALEOFCOMMAND_APDU, SEARCHRECORDCOMMAND_APDU, READRECORDCOMMAND_APDU, READCOMMAND_APDU, PSOVERIFYDIGITALSIGNATURECOMMAND_APDU, PSOVERIFYCERTIFICATECOMMAND_APDU, PSOTRANSCIPHER_APDU, PSOENCIPHER_APDU, PSODECIPHER_APDU, PSOCOMPUTEDIGITALSIGNATURECOMMAND_APDU, PSOCOMPUTECRYPTOGRAPHICCHECKSUM_APDU, PSOVERIFYCRYPTPGRAPHICCHECKSUMCOMMAND_APDU, MANAGESECURITYENVIRONMENTCOMMAND_APDU, MANAGECHANNELCOMMAND_APDU, LOADAPPLICATIONCOMMAND_APDU, LISTPUBLICKEYCOMMAND_APDU, INTERNALAUTHENTICATECOMMAND_APDU, GETRANDOMCOMMAND_APDU, GETPINSTATUSCOMMAND_APDU, GETCHALLENGECOMMAND_APDU, GENERATEASYMMETRICKEYPAIRCOMMAND_APDU, GENERALAUTHENTICATECOMMAND_APDU, FINGERPRINTCOMMAND_APDU, EXTERNALMUTUALAUTHENTICATECOMMAND


(modArch)

	// distpack returns the full path to name in the distpack directory.
	distpack := func(name string) string {
		return filepath.Join(goroot, "pkg/distpack", name)
	}
	if err := os.MkdirAll(filepath.Join(goroot, "pkg/distpack"), 0777); err != nil {
		log.Fatal(err)
	}

	writeTgz(distpack(version+".src.tar.gz"), srcArch)

	if goos == "windows" {
		writeZip(distpack(version+"."+goos+"-"+goarch+".zip"), zipArch)
	} else {
		writeTgz(distpack(version+"."+goos+"-"+goarch+".tar.gz"), zipArch)
	}

	writeZip(distpack(modVers+".zip"), modArch)
	writeFile(distpack(modVers+".mod"),
		[]byte(fmt.Sprintf("module %s\n", modPath)))
	writeFile(distpack(modVers+".info"),
		[]byte(fmt.Sprintf("{%q:%q, %q:%q}\n",
			"Version", modVers,
			"Time", versionTime.Format(time.RFC3339))))
}

// mode computes the mode for the given file name.
func mode(name string, _ fs.FileMode) fs.FileMode {
	if strings.HasPrefix(name, "bin/") ||
		strings.HasPrefix(name, "pkg/tool/") ||
		strings.HasSuffix(name, ".bash") ||
		strings.HasSuffix(name, ".sh") ||
		strings.HasSuffix(name, ".pl") ||
		strings.HasSuffix(name, ".rc") {
		return 0o755
	} else if ok, _ := amatch("**/go_?*_?*_exec", name); ok {
		return 0o755
	}
	return 0o644
}

// readVERSION reads the VERSION file.
// The first line of the file is the Go version.
// Additional lines are 'key value' pairs setting other data.
// The only valid key at the moment is 'time', which sets the modification time for file archives.
func readVERSION(goroot string) (version string, t time.Time) {
	data, err := os.ReadFile(filepath.Join(goroot, "VERSION"))
	if err != nil {
		log.Fatal(err)
	}
	version, rest, _ := strings.Cut(string(data), "\n")
	for _, line := range strings.Split(rest, "\n") {
		f := strings.Fields(line)
		if len(f) == 0 {
			continue
		}
		switch f[0] {
		default:
			log.Fatalf("VERSION: unexpected line: %s", line)
		case "time":
			if len(f) != 2 {
				log.Fatalf("VERSION: unexpected time line: %s", line)
			}
			t, err = time.ParseInLocation(time.RFC3339, f[1], time.UTC)
			if err != nil {
				log.Fatalf("VERSION: bad time: %s", err)
			}
		}
	}
	return version, t
}

// writeFile writes a file with the given name and data or fatals.
func writeFile(name string, data []byte) {
	if err := os.WriteFile(name, data, 0666); err != nil {
		log.Fatal(err)
	}
	reportHash(name)
}

// check panics if err is not nil. Otherwise it returns x.
// It is only meant to be used in a function that has deferred
// a function to recover appropriately from the panic.
func check[T any](x T, err error) T {
	check1(err)
	return x
}

// check1 panics if err is not nil.
// It is only meant to be used in a function that has deferred
// a function to recover appropriately from the panic.
func check1(err error) {
	if err != nil {
		panic(err)
	}
}

// write


if !UNITY_2018_3_OR_NEWER

        [Fact]
        public void WriteRaw()
        {
            // x86
            for (int i = 1; i <= MessagePackRange.MaxFixStringLength; i++)
            {
                var src = Enumerable.Range(0, i).Select(x => (byte)x).ToArray();
                var dst = new Sequence<byte>();
                var dstWriter = new MessagePackWriter(dst);
                (typeof(UnsafeMemory32).GetMethod("WriteRaw" + i).CreateDelegate(typeof(WriteDelegate)) as WriteDelegate).Invoke(ref dstWriter, src);
                dstWriter.Flush();
                dst.Length.Is(i);
                src.AsSpan().SequenceEqual(CodeGenHelpers.GetSpanFromSequence(dst.AsReadOnlySequence)).IsTrue();
            }

            // x64
            for (int i = 1; i <= MessagePackRange.MaxFixStringLength; i++)
            {
                var src = Enumerable.Range(0, i).Select(x => (byte)x).ToArray();
                var dst = new Sequence<byte>();
                var dstWriter = new MessagePackWriter(dst);
                (typeof(UnsafeMemory64).GetMethod("WriteRaw" + i).CreateDelegate(typeof(WriteDelegate)) as WriteDelegate).Invoke(ref dstWriter, src);
                dstWriter.Flush();
                dst.Length.Is(i);
                src.AsSpan().SequenceEqual(CodeGenHelpers.GetSpanFromSequence(dst.AsReadOnlySequence)).IsTrue();
            }
        }

#endif
    }
}


  >>Kill the |cRXP_ENEMY_Razormane Poacher|r that spawns. Loot him for |T134419:0|t[|cRXP_FRIENDLY_Rune of Marksmanship|r]
    .collect 206155,1 --Rune of Marksmanship (1)
    .mob Rustling Bush
    .mob Razormane Poacher
    .train 410113,1
step
    #season 2
    .train 410113 >>Use the |T134419:0|t[|cRXP_FRIENDLY_Rune of Marksmanship|r]
    .use 206155
    .itemcount 206155,1
]])

RXPGuides.RegisterGuide([[
#classic
<< Horde Hunter SoD
#group RestedXP Rune & Books Guide
#subgroup Chest
#name Master Marksman - 6 (Mulgore)
#title Master Marksman

    --Rune of Master Marksman

step
    #season 2
    .goto Mulgore,59.02,54.36
    >>Cast |T132212:0|t[Hunter's Mark] on the |cRXP_ENEMY_Rustling Bush|r
    >>Kill the |cRXP_ENEMY_Venture Co. Poacher|r that spawns. Loot him for |T134419:0|t[|cRXP_FRIENDLY_Rune of Marksmanship|r]
    .collect 206155,1 --Rune of Marksmanship (1)
    .mob Rustling Bush
    .mob Venture Co. Poacher
    .train 410113,1
step
    #season 2
    .train 410113 >>Use the |T134419:0|t[|cRXP_FRIENDLY_Rune of Marksmanship|r]
    .use 206155
    .itemcount 206155,1
]])

RXPGuides.RegisterGuide([[
#classic
<< Alliance Hunter SoD
#group RestedXP Rune & Books Guide
#subgroup Chest
#name Master Marksman - 6 (Dun Morogh)
#title Master Marksman

    --Rune of Master Marksman

step
    #season 2
    .goto Dun Morogh,28.852,49.859
    >>Cast |T132212:0|t[Hunter's Mark] on the |cRXP_ENEMY_Rustling Bush|r
    >>Kill the |cRXP_ENEMY_Razormane Poacher|r that spawns. Loot him for |T134419:0|t[|cRXP_FRIENDLY_Rune of Marksmanship|r]
    .collect 206155,1 --Rune of Marksmanship (1)
    .mob Rustling Bush
    .mob Razormane Poacher
    .train 410113,1
step
    #season 2
    .cast 402265 >>Use the |T134419:0|t[|cRXP_FRIENDLY_Rune of Marksmanship|r]
    .use 206155
    .train 410113,1
]])

RXPGuides.RegisterGuide([[
#classic
<< Alliance Hunter SoD
#group RestedXP Rune & Books Guide
#subgroup Chest
#name Master Marksman - 6 (Teldrassil)
#title Master Marksman

    --Rune of Master Marksman

step
    #season 2
    .goto Teldrassil,46.6,46.3
    >>Cast |T132212:0|t[Hunter's Mark] on the |cRXP_ENEMY_Rustling Bush|r
    >>Kill the |cRXP_ENEMY_Fallenroot Poacher|r that spawns. Loot him for |T134419:0|t[|cRXP_FRIENDLY_Rune of Marksmanship|r]
    .collect 206155,1 --Rune of Marksmanship (1)
    .mob Rustling Bush
    .mob Fallenroot Po


stream ----------------------------------------------------
* peek input/output stream of stream server
* args   : strsvr_t *svr    IO  stream sever struct
*          uint8_t *buff    O   stream buff
*          int    nmax      I   buffer size (bytes)
* return : stream size (bytes)
*-----------------------------------------------------------------------------*/
extern int strsvrpeek(strsvr_t *svr, uint8_t *buff, int nmax)
{
    int n;

    if (!svr->state) return 0;

    lock(&svr->lock);
    n=svr->npb<nmax?svr->npb:nmax;
    if (n>0) {
        memcpy(buff,svr->pbuf,n);
    }
    if (n<svr->npb) {
        memmove(svr->pbuf,svr->pbuf+n,svr->npb-n);
    }
    svr->npb-=n;
    unlock(&svr->lock);
    return n;
}


var nativeContent = scrollView.PresentedContent.ToPlatform(handler.MauiContext);

			if (FindInsetPanel(handler) is ContentViewGroup currentPaddingLayer)
			{
				if (currentPaddingLayer.ChildCount == 0 || currentPaddingLayer.GetChildAt(0) != nativeContent)
				{
					currentPaddingLayer.RemoveAllViews();
					currentPaddingLayer.AddView(nativeContent);
				}
			}
			else
			{
				InsertInsetView(handler, scrollView, nativeContent, crossPlatformLayout);
			}
		}

		static void InsertInsetView(IScrollViewHandler handler, IScrollView scrollView, View nativeContent, ICrossPlatformLayout crossPlatformLayout)
		{
			if (scrollView.PresentedContent == null || handler.MauiContext?.Context == null)
			{
				return;
			}

			var paddingShim = new ContentViewGroup(handler.MauiContext.Context)
			{
				CrossPlatformLayout = crossPlatformLayout,
				Tag = InsetPanelTag
			};

			handler.PlatformView.RemoveAllViews();
			paddingShim.AddView(nativeContent);
			handler.PlatformView.SetContent(paddingShim);
		}

		Size ICrossPlatformLayout.CrossPlatformMeasure(double widthConstraint, double heightConstraint)
		{
			var scrollView = Vi


using System.ComponentModel;
using TAC_COM.Models.Interfaces;
using TAC_COM.Utilities;

namespace TAC_COM.ViewModels
{
    /// <summary>
    /// Viewmodel to expose the <see cref="KeybindManager"/>
    /// properties to the <see cref="Views.KeybindWindowView"/>.
    /// </summary>
    public class KeybindWindowViewModel : ViewModelBase, IDisposable
    {
        /// <summary>
        /// Gets or sets the underlying <see cref="IKeybindManager"/>
        /// to which all data bindings occur.
        /// </summary>
        public IKeybindManager KeybindManager { get; set; }

        private string? newKeybindName;

        /// <summary>
        /// Gets or sets the string value representing
        /// the proposed new keybind name.
        /// </summary>
        public string? NewKeybindName
        {
            get => newKeybindName;
            set
            {
                newKeybindName = "[ " + value + " ]";
                OnPropertyChanged(nameof(NewKeybindName));
            }
        }

        /// <summary>
        /// Gets or sets the value representing if the
        /// new keybind should be allowed to reach
        /// other applications.
        /// </summary>
        public bool PassthroughState
        {
            get => KeybindManager.PassthroughState;
            set
            {
                KeybindManager.PassthroughState = value;
                OnPropertyChanged(nameof(PassthroughState));
            }
        }

        /// <summary>
        /// <see cref="RelayCommand"/> to confirm and close the new keybind
        /// dialog. Bound to the "Confirm" button in the
        /// <see cref="Views.KeybindWindowView"/>.
        /// </summary>
        public RelayCommand CloseKeybindDialog => new(execute => ExecuteCloseKeybindDialog());


java.io.ByteArrayInputStream
import java.security.cert.CertificateFactory
import java.security.cert.X509Certificate

object X509Helper {
  private val certificateFactory = CertificateFactory.getInstance("X.509")

  fun hostnames(certificate: X509Certificate): Sequence<String> =
    (sequenceOf(certificate.subjectX500Principal.commonName) + subjectAlternativeNames(certificate))
      .filterNotNull()
      .distinct()

  fun subjectAlternativeNames(certificate: X509Certificate): Sequence<String> =
    certificate.subjectAlternativeNames.orEmpty().asSequence().mapNotNull {
      val type = it[0] as? Int
      val name = it[1] as? String
      if (type != null && name != null) Pair(type, name)
      else null
    }.filter { (type, _) ->
      // 2 is DNS Name
      type == 2
    }.map { (_, name) ->
      name
    }

  fun convert(certificate: javax.security.cert.X509Certificate) =
    certificateFactory.generateCertificate(ByteArrayInputStream(certificate.encoded)) as? X509Certificate

  fun convert(chain: Array<out javax.security.cert.X509Certificate>): Array<X509Certificate>? =
    chain.map { convert(it) ?: return null }.toTypedArray()

  val COMMON_NAME = Regex("""(?:^|,\s?)(?:CN=("(?:[^"]|"")+"|[^,]+))""")
  val ORGANIZATION = Regex("""(?:^|,\s?)(?:O=("(?:[^"]|"")+"|[^,]+))""")
  val ORGANIZATIONAL_UNIT = Regex("""(?:^|,\s?)(?:OU=("(?:[^"]|"")+"|[^,]+))""")
}
/*
 * Quasseldroid - Quassel client for Android
 *
 * Copyright (c) 2020 Janne Mareike Koschinski
 * Copyright (c) 2020 The Quassel Project
 *
 * This program is free software: you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 3 as published
 * by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License along
 * with this program. If not, see <http://www.gnu.org/licenses/>.
 */

package de.kuschku.libquassel.session

import de.kuschku.libquassel.protocol.message.HandshakeMessage

interface AuthHandler {
  fun handle(f: HandshakeMessage.ClientInit) = false
  fun handle(f: HandshakeMessage.ClientInitReject) = false
  fun handle(f: HandshakeMessage.ClientInitAck) = false
  fun handle(f: HandshakeMessage.CoreSetupData) = false
  fun handle(f: HandshakeMessage.CoreSetupReject) = false
  fun handle(f: HandshakeMessage.CoreSetupAck) = false
  fun handle(f: HandshakeMessage.ClientLogin) = false
  fun handle(f: HandshakeMessage.ClientLoginReject) = false
  fun handle(f: HandshakeMessage.ClientLoginAck) = false
  fun handle(f: HandshakeMessage.SessionInit) = false

  fun handle(f: HandshakeMessage): Boolean = when (f) {
    is HandshakeMessage.ClientInit        -> handle(f)
    is HandshakeMessage.ClientInitReject  -> handle(f)
    is HandshakeMessage.ClientInitAck     -> handle(f)
    is HandshakeMessage.CoreSetupData     -> handle(f)
    is HandshakeMessage.CoreSetupReject   -> handle(f)
    is HandshakeMessage.CoreSetupAck      -> handle(f)
    is HandshakeMessage.ClientLogin       -> handle(f)
    is HandshakeMessage.ClientLoginReject -> handle(f)
    is HandshakeMessage.ClientLogin


local Tract = {}
Tract["noise"] = {}
Tract["noise"]["S"] = {}
Tract["noise"]["S"]["freqs"] = {}
Tract["noise"]["S"]["freqs"][1] = 2500
Tract["noise"]["S"]["freqs"][2] = 7500
Tract["noise"]["S"]["bw"] = {}
Tract["noise"]["S"]["bw"][1] = 0
Tract["noise"]["S"]["bw"][2] = 2
Tract["noise"]["S"]["pos"] = 15
Tract["noise"]["F"] = {}
Tract["noise"]["F"]["freqs"] = {}
Tract["noise"]["F"]["freqs"][1] = 2500
Tract["noise"]["F"]["freqs"][2] = 7500
Tract["noise"]["F"]["bw"] = {}
Tract["noise"]["F"]["bw"][1] = 1
Tract["noise"]["F"]["bw"][2] = 0.1
Tract["noise"]["F"]["pos"] = 16
Tract["rate"] = {}
Tract["rate"]["K"] = 0
Tract["rate"]["M"] = 0.05
Tract["rate"]["N"] = 0.05
Tract["rate"]["R"] = 0
Tract["rate"]["T"] = 0
Tract["rate"]["B"] = 0
Tract["rate"]["P"] = 0
Tract["gains"] = {}
Tract["gains"]["K"] = 0.50118723362727
Tract["gains"]["O"] = 0.50118723362727
Tract["gains"]["L"] = 1
Tract["gains"]["E"] = 1.4125375446228
Tract["gains"]["I"] = 1
Tract["gains"]["M"] = 0.50118723362727
Tract["gains"]["U"] = 0.50118723362727
Tract["gains"]["A"] = 1.7782794100389
Tract["gains"]["N"] = 0.70794578438414
Tract["gains"]["B"] = 0
Tract["plosive"] = {}
Tract["plosive"]["K"] = 0.17782794100389
Tract["plosive"]["R"] = 0
Tract["plosive"]["B"] = 0.5
Tract["plosive"]["T"] = 1
Tract["plosive"]["P"] = 1
Tract["len"] = {}
Tract["len"]["K"] = 15.714
Tract["len"]["I2"] = 15.003
Tract["len"]["N"] = 15.714
Tract["len"]["M"] = 15.714
Tract["len"]["L"] = 16.425
Tract["len"]["Oorig"] = 15.714
Tract["len"]["E"] = 14.292
Tract["len"]["I"] = 15.003
Tract["len"]["AE"] = 15.003
Tract["len"]["Lorig"] = 16.425
Tract["len"]["U"] = 16.425
Tract["len"]["U1"] = 15.714
Tract["len"]["A"] = 15.714
Tract["len"]["A1"] = 15.714
Tract["len"]["O"] = 15.714
Tract["area1len"] = 7.3142857142857
Tract["glot"] = {}
Tract["glot"]["T"] = 0
Tract["glot"]["F"] = 0
Tract["glot"]["S"] = 0.5
Tract["glo


SEQUENCER then
    renoise.app():show_status("Please select a normal sequencer track. Aborting finalrecord.")
    print("  Current track not a sequencer track, aborting finalrecord.")
    cleanupMonitorAndVars()
    return
  end

  local pattern_idx  = s.selected_pattern_index
  local pattern_track = s.patterns[pattern_idx].tracks[curr_track_idx]
  local line1 = pattern_track.lines[1]

  -- B) If we used line input, remove it
  if record_use_lineinput then
    for i, device in ipairs(curr_track.devices) do
      if (device.name == "#Line Input") then
        curr_track:delete_device_at(i)
        print("  Removed #Line Input from track.")
        break
      end
    end
  end

  -- C) If we used metronome, turn it off
  if record_use_metronome then
    s.transport.metronome_enabled = false
    print("  Turned OFF the metronome.")
  end

  ------------------------------------------------------------------------------
  -- D) Place the note in row1. If row1 is full (meaning record_max_columns used),
  --    create a new track. Then rename track & instrument. Also do sample trimming.
  ------------------------------------------------------------------------------
  local right_instrument_value = s.selected_instrument_index - 1
  local target_column = 1

  -- We search only up to record_max_columns
  for i = 1, record_max_columns do
    if line1.note_columns[i].note_string ~= "---" then
      target_column = i + 1
    end
  end

  -- If target_column > record_max_columns => row1 is "full"
  if target_column > record_max_columns then
    local new_track_index = curr_track_idx + 1
    if new_track_index > (#s.tracks + 1) then
      new_track_index = #s.tracks + 1
    end

    s:insert_track_at(new_track_index)
    s.selected_track_index = new_track_index
    print(("  The old track is full (row1 has %d used columns). " ..
          "Created new track AFTER old track at index %d."):
          format(record_max_columns, new_track_index))

    local new_track = s.selected_track
    if new_track.type ~= renoise.Track.TRACK_TYPE_SEQUENCER then
      renoise.app():show_status("New track is not a sequencer track. Aborting note placement.")
      print("  New track is not a sequencer track, aborting note placement.")
      cleanupMonitorAndVars()
      return
    end

    local new_pattern_track = s.patterns[pattern_idx].tracks[new_track_index]
    local new_line1 = new_pattern_track.lines[1]

    -- Place note in col1
    new_line1.note_columns[1].note_string      = "C-4"
    new_line1.note_columns[1].instrument_value = right_instrument_value
    new_line1.effect_columns[1].number_string  = "0G"
    new_line1.effect_columns[1].amount_string  = "01"

    -- Visible columns = 1 (a brand new track normally starts with 1 column)
    s.tracks[new_track_index].visible_note_columns = 1
    local col_count = s.tracks[new_track_index].visible_note_columns
    s.tracks[new_track_index].name = ("Overdub%02d"):format(col_count)

    local pat_length  = s.patterns[s.selected_pattern_index].number_of_lines
    local current_bpm = math.floor(s.transport.bpm)
    local current_lpb = s.transport.lpb
    local new_instr_name =
      ("Overdub%02d PTN:%d BPM:%d LPB:%d"):format(col_count, pat_length, current_bpm, current_lpb)

    s.instruments[s.selected_instrument_index].name = new_instr_name

    print(("  Placed C-4 (instr %d) in col1 of new track's row1. " ..
           "Track named '%s', instrument named '%s'."):


71_02249990
	add r0, r4, #0
	bl Heap_Free
_022494FE:
	pop {r4, pc}
	thumb_func_end ov71_022494D0

	thumb_func_start ov71_02249500
ov71_02249500: ; 0x02249500
	push {r3, r4, r5, lr}
	add r4, r1, #0
	ldr r2, [r4]
	add r5, r0, #0
	cmp r2, #2
	bhs _0224952E
	lsl r3, r2, #2
	ldr r2, _02249534 ; =ov71_0224BD7C
	add r1, r5, #4
	ldr r2, [r2, r3]
	blx r2
	cmp r0, #0
	beq _02249524
	ldr r0, [r4]
	add r0, r0, #1
	str r0, [r4]
	mov r0, #0
	str r0, [r5, #4]
_02249524:
	add r0, r5, #0
	bl ov71_02249538
	mov r0, #0
	pop {r3, r4, r5, pc}
_0224952E:
	mov r0, #1
	pop {r3, r4, r5, pc}
	nop
_02249534: .word ov71_0224BD7C
	thumb_func_end ov71_02249500

	thumb_func_start ov71_02249538
ov71_02249538: ; 0x02249538
	push {r4, lr}
	add r4, r0, #0
	ldr r0, [r4, #0x28]
	cmp r0, #0
	beq _02249554
	bl G3X_Reset
	ldr r0, [r4, #0x28]
	bl ov71_022474CC
	mov r0, #0
	add r1, r0, #0
	bl RequestSwap3DBuffers
_02249554:
	pop {r4, pc}
	.balign 4, 0
	thumb_func_end ov71_02249538

	thumb_func_start ov71_02249558
ov71_02249558: ; 0x02249558
	push {r3, r4, lr}
	sub sp, #0xc
	add r4, r0, #0
	bl ov71_02249670
	add r0, r4, #0
	bl ov71_022497E0
	add r0, r4, #0
	bl ov71_022498F0
	mov r2, #0
	ldr r0, _02249598 ; =ov71_02249C98
	add r1, r4, #0
	str r2, [r4, #0xc]
	bl SysTask_CreateOnVWaitQueue
	mov r0, #3
	str r0, [sp]
	mov r1, #1
	str r1, [sp, #4]
	mov r0, #0x39
	str r0, [sp, #8]
	ldr r3, _0224959C ; =0x00007FFF
	mov r0, #0
	add r2, r1, #0
	bl BeginNormalPaletteFade
	mov r0, #1
	add sp, #0xc
	pop {r3, r4, pc}
	nop
_02249598: .word ov71_02249C98
_0224959C: .word 0x00007FFF
	thumb_func_end ov71_02249558

	thumb_func_start ov71_022495A0
ov71_022495A0: ; 0


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

PACHI FEVER / SANKI DENSHI KOGYO

DORE GA CPU ? <- where's the CPU?

GEN6480830 (TEXAS INSTRUMENTS)
XTAL:12.000MHZ
RY050012   (TEXAS INSTRUMENTS)
XTAL:10.738MHZ

SOUND   :MSM5205 & ?

DIP SWITCH:8BIT x 3

============================================================================

Skeleton driver, just the main CPU was identified (TMS9900). Can't get it
to upload a vram / blitter list at all :-/
Many thanks to Olivier Galibert and Wilbert Pol for the identify effort ;-)

***************************************************************************/
#if 0

#include "driver.h"
#include "cpu/tms9900/tms9900.h"
#include "sound/msm5205.h"

static VIDEO_START( pachifev )
{

}

static VIDEO_UPDATE( pachifev )
{
	return 0;
}

static ADDRESS_MAP_START( pachifev_map, ADDRESS_SPACE_PROGRAM, 16 )
	AM_RANGE(0x0000, 0xbfff) AM_ROM
	AM_RANGE(0xe000, 0xffff) AM_RAM
ADDRESS_MAP_END

static ADDRESS_MAP_START( pachifev_io, ADDRESS_SPACE_IO, 8 )
//  AM_RANGE(0x0f70, 0x0f70) AM_WRITE()
//  AM_RANGE(0x0f71, 0x0f71) AM_WRITE()
ADDRESS_MAP_END

static INPUT_PORTS_START( pachifev )
INPUT_PORTS_END

static UINT32 adpcm_pos;
//static UINT8 adpcm_idle;

static void pf_adpcm_int(const device_config *device)
{
	static UINT8 trigger,adpcm_data;

	if (adpcm_pos >= 0x4000/* || adpcm_idle*/)
	{
		//adpcm_idle = 1;
		msm5205_reset_w(device,1);
		trigger = 0;
	}
	else
	{
		UINT8 *ROM = memory_region(device->machine, "adpcm");

		adpcm_data = ((trigger ? (ROM[adpcm_pos] & 0x0f) : (ROM[adpcm_pos] & 0xf0)>>4) );
		msm5205_data_w(device,adpcm_data & 0xf);
		trigger^=1;
		if(trigger == 0)
		{
			adpcm_pos++;
			//if((ROM[adpcm_pos] & 0xff) == 0xff)
			//  adpcm_idle = 1;
		}
	}
}

static const msm5205_interface msm5205_config =
{
	pf_adpcm_int,	/* interrupt function */
	MSM5205_S48_4B	/* 8kHz */
};

static MACHINE_RESET( pachifev )
{
	adpcm_pos = 0;
}

static INTERRUPT_GEN( pachifev_vblank_irq )
{
}

static MACHINE_DRIVER_START( pachifev )

	/* basic machine hardware */
	MDRV_CPU_ADD("maincpu", TMS9900, 12000000/4) /* unknown divider */
	MDRV_CPU_PROGRAM_MAP(pachifev_map)
	MDRV_CPU_IO_MAP(pachifev_io)
	MDRV_CPU_VBLANK_INT("screen",pachifev_vblank_irq)

	/* video hardware */
	MDRV_SCREEN_ADD("screen", RASTER)
	MDRV_SCREEN_REFRESH_RATE(60)
	MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
	MDRV_SCREEN_FORMAT(BITMAP_FORMAT_RGB32)
	MDRV_SCREEN_SIZE(32*8, 32*8)
	MDRV_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
	MDRV_PALETTE_LENGTH(512)
	MDRV_MACHINE_RESET(pachifev)

	MDRV_VIDEO_START(pachifev)
	MDRV_VIDEO_UPDATE(pachifev)

	/* sound hardware */
	MDRV_SPEAKER_STANDARD_MONO("mono")
	MDRV_SOUND_ADD("adpcm", MSM5205, 288000)
	MDRV_SOUND_CONFIG(msm5205_config)
	MDRV_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_DRIVER_END

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

  Game driver(s)

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

ROM_START( pachifev )
	ROM_REGION( 0x10000, "maincpu", 0 )
	ROM_LOAD( "ic42.00",   0x00000, 0x2000, CRC(9653546e) SHA1(0836d01118241d38bbf61732275afe3ae47d0622) )
	ROM_LOAD( "ic43.01",   0x02000, 0x2000, CRC(5572dce5) SHA1(fad45b33e095ac6e3ed3d7cdc3d8678c153a1b38) )
	ROM_LOAD( "ic44.02",   0x04000, 0x2000, CRC(98b3841f) SHA1(0563139877bf01e1673767ee1798bbcf68adadea) )
	ROM_LOAD( "ic45.03",   0x06000, 0x2000, CRC(6b76e6fa) SHA1(5be10ab0b76e2061fc7e9c77649572955bee7661) )
	ROM_LOAD( "ic46.04",   0x08000, 0x2000, CRC(1c8c66d7) SHA1(3b9b05f35b20d798651c7d5fdb35e6af956615a1) )
	ROM_LOAD( "ic48.50",   0x0a000, 0x2000, CRC(1c8c66d7) SHA1(3b9b05f35b20d798651c7d5fdb35e6af956615a1) )

	ROM_REGION( 0x4000, "adpcm", 0 ) //msm code
	ROM_LOAD( "ic66.10",   0x0000, 0x2000, CRC(217c573e) SHA1(6fb90865d1d81f5ea00fa7916d0ccb6756ef5ce5) )
ROM_END

static DRIVER_INIT( pachifev )
{
}
#endif

//GAME( 1983, pachifev,  0,       pachifev,  pachifev,  pachifev, ROT0, "Sanki Denshi Kogyo", "Pachi Fever", GAME_NOT_WORKING )


RULE_SET_ID
import com.saveourtool.diktat.common.config.rules.RulesConfig
import com.saveourtool.diktat.ruleset.constants.Warnings.BLANK_LINE_BETWEEN_PROPERTIES
import com.saveourtool.diktat.ruleset.constants.Warnings.WRONG_ORDER_IN_CLASS_LIKE_STRUCTURES
import com.saveourtool.diktat.ruleset.rules.chapter3.ClassLikeStructuresOrderRule

import com.saveourtool.diktat.api.DiktatError
import org.junit.jupiter.api.Test

class DiktatRuleTest : LintTestBase(::ClassLikeStructuresOrderRule) {
    private val ruleId = "$DIKTAT_RULE_SET_ID:${ClassLikeStructuresOrderRule.NAME_ID}"
    private val codeTemplate = """
        |class Example {
        |   private val FOO = 42
        |   private val log = LoggerFactory.getLogger(Example.javaClass)
        |   // blank line between property
        |   private val some = 2
        |}
    """.trimMargin()
    private val rulesConfigAllDisabled = listOf(
        RulesConfig(BLANK_LINE_BETWEEN_PROPERTIES.name, enabled = false),
        RulesConfig(WRONG_ORDER_IN_CLASS_LIKE_STRUCTURES.name, enabled = false)
    )
    private val rulesConfigOneRuleIsEnabled = listOf(
        RulesConfig(BLANK_LINE_BETWEEN_PROPERTIES.name, enabled = true),
        RulesConfig(WRONG_ORDER_IN_CLASS_LIKE_STRUCTURES.name, enabled = false)
    )

    @Test
    fun `check that if all inspections are disabled then rule won't run`() {
        lintMethod(codeTemplate, rulesConfigList = rulesConfigAllDisabled)
    }

    @Test
    fun `check that if one inspection is enabled then rule will run`() {
        lintMethod(codeTemplate,
            DiktatError(4, 4, ruleId, "${BLANK_LINE_BETWEEN_PROPERTIES.warnText()} some", true),
            rulesConfigList = rulesConfigOneRuleIsEnabled
        )
    }
}
package com.saveourtool.diktat.ruleset.smoke

import com.saveourtool.diktat.ruleset.config.DiktatRuleConfigYamlReader
import com.saveourtool.diktat.ruleset.rules.DiktatRuleSetFactoryImpl
import com.saveourtool.diktat.test.framework.util.deleteIfExistsSilently

import com.charleskorn.kaml.InvalidPropertyValueException
import org.junit.jupiter.api.AfterEach
import org.junit.jupiter.api.Assertions
import org.junit.jupiter.api.BeforeEach
import org.junit.jupiter.api.Disabled
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.assertThrows

import java.io.File
import java.lang.IllegalArgumentException
import kotlin.io.path.createTempFile

class RulesConfigValidationTest {
    private lateinit var file: File

    @BeforeEach
    fun setUp() {
        file = createTempFile().toFile()
    }

    @AfterEach
    fun tearDown() {
        file.toPath().deleteIfExistsSilently()
    }

    @Test
    @Suppress("GENERIC_VARIABLE_WRONG_DECLARATION")
    fun `should throw error if name is missing in Warnings`() {
        file.writeText(
            """
                |- name: MISSING_DOC_TOP_LEVEL
                |  enabled: true
                |  configuration: {}
            """.trimMargin()
        )
        val exception = assertThrows<IllegalArgumentException> {
            diktatRuleSetFactory(diktatRuleConfigReader(file.inputStream()))
        }
        Assertions.assertEquals("Warning name <MISSING_DOC_TO


Η LocalMonero δεσμεύεται να διατηρήσει την απλότητα και την ευθύτητα της εμπειρίας συναλλαγών σας. Δεν χρησιμοποιούμε KYC/AML, ούτε σκοπεύουμε ποτέ να το κάνουμε.\n\n- Αξιόπιστο από την Κοινότητα\nΗ πλατφόρμα μας λειτουργεί για περισσότερα από τέσσερα χρόνια, επέζησε του μεγάλου κραχ της αγοράς κρυπτονομισμάτων του 2018 και μέσω της επιμελούς υπηρεσίας που προσανατολίζεται στην κοινότητα έγινε ένα από τα πιο αξιόπιστα ονόματα στην εξαιρετικά δύσπιστη κοινότητα του Monero.\n\n- Ασφαλές, Ανοιχτού Κώδικα, Με επίκεντρο το απόρρητο, Ανθεκτικό στη Λογοκρισία\nΗ εφαρμογή μας είναι δωρεάν και ανοιχτού κώδικα, γεγονός που διασφαλίζει ότι πολλά μάτια κοιτάζουν τον κώδικα της εφαρμογής για να διασφαλίσουν ότι δεν υπάρχουν κενά ασφαλείας ή διαρροές απορρήτου. Η ανοιχτή προμήθεια της εφαρμογής μας επιτρέπει επίσης σε οποιονδήποτε να έχει πρόσβαση στην εφαρμογή μας ακόμα κι αν ένα συγκεκριμένο αποθετήριο εφαρμογών λογοκρίνει την εφαρμογή. Η εφαρμογή μας λειτουργεί ακόμη και σε τηλέφωνα που έχουν αποκλειστεί πλήρως η Google. Εκτιμούμε τόσο πολύ το απόρρητό σας, δεν απαιτούμε καν να παρέχετε ένα email κατά την εγγραφή σας.\n\nΠηγαίος κώδικας: https://github.com/AgoraDesk-LocalMonero/agoradesk-app-foss\nΠαρακολούθηση προβλημάτων: https://github.com/AgoraDesk-LocalMonero/agoradesk-app-foss/issues\n\n- Stellar Support\nΗ ομάδα υποστήριξής μας είναι γρήγορη, ανταποκρίνεται και πάντα πρόθυμη να ευχαριστήσει. Δεν είχαμε ποτέ δελτίο υποστήριξης που δεν απαντήθηκε εντός 24 ωρών. Είμαστε πάντα εύκολα προσβάσιμοι μέσω των μέσων κοινωνικής δικτύωσης, ακούμε με προσήλωση τις κριτικές σας και υλοποιούμε πάντα καλές προτάσεις χρηστών σε χρόνο ρεκόρ.\n\nΜπορείτε να επικοινωνήσετε με την υποστήριξή μας στη διεύθυνση: https://localmonero.co/support\n\n- Δίκαια τέλη\nΔεν χρεώνουμε υπέρογκες προμήθειες όταν καταθέτετε ή αποσύρετε το Mon


F 9B F8 2E */	lwzx r28, r27, r31
/* 8048AE24 00486364  2C 1C 00 00 */	cmpwi r28, 0
/* 8048AE28 00486368  41 82 00 1C */	beq lbl_8048AE44
/* 8048AE2C 0048636C  7F 83 E3 78 */	mr r3, r28
/* 8048AE30 00486370  38 80 00 00 */	li r4, 0
/* 8048AE34 00486374  48 00 7C B5 */	bl func_80492AE8
/* 8048AE38 00486378  7F 83 E3 78 */	mr r3, r28
/* 8048AE3C 0048637C  48 00 8B D9 */	bl func_80493A14
/* 8048AE40 00486380  7F DB F9 2E */	stwx r30, r27, r31
lbl_8048AE44:
/* 8048AE44 00486384  3B BD 00 01 */	addi r29, r29, 1
/* 8048AE48 00486388  3B FF 00 04 */	addi r31, r31, 4
/* 8048AE4C 0048638C  2C 1D 00 08 */	cmpwi r29, 8
/* 8048AE50 00486390  41 80 FF D0 */	blt lbl_8048AE20
/* 8048AE54 00486394  39 61 00 20 */	addi r11, r1, 0x20
/* 8048AE58 00486398  48 08 C7 25 */	bl func_8051757C
/* 8048AE5C 0048639C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8048AE60 004863A0  7C 08 03 A6 */	mtlr r0
/* 8048AE64 004863A4  38 21 00 20 */	addi r1, r1, 0x20
/* 8048AE68 004863A8  4E 80 00 20 */	blr

.global func_8048AE6C
func_8048AE6C:
/* 8048AE6C 004863AC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8048AE70 004863B0  7C 08 02 A6 */	mflr r0
/* 8048AE74 004863B4  90 01 00 24 */	stw r0, 0x24(r1)
/* 8048AE78 004863B8  39 61 00 20 */	addi r11, r1, 0x20
/* 8048AE7C 004863BC  48 08 C6 BD */	bl func_80517538
/* 8048AE80 004863C0  54 9F 10 3A */	slwi r31, r4, 2
/* 8048AE84 004863C4  7C 7D 1B 78 */	mr r29, r3
/* 8048AE88 004863C8  7F C3 F8 2E */	lwzx r30, r3, r31
/* 8048AE8C 004863CC  2C 1E 00 00 */	cmpwi r30, 0
/* 8048AE90 004863D0  40 82 00 0C */	bne lbl_8048AE9C
/* 8048AE94 004863D4  38 60 00 00 */	li r3, 0
/* 8048AE98 004863D8  48 00 00 3C */	b lbl_8048AED4
lbl_8048AE9C:
/* 8048AE9C 004863DC  2C 05 00 00 */	cmpwi r5, 0
/* 8048AEA0 004863E0  40 82 00 14 */	bne lbl_8048AEB4
/* 8048AEA4 004863E4  7F C3 F3 78 */	mr r3, r30
/* 8048AEA8 004863E8  38 80 00 00 */	li r4, 0
/* 8048AEAC 004863EC  48 00 7C 3D */	bl func_80492AE8
/* 8048AEB


ic static BurpCallbacks getInstance() {
//        if (burpCallbacks == null) {
//            burpCallbacks = new BurpCallbacks();
//        }
//        return burpCallbacks;
//    }
//
//
//
//
//
//    private boolean isRedirect(byte[] response) {
//        IResponseInfo responseInfo = BurpCallbacks.getInstance().getBurp().getHelpers().analyzeResponse(response);
//        if (responseInfo.getStatusCode() == 302) {
//            return true;
//        } else {
//            return false;
//        }
//    }
//
//
//
//    private URL followRedirectUrl(String redirStr, IHttpRequestResponse message) {
//        // get old url
//        System.out.println("FOLLOW!");
//        IRequestInfo requestInfo = BurpCallbacks.getInstance().getBurp().getHelpers().analyzeRequest(message);
//        URL origUrl = requestInfo.getUrl();
//
//        // create new url
//        URL url;
//        try {
//            url = new URL(origUrl, redirStr);
//        } catch (MalformedURLException ex) {
//            BurpCallbacks.getInstance().print("302 found, but could not convert location header!");
//            return null;
//        }
//
//        return url;
//    }
//
//
//
//
//}
package com.autoDecoder.util;

import java.math.BigInteger;

public class Util {
    /**
     * 整形转换成网络传输的字节流（字节数组）型数据
     *
     * @param num 一个整型数据
     * @return 4个字节的自己数组
     */
    public static byte[] intToBytes(int num) {
        byte[] bytes = new byte[4];
        bytes[0] = (byte) (0xff & (num >> 0));
        bytes[1] = (byte) (0xff & (num >> 8));
        bytes[2] = (byte) (0xff & (num >> 16));
        bytes[3] = (byte) (0xff & (num >> 24));
        return bytes;
    }

    /**
     * 四个字节的字节数据转换成一个整形数据
     *
     * @param bytes 4个字节的字节数组
     * @return 一个整型数据
     */
    public static int byteToInt(byte[] bytes) {
        int num = 0;
        int temp;
        temp = (0x000000ff & (bytes[0])) << 0;
        num = num | temp;
        temp = (0x000000ff & (bytes[1])) << 8;
        num = num | temp;
        temp = (0x000000ff & (bytes[2])) << 16;
        num = num | temp;
        temp = (0x000000ff & (bytes[3])) << 24;
        num = num | temp;
        return num;
    }

    /**
     * 长整形转换成网络传输的字节流（字节数组）型数据
     *
     * @param num 一个长整型数据
     * @return 4个字节的自己数组
     */
    public static byte[] longToBytes(long num) {
        byte[] bytes = new byte[8];
        for (int i = 0; i < 8; i++) {
            bytes[i] = (byte) (0xff & (num >> (i * 8)));
        }

        return bytes;
    }

    /**
     * 大数字转换字节流（字节数组）型数据
     *
     * @param n
     * @return
     */
    public static byte[] byteConvert32Bytes(BigInteger n) {
        byte tmpd[] = (byte[]) null;
        if (n == null) {
            return null;
        }

        if (n.toByteArray().length == 33) {
            tmpd = new byte[32];
            System.arraycopy(n.toByteArray(), 1, tmpd, 0, 32);
        } else if (n.toByteArray().length == 32) {
            tmpd = n.toByteArray();
        } else {
            tmpd = new byte[32];
            for (int i = 0; i < 32 - n.toByteArray().length; i++) {
                tmpd[i] = 0;
            }
            System.arraycopy(n.toByteArray(),


nome'] = this.nome;
		jsonDados['codigoBanco'] = this.codigoBanco;
		jsonDados['codigoAgencia'] = this.codigoAgencia;
		jsonDados['conta'] = this.conta;
		jsonDados['numero'] = this.numero ?? 0;
		jsonDados['dataEmissao'] = this.dataEmissao != null ? DateFormat('yyyy-MM-ddT00:00:00').format(this.dataEmissao) : null;
		jsonDados['bomPara'] = this.bomPara != null ? DateFormat('yyyy-MM-ddT00:00:00').format(this.bomPara) : null;
		jsonDados['dataCompensacao'] = this.dataCompensacao != null ? DateFormat('yyyy-MM-ddT00:00:00').format(this.dataCompensacao) : null;
		jsonDados['valor'] = this.valor;
		jsonDados['custodiaData'] = Biblioteca.removerMascara(this.custodiaData);
		jsonDados['custodiaTarifa'] = this.custodiaTarifa;
		jsonDados['custodiaComissao'] = this.custodiaComissao;
		jsonDados['descontoData'] = this.descontoData != null ? DateFormat('yyyy-MM-ddT00:00:00').format(this.descontoData) : null;
		jsonDados['descontoTarifa'] = this.descontoTarifa;
		jsonDados['descontoComissao'] = this.descontoComissao;
		jsonDados['valorRecebido'] = this.valorRecebido;
		jsonDados['pessoa'] = this.pessoa == null ? null : this.pessoa.toJson;

		return jsonDados;
	}

	String objetoEncodeJson(FinChequeRecebido objeto) {
	  final jsonDados = objeto.toJson;
	  return json.encode(jsonDados);
	}

}import 'package:test/test.dart';

/// A [Matcher] used to compare two [double]s value within some tolerated error.
///
/// Comparing floating point values using `operator==` can fail due to precision
/// loss given by floating point arithmetics.
///
/// This matcher makes sure that at least the first [precision] digits of the
/// tested value are equal.
class MoreOrLessEquals extends Matcher {
  /// The value to be tested
  final double value;

  /// The accuracy of the test
  final double precision;
  const MoreOrLessEquals(
    this.value, {
    this.precision = 1.0e-12,
  }) : assert(precision >= 0, 'The precision must be >= 0');

  @override
  bool matches(Object? item, Map<Object?, Object?> matchState) {
    if (item is double) {
      return (item - value).abs() <= precision;
    }

    return item == value;
  }

  @override
  Description describe(Description description) =>
      description.add('$value (±$precision)');

  @override
  Description describeMismatch(
    Object? item,
    Description mismatchDescription,
    Map<Object?, Object?> matchState,
    bool verbose,
  ) =>
      super.describeMismatch(
        item,
        mismatchDescription,
        matchState,
        verbose,
      )..add('$item is not in the range of $value (±$precision).');
}
import 'package:equations/equations.dart';
import 'package:test/test.dart';

void main() {
  group("Testing the 'SplineInterpolation' class", () {
    test(
      'Making sure that, when the given nodes are monotonic, interpolation '
      'happens with the "MonotoneCubicSpline" class.',
      () {
        const spline = SplineInterpolation(
          nodes: [
            InterpolationNode(x: 3, y: -2),
            InterpolationNode(x: 4, y: 1),
            InterpolationNode(x: 7, y: 3),
          ],
        );

        expect(spline.comput


	}
			}.use {
				client() //
					.files() //
					.uploadBuilder(file.path) //
					.withClientModified(data.modifiedDate(context).orElse(Date())) //
					.withMode(writeMode) //
					.uploadAndFinish(it)
			}
		} ?: Timber.tag("").e("InputStream shouldn't be null")
	}

	@Throws(AuthenticationException::class, DbxException::class, IOException::class)
	private fun chunkedUploadFile(file: DropboxFile, data: DataSource, progressAware: ProgressAware<UploadState>, writeMode: WriteMode, size: Long) {
		// Assert our file is at least the chunk upload size. We make this assumption in the code
		// below to simplify the logic.
		if (size < CHUNKED_UPLOAD_CHUNK_SIZE) {
			throw FatalBackendException("File too small, use uploadFile() instead.")
		}
		var uploaded = 0L
		var thrown: DbxException? = null
		data.open(context)?.use {

			// Chunked uploads have 3 phases, each of which can accept uploaded bytes:
			//
			// (1) Start: initiate the upload and get an upload session ID
			// (2) Append: upload chunks of the file to append to our session
			// (3) Finish: commit the upload and close the session
			//
			// We track how many bytes we uploaded to determine which phase we should be in.
			var sessionId: String? = null
			for (i in 0 until CHUNKED_UPLOAD_MAX_ATTEMPTS) {
				if (i > 0) {
					Timber.v("Retrying chunked upload (" + (i + 1) + " / " + CHUNKED_UPLOAD_MAX_ATTEMPTS + " attempts)")
				}
				try {
					// if this is a retry, make sure seek to the correct offset
					it.skip(uploaded)

					// (1) Start
					if (sessionId == null) {
						sessionId = client() //
							.files() //
							.uploadSessionStart() //
							.uploadAndFinish(object : TransferredBytesAwareInputStream(it) {
								override fun bytesTransferred(transferred: Long) {
									progressAware.onProgress( //
										Progress.progress(UploadState.upload(file)) //
											.between(0) //
											.and(size) //
											.withValue(transferred)
									)
								}
							}, CHUNKED_UPLOAD_CHUNK_SIZE).sessionId
						uploaded += CHUNKED_UPLOAD_CHUNK_SIZE
						progressAware.onProgress( //
							Progress.progress(UploadState.upload(file)) //
								.between(0) //
								.and(size) //
								.withValue(uploaded)
						)
					}
					var cursor = UploadSessionCursor(sessionId, uploaded)

					// (2) Append
					while (size - uploaded > CHUNKED_UPLOAD_CHUNK_SIZE) {
						val fullyUploaded = uploaded
						client() //
							.files() //
							.uploadSessionAppendV2(cursor) //
							.uploadAndFinish(object : TransferredBytesAwareInputStream(it) {
								override fun bytesTransferred(transferred: Long) {
									progressAware.onProgress( //
										Progress.progress(UploadState.upload(file)) //
											.between(0) //
											.and(size) //
											.withValue(fullyUploaded + transferred)
									)
								}
							}, CHUNKED_UPLOAD_CHUNK_SIZE)
						uploaded += CHUNKED_UPLOAD_CHUNK_SIZE
						progressAware.onProgress( //
							Progress.progress(UploadState.upload(file)) //
								.between(0) //
								.and(size) //
								.withValue(uploaded)
						)
						cursor = UploadSessionCursor(sessionId, uploaded)
					}

					// (3) Finish
					val remaining = size - uploaded
					val commitInfo = CommitInfo //
						.newBuilder(file.path) //
						.withMode(writeMo


eader: rilapitypes.h
req.include-header: Rilapitypes.h
req.target-type: Windows
req.target-min-winverclnt:
req.target-min-winversvr:
req.kmdf-ver:
req.umdf-ver:
req.ddi-compliance:
req.unicode-ansi:
req.idl:
req.max-support:
req.namespace:
req.assembly:
req.type-library:
req.lib:
req.dll:
req.irql:
targetos: Windows
req.typenames: RILHIDECONNECTEDIDSETTINGSPARAMMASK
f1_keywords:
 - RILHIDECONNECTEDIDSETTINGSPARAMMASK
 - rilapitypes/RILHIDECONNECTEDIDSETTINGSPARAMMASK
topic_type:
 - APIRef
 - kbSyntax
api_type:
 - HeaderDef
api_location:
 - ntddrilapitypes.h
api_name:
 - RILHIDECONNECTEDIDSETTINGSPARAMMASK
---

# RILHIDECONNECTEDIDSETTINGSPARAMMASK enumeration (rilapitypes.h)

## -description

This topic supports the Windows driver infrastructure and is not intended to be used directly from your code.

## -enum-fields

### -field RIL_PARAM_HCIDS_EXECUTOR

### -field RIL_PARAM_HCIDS_STATUS

### -field RIL_PARAM_HCIDS_PROVISIONING

### -field RIL_PARAM_HCIDS_ALL

---
description: Use this topic to help manage Windows and Windows Server technologies with Windows PowerShell.
external help file: Microsoft.ConfigCI.Commands.dll-Help.xml
Module Name: ConfigCI
ms.date: 12/20/2016
online version: https://learn.microsoft.com/powershell/module/configci/convertfrom-cipolicy?view=windowsserver2016-ps&wt.mc_id=ps-gethelp
schema: 2.0.0
title: ConvertFrom-CIPolicy
---

# ConvertFrom-CIPolicy

## SYNOPSIS
Converts an .xml file that contains a Code Integrity policy into binary format.

## SYNTAX

```
ConvertFrom-CIPolicy [-XmlFilePath] <String> [-BinaryFilePath] <String> [<CommonParameters>]
```

## DESCRIPTION
The **ConvertFrom-CIPolicy** cmdlet converts an .xml file that contains a Code Integrity policy into binary format.
You can install the binary version of a policy on a computer.

## EXAMPLES

### Example 1: Converts a policy
```
PS C:\> ConvertFrom-CIPolicy -XmlFilePath ".\Policy03.xml" -BinaryFilePath "Policy03.bin"
C:\Policies\Policy03.bin
```

This command converts the policy in Policy03.xml into a binary named Policy03.bin.
The console displays the full path of the binary file.

## PARAMETERS

### -BinaryFilePath
Specifies the path for the output converted policy binary file.

```yaml
Type: String
Parameter Sets: (All)
Aliases: bin

Required: True
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -XmlFilePath
Specifies the path of the .xml policy file that this cmdlet converts.

```yaml
Type: String
Parameter Sets: (All)
Aliases: xml

Required: True
Position: 1
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False
```

### CommonParameters
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable,


riting-quiz .quiz-answer-row.furi-row{margin-bottom:12px}.writing-quiz .quiz-item{font-size:14px;position:relative;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vocab-horizontal .quiz-item-text,.writing-quiz .quiz-item-text{overflow-x:auto}.vocab-horizontal .quiz-item-text::-webkit-scrollbar,.writing-quiz .quiz-item-text::-webkit-scrollbar{width:6px;height:6px}.vocab-horizontal .quiz-item-text::-webkit-scrollbar-thumb,.writing-quiz .quiz-item-text::-webkit-scrollbar-thumb{background-color:#f93;border:none}.vocab-horizontal .quiz-item-text::-webkit-scrollbar-thumb:hover,.writing-quiz .quiz-item-text::-webkit-scrollbar-thumb:hover{background-color:#e82}.vocab-horizontal .quiz-item-text::-webkit-scrollbar-thumb:active,.writing-quiz .quiz-item-text::-webkit-scrollbar-thumb:active{background-color:#d71}.vocab-horizontal .quiz-item-text::-webkit-scrollbar-track,.writing-quiz .quiz-item-text::-webkit-scrollbar-track{background:rgba(0,0,0,.15)}.vocab-horizontal .quiz-item-text::-webkit-scrollbar-button:single-button,.writing-quiz .quiz-item-text::-webkit-scrollbar-button:single-button{background:0 0;height:0;width:0}.writing-quiz .helper-present #question-list .quiz-item[data-helper]{margin-bottom:3px}.writing-quiz .helper-hidden .quiz-item[data-helper]:before{display:none}.writing-quiz .helper-hidden .quiz-answer-row.furi-row{margin-bottom:0}.drawing-quiz .quiz-item,.drawing-zone,.writing-quiz .quiz-item,.writing-zone{text-align:center}.drawing-zone,.writing-zone{margin:3px;min-width:25px}input.writing-zone-input{font-size:14px;font-family:'メイリオ',Meiryo,Osaka,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Arial,sans-serif;text-align:center;background:#fff;border:1px solid #ccc;box-sizing:border-box;width:100%;padding:3px 0;outline:0}input.writing-zone-input:disabled{color:#333}input.writing-zone-input::placeholder{color:#bbb}input.writing-zone-input:hover{border-color:#999}input.writing-zone-input:focus{border-color:#f93}.even-width .writing-zone,.even-width .writing-zone-input,.max-width .writing-zone,.max-width .writing-zone-input{text-align:left;width:100%!important}.fill-quiz .even-width .writing-zone-input{padding:3px}.max-width .writing-zone,.max-width .writing-zone-input{text-align:center}.large-width .writing-zone,.large-width .writing-zone-input{width:90%!important}.fill-quiz .set-problem-width .block,.fill-quiz .set-problem-width .problem{width:150px}.fill-quiz .set-problem-width-med .block,.fill-quiz .set-problem-width-med .problem{width:200px}.fill-quiz .set-problem-width-large .block,.fill-quiz .set-problem-width-large .problem{width:300px}.fill-qu


0_2_EXT			= 0x8036
//UNSIGNED_BYTE_2_3_3_REV				= 0x8362
//UNSIGNED_BYTE_2_3_3_REV_EXT			= 0x8362
//UNSIGNED_SHORT_5_6_5				= 0x8363
//UNSIGNED_SHORT_5_6_5_EXT			= 0x8363
//UNSIGNED_SHORT_5_6_5_REV			= 0x8364
//UNSIGNED_SHORT_5_6_5_REV_EXT			= 0x8364
//UNSIGNED_SHORT_4_4_4_4_REV			= 0x8365
//UNSIGNED_SHORT_4_4_4_4_REV_EXT			= 0x8365
//UNSIGNED_SHORT_1_5_5_5_REV			= 0x8366
//UNSIGNED_SHORT_1_5_5_5_REV_EXT			= 0x8366
//UNSIGNED_INT_8_8_8_8_REV			= 0x8367
//UNSIGNED_INT_8_8_8_8_REV_EXT			= 0x8367
//UNSIGNED_INT_2_10_10_10_REV			= 0x8368
//UNSIGNED_INT_2_10_10_10_REV_EXT			= 0x8368
//
//###############################################################################
//
//EXT_polygon_offset enum:
//POLYGON_OFFSET_EXT				= 0x8037
//POLYGON_OFFSET_FACTOR_EXT			= 0x8038
//POLYGON_OFFSET_BIAS_EXT				= 0x8039 # 1 F
//
//###############################################################################
//
//# VERSION_1_2 enum: (Promoted for OpenGL 1.2)
//EXT_rescale_normal enum:
//RESCALE_NORMAL					= 0x803A # 1 I
//RESCALE_NORMAL_EXT				= 0x803A # 1 I
//
//###############################################################################
//
//EXT_texture enum:
//ALPHA4_EXT					= 0x803B
//ALPHA8_EXT					= 0x803C
//ALPHA12_EXT					= 0x803D
//ALPHA16_EXT					= 0x803E
//LUMINANCE4_EXT					= 0x803F
//LUMINANCE8_EXT					= 0x8040
//LUMINANCE12_EXT					= 0x8041
//LUMINANCE16_EXT					= 0x8042
//LUMINANCE4_ALPHA4_EXT				= 0x8043
//LUMINANCE6_ALPHA2_EXT				= 0x8044
//LUMINANCE8_ALPHA8_EXT				= 0x8045
//LUMINANCE12_ALPHA4_EXT				= 0x8046
//LUMINANCE12_ALPHA12_EXT				= 0x8047
//LUMINANCE16_ALPHA16_EXT				= 0x8048
//INTENSITY_EXT					= 0x8049
//INTENSITY4_EXT					= 0x804A
//INTENSITY8_EXT					= 0x804B
//INTENSITY12_EXT					= 0x804C
//INTENSITY16_EXT					= 0x804D
//RGB2_EXT					= 0x804E
//RGB4_EXT					= 0x804F
//RGB5_EXT					= 0x8050
//RGB8_EXT					= 0x8051
//RGB10_EXT					= 0x8052
//RGB12_EXT					= 0x8053
//RGB16_EXT					= 0x8054
//RGBA2_EXT					= 0x8055
//RGBA4_EXT					= 0x8056
//RGB5_A1_EXT					= 0x8057
//RGBA8_EXT					= 0x8058
//RGB10_A2