future.

Enhancements:
* [#1246][]: Add `zap/exp/zapslog` package for integration with slog.
* [#1273][]: Add `Name` to `Logger` which returns the Logger's name if one is set.
* [#1281][]: Add `zap/exp/expfield` package which contains helper methods
`Str` and `Strs` for constructing String-like zap.Fields.
* [#1310][]: Reduce stack size on `Any`.

Thanks to @knight42, @dzakaammar, @bcspragu, and @rexywork for their contributions
to this release.

[#1246]: https://github.com/uber-go/zap/pull/1246
[#1273]: https://github.com/uber-go/zap/pull/1273
[#1281]: https://github.com/uber-go/zap/pull/1281
[#1310]: https://github.com/uber-go/zap/pull/1310

## 1.24.0 (30 Nov 2022)

Enhancements:
* [#1148][]: Add `Level` to both `Logger` and `SugaredLogger` that reports the
  current minimum enabled log level.
* [#1185][]: `SugaredLogger` turns errors to zap.Error automatically.

Thanks to @Abirdcfly, @craigpastro, @nnnkkk7, and @sashamelentyev for their
contributions to this release.

[#1148]: https://github.coml/uber-go/zap/pull/1148
[#1185]: https://github.coml/uber-go/zap/pull/1185

## 1.23.0 (24 Aug 2022)

Enhancements:
* [#1147][]: Add a `zapcore.LevelOf` function to determine the level of a
  `LevelEnabler` or `Core`.
* [#1155][]: Add `zap.Stringers` field constructor to log arrays of objects
  that implement `String() string`.

[#1147]: https://github.com/uber-go/zap/pull/1147
[#1155]: https://github.com/uber-go/zap/pull/1155

## 1.22.0 (8 Aug 2022)

Enhancements:
* [#1071][]: Add `zap.Objects` and `zap.ObjectValues` field constructors to log
  arrays of objects. With these two constructors, you don't need to implement
  `zapcore.ArrayMarshaler` for use with `zap.Array` if those objects implement
  `zapcore.ObjectMarshaler`.
* [#1079][]: Add `SugaredLogger.WithOptions` to build a copy of an existing
  `SugaredLogger` with the provided options applied.
* [#1080][]: Add `*ln` variants to `SugaredLogger` for each log level.
  These functions provide a string joining behavior similar to `fmt.Println`.
* [#1088][]: Add `zap.WithFatalHook` option to control the behavior of the
  logger for `Fatal`-level log entries. This defaults to exiting the program.
* [#1108][]: Add a `zap.Must` function that you can use with `NewProduction` or
  `NewDevelopment` to panic if the system was unable to build the logger.
* [#1118][]: Add a `Logger.Log` method that allows specifying the log level for
  a statement dynamically.

Thanks to @cardil, @craigpastro, @sashamelentyev, @shota3506, and @zhupeijun
for their contributions to this release.

[#1071]: https://github.com/uber-go/zap/pull/1071
[#1079]: https://github.com/uber-go/zap/pull/1079
[#1080]: https://github.com/uber-go/zap/pull/1080
[#1088]: https://github.com/uber-go/zap/pull/1088
[#1108]: https://github.com/uber-go/zap/pull/1108
[#1118]: https://github.com/uber-go/zap/pull/1118

## 1.21.0 (7 Feb 2022)

Enh


tatic_cast<CStatic*>(GetDlgItem(IDC_ABOUT2))->SetFont(m_pBoldFont);
	static_cast<CStatic*>(GetDlgItem(IDC_ABOUT3))->SetFont(m_pBoldFont);

	return TRUE;
}

BOOL CAboutDlg::PreTranslateMessage(MSG* pMsg)
{
	m_wndToolTip.RelayEvent(pMsg);
	return CDialog::PreTranslateMessage(pMsg);
}
/*
** FamiTracker - NES/Famicom sound tracker
** Copyright (C) 2005-2014  Jonathan Liss
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License as published by
** the Free Software Foundation; either version 2 of the License, or
** (at your option) any later version.
**
** This program is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
** Library General Public License for more details.  To obtain a
** copy of the GNU Library General Public License, write to the Free
** Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
**
** Any permitted reproduction of these routines, in whole or in part,
** must bear this legend.
*/

//
// This file takes care of the NES sound playback
//
// TODO:
//  - Break out actual player functions to a new class CPlayer
//  - Create new interface for CFamiTrackerView with thread-safe functions
//  - Same for CFamiTrackerDoc
//  - Perhaps this should be a worker thread and not GUI thread?
//

#include "stdafx.h"
#include <cmath>
#include <afxmt.h>
#include "FamiTracker.h"
#include "FamiTrackerDoc.h"
#include "FamiTrackerView.h"
#include "VisualizerWnd.h"
#include "MainFrm.h"
#include "DirectSound.h"
#include "APU/APU.h"
#include "ChannelHandler.h"
#include "ChannelsSN7.h"		// // //
#include "SoundGen.h"
#include "Settings.h"
#include "TrackerChannel.h"
#include "MIDI.h"
#include "VGM/Logger.h"		// // //
#include "VGM/Writer/SN76489.h"		// // //
#include <sstream>		// // //

#ifdef EXPORT_TEST
#include "ExportTest/ExportTest.h"
#endif /* EXPORT_TEST */

// 1kHz test tone
//#define AUDIO_TEST

// Write period tables to files
//#define WRITE_PERIOD_FILES

// Write a file with the volume table
//#define WRITE_VOLUME_FILE

// Enable audio dithering
//#define DITHERING

// The depth of each vibrato level
const double CSoundGen::NEW_VIBRATO_DEPTH[] = {
	1.0, 1.5, 2.5, 4.0, 5.0, 7.0, 10.0, 12.0, 14.0, 17.0, 22.0, 30.0, 44.0, 64.0, 96.0, 128.0
};

const double CSoundGen::OLD_VIBRATO_DEPTH[] = {
	1.0, 1.0, 2.0, 3.0, 4.0, 7.0, 8.0,


0%{width:0;height:0;margin:0;opacity:0;padding:0}}@-webkit-keyframes uploadAnimateInlineOut{to{width:0;height:0;margin:0;padding:0;opacity:0}}@keyframes uploadAnimateInlineOut{to{width:0;height:0;margin:0;padding:0;opacity:0}}
/*# sourceMappingURL=antd.min.css.map*/body {
	// Lucide icons https://lucide.dev/
	--lucide-x: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
	--lucide-minus: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E");
	--lucide-maximize: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 3H5a2 2 0 0 0-2 2v3'%3E%3C/path%3E%3Cpath d='M21 8V5a2 2 0 0 0-2-2h-3'%3E%3C/path%3E%3Cpath d='M3 16v3a2 2 0 0 0 2 2h3'%3E%3C/path%3E%3Cpath d='M16 21h3a2 2 0 0 0 2-2v-3'%3E%3C/path%3E%3C/svg%3E");
	--lucide-minimize: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='lucide lucide-minimize'%3E%3Cpath d='M8 3v3a2 2 0 0 1-2 2H3'/%3E%3Cpath d='M21 8h-3a2 2 0 0 1-2-2V3'/%3E%3Cpath d='M3 16h3a2 2 0 0 1 2 2v3'/%3E%3Cpath d='M16 21v-3a2 2 0 0 1 2-2h3'/%3E%3C/svg%3E");
}

:is(.mod-linux, .mod-windows) .titlebar-button:not(.mod-logo) svg {
	-webkit-mask-size: cover;
	background-color: var(--icon-color);
	color: transparent;
	width: var(--icon-s);
	height: var(--icon-s);
}

// New titlebar icons
:is(.mod-linux, .mod-windows) .titlebar-button:not(.mod-logo) {
	padding: 0 var(--size-4-3);
}

:is(.mod-linux, .mod-windows) .titlebar-button.mod-minimize svg {
	-webkit-mask-image: var(--lucide-minus);
}

:is(.mod-linux, .mod-windows) .titlebar-button.mod-maximize svg {
	-webkit-mask-image: var(--lucide-maximize);
}

.is-maximized:is


 this list of conditions and the following disclaimer in the
 *     documentation and/or other materials provided with the distribution.
 * 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
 *     its contributors may be used to endorse or promote products derived
 *     from this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

import * as Common from '../common/common.js';

import * as ARIAUtils from './ARIAUtils.js';
import {SuggestBox, SuggestBoxDelegate, Suggestion, Suggestions} from './SuggestBox.js';  // eslint-disable-line no-unused-vars
import {ElementFocusRestorer} from './UIUtils.js';
import {appendStyle} from './utils/append-style.js';

/**
 * @implements {SuggestBoxDelegate}
 * @unrestricted
 */
export class TextPrompt extends Common.ObjectWrapper.ObjectWrapper {
  constructor() {
    super();
    /**
     * @type {!Element|undefined}
     */
    this._proxyElement;
    this._proxyElementDisplay = 'inline-block';
    this._autocompletionTimeout = DefaultAutocompletionTimeout;
    this._title = '';
    this._queryRange = null;
    this._previousText = '';
    this._currentSuggestion = null;
    this._completionRequestId = 0;
    this._ghostTextElement = createElementWithClass('span', 'auto-complete-text');
    this._ghostTextElement.setAttribute('contenteditable', 'false');
    ARIAUtils.markAsHidden(this._ghostTextElement);
  }

  /**
   * @param {(function(this:null, string, string, boolean=):!Promise<!Suggestions>)} completions
   * @param {string=} stopCharacters
   */
  initialize(completions, stopCharacters) {
    this._loadCompletions = completions;
    this._completionStopCharacters = stopCharacters || ' =:[({;,!+-*/&|^<>.';
  }

  /**
   * @param {number} timeout
   */
  setAutocompletionTimeout(timeout) {
    this._autocompletionTimeout = timeout;
  }

  renderAsBlock() {
    this._proxyElementDisplay = 'block';
  }

  /**
   * Clients should never attach any event listeners to the |element|. Instead,
   * they should use the result of this method to attach listeners for bubbling events.
   *
   * @param {!Element} element
   * @return {!Element}
   */
  attach(element) {
    return this._attachInternal(element);
  }

  /**
   * Clients should never attach any event listeners to the |element|. Instead,
   * they should use the result of this method to attach listeners for bubbling events
   * or the |blurListener| parameter to register a "blur" event listener on the |element|
   * (since the "blur" event does not bubble.)
   *
   * @param {!Element} element
   * @param {function


_MatchFinder_Skip(CMatchFinder *p, UInt32 num)
{
  do
  {
    UInt32 hash2Value, hash3Value;
    SKIP_HEADER(4)
    HASH4_CALC;
    curMatch = p->hash[kFix4HashSize + hashValue];
    p->hash[                hash2Value] =
    p->hash[kFix3HashSize + hash3Value] = p->pos;
    p->hash[kFix4HashSize + hashValue] = p->pos;
    SKIP_FOOTER
  }
  while (--num != 0);
}

static void Hc4_MatchFinder_Skip(CMatchFinder *p, UInt32 num)
{
  do
  {
    UInt32 hash2Value, hash3Value;
    SKIP_HEADER(4)
    HASH4_CALC;
    curMatch = p->hash[kFix4HashSize + hashValue];
    p->hash[                hash2Value] =
    p->hash[kFix3HashSize + hash3Value] =
    p->hash[kFix4HashSize + hashValue] = p->pos;
    p->son[p->cyclicBufferPos] = curMatch;
    MOVE_POS
  }
  while (--num != 0);
}

void Hc3Zip_MatchFinder_Skip(CMatchFinder *p, UInt32 num)
{
  do
  {
    SKIP_HEADER(3)
    HASH_ZIP_CALC;
    curMatch = p->hash[hashValue];
    p->hash[hashValue] = p->pos;
    p->son[p->cyclicBufferPos] = curMatch;
    MOVE_POS
  }
  while (--num != 0);
}

void MatchFinder_CreateVTable(CMatchFinder *p, IMatchFinder *vTable)
{
  vTable->Init = (Mf_Init_Func)MatchFinder_Init;
  vTable->GetIndexByte = (Mf_GetIndexByte_Func)MatchFinder_GetIndexByte;
  vTable->GetNumAvailableBytes = (Mf_GetNumAvailableBytes_Func)MatchFinder_GetNumAvailableBytes;
  vTable->GetPointerToCurrentPos = (Mf_GetPointerToCurrentPos_Func)MatchFinder_GetPointerToCurrentPos;
  if (!p->btMode)
  {
    vTable->GetMatches = (Mf_GetMatches_Func)Hc4_MatchFinder_GetMatches;
    vTable->Skip = (Mf_Skip_Func)Hc4_MatchFinder_Skip;
  }
  else if (p->numHashBytes == 2)
  {
    vTable->GetMatches = (Mf_GetMatches_Func)Bt2_MatchFinder_GetMatches;
    vTable->Skip = (Mf_Skip_Func)Bt2_MatchFinder_Skip;
  }
  else if (p->numHashBytes == 3)
  {
    vTable->GetMatches = (Mf_GetMatches_Func)Bt3_MatchFinder_GetMatches;
    vTable->Skip = (Mf_Skip_Func)Bt3_MatchFinder_Skip;
  }
  else
  {
    vTable->GetMatches = (Mf_GetMatches_Func)Bt4_MatchFinder_GetMatches;
    vTable->Skip = (Mf_Skip_Func)Bt4_MatchFinder_Skip;
  }
}


id": "13901",
		"name": "Ferkessedougou",
		"state_id": "864"
	},
	{
		"id": "13902",
		"name": "Korhogo",
		"state_id": "864"
	},
	{
		"id": "13903",
		"name": "Tingrela",
		"state_id": "864"
	},
	{
		"id": "13904",
		"name": "Divo",
		"state_id": "865"
	},
	{
		"id": "13905",
		"name": "Fresco",
		"state_id": "865"
	},
	{
		"id": "13906",
		"name": "Lakota",
		"state_id": "865"
	},
	{
		"id": "13907",
		"name": "Aboisso",
		"state_id": "866"
	},
	{
		"id": "13908",
		"name": "Adiake",
		"state_id": "866"
	},
	{
		"id": "13909",
		"name": "Ayame",
		"state_id": "866"
	},
	{
		"id": "13910",
		"name": "Bonoua",
		"state_id": "866"
	},
	{
		"id": "13911",
		"name": "Grand Bassam",
		"state_id": "866"
	},
	{
		"id": "13912",
		"name": "Kani",
		"state_id": "868"
	},
	{
		"id": "13913",
		"name": "Mankono",
		"state_id": "868"
	},
	{
		"id": "13914",
		"name": "Seguela",
		"state_id": "868"
	},
	{
		"id": "13915",
		"name": "Bondoukou",
		"state_id": "869"
	},
	{
		"id": "13916",
		"name": "Bouna",
		"state_id": "869"
	},
	{
		"id": "13917",
		"name": "Tanda",
		"state_id": "869"
	},
	{
		"id": "13918",
		"name": "Bjelovar",
		"state_id": "870"
	},
	{
		"id": "13919",
		"name": "Brezovac",
		"state_id": "870"
	},
	{
		"id": "13920",
		"name": "Chazma",
		"state_id": "870"
	},
	{
		"id": "13921",
		"name": "Daruvar",
		"state_id": "870"
	},
	{
		"id": "13922",
		"name": "Daruvarski Brestovac",
		"state_id": "870"
	},
	{
		"id": "13923",
		"name": "Dezhanovac",
		"state_id": "870"
	},
	{
		"id": "13924",
		"name": "Dhulovac",
		"state_id": "870"
	},
	{
		"id": "13925",
		"name": "Gareshnica",
		"state_id": "870"
	},
	{
		"id": "13926",
		"name": "Gareshnichki Brestovac",
		"state_id": "870"
	},
	{
		"id": "13927",
		"name": "Grubishno Polje",
		"state_id": "870"
	},
	{
		"id": "13928",
		"name": "Gudovac",
		"state_id": "870"
	},


amp; Sweep

FF10 - NR10 - Channel 1 Sweep register (R/W)

  Bit 6-4 - Sweep Time
  Bit 3   - Sweep Increase/Decrease
             0: Addition    (frequency increases)
             1: Subtraction (frequency decreases)
  Bit 2-0 - Number of sweep shift (n: 0-7)

Sweep Time:

  000: sweep off - no freq change
  001: 7.8 ms  (1/128Hz)
  010: 15.6 ms (2/128Hz)
  011: 23.4 ms (3/128Hz)
  100: 31.3 ms (4/128Hz)
  101: 39.1 ms (5/128Hz)
  110: 46.9 ms (6/128Hz)
  111: 54.7 ms (7/128Hz)

The change of frequency (NR13,NR14) at each shift is calculated by the
following formula where X(0) is initial freq & X(t-1) is last freq:

  X(t) = X(t-1) +/- X(t-1)/2^n

FF11 - NR11 - Channel 1 Sound length/Wave pattern duty (R/W)

  Bit 7-6 - Wave Pattern Duty (Read/Write)
  Bit 5-0 - Sound length data (Write Only) (t1: 0-63)

Wave Duty:

  00: 12.5% ( _-------_-------_------- )
  01: 25%   ( __------__------__------ )
  10: 50%   ( ____----____----____---- ) (normal)
  11: 75%   ( ______--______--______-- )

Sound Length = (64-t1)*(1/256) seconds

The Length value is used only if Bit 6 in NR14 is set.

FF12 - NR12 - Channel 1 Volume Envelope (R/W)

  Bit 7-4 - Initial Volume of envelope (0-0Fh) (0=No Sound)
  Bit 3   - Envelope Direction (0=Decrease, 1=Increase)
  Bit 2-0 - Number of envelope sweep (n: 0-7)
            (If zero, stop envelope operation.)

Length of 1 step = n*(1/64) seconds

FF13 - NR13 - Channel 1 Frequency lo (Write Only)

Lower 8 bits of 11 bit frequency (x).

Next 3 bit are in NR14 ($FF14)

FF14 - NR14 - Channel 1 Frequency hi (R/W)

  Bit 7   - Initial (1=Restart Sound)     (Write Only)
  Bit 6   - Counter/consecutive selection (Read/Write)
            (1=Stop output when length in NR11 expires)
  Bit 2-0 - Frequency's higher 3 bits (x) (Write Only)

Frequency = 131072/(2048-x) Hz

 Sound Channel 2 - Tone

This sound channel works exactly as channel 1, except that it doesn't
have a Tone Envelope/Sweep Register.

FF16 - NR21 - Channel 2 Sound Length/Wave Pattern Duty (R/W)

  Bit 7-6 - Wave Pattern Duty (Read/Write)
  Bit 5-0 - Sound length data (Write Only) (t1: 0-63)

Wave Duty:<br


# ---------------------------------------
# 📅 Discord Info Bot
# Ukazuje den, datum a počet lidí na serveru
# Autor: Koki26
# ---------------------------------------

import discord
from discord.ext import commands, tasks
import datetime

intents = discord.Intents.default()
intents.members = True
bot = commands.Bot(command_prefix="!", intents=intents)

GUILD_ID = 123456789012345678  # tvůj server ID
CATEGORY_NAME = "📅 Info"
BOT_TOKEN = "TVŮJ_TOKEN"

# České názvy dní
CZECH_DAYS = [
    "pondělí", "úterý", "středa", "čtvrtek",
    "pátek", "sobota", "neděle"
]

@bot.event
async def on_ready():
    print(f"✅ Přihlášen jako {bot.user}")

    # Status bota
    await bot.change_presence(
        activity=discord.Activity(
            type=discord.ActivityType.watching,
            name="kolik je nás na serveru 👀"
        ),
        status=discord.Status.online
    )

    update_channels.start()

@tasks.loop(minutes=1)
async def update_channels():
    guild = bot.get_guild(GUILD_ID)
    if guild is None:
        return

    # najít nebo vytvořit kategorii
    category = discord.utils.get(guild.categories, name=CATEGORY_NAME)
    if category is None:
        category = await guild.create_category(CATEGORY_NAME)

    # dnešní den a datum
    weekday = datetime.datetime.now().weekday()  # 0=pondělí, 6=neděle
    day_name = f"┣ 📅 {CZECH_DAYS[weekday]}"
    date_today = f"┣ 🗓 {datetime.datetime.now().strftime('%d-%m-%Y')}"
    member_count = f"┗ 👥 {guild.member_count} lidí"

    wanted_names = [day_name, date_today, member_count]

    # zajistíme že máme přesně 3 kanály
    existing = category.voice_channels
    while len(existing) < 3:
        overwrites = {
            guild.default_role: discord.PermissionOverwrite(connect=False, speak=False)
        }
        await category.create_voice_channel("dočasný", overwrites=overwrites)
        existing = category.voice_channels

    # přejmenujeme první tři kanály
    for channel, new_name in zip(existing[:3], wanted_names):
        if channel.name != new_name:
            await channel.edit(name=new_name)

    # smažeme všechny kanály navíc
    for channel in existing[3:]:
        await channel.delete()

bot.run(BOT_TOKEN)


#include <stdio.h>

char far *vram=(char far *)0xa0000000;

int	blocksleft=999;

int	wid,hig,pics;

main(int argc,char *argv[])
{
	FILE	*f1;
	int	a;
	long	len,l,ll;
	f1=fopen(argv[1],"rb");
	if(f1==NULL) return(0);
	_asm	mov	ax,19
	_asm	int	10h
	len=getw(f1);
	len+=(long)getw(f1)<<16;
	getw(f1);
	pics=getw(f1);
	wid=getw(f1);
	hig=getw(f1);
	fseek(f1,0x80L,SEEK_SET);
	printf("\n\n\n\n\n\n\n\n\n\n\n");
	for(;;)
	{
		l=ftell(f1);
		l+=(long)getw(f1);
		l+=(long)getw(f1)<<16;
		a=getw(f1);
		if(feof(f1)) break;
		if(a==0xf1fa)
		{
			int	a;
			blocksleft=getw(f1);
			for(a=0;a<8;a++) getc(f1);
			ll=l;
		}
		else
		{
			doblock(f1,(unsigned)a);
			fseek(f1,l,SEEK_SET);
			blocksleft--;
			if(blocksleft==0)
			{
				fseek(f1,ll,SEEK_SET);
				getch();
			}
		}
	}
	_asm	mov	ax,3
	_asm	int	10h
	fclose(f1);
}

int	viewpal(void)
{
	int	a;
	unsigned u;
	for(a=0;a<256;a++)
	{
		u=(a>>4)*3+320-48+((a&15)*3+200-48)*320;
		vram[u]=a;
		vram[u+1]=a;
		vram[u+2]=a;
		vram[320+u]=a;
		vram[320+u+1]=a;
		vram[320+u+2]=a;
		vram[640+u]=a;
		vram[640+u+1]=a;
		vram[640+u+2]=a;
	}
}

int	doblock(FILE *f1,unsigned type)
{
	if(type==0x000b)
	{
		int	a,c,d;
		c=getc(f1)*256; /* count */
		c+=getc(f1);
		c*=3;
		a=getc(f1)*256; /* first */
		a+=getc(f1);
		outp(0x3c8,a);
		for(a=0;a<c;a++) outp(0x3c9,getc(f1));
		viewpal();
	}
	else if(type==0x0004)
	{
		int	a,c,d;
		c=getc(f1)*256; /* count */
		c+=getc(f1);
		c*=3;
		a=getc(f1)*256; /* first */
		a+=getc(f1);
		outp(0x3c8,a);
		for(a=0;a<c;a++) outp(0x3c9,getc(f1)>>2);
		viewpal();
	}
	else if(type==0x000c)
	{
		int	a,b,c,lc,cc,cm,lb,le,lad;
		long	l;
		unsigned int u;
		lb=getw(f1);
		le=lb+getw(f1);
		for(lc=lb;lc<le;lc++)
		{
			cm=getc(f1);
			u=lc*320;
			for(cc=0;cc<cm && u<64000;cc++)
			{
				a=getc(f1);
				u+=a;
				a=getc(f1);
				if(a<0x80)
				{
					for(c=0;c<a;c++) vram[u++]=getc(f1);
				}
				else
				{
					a=256-a;
					b=getc(f1);
					for(c=0;c<a;c++) vram[u++]=b;
				}
			}
			if(u>64000 || kbhit()) break;
		}
		u=0;
	}
	else if(type==0x0007)
	{
		int	a,b,b1,b2,c,lc,cc,cm,lb,le,lad;
		int	skipcnt,flag=0;
		long	l;
		unsigned int u;
		le=getw(f1);
		for(lc=lad=0;lc<le;lc++)
		{
			cm=getw(f1);
			while(cm<0)
			{
				lad=320*-cm;
				cm=getw(f1);
			}
			u=lc*320+lad;
			for(cc=0;cc<cm && u<64000;cc++)
			{
				a=getc(f1);
				u+=a;
				a=getc(f1);
				if(a<0x80)
				{
					for(c=0;c<a;c++)
					{
						vram[u++]=getc(f1);
						vram[u++]=getc(f1);
					}
				}
				else
				{
					a=256-a;
					b1=getc(f1);
					b2=getc(f1);
					for(c=0;c<a;c++)
					{
						vram[u++]=b1;
						vram[u++]=b2;
					}
				}
				if(flag) getch();
			}
			if(u>64000 || kbhit()) break;
		}
		u=0;
	}
	else if(type==0x000f)
	{
		int	a,b,c,lc,cc,cm;
		long	l;
		unsigned int u;
		for(lc=0;lc<hig;lc++)
		{
			u=lc*320;
			cm=getc(f1);
			for(cc=0;cc<cm && u<64000;cc++)
			{
				a=getc(f1);
				if(a<0x80)
				{
					b=getc(f1);
					for(c=0;c<a;c++) vram[u++]=b;
				}
				else
				{
					a=256-a;
					for(c=0;c<a;c++) vram[u++]=getc(f1);
				}
			}
			if(u>64000 || kbhit()) break;
		}
		u=0;
		/*for(a=0;a<200;a+=2)
		{
			vram[a*320]=15;
			vram[a*320+321]=14;
		}
		for(a=0;a<320;a+=2)
		{
			vram[a]=15;
			vram[a+201]=14;
		}*/
	}
	else
	{
		printf("UNKNOWN BLOCK TYPE: %04X\n",type);
		getch();
	}
}


-------------------------------------------------------------------------

void MeshRoot::SetVertsWorld( const Array<FamilyState> & stateArray, Vector *verts, Bool doMultiWeight) const
{
  Matrix tranys[MAXMESHPERGROUP];

  SetMatricesWorld( stateArray, tranys);

  // transform verts to world space
  U32 i;
  for (i = 0; i < vertCount; i++)
  {
    SetVert( tranys, i, verts[i], doMultiWeight);
  }
}
//----------------------------------------------------------------------------

void MeshRoot::SetVertsModel( const Array<FamilyState> & stateArray, Matrix *tranys, Vector *verts, Bool doMultiWeight) const
{
  SetMatricesModel( stateArray, tranys);

  // transform verts from model space, tranform for anim, back to model space
  U32 i;
  for (i = 0; i < vertCount; i++)
  {
    SetVert( tranys, i, verts[i], doMultiWeight);
  }
}
//----------------------------------------------------------------------------

// indexer lists for verts (one for each bucky)
static U16 ivA[MAXBUCKYS][MAXVERTS];
static U16 inA[MAXBUCKYS][MAXVERTS];
static U16 iuA[MAXBUCKYS][MAXVERTS];

static U16 ifA[MAXBUCKYS][MAXVERTS];
static U8  tvA[MAXBUCKYS][MAXINDICES];
static U16 vvA[MAXBUCKYS][MAXINDICES];

void MeshRoot::RenderLightAnimI( FaceGroup *_buckys, U32 buckyCount, const Array<FamilyState> & stateArray, Color baseColor, U32 clipFlags, U32 _controlFlags) // = clipALL, = controlDEF
{
  ASSERT( buckyCount < MAXBUCKYS);
  ASSERT( vertCount < MAXVERTS && normCount < MAXVERTS && textCount < MAXVERTS);

#ifdef DOSTATISTICS
  Statistics::tempTris = 0;
#endif

  // set up transform matrices and transform verts to view space
  Matrix tranys[MAXMESHPERGROUP];
  Vector *verts = (Vector *) Vid::tempVertices;
  SetVertsView( stateArray, tranys, verts, (_controlFlags & controlMULTIWEIGHT) ? TRUE : FALSE);

  // setup bucket desc elements common to all faces
  Vid::SetBucketPrimitiveDesc(
    PT_TRIANGLELIST,
    FVF_TLVERTEX,
    DP_DONOTUPDATEEXTENTS | DP_DONOTLIGHT | DP_DONOTCLIP | renderFlags,
    TRUE);

  if (baseColor.a < 255)
  {
    BucketMan::forceTranslucent = TRUE;
  }

  Camera &cam = Vid::CurCamera();

  // clear indexer lists
  // setup buckys
  //
  U32 i;
  for (i = 0; i < buckyCount; i++)
  {
    memset( &ivA[i][0], 0xff, sizeof(U16) * vertCount);
    memset( &inA[i][0], 0xfe, sizeof(U16) * normCount);
    memset( &iuA[i][0], 0xfd, sizeof(U16) * textCount);

    // calc constant diffuse component for each material (bucky)
    FaceGroup & bucky = _buckys[i];
    bucky.diffInit.r = bucky.diff.r * Vid::renderState.ambientR * F32(baseColor.r) * U32toNormF3;
    bucky.diffInit.g = bucky.diff.g * Vid::renderState.ambientG * F32(baseColor.b) * U32toNormF3;
    bucky.diffInit.b = bucky.diff.b * Vid::renderState.ambientB * F32(baseColor.g) * U32toNormF3;
    bucky.diffInitC  = (U32) Utils::FtoL(bucky.diff.a * F32(baseColor.a));

    // clear bucky counts
    bucky.vCount = 0;
    bucky.iCount = 0;

    // setup bucky memory
    bucky.vert  = Mesh::Manager::tempBuckets[i].verts;
    bucky.index = Mesh::Manager::tempBuckets[i].indices;
  }

  if (clipFlags == clip


Socket);
    Ptr<Packet> packet = socket->Recv();
    GtpcHeader header;
    packet->PeekHeader(header);
    uint16_t msgType = header.GetMessageType();

    switch (msgType)
    {
    case GtpcHeader::CreateSessionResponse:
        DoRecvCreateSessionResponse(header, packet);
        break;

    case GtpcHeader::ModifyBearerResponse:
        DoRecvModifyBearerResponse(header, packet);
        break;

    case GtpcHeader::DeleteBearerRequest:
        DoRecvDeleteBearerRequest(header, packet);
        break;

    default:
        NS_FATAL_ERROR("GTP-C message not supported");
        break;
    }
}

void
EpcMmeApplication::DoRecvCreateSessionResponse(GtpcHeader& header, Ptr<Packet> packet)
{
    NS_LOG_FUNCTION(this << header);
    uint64_t imsi = header.GetTeid();
    NS_LOG_DEBUG("TEID/IMSI " << imsi);
    auto it = m_ueInfoMap.find(imsi);
    NS_ASSERT_MSG(it != m_ueInfoMap.end(), "could not find any UE with IMSI " << imsi);
    uint16_t cellId = it->second->cellId;
    uint16_t enbUeS1Id = it->second->enbUeS1Id;
    uint64_t mmeUeS1Id = it->second->mmeUeS1Id;
    NS_LOG_DEBUG("cellId " << cellId << " mmeUeS1Id " << mmeUeS1Id << " enbUeS1Id " << enbUeS1Id);
    auto jt = m_enbInfoMap.find(cellId);
    NS_ASSERT_MSG(jt != m_enbInfoMap.end(), "could not find any eNB with CellId " << cellId);

    GtpcCreateSessionResponseMessage msg;
    packet->RemoveHeader(msg);

    std::list<EpcS1apSapEnb::ErabToBeSetupItem> erabToBeSetupList;
    std::list<GtpcCreateSessionResponseMessage::BearerContextCreated> bearerContexts =
        msg.GetBearerContextsCreated();
    NS_LOG_DEBUG("BearerContextsCreated size = " << bearerContexts.size());
    for (auto& bearerContext : bearerContexts)
    {
        EpcS1apSapEnb::ErabToBeSetupItem erab;
        erab.erabId = bearerContext.epsBearerId;
        erab.erabLevelQosParameters = bearerContext.bearerLevelQos;
        erab.transportLayerAddress = bearerContext.fteid.addr; // SGW S1U address
        erab.sgwTeid = bearerContext.fteid.teid;
        NS_LOG_DEBUG("SGW " << erab.transportLayerAddress << " TEID " << erab.sgwTeid);
        erabToBeSetupList.push_back(erab);
    }

    NS_LOG_DEBUG("Send InitialContextSetupRequest to eNB " << jt->second->s1apSapEnb);
    jt->second->s1apSapEnb->InitialContextSetupRequest(mmeUeS1Id, enbUeS1Id, erabToBeSetupList);
}

void
EpcMmeApplication::DoRecvModifyBearerResponse(GtpcHeader& header, Ptr<Packet> packet)
{
    NS_LOG_FUNCTION(this << header);
    GtpcModifyBearerResponseMessage msg;
    packet->RemoveHeader(msg);
    NS_ASSERT(msg.GetCause() == GtpcModifyBearerResponseMessage::REQUEST_ACCEPTED);

    uint64_t imsi = header.GetTeid();
    NS_LOG_DEBUG("TEID/IMSI " << imsi);
    auto it = m_ueInfoMap.find(imsi);
    NS_ASSERT_MSG(it != m_ueInfoMap.end(), "could not find any UE with IMSI " << imsi);
    uint16_t cellId = it->second->cellId;
    uint16_t enbUeS1Id = it->second->enbUeS1Id;
    uint64_t mmeUeS1Id = it->second->mmeUeS1Id;
    NS_LOG_DEBU


->i_codec != VLC_CODEC_MJPG )
        return VLC_EGENERIC;

    return VLC_SUCCESS;
}

static int DelStream( sout_mux_t *p_mux, sout_input_t *p_input )
{
    VLC_UNUSED(p_input);
    msg_Dbg( p_mux, "removing input" );
    return VLC_SUCCESS;
}

static int Mux( sout_mux_t *p_mux )
{
    block_fifo_t *p_fifo;

    if( !p_mux->i_nb_inputs ) return VLC_SUCCESS;

    p_fifo = p_mux->pp_inputs[0]->p_fifo;

    while( block_FifoCount( p_fifo ) > 0 )
    {
        static const char psz_hfmt[] = "\r\n"
            "--"BOUNDARY"\r\n"
            "Content-Type: image/jpeg\r\n"
            "Content-Length: %zu\r\n"
            "\r\n";
        block_t *p_data = block_FifoGet( p_fifo );
        block_t *p_header = block_Alloc( sizeof( psz_hfmt ) + 20 );

        if( p_header == NULL ) /* uho! */
        {
            block_Release( p_data );
            continue;
        }

        p_header->i_buffer =
            snprintf( (char *)p_header->p_buffer, p_header->i_buffer,
                      psz_hfmt, p_data->i_buffer );
        p_header->i_flags |= BLOCK_FLAG_HEADER;
        sout_AccessOutWrite( p_mux->p_access, p_header );
        sout_AccessOutWrite( p_mux->p_access, p_data );
    }

    return VLC_SUCCESS;
}


LOADN R19 0
  SETTABLEKS R19 R18 K27 ["robuxBalance"]
  GETTABLEKS R19 R15 K34 ["None"]
  SETTABLEKS R19 R18 K28 ["status"]
  NEWTABLE R19 0 0
  SETTABLEKS R19 R18 K29 ["cachedOwnedAssets"]
  LOADNIL R19
  SETTABLEKS R19 R18 K30 ["assetId"]
  NEWTABLE R19 0 0
  SETTABLEKS R19 R18 K31 ["excessiveTransactionUserIds"]
  LOADB R19 0
  SETTABLEKS R19 R18 K32 ["isPurchaseDialogVisible"]
  NEWTABLE R19 8 0
  GETTABLEKS R20 R9 K35 ["name"]
  DUPCLOSURE R21 K36 [PROTO_0]
  CAPTURE VAL R3
  SETTABLE R21 R19 R20
  GETTABLEKS R20 R14 K35 ["name"]
  DUPCLOSURE R21 K37 [PROTO_1]
  CAPTURE VAL R3
  CAPTURE VAL R15
  SETTABLE R21 R19 R20


o.inputtitle=translate("Restart")
o.inputstyle = "reload"
o.forcewrite = true
o.write = function(self, section)
	start_stop_remove(m,"restart")
end

o = s:option(Button, "_stop")
o.template = "dockerman/cbi/inlinebutton"
o.inputtitle=translate("Stop")
o.inputstyle = "reset"
o.forcewrite = true
o.write = function(self, section)
	start_stop_remove(m,"stop")
end

o = s:option(Button, "_kill")
o.template = "dockerman/cbi/inlinebutton"
o.inputtitle=translate("Kill")
o.inputstyle = "reset"
o.forcewrite = true
o.write = function(self, section)
	start_stop_remove(m,"kill")
end

o = s:option(Button, "_upgrade")
o.template = "dockerman/cbi/inlinebutton"
o.inputtitle=translate("Upgrade")
o.inputstyle = "reload"
o.forcewrite = true
o.write = function(self, section)
	start_stop_remove(m,"upgrade")
end

o = s:option(Button, "_duplicate")
o.template = "dockerman/cbi/inlinebutton"
o.inputtitle=translate("Duplicate/Edit")
o.inputstyle = "add"
o.forcewrite = true
o.write = function(self, section)
	luci.http.redirect(luci.dispatcher.build_url("admin/docker/newcontainer/duplicate/"..container_id))
end

o = s:option(Button, "_remove")
o.template = "dockerman/cbi/inlinebutton"
o.inputtitle=translate("Remove")
o.inputstyle = "remove"
o.forcewrite = true
o.write = function(self, section)
	start_stop_remove(m,"remove")
end

s = m:section(SimpleSection)
s.template = "dockerman/container"

if action == "info" then
	m.submit = false
	m.reset  = false
	table_info = {
		["01name"] = {
			_key = translate("Name"),
			_value = container_info.Name:sub(2) or "-",
			_button=translate("Update")
		},
		["02id"] = {
			_key = translate("ID"),
			_value = container_info.Id or "-"
		},
		["03image"] = {
			_key = translate("Image"),
			_value = container_info.Config.Image .. "<br />" .. container_info.Image
		},
		["04status"] = {
			_key = translate("Status"),
			_value = container_info.State and container_info.State.Status or "-"
		},
		["05created"] = {
			_key = translate("Created"),
			_value = container_info.Created or "-"
		},
	}

	if container_info.State.Status == "running" then
		table_info["06start"] = {
			_key = translate("Start Time"),
			_value = container_info.State and container_info.State.StartedAt or "-"
		}
	else
		table_info["06start"] = {
			_key = translate("Finish Time"),
			_value = container_info.State and container_info.State.FinishedAt or "-"
		}
	end

	table_info["07healthy"] = {
		_key = translate("Healthy"),
		_value = container_info.State and container_info.State.Health and container_info.State.Health.Status or "-"
	}
	table_info["08restart"] = {
		_key = translate("Restart Policy"),
		_value = container_info.HostConfig and container_info.HostConfig.RestartPolicy and container_info.HostConfig.RestartPolicy.Name or "-",
		_but


in netP5">AbstractUdpClient

send a string using UDP to an already specified RemoteAddress.

send(byte[]) -
Method in class netP5.AbstractUdpClient

send a byte array using UDP to an already specified RemoteAddress.

send(byte[], NetAddress) -
Method in class netP5.AbstractUdpClient

send a byte array to the dedicated remoteAddress.

send(byte[], String, int) -
Method in class netP5.AbstractUdpClient

send a byte array to the dedicated remoteAddress.

send(DatagramPacket) -
Method in class netP5.AbstractUdpClient

send(byte[], InetAddress, int) -
Method in class netP5.AbstractUdpClient

send a byte array to the dedicated remoteAddress.

send(byte[]) -
Method in class netP5.AbstractUdpServer

send a byte array to a previously defined remoteAddress.

send(byte[], String, int) -
Method in class netP5.AbstractUdpServer

send a byte array to a dedicated remoteAddress.

send(DatagramPacket) -
Method in class netP5.AbstractUdpServer

send(byte[], InetAddress, int) -
Method in class netP5.AbstractUdpServer

send a byte array to a dedicated remoteAddress.

<A HREF="./oscP5/OscNetManager.html#send(osc


ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u')
      filename = filename.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y')
      filename = filename.replace(/đ/g, 'd')
      filename = filename.replace(/À|Á|Ạ|Ả|Ã|Â|Ầ|Ấ|Ậ|Ẩ|Ẫ|Ă|Ằ|Ắ|Ặ|Ẳ|Ẵ/g, 'A')
      filename = filename.replace(/È|É|Ẹ|Ẻ|Ẽ|Ê|Ề|Ế|Ệ|Ể|Ễ/g, 'E')
      filename = filename.replace(/Ì|Í|Ị|Ỉ|Ĩ/g, 'I')
      filename = filename.replace(/Ò|Ó|Ọ|Ỏ|Õ|Ô|Ồ|Ố|Ộ|Ổ|Ỗ|Ơ|Ờ|Ớ|Ợ|Ở|Ỡ/g, 'O')
      filename = filename.replace(/Ù|Ú|Ụ|Ủ|Ũ|Ư|Ừ|Ứ|Ự|Ử|Ữ/g, 'U')
      filename = filename.replace(/Ỳ|Ý|Ỵ|Ỷ|Ỹ/g, 'Y')
      filename = filename.replace(/Đ/g, 'D')
    }
    return filename
  }
}import { Field, ObjectType, Directive, ID } from '@nestjs/graphql';
import { Task } from './task.model';

@ObjectType()
@Directive('@extends')
@Directive('@key(fields: "id")')
export class User {
  @Field((type) => ID)
  @Directive('@external')
  id: string;

  @Field((type) => [Task])
  tasks?: Task[];
}
import * as moment from 'moment'

export enum DateFormat {
  inputFormat = 'YYYY-MM-DD',
  outputFormat = 'ddd, MMMM D'
}

export const parseInputDate = (inputDate: string): string => {
  const m = moment(inputDate, DateFormat.inputFormat)
  return m.format(DateFormat.outputFormat)
}

export const parseOutputDate = (outputDate: string): string => {
  const m = moment(outputDate, DateFormat.outputFormat)
  return m.format(DateFormat.inputFormat)
}

export const minDate = (lastDate: string | undefined) => {
  const m = lastDate !== undefined ?
    moment(lastDate) : moment()

  return m.format(DateFormat.inputFormat)
}

const today = () => moment()
export const todayAsInput = () => today().format(DateFormat.inputFormat)
export const todayAsOutput = () => today().format(DateFormat.outputFormat)import * as moment from 'moment/moment'

/**
 * Check if the moment is expired returen true else return false
 * @param time is created moment
 * @param expireTime is the number of minutes the moment will be expired
 */
const checkMomentExpire = (time: number, expireTime: number) => {
    const exp = moment(time)
    const now = moment.utc()
    return (now.diff(exp, 'minutes') > expireTime)
}

export const commonAPI = {
    checkMomentExpire
}import { DbLoadTools } from '@/data/usecases'
import { throwError } from '@/tests/domain/mocks'
import { LoadToolsRepositorySpy } from '@/tests/data/mocks'
import faker from 'faker'

type SutTypes = {
  sut: DbLoadTools
  loadToolsRepositorySpy: LoadToolsRepositorySpy
}

const makeSut = (): SutTypes => {
  const loadToolsRepositorySpy = new LoadToolsRepositorySpy()
  const sut = new DbLoadTools(loadToolsRepositorySpy)
  return {
    sut,
    loadToolsRepositorySpy
  }
}

describe('DbLoadTools', () => {
  test('Should call LoadToolsRepository', async () => {
    const { sut, loadToolsRepositorySpy } = makeSut()
    await sut.load()
    expect(loadToolsRepositorySpy.count).toBe(1)
  })

  test('Should call LoadToolsRepository with correct tag parameter',


),
            "iu-Cans-CA" => Ok(LANG_IU_CANS_CA),
            "am-ET" => Ok(LANG_AM_ET),
            "tzm-Arab-MA" => Err(Self::Error::Reserved("tzm-Arab-MA", 1119)),
            "ks-Arab" => Ok(LANG_KS_ARAB),
            "ne-NP" => Ok(LANG_NE_NP),
            "fy-NL" => Ok(LANG_FY_NL),
            "ps-AF" => Ok(LANG_PS_AF),
            "fil-PH" => Ok(LANG_FIL_PH),
            "dv-MV" => Ok(LANG_DV_MV),
            "bin-NG" => Err(Self::Error::Reserved("bin-NG", 1126)),
            "fuv-NG" => Err(Self::Error::Reserved("fuv-NG", 1127)),
            "ha-Latn-NG" => Ok(LANG_HA_LATN_NG),
            "ibb-NG" => Err(Self::Error::Reserved("ibb-NG", 1129)),
            "yo-NG" => Ok(LANG_YO_NG),
            "quz-BO" => Ok(LANG_QUZ_BO),
            "nso-ZA" => Ok(LANG_NSO_ZA),
            "ba-RU" => Ok(LANG_BA_RU),
            "lb-LU" => Ok(LANG_LB_LU),
            "kl-GL" => Ok(LANG_KL_GL),
            "ig-NG" => Ok(LANG_IG_NG),
            "kr-NG" => Err(Self::Error::Reserved("kr-NG", 1137)),
            "om-ET" => Ok(LANG_OM_ET),
            "ti-ET" => Ok(LANG_TI_ET),
            "gn-PY" => Ok(LANG_GN_PY),
            "haw-US" => Ok(LANG_HAW_US),
            "la-Latn" => Err(Self::Error::Reserved("la-Latn", 1142)),
            "so-SO" => Ok(LANG_SO_SO),
            "ii-CN" => Ok(LANG_II_CN),
            "pap-029" => Err(Self::Error::Reserved("pap-029", 1145)),
            "arn-CL" => Ok(LANG_ARN_CL),
            "moh-CA" => Ok(LANG_MOH_CA),
            "br-FR" => Ok(LANG_BR_FR),
            "ug-CN" => Ok(LANG_UG_CN),
            "mi-NZ" => Ok(LANG_MI_NZ),
            "oc-FR" => Ok(LANG_OC_FR),
            "co-FR" => Ok(LANG_CO_FR),
            "gsw-FR" => Ok(LANG_GSW_FR),
            "sah-RU" => Ok(LANG_SAH_RU),
            "qut-GT" => Err(Self::Error::Reserved("qut-GT", 1158)),
            "rw-RW" => Ok(LANG_RW_RW),
            "wo-SN" => Ok(LANG_WO_SN),
            "prs-AF" => Ok(LANG_PRS_AF),
            "plt-MG" => Err(Self::Error::Reserved("plt-MG", 1165)),
            "zh-yue-HK" => Err(Self::Error::Reserved("zh-yue-HK", 1166)),
            "tdd-Tale-CN" => Err(Self::Error::Reserved("tdd-Tale-CN", 1167)),
            "khb-Talu-CN" => Err(Self::Error::Reserved("khb-Talu-CN", 1168)),
            "gd-GB" => Ok(LANG_GD_GB),
            "ku-Arab-IQ" => Ok(LANG_KU_ARAB_IQ),
            "quc-CO" => Err(Self::Error::Reserved("quc-CO", 1171)),
            "qps-ploc" => Ok(LANG_QPS_


at your option) any later version.

// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
// Lesser General Public License for more details.

// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

// Local includes
//#include "dof_map.h"
#include "fe.h"
#include "fe_macro.h"
#include "fe_interface.h"
#include "elem.h"

// ------------------------------------------------------------
// Lagrange-specific implementations
template <unsigned int Dim, FEFamily T>
void FE<Dim,T>::nodal_soln(const Elem* elem,
                           const Order order,
                           const std::vector<Number>& elem_soln,
                           std::vector<Number>&       nodal_soln)
{

  const unsigned int n_nodes = elem->n_nodes();
  const ElemType type        = elem->type();

  const Order totalorder = static_cast<Order>(order+elem->p_level());

  nodal_soln.resize(n_nodes);

  switch (totalorder)
    {
      // linear Lagrange shape functions
    case FIRST:
      {
        switch (type)
          {
          case EDGE3:
            {
              assert (elem_soln.size()  == 2);
              assert (nodal_soln.size() == 3);

              nodal_soln[0] = elem_soln[0];
              nodal_soln[1] = elem_soln[1];
              nodal_soln[2] = .5*(elem_soln[0] + elem_soln[1]);

              return;
            }

          case EDGE4:
            {
              genius_assert(elem_soln.size() == 2);
              genius_assert(nodal_soln.size() == 4);

              nodal_soln[0] = elem_soln[0];
              nodal_soln[1] = elem_soln[1];
              nodal_soln[2] = (2.*elem_soln[0] + elem_soln[1])/3.;
              nodal_soln[3] = (elem_soln[0] + 2.*elem_soln[1])/3.;

              return;
            }

          case TRI6:
            {
              assert (elem_soln.size()  == 3);
              assert (nodal_soln.size() == 6);

              nodal_soln[0] = elem_soln[0];
              nodal_soln[1] = elem_soln[1];
              nodal_soln[2] = elem_soln[2];
              nodal_soln[3] = .5*(elem_soln[0] + elem_soln[1]);
              nodal_soln[4] = .5*(elem_soln[1] + elem_soln[2]);
              nodal_soln[5] = .5*(elem_soln[2] + elem_soln[0]);

              return;
            }

          case QUAD8:
          case QUAD9:
            {
              assert (elem_soln.size()  == 4);

              if (type == QUAD8)
                assert (nodal_soln.size() == 8);
              else
                assert (nodal_soln.size() == 9);

              nodal_soln[0] = elem_soln[0];
              nodal_soln[1] = elem_soln[1];
              nodal_soln[2] = elem_soln[2];
              nodal_soln[3] = elem_soln[3];
              nodal_soln[4] = .5*(elem_soln[0] + elem_soln[1]);
              nodal_soln[5] = .5*(elem_soln[1] + elem_soln[


oftwareByChecksum[checksum]; ok {
			sw.ID = existing.ID
			insertsHostSoftware = append(insertsHostSoftware, hostID, sw.ID, sw.LastOpenedAt)
			insertedSoftware = append(insertedSoftware, sw)
		} else {
			// Log missing software but continue
			level.Warn(ds.logger).Log(
				"msg", "software not found after pre-insertion",
				"checksum", fmt.Sprintf("%x", checksum),
				"name", sw.Name,
				"version", sw.Version,
			)
		}
	}

	// Insert host_software links
	// INSERT IGNORE handles duplicate key errors for idempotency.
	if len(insertsHostSoftware) > 0 {
		values := strings.TrimSuffix(strings.Repeat("(?,?,?),", len(insertsHostSoftware)/3), ",")
		stmt := fmt.Sprintf(`INSERT IGNORE INTO host_software (host_id, software_id, last_opened_at) VALUES %s`, values)
		if _, err := tx.ExecContext(ctx, stmt, insertsHostSoftware...); err != nil {
			return nil, ctxerr.Wrap(ctx, err, "insert host software")
		}
	}

	return insertedSoftware, nil
}

func getSoftwareIDsByChecksums(ctx context.Context, tx sqlx.QueryerContext, checksums []string) ([]softwareIDChecksum, error) {
	if len(checksums) == 0 {
		return []softwareIDChecksum{}, nil
	}

	// get existing software ids for checksums
	stmt, args, err := sqlx.In("SELECT name, id, checksum, title_id, bundle_identifier, source FROM software WHERE checksum IN (?)", checksums)
	if err != nil {
		return nil, ctxerr.Wrap(ctx, err, "build select software query")
	}
	var existingSoftware []softwareIDChecksum
	if err = sqlx.SelectContext(ctx, tx, &existingSoftware, stmt, args...); err != nil {
		return nil, ctxerr.Wrap(ctx, err, "get existing software")
	}
	return existingSoftware, nil
}

// update host_software when incoming software has a significantly more recent
// last opened timestamp (or didn't have on in currentMap). Note that it only
// processes software that is in both current and incoming maps, as the case
// where it is only in incoming is already handled by
// insertNewInstalledHostSoftwareDB.
func updateModifiedHostSoftwareDB(
	ctx context.Context,
	tx sqlx.ExtContext,
	hostID uint,
	currentMap map[string]fleet.Software,
	incomingMap map[string]fleet.Software,
	existingBundleIDsToUpdate map[string][]fleet.Software,
	minLastOpenedAtDiff time.Duration,
	logger log.Logger,
) error {
	var keysToUpdate []string
	for key, newSw := range incomingMap {
		curSw, ok := currentMap[key]
		// software must exist in current map for us to update it.
		if !ok {
			continue
		}
		// if the new software has no last opened timestamp, we only
		// update if the current software has no last opened timestamp
		// and is marked as having a name change.
		if newSw.LastOpenedAt == nil {
			if _, ok := existingBundleIDsToUpdate[newSw.BundleIdentifier]; ok && curSw.LastOpenedAt == nil {
				keysToUpdate = append(keysToUpdate, key)
			}
			// Log cases where the new software has no last opened timestamp, the current software does,
			// and the software is marked as having a name change.
			// This is expected on macOS, but not on windows/linux.
			if ok && curSw.LastOpenedAt != nil && newSw.Source != "apps" {
				level.Warn(logger).Log(
					"msg", "updateModifiedHostSoftwareDB: last opened at is nil for new software, but not for current software",
					"new_software", newSw.Name, "current_software", curSw.Name,
					"bundle_identifier", newSw.BundleIdentifier,
				)


// *** WARNING: this file was generated by pulumi-language-dotnet. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.AliCloud.Ecs
{
    public static class GetEcsSnapshotGroups
    {
        /// <summary>
        /// This data source provides the Ecs Snapshot Groups of the current Alibaba Cloud user.
        ///
        /// > **NOTE:** Available in v1.160.0+.
        ///
        /// ## Example Usage
        ///
        /// Basic Usage
        ///
        /// ```csharp
        /// using System.Collections.Generic;
        /// using System.Linq;
        /// using Pulumi;
        /// using AliCloud = Pulumi.AliCloud;
        ///
        /// return await Deployment.RunAsync(() =>
        /// {
        ///     var ids = AliCloud.Ecs.GetEcsSnapshotGroups.Invoke(new()
        ///     {
        ///         Ids = new[]
        ///         {
        ///             "example-id",
        ///         },
        ///     });
        ///
        ///     var nameRegex = AliCloud.Ecs.GetEcsSnapshotGroups.Invoke(new()
        ///     {
        ///         NameRegex = "^my-SnapshotGroup",
        ///     });
        ///
        ///     var status = AliCloud.Ecs.GetEcsSnapshotGroups.Invoke(new()
        ///     {
        ///         Status = "accomplished",
        ///     });
        ///
        ///     var instanceId = AliCloud.Ecs.GetEcsSnapshotGroups.Invoke(new()
        ///     {
        ///         InstanceId = "example-instance_id",
        ///     });
        ///
        ///     return new Dictionary<string, object?>
        ///     {
        ///         ["ecsSnapshotGroupId1"] = ids.Apply(getEcsSnapshotGroupsResult => getEcsSnapshotGroupsResult.Groups[0]?.Id),
        ///         ["ecsSnapshotGroupId2"] = nameRegex.Apply(getEcsSnapshotGroupsResult => getEcsSnapshotGroupsResult.Groups[0]?.Id),
        ///         ["ecsSnapshotGroupId3"] = status.Apply(getEcsSnapshotGroupsResult => getEcsSnapshotGroupsResult.Groups[0]?.Id),
        ///         ["ecsSnapshotGroupId4"] = instanceId.Apply(getEcsSnapshotGroupsResult => getEcsSnapshotGroupsResult.Groups[0]?.Id),
        ///     };
        /// });
        /// ```
        /// </summary>
        public static Task<GetEcsSnapshotGroupsResult> InvokeAsync(GetEcsSnapshotGroupsArgs? args = null, InvokeOptions? options = null)
            => global::Pulumi.Deployment.Instance.InvokeAsync<GetEcsSnapshotGroupsResult>("alicloud:ecs/getEcsSnapshotGroups:getEcsSnapshotGroups", args ?? new GetEcsSnapshotGroupsArgs(), options.WithDefaults());

        /// <summary>
        /// This data source provides the Ecs Snapshot Groups of the current Alibaba Cloud user.
        ///
        /// > **NOTE:** Available in v1.160.0+.
        ///
        /// ## Example Usage
        ///
        /// Basic Usage
        ///
        /// ```csharp
        /// using System.Collections.Generic;
        /// using System.Linq;
        /// using Pulumi;
        /// using AliCloud = Pulumi.AliCloud;
        ///
        /// return await Deployment.RunAsync(() =>
        /// {
        ///     var ids = AliCloud.Ecs.GetEcsSnapshotGroups.Invoke(new()
        ///     {
        ///         Ids = new[]
        ///         {
        ///             "example-id",
        ///         },
        ///     });
        ///
        ///     var nameRegex = AliCloud.Ecs.GetEcsSnapshotGroups.Invoke(new()
        ///     {
        ///         NameRegex = "^my-Snapsho


    var strings      = require('./utils/strings');
    var c            = require('./zlib/constants');
    var msg          = require('./zlib/messages');
    var ZStream      = require('./zlib/zstream');
    var GZheader     = require('./zlib/gzheader');

    var toString = Object.prototype.toString;

    /**
     * class Inflate
     *
     * Generic JS-style wrapper for zlib calls. If you don't need
     * streaming behaviour - use more simple functions: [[inflate]]
     * and [[inflateRaw]].
     **/

    /* internal
     * inflate.chunks -> Array
     *
     * Chunks of output data, if [[Inflate#onData]] not overriden.
     **/

    /**
     * Inflate.result -> Uint8Array|Array|String
     *
     * Uncompressed result, generated by default [[Inflate#onData]]
     * and [[Inflate#onEnd]] handlers. Filled after you push last chunk
     * (call [[Inflate#push]] with `Z_FINISH` / `true` param) or if you
     * push a chunk with explicit flush (call [[Inflate#push]] with
     * `Z_SYNC_FLUSH` param).
     **/

    /**
     * Inflate.err -> Number
     *
     * Error code after inflate finished. 0 (Z_OK) on success.
     * Should be checked if broken data possible.
     **/

    /**
     * Inflate.msg -> String
     *
     * Error message, if [[Inflate.err]] != 0
     **/

    /**
     * new Inflate(options)
     * - options (Object): zlib inflate options.
     *
     * Creates new inflator instance with specified params. Throws exception
     * on bad params. Supported options:
     *
     * - `windowBits`
     * - `dictionary`
     *
     * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)
     * for more information on these.
     *
     * Additional options, for internal needs:
     *
     * - `chunkSize` - size of generated data chunks (16K by default)
     * - `raw` (Boolean) - do raw inflate
     * - `to` (String) - if equal to 'string', then result will be converted
     *   from utf8 to utf16 (javascript) string. When string output requested,
     *   chunk length can differ from `chunkSize`, depending on content.
     *
     * By default, when no options set, autodetect deflate/gzip data format via
     * wrapper header.
     *
     * ##### Example:
     *
     * ```javascript
     * var pako = require('pako')
     *   , chunk1 = Uint8Array([1,2,3,4,5,6,7,8,9])
     *   , chunk2 = Uint8Array([10,11,12,13,14,15,16,17,18,19]);
     *
     * var inflate = new pako.Inflate({ level: 3});
     *
     * inflate.push(chunk1, false);
     * inflate.push(chunk2, true);  // true -> last chunk
     *
     * if (inflate.err) { throw new Error(inflate.err); }
     *
     * console.log(inflate.result);
     * ```
     **/
    function Inflate(options) {
        if (!(this instanceof Inflate)) return new Inflate(options);

        this.options = utils.assign({
            chunkSize: 16384,
            windowBits: 0,
            to: ''
        }, options || {});

        var opt = this.options;

        // Force window size for `raw` data, if not set directly,
        // because we have no header for autodetect.
        if (opt.raw && (opt.windowBits >= 0) && (opt.windowBits < 16)) {
            opt.windowBits = -opt.windowBits;
            if (opt.windowBits === 0) { opt.windowBits = -15; }
        }

        // If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate
        if


using NAudio.Wave;
using System;

public class AudioResampler16KhzTo24Khz : IDisposable
{
    private readonly WaveFormat _sourceFormat;
    private readonly WaveFormat _targetFormat;
    private readonly BufferedWaveProvider _bufferedWaveProvider;
    private readonly MediaFoundationResampler _resampler;

    public AudioResampler16KhzTo24Khz()
    {
        _sourceFormat = new WaveFormat(16000, 16, 1); // 16 kHz, 16-bit, mono
        _targetFormat = new WaveFormat(24000, 16, 1); // 24 kHz, 16-bit, mono

        _bufferedWaveProvider = new BufferedWaveProvider(_sourceFormat)
        {
            DiscardOnBufferOverflow = true,
            ReadFully = false // Do not block when no data is available
        };

        _resampler = new MediaFoundationResampler(_bufferedWaveProvider, _targetFormat)
        {
            ResamplerQuality = 60 // High-quality resampling
        };
    }

    public byte[] Resample(byte[] audioData)
    {
        _buffer


efine cc05	8
#define cc06	10
#define cc07	12
#define cc08	14
#define cc09	16
#define cc10	18
#define cc11	20
#define cc12	22
#define cc13	24
#define cc14	26
#define cc15	28
#define cc16	30

#define aa1	 1
#define aa2	 3
#define aa3	 5
#define aa4	 7
#define aa5	 9

#define bb1	11
#define bb2	13
#define bb3	15
#define bb4	17
#define bb5	19
#define bb6	21
#define bb7	23
#define bb8	25
#define bb9	27
#else
#define c01	%f0
#define c02	%f1
#define c03	%f2
#define c04	%f3
#define c05	%f4
#define c06	%f5
#define c07	%f6
#define c08	%f7
#define c09	%f8
#define c10	%f9
#define c11	%f10
#define c12	%f11
#define c13	%f12
#define c14	%f13
#define c15	%f14
#define c16	%f15

#define a1	%f16
#define a2	%f17
#define a3	%f18
#define a4	%f19
#define a5	%f20

#define b1	%f21
#define b2	%f22
#define b3	%f23
#define b4	%f24
#define b5	%f25
#define b6	%f26
#define b7	%f27
#define b8	%f28
#define b9	%f29

#define cc01	0
#define cc02	1
#define cc03	2
#define cc04	3
#define cc05	4
#define cc06	5
#define cc07	6
#define cc08	7
#define cc09	8
#define cc10	9
#define cc11	10
#define cc12	11
#define cc13	12
#define cc14	13
#define cc15	14
#define cc16	15

#define aa1	16
#define aa2	17
#define aa3	18
#define aa4	19
#define aa5	20

#define bb1	21
#define bb2	22
#define bb3	23
#define bb4	24
#define bb5	25
#define bb6	26
#define bb7	27
#define bb8	28
#define bb9	29

#endif

#ifndef CONJ
#define FMADD1	FMADD
#define FMADD2	FMADD
#define FMADD3	FMADD
#define FMADD4	FNMSUB
#else
#if defined(LN) || defined(LT)
#define FMADD1	FMADD
#define FMADD2	FNMSUB
#define FMADD3	FMADD
#define FMADD4	FMADD
#endif
#if defined(RN) || defined(RT)
#define FMADD1	FMADD
#define FMADD2	FMADD
#define FMADD3	FNMSUB
#define FMADD4	FMADD
#endif
#endif

        .register %g2, #scratch
        .register %g3, #scratch

	PROLOGUE
	SAVESP

#ifndef __64BIT__
#ifdef DOUBLE
	ld	[%sp + STACK_START + 32], A
	ld	[%sp + STACK_START + 36], B
	ld	[%sp + STACK_START + 40], C
	ld	[%sp + STACK_START + 44], LDC
	ld	[%sp + STACK_START + 48], OFFSET
#else
	ld	[%sp + STACK_START + 28], B
	ld	[%sp + STACK_START + 32], C
	ld	[%sp + STACK_START + 36], LDC
	ld	[%sp + STACK_START + 40], OFFSET
#endif
#else
	ldx	[%sp + STACK_START + 56], B
	ldx	[%sp + STACK_START + 64], C
	ldx	[%sp + STACK_START + 72], LDC
	ldx	[%sp + STACK_START + 80], OFFSET
#endif

	cmp	M, 0
	ble,pn	%icc, .LL999
	nop

	sll	LDC, ZBASE_SHIFT, LDC

#ifdef LN
	smul	M, K, TEMP1
	sll	TEMP1, ZBASE_SHIFT, TEMP1


tures in the reply to
     *   XkbGetDeviceInfo or in an XkbExtensionDeviceNotify event.
     * XkbXI_UnsupportedFeature is reported in XkbExtensionDeviceNotify
     * events to indicate an attempt to use an unsupported feature.
     */
#define XkbXI_KeyboardsMask (1L << 0)
#define XkbXI_ButtonActionsMask (1L << 1)
#define XkbXI_IndicatorNamesMask (1L << 2)
#define XkbXI_IndicatorMapsMask (1L << 3)
#define XkbXI_IndicatorStateMask (1L << 4)
#define XkbXI_UnsupportedFeatureMask (1L << 15)
#define XkbXI_AllFeaturesMask (0x001f)
#define XkbXI_AllDeviceFeaturesMask (0x001e)

#define XkbXI_IndicatorsMask (0x001c)
#define XkbAllExtensionDeviceEventsMask (0x801f)

/*
     * Per-Client Flags:
     *  - Specifies flags to be changed by the PerClientFlags request.
     */
#define XkbPCF_DetectableAutoRepeatMask (1L << 0)
#define XkbPCF_GrabsUseXKBStateMask (1L << 1)
#define XkbPCF_AutoResetControlsMask (1L << 2)
#define XkbPCF_LookupStateWhenGrabbed (1L << 3)
#define XkbPCF_SendEventUsesXKBState (1L << 4)
#define XkbPCF_AllFlagsMask (0x1F)

/*
     * Debugging flags and controls
     */
#define XkbDF_DisableLocks (1 << 0)

#endif /* _XKB_H_ */


e measure our performance on Imagenet classification, COCO object detection, VOC image segmentation. We evaluate the trade-offs between accuracy, and number of operations measured by multiply-adds (MAdd), as well as the number of parameters.

## How to use it?

**Predict image**

```python
from mmpretrain import inference_model

predict = inference_model('mobilenet-v2_8xb32_in1k', 'demo/bird.JPEG')
print(predict['pred_class'])
print(predict['pred_score'])
```

**Use the model**

```python
import torch
from mmpretrain import get_model

model = get_model('mobilenet-v2_8xb32_in1k', pretrained=True)
inputs = torch.rand(1, 3, 224, 224)
out = model(inputs)
print(type(out))
# To extract features.
feats = model.extract_feat(inputs)
print(type(feats))
```

**Train/Test Command**

Prepare your dataset according to the [docs](https://mmpretrain.readthedocs.io/en/latest/user_guides/dataset_prepare.html#prepare-dataset).

Train:

```shell
python tools/train.py configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py
```

Test:

```shell
python tools/test.py configs/mobilenet_v2/mobilenet-v2_8xb32_in1k.py https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth
```

## Models and results

### Image Classification on ImageNet-1k

| Model                     |   Pretrain   | Params (M) | Flops (G) | Top-1 (%) | Top-5 (%) |                Config                |                                          Download                                          |
| :------------------------ | :----------: | :--------: | :-------: | :-------: | :-------: | :----------------------------------: | :----------------------------------------------------------------------------------------: |
| `mobilenet-v2_8xb32_in1k` | From scratch |    3.50    |   0.32    |   71.86   |   90.42   | [config](mobilenet-v2_8xb32_in1k.py) | [model](https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth) \| [log](https://download.openmmlab.com/mmclassification/v0/mobilenet_v2/mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.json) |

## Citation

```bibtex
@INPROCEEDINGS{8578572,
  author={M. {Sandler} and A. {Howard} and M. {Zhu} and A. {Zhmoginov} and L. {Chen}},
  booktitle={2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  title={MobileNetV2: Inverted Residuals and Linear Bottlenecks},
  year={2018},
  volume={},
  number={},
  pages={4510-4520},
  doi={10.1109/CVPR.2018.00474}}
}
```
# RepVGG

> [RepVGG: Making VGG-style ConvNets Great Again](https://arxiv.org/abs/2101.03697)

## Introduction

RepVGG is a VGG-style convolutional architecture. It has the following advantages:

1. The model has a VGG-like plain (a.k.a. feed-forward) topology 1 without any branches. I.e., every layer takes the output of its only preceding layer as input and feeds the output into its only following layer.
2. The model’s body uses only 3 × 3 conv and ReLU.
3. The concrete architecture (including the specific depth and layer widths) is instantiated with no automatic search, manual refinement, compound scaling, nor other heavy designs.

<img src="https://user-images


eq.typenames:
req.redist:
f1_keywords:
 - IDWriteTextFormat3::GetFontAxisValues
 - dwrite_3/IDWriteTextFormat3::GetFontAxisValues
dev_langs:
 - c++
topic_type:
 - APIRef
 - kbSyntax
api_type:
 - COM
api_location:
 - Dwrite.lib
 - Dwrite.dll
api_name:
 - IDWriteTextFormat3::GetFontAxisValues
---

## -description

Retrieves the list of font axis values on the format.

## -parameters

### -param fontAxisValues [out]

Type: **[DWRITE_FONT_AXIS_VALUE](./ns-dwrite_3-dwrite_font_axis_value.md)\***

A pointer to an array of **DWRITE_FONT_AXIS_VALUE** structures into which **GetFontAxisValues** writes the list of font axis values. You're responsible for managing the size and the lifetime of this array. Call [GetFontAxisValueCount](./nf-dwrite_3-idwritetextformat3-getfontaxisvaluecount.md) to determine the size of array to allocate.

### -param fontAxisValueCount

Type: **[UINT32](/windows/win32/winprog/windows-data-types)**

The maximum number of font axis values to write into the memory block pointed to by `fontAxisValues`.

## -returns

Type: **[HRESULT](/windows/win32/com/structure-of-com-error-codes)**

If the function succeeds, it returns **S_OK**. Otherwise, it returns an [**HRESULT**](/windows/win32/com/structure-of-com-error-codes) [error code](/windows/win32/com/com-error-codes-10).

## -remarks

## -see-also
---
UID: NF:dwrite_3.IDWriteFactory5.CreateFontSetBuilder
title: IDWriteFactory5::CreateFontSetBuilder (dwrite_3.h)
description: Creates an empty font set builder to add font face references and create a custom font set. (IDWriteFactory5.CreateFontSetBuilder)
helpviewer_keywords: ["CreateFontSetBuilder","CreateFontSetBuilder method [Direct Write]","CreateFontSetBuilder method [Direct Write]","IDWriteFactory5 interface","IDWriteFactory5 interface [Direct Write]","CreateFontSetBuilder method","IDWriteFactory5.CreateFontSetBuilder","IDWriteFactory5::CreateFontSetBuilder","directwrite.idwritefactory5_createfontsetbuilder","dwrite_3/IDWriteFactory5::CreateFontSetBuilder"]
old-location: directwrite\idwritefactory5_createfontsetbuilder.htm
tech.root: DirectWrite
ms.assetid: 80E2E906-7596-4E39-808A-5CCA69376903
ms.date: 09/10/2025
ms.keywords: CreateFontSetBuilder, CreateFontSetBuilder method [Direct Write], CreateFontSetBuilder method [Direct Write],IDWriteFactory5 interface, IDWriteFactory5 interface [Direct Write],CreateFontSetBuilder method, IDWriteFactory5.CreateFontSetBuilder, IDWriteFactory5::CreateFontSetBuilder, directwrite.idwritefactory5_createfontsetbuilder, dwrite_3/IDWriteFactory5::CreateFontSetBuilder
req.header: dwrite_3.h
req.include-header:
req.target-type: Windows
req.target-min-winverclnt: Windows 10 Build 15063
req.target-min-winversvr: Windows 10 Build 15063
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: Dwrite.lib
req.dll:
req.irql:
targetos: Windows
req.typenames:
req.redist:
ms.custom: 19H1
f1_keywords:


n.execute("ALTER TABLE settings ADD COLUMN default_lang TEXT DEFAULT 'ru'")
    con.execute("ALTER TABLE settings ADD COLUMN contests_is_on TEXT DEFAULT 'True'")

    # purchases
    con.execute("ALTER TABLE purchases RENAME COLUMN price TO price_rub")
    con.execute("ALTER TABLE purchases ADD COLUMN price_dollar INTEGER")
    con.execute("ALTER TABLE purchases ADD COLUMN price_euro INTEGER")

    # positions
    con.execute("ALTER TABLE positions ADD COLUMN type TEXT DEFAULT 'text'")
    con.execute("ALTER TABLE positions RENAME COLUMN price TO price_rub")
    con.execute("ALTER TABLE positions ADD COLUMN price_dollar INTEGER")
    con.execute("ALTER TABLE positions ADD COLUMN price_euro INTEGER")

    # payments
    con.execute("ALTER TABLE payments ADD COLUMN pay_crypto TEXT DEFAULT 'False'")
    con.execute("ALTER TABLE payments ADD COLUMN pay_payok TEXT DEFAULT 'False'")
    con.execute("ALTER TABLE payments ADD COLUMN pay_aaio TEXT DEFAULT 'False'")

    # items
    con.execute("ALTER TABLE items ADD COLUMN file_id TEXT")

    # coupons
    con.execute("ALTER TABLE coupons RENAME COLUMN discount TO discount_rub")
    con.execute("ALTER TABLE coupons ADD COLUMN discount_dollar INTEGER")
    con.execute("ALTER TABLE coupons ADD COLUMN discount_euro INTEGER")

    con.commit()

    print("База Данных успешно перекодирована!")

if __name__ == "__main__":
    rebuild_db()


(MmkvManager.ID_SUB, MMKV.MULTI_PROCESS_MODE) }

    /**
     * Legacy loading config
     */
    fun migrateLegacyConfig(c: Context): Boolean? {
        try {
            val defaultSharedPreferences = PreferenceManager.getDefaultSharedPreferences(c)
            val context = defaultSharedPreferences.getString(ANG_CONFIG, "")
            if (context.isNullOrBlank()) {
                return null
            }
            val angConfig = Gson().fromJson(context, AngConfig::class.java)
            for (i in angConfig.vmess.indices) {
                upgradeServerVersion(angConfig.vmess[i])
            }

            copyLegacySettings(defaultSharedPreferences)
            migrateVmessBean(angConfig, defaultSharedPreferences)
            migrateSubItemBean(angConfig)

            defaultSharedPreferences.edit().remove(ANG_CONFIG).apply()
            return true
        } catch (e: Exception) {
            e.printStackTrace()
        }
        return false
    }

    private fun copyLegacySettings(sharedPreferences: SharedPreferences) {
        listOf(
            AppConfig.PREF_MODE,
            AppConfig.PREF_REMOTE_DNS,
            AppConfig.PREF_DOMESTIC_DNS,
            AppConfig.PREF_LOCAL_DNS_PORT,
            AppConfig.PREF_SOCKS_PORT,
            AppConfig.PREF_HTTP_PORT,
            AppConfig.PREF_LOGLEVEL,
            AppConfig.PREF_ROUTING_DOMAIN_STRATEGY,
            AppConfig.PREF_ROUTING_MODE,
            AppConfig.PREF_V2RAY_ROUTING_AGENT,
            AppConfig.PREF_V2RAY_ROUTING_BLOCKED,
            AppConfig.PREF_V2RAY_ROUTING_DIRECT,
        ).forEach { key ->
            settingsStorage?.encode(key, sharedPreferences.getString(key, null))
        }
        listOf(
            AppConfig.PREF_SPEED_ENABLED,
            AppConfig.PREF_PROXY_SHARING,
            AppConfig.PREF_LOCAL_DNS_ENABLED,
             AppConfig.PREF_PREFER_IPV6,
            AppConfig.PREF_PER_APP_PROXY,
            AppConfig.PREF_BYPASS_APPS,
        ).forEach { key ->
            settingsStorage?.encode(key, sharedPreferences.getBoolean(key, false))
        }
        listOf(
             AppConfig.PREF_ALLOW_INSECURE,

        ).forEach { key ->
            settingsStorage?.encode(key, sharedPreferences.getBoolean(key, true))
        }
        settingsStorage?.encode(
            AppConfig.PREF_SNIFFING_ENABLED,
            sharedPreferences.getBoolean(AppConfig.PREF_SNIFFING_ENABLED, true)
        )
        settingsStorage?.encode(
            AppConfig.PREF_PER_APP_PROXY_SET,
            sharedPreferences.getStringSet(AppConfig.PREF_PER_APP_PROXY_SET, setOf())
        )
    }

    private fun migrateVmessBean(angConfig: AngConfig, sharedPreferences: SharedPreferences) {
        angConfig.vmess.forEachIndexed { index, vmessBean ->
            val type = EConfigType.fromInt(vmessBean.configType) ?: return@forEachIndexed
            val config = ServerConfig.create(type)
            config.remarks = vmessBean.remarks
            config.subscriptionId = vmessBean.subid
            if (type == EConfigType.CUSTOM) {
                val jsonConfig = sharedPreferences.getString(ANG_CONFIG + vmessBean.guid, "")
                val v2rayConfig = try {
                    Gson().fromJson(jsonConfig


en = string.len(t)
     local len,hex = bin.unpack(('H%d'):format(len),t)
     return hex
end

local function convert_to_emulform(hexdata)
    if string.len(hexdata) % 8 ~= 0 then
        return oops(('Bad data, length should be a multiple of 8 (was %d)'):format(string.len(hexdata)))
    end
    local ascii,i = '';
    for i = 1, string.len(hexdata), 8 do
        ascii = ascii..string.sub(hexdata, i, i+7)..'\n'
    end
    return string.sub(ascii, 1, -2)
end

local function main(args)

    local input = 'dumpdata.bin'
    local output

    for o, a in getopt.getopt(args, 'i:o:h') do
        if o == 'h' then return help() end
        if o == 'i' then input = a end
        if o == 'o' then output = a end
    end
    -- Validate the parameters

    local infile = io.open(input, 'rb')
    if infile == nil then
        return oops('Could not read file ', input)
    end
    local dumpdata = readdump(infile)
    -- The hex-data is now in ascii-format,

    -- But first, check the uid
    -- lua uses start index and endindex,  not count.
    -- UID is  3three skip bcc0 then 4bytes.
    -- 1 lua is one-index.
    -- 1 + 112 (56*2)  new dump format has version/signature/counter data here
    -- 113,114,115,116,117,118   UID first three bytes
    -- 119,120 bcc0
    -- 121---  UID last four bytes
    local uid = string.sub(dumpdata, 113, 113+5)..string.sub(dumpdata, 113+8, 113+8+7)
    output = output or (uid .. '.eml')

    -- Format some linebreaks
    dumpdata = convert_to_emulform(dumpdata)

    local outfile = io.open(output, 'w')
    if outfile == nil then
        return oops('Could not write to file ', output)
    end

    outfile:write(dumpdata:lower())
    io.close(outfile)
    print(('[+] Wrote an emulator-dump to the file %s'):format(output))
end

--[[
In the future, we may implement so that scripts are invoked directly
into a 'main' function, instead of being executed blindly. For future
compatibility, I have done so, but I invoke my main from here.
--]]
main(args)


go.uber.org/mock/gomock"

	"monorepo/bin-call-manager/models/bridge"
	"monorepo/bin-call-manager/pkg/dbhandler"
)

func Test_Create(t *testing.T) {

	type test struct {
		name string

		asteriskID    string
		id            string
		bridgeName    string
		bridgeType    bridge.Type
		tech          bridge.Tech
		class         string
		creator       string
		videoMode     string
		videoSourceID string
		referenceType bridge.ReferenceType
		referenceID   uuid.UUID

		expectBridge *bridge.Bridge

		responseBridge *bridge.Bridge
		expectRes      *bridge.Bridge
	}

	tests := []test{
		{
			"normal",

			"3e:50:6b:43:bb:30",
			"5169be58-6e0d-11ed-9bfa-1bb6e1bc670f",
			"test bridge",
			bridge.TypeMixing,
			bridge.TechSoftmix,
			"stasis",
			"Stasis",
			"none",
			"",
			bridge.ReferenceTypeUnknown,
			uuid.Nil,

			&bridge.Bridge{
				AsteriskID: "3e:50:6b:43:bb:30",
				ID:         "5169be58-6e0d-11ed-9bfa-1bb6e1bc670f",
				Name:       "test bridge",
				Type:       bridge.TypeMixing,
				Tech:       bridge.TechSoftmix,
				Class:      "stasis",
				Creator:    "Stasis",

				VideoMode:     "none",
				VideoSourceID: "",

				ChannelIDs: []string{},

				ReferenceType: bridge.ReferenceTypeUnknown,
				ReferenceID:   uuid.Nil,
			},

			&bridge.Bridge{
				ID: "2f9f0728-7192-11ed-9202-2fcb8e8e8f30",
			},
			&bridge.Bridge{
				ID: "2f9f0728-7192-11ed-9202-2fcb8e8e8f30",
			},
		},
	}

	for _, tt := range tests {
		t.Run(tt.name, func(t *testing.T) {
			mc := gomock.NewController(t)
			defer mc.Finish()

			mockUtil := utilhandler.NewMockUtilHandler(mc)
			mockDB := dbhandler.NewMockDBHandler(mc)
			mockReq := requesthandler.NewMockRequestHandler(mc)
			mockNotify := notifyhandler.NewMockNotifyHandler(mc)

			h := bridgeHandler{
				utilHandler:   mockUtil,
				db:            mockDB,
				reqHandler:    mockReq,
				notifyHandler: mockNotify,
			}
			ctx := context.Background()

			mockDB.EXPECT().BridgeCreate(ctx, tt.expectBridge).Return(nil)
			mockDB.EXPECT().BridgeGet(gomock.Any(), tt.id).Return(tt.responseBridge, nil)

			res, err := h.Create(
				ctx,

				tt.asteriskID,
				tt.id,
				tt.bridgeName,

				tt.bridgeType,
				tt.tech,
				tt.class,
				tt.creator,

				tt.videoMode,
				tt.videoSourceID,

				tt.referenceType,
				tt.referenceID,
			)
			if err != nil {
				t.Errorf("Wrong match. expect: ok, got: %v", err)
			}

			if reflect.DeepEqual(tt.expectRes, res) == false {
				t.Errorf("Wrong match.\nexpect: %v\ngot: %v", tt.expectRes, res)
			}
		})
	}
}

func Test_Get(t *testing.T) {

	type test struct {
		name string

		id string

		responseBridge *bridge.Bridge
		expectRes      *b


 VERSION_NUMBER: u8 = 131;

#[derive(Debug, IntoPrimitive, TryFromPrimitive)]
#[repr(u8)]
pub enum Tag {
    NewFloat = 70,
    BitBinary = 77,
    AtomCacheReference = 82,
    NewPID = 88,
    NewPort = 89,
    NewerReference = 90,
    SmallInteger = 97,
    Integer = 98,
    Float = 99,
    Function = 117,
    Atom = 100,
    Reference = 101,
    Port = 102,
    PID = 103,
    SmallTuple = 104,
    LargeTuple = 105,
    Nil = 106,
    String = 107,
    List = 108,
    Binary = 109,
    SmallBig = 110,
    LargeBig = 111,
    NewFunction = 112,
    Export = 113,
    NewReference = 114,
    SmallAtom = 115,
    Map = 116,
    AtomUTF8 = 118,
    SmallAtomUTF8 = 119,
}

impl Tag {
    pub fn decode(bytes: &[u8]) -> Result<(Self, &[u8]), Exception> {
        let (tag_u8, after_tag_bytes) = u8::decode(bytes)?;
        let result_tag: Result<Tag, _> = tag_u8.try_into();

        match result_tag {
            Ok(tag) => Ok((tag, after_tag_bytes)),
            Err(_) => Err(badarg!().into()),
        }
    }
}

pub enum Pid {
    Local(LocalPid),
    External(ExternalPid),
}

impl Pid {
    fn decode(safe: bool, bytes: &[u8]) -> Result<(Self, &[u8]), Exception> {
        let (tag, after_tag_bytes) = Tag::decode(bytes)?;

        match tag {
            Tag::PID => pid::decode_pid(safe, after_tag_bytes),
            Tag::NewPID => new_pid::decode_pid(safe, after_tag_bytes),
            _ => Err(badarg!().into()),
        }
    }

    fn new(arc_node: Arc<Node>, id: u32, serial: u32) -> Result<Self, Exception> {
        let pid = if arc_node == node::arc_node() {
            let local_pid = LocalPid::new(id as usize, serial as usize)?;

            Pid::Local(local_pid)
        } else {
            let external_pid = ExternalPid::new(arc_node, id as usize, serial as usize)?;

            Pid::External(external_pid)
        };

        Ok(pid)
    }

    fn clone_to_process(&self, process: &Process) -> Term {
        match self {
            Pid::Local(local_pid) => unsafe { local_pid.as_term() },
            Pid::External(external_pid) => external_pid.clone_to_process(process),
        }
    }
}

impl Into<Creator> for Pid {
    fn into(self) -> Creator {
        match self {
            Pid::Local(local_pid) => Creator::Local(local_pid),
            Pid::External(external_pid) => Creator::External(external_pid),
        }
    }
}

// Private

fn decode_vec_term<'a>(
    process: &Process,
    safe: bool,
    bytes: &'a [u8],
    len: usize,
) -> Result<(Vec<Term>, &'a [u8]), Exception> {
    let mut element_vec: Vec<Term> = Vec::with_capacity(len);
    let mut remaining_bytes = bytes;

    for _ in 0..len {
        let (element, after_element_bytes) = term::decode_tagged(process, safe, remaining_bytes)?;
        element_vec.push(element);
        remaining_bytes = after_element_bytes;
    }

    Ok((element_vec, remaining_bytes))
}
#[macro_use]
extern crate log;
extern crate env_logger;
extern crate reqwest;
#[macro_use]
extern crate serde;
extern crate serenity;
extern crate tokio;

mod client;
mod commands;
mod error;
mod handler;
mod utils;

use client::Cadency;


br64
	movq	%rsp,%rax
.Lxts_dec_prologue:
	pushq	%rbp
	pushq	%rbx
	pushq	%r12
	pushq	%r13
	pushq	%r14
	pushq	%r15
	leaq	-72(%rsp),%rsp
	movq	160(%rsp),%r10
	movq	168(%rsp),%r11
	leaq	-160(%rsp),%rsp
	movaps	%xmm6,64(%rsp)
	movaps	%xmm7,80(%rsp)
	movaps	%xmm8,96(%rsp)
	movaps	%xmm9,112(%rsp)
	movaps	%xmm10,128(%rsp)
	movaps	%xmm11,144(%rsp)
	movaps	%xmm12,160(%rsp)
	movaps	%xmm13,176(%rsp)
	movaps	%xmm14,192(%rsp)
	movaps	%xmm15,208(%rsp)
.Lxts_dec_body:
	movq	%rsp,%rbp
	movq	%rcx,%r12
	movq	%rdx,%r13
	movq	%r8,%r14
	movq	%r9,%r15

	leaq	(%r11),%rcx
	leaq	32(%rbp),%rdx
	leaq	(%r10),%r8
	call	asm_AES_encrypt

	movl	240(%r15),%eax
	movq	%r14,%rbx

	movl	%eax,%edx
	shlq	$7,%rax
	subq	$96,%rax
	subq	%rax,%rsp

	movq	%rsp,%rax
	movq	%r15,%rcx
	movl	%edx,%r10d
	call	_bsaes_key_convert
	pxor	(%rsp),%xmm7
	movdqa	%xmm6,(%rax)
	movdqa	%xmm7,(%rsp)

	xorl	%eax,%eax
	andq	$-16,%r14
	testl	$15,%ebx
	setnz	%al
	shlq	$4,%rax
	subq	%rax,%r14

	subq	$128,%rsp
	movdqa	32(%rbp),%xmm6

	pxor	%xmm14,%xmm14
	movdqa	.Lxts_magic(%rip),%xmm12
	pcmpgtd	%xmm6,%xmm14

	subq	$128,%r14
	jc	.Lxts_dec_short
	jmp	.Lxts_dec_loop

.p2align	4
.Lxts_dec_loop:
	pshufd	$19,%xmm14,%xmm13
	pxor	%xmm14,%xmm14
	movdqa	%xmm6,%xmm15
	movdqa	%xmm6,0(%rsp)
	paddq	%xmm6,%xmm6
	pand	%xmm12,%xmm13
	pcmpgtd	%xmm6,%xmm14
	pxor	%xmm13,%xmm6
	pshufd	$19,%xmm14,%xmm13
	pxor	%xmm14,%xmm14
	movdqa	%xmm6,%xmm0
	movdqa	%xmm6,16(%rsp)
	paddq	%xmm6,%xmm6
	pand	%xmm12,%xmm13
	pcmpgtd	%xmm6,%xmm14
	pxor	%xmm13,%xmm6
	movdqu	0(%r12),%xmm7
	pshufd	$19,%xmm14,%xmm13
	pxor	%xmm14,%xmm14
	movdqa	%xmm6,%xmm1
	movdqa	%xmm6,32(%rsp)
	paddq	%xmm6,%xmm6
	pand	%xmm12,%xmm13
	pcmpgtd	%xmm6,%xmm14
	pxor	%x


p",
		parent_page = parent_page,
		callback_object = callback_object,
		on_enter_options = page_config.on_enter_options,
		on_enter_options_args = page_config.on_enter_options_args or {},
		on_item_selected = page_config.on_item_selected,
		on_cancel_exit = page_config.on_cancel_exit,
		show_revision = page_config.show_revision,
		no_cancel_to_parent_page = page_config.no_cancel_to_parent_page,
		z = page_config.z,
		layout_settings = page_config.layout_settings,
		sounds = page_config.sounds,
		environment = page_config.environment or parent_page and parent_page:environment(),
		in_splash_screen = page_config.in_splash_screen
	}

	return ChangelogPopupMenuPage:new(config, item_groups, compiler_data.world)
end


camFrame.Y;
            if (rc.StayLevel) {
                forward = new Vector3(forward.x, 0.0f, forward.z);
                forward.Normalize();
                up = Vector3.up;
            }
            Vector3f curScenePos = scene.RootGameObject.GetPosition();
            Vector3f newScenePos = curScenePos - dt * rc.curSpeedY * forward;
            scene.RootGameObject.SetPosition(newScenePos);
            scene.RootGameObject.RotateAroundD(
                camFrame.Origin, up, -dt * rc.curSpeedX * rc.angleMultipler);
        }

        public void SceneRateControlledZoom(FScene scene, fCamera cam, Vector2f curPos, RateControlInfo rc)
        {
            float dt = (FPlatform.RealTime() - rc.lastTime);
            rc.lastTime = FPlatform.RealTime();

            float delta_y = (curPos.y - rc.startPos.y);
            rc.curSpeedY =
                rc_update_speed(delta_y, rc.rampUpRadius, rc.deadZoneRadius, rc.maxAccel, rc.maxSpeed, dt, rc.curSpeedY);
            float delta_x = (curPos.x - rc.startPos.x);
            rc.curSpeedX =
                rc_update_speed(delta_x, rc.rampUpRadius, rc.deadZoneRadius, rc.maxAccel, rc.maxSpeed, dt, rc.curSpeedX);

            Frame3f camFrame = cam.GetWorldFrame();
            Vector3f forward = camFrame.Z;
            Vector3f up = camFrame.Y;
            if (rc.StayLevel) {
                forward = new Vector3(forward.x, 0.0f, forward.z);
                forward.Normalize();
                up = Vector3.up;
            }
            Vector3f right = Vector3.Cross(up, forward);
            Vector3f curScenePos = scene.RootGameObject.GetPosition();
            Vector3f newScenePos = curScenePos - dt * (rc.curSpeedY * forward + rc.curSpeedX * right);
            scene.RootGameObject.SetPosition(newScenePos);
        }

        // in egocentric camera system the "eye" is moving up/down, which means the scene moves in opposite direction
        public void SceneRateControlledEgogentricPan(FScene scene, fCamera cam, Vector2f curPos, RateContr


ce of a account address",
		Run:   balance,
	}
	addBalanceFlags(cmd)
	return cmd
}

func addBalanceFlags(cmd *cobra.Command) {
	cmd.Flags().StringP("addr", "a", "", "account addr")
	cmd.MarkFlagRequired("addr")
	cmd.Flags().StringP("exec", "e", "", getExecuterNameString())
	cmd.Flags().IntP("height", "", -1, "block height")
}

func getExecuterNameString() string {
	str := "executer name (only "
	allowExeName := types.AllowUserExec
	nameLen := len(allowExeName)
	for i := 0; i < nameLen; i++ {
		if i > 0 {
			str += ", "
		}
		str += fmt.Sprintf("\"%s\"", string(allowExeName[i]))
	}
	str += " and user-defined type supported)"
	return str
}

func balance(cmd *cobra.Command, args []string) {
	rpcLaddr, _ := cmd.Flags().GetString("rpc_laddr")
	addr, _ := cmd.Flags().GetString("addr")
	execer, _ := cmd.Flags().GetString("exec")
	height, _ := cmd.Flags().GetInt("height")
	err := address.CheckAddress(addr, -1)
	if err != nil {
		fmt.Fprintln(os.Stderr, types.ErrInvalidAddress)
		return
	}
	if execer == "" && height == -1 {
		req := types.ReqAllExecBalance{Addr: addr}
		var res rpctypes.AllExecBalance
		ctx := jsonclient.NewRPCCtx(rpcLaddr, "Chain33.GetAllExecBalance", &req, &res)
		ctx.SetResultCbExt(parseGetAllBalanceRes)
		cfg, err := commandtypes.GetChainConfig(rpcLaddr)
		if err != nil {
			fmt.Fprintln(os.Stderr, err)
			return
		}
		ctx.RunExt(cfg)
		return
	}

	stateHash := ""
	if height >= 0 {
		params := types.ReqBlocks{
			Start:    int64(height),
			End:      int64(height),
			IsDetail: false,
		}
		var res rpctypes.Headers
		ctx := jsonclient.NewRPCCtx(rpcLaddr, "Chain33.GetHeaders", &params, &res)
		_, err := ctx.RunResult()
		if err != nil {
			fmt.Fprintln(os.Stderr, err)
			return
		}
		h := res.Items[0]
		stateHash = h.StateHash
	}

	if execer == "" {
		req := types.ReqAllExecBalance{Addr: addr, StateHash: stateHash}
		var res rpctypes.AllExecBalance
		ctx := jsonclient.NewRPCCtx(rpcLaddr, "Chain33.GetAllExecBalance", &req, &res)
		ctx.SetResultCbExt(parseGetAllBalanceRes)
		cfg, err := commandtypes.GetChainConfig(rpcLaddr)
		if err != nil {
			fmt.Fprintln(os.Stderr, err)
			return
		}
		ctx.RunExt(cfg)
		return
	}

	if ok := types.IsAllowExecName([]byte(execer), []byte(execer)); !ok {
		fmt.Fprintln(os.Stderr, types.ErrExecNameNotAllow)
		return
	}

	var addrs []string
	addrs = append(addrs, addr)
	params := types.ReqBalance{
		Addresses: addrs,
		Execer:    execer,
		StateHash: stateHash,
	}
	var res []*rpctypes.Account
	ctx := jsonclient.NewRPCCtx(rpcLaddr, "Chain33.GetBalance", &params, &res)
	ctx.SetResultCbExt(parseGetBalanceRes)
	cfg, err := commandtypes.GetChainConfig(rpcLaddr)
	if err != nil {


ExistingDOMSlots();
  if (!slots) {
    return nullptr;
  }

  return slots->mStyle;
}

void nsStyledElement::ParseStyleAttribute(const nsAString& aValue,
                                          nsIPrincipal* aMaybeScriptedPrincipal,
                                          nsAttrValue& aResult,
                                          bool aForceInDataDoc) {
  Document* doc = OwnerDoc();
  bool isNativeAnon = IsInNativeAnonymousSubtree();

  if (!isNativeAnon &&
      !nsStyleUtil::CSPAllowsInlineStyle(this, doc, aMaybeScriptedPrincipal, 0,
                                         0, aValue, nullptr))
    return;

  if (aForceInDataDoc || !doc->IsLoadedAsData() || GetExistingStyle() ||
      doc->IsStaticDocument()) {
    bool isCSS = true;  // assume CSS until proven otherwise

    if (!isNativeAnon) {  // native anonymous content always assumes CSS
      nsAutoString styleType;
      doc->GetHeaderData(nsGkAtoms::headerContentStyleType, styleType);
      if (!styleType.IsEmpty()) {
        static const char textCssStr[] = "text/css";
        isCSS =
            (styleType.EqualsIgnoreCase(textCssStr, sizeof(textCssStr) - 1));
      }
    }

    if (isCSS &&
        aResult.ParseStyleAttribute(aValue, aMaybeScriptedPrincipal, this)) {
      return;
    }
  }

  aResult.SetTo(aValue);
}
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "mozilla/dom/DOMQuad.h"

#include "mozilla/dom/DOMPoint.h"
#include "mozilla/dom/DOMQuadBinding.h"
#include "mozilla/dom/DOMRect.h"
#include "mozilla/dom/DOMRectBinding.h"
#include "mozilla/FloatingPoint.h"

using namespace mozilla;
using namespace mozilla::dom;
using namespace mozilla::gfx;

NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE(DOMQuad, mParent, mPoints[0], mPoints[1],
                                      mPoints[2], mPoints[3])

NS_IMPL_CYCLE_COLLECTION_ROOT_NATIVE(DOMQuad, AddRef)
NS_IMPL_CYCLE_COLLECTION_UNROOT_NATIVE(DOMQuad, Release)

DOMQuad::DOMQuad(nsISupports* aParent, CSSPoint aPoints[4]) : mParent(aParent) {
  for (uint32_t i = 0; i < 4; ++i) {
    mPoints[i] = new DOMPoint(aParent, aPoints[i].x, aPoints[i].y);
  }
}

DOMQuad::DOMQuad(nsISupports* aParent) : mParent(aParent) {}

DOMQuad::~DOMQuad() = default;

JSObject* DOMQuad::WrapObject(JSContext* aCx,
                              JS::Handle<JSObject*> aGivenProto) {
  return DOMQuad_Binding::Wrap(aCx, this, aGivenProto);
}

already_AddRefed<DOMQuad> DOMQuad::FromRect(const GlobalObject& aGlobal,
                                            const DOMRectInit& aInit) {
  nsISupports* parent = aGlobal.GetAsSupports();
  RefPtr<DOMQuad> obj = new DOMQuad(parent);
  obj->mPoints[0] = new DOMPoint(parent, aInit.mX, aInit.mY, 0, 1);
  obj->mPoints[1] =
      new DOMPoint(parent, aInit.mX + aInit.mWidth, aInit.mY, 0, 1);
  obj->mPoints[2] = new DOMPoint(parent, aInit.mX + aInit.mWidth,
                                 aInit.mY + aInit


if __name__ == "__main__":
    from orbit import ISS
    from picamera import PiCamera
    cam = PiCamera()
    cam.resolution = (4056,3040)

    def convert(angle):
        # Convert a `skyfield` Angle to an Exif-appropriate
        # representation (positive rationals)
        # e.g. 98° 34' 58.7 to "98/1,34/1,587/10"
        # Return a tuple containing a Boolean and the converted angle,
        # with the Boolean indicating if the angle is negative
        sign, degrees, minutes, seconds = angle.signed_dms()
        exif_angle = f'{degrees:.0f}/1,{minutes:.0f}/1,{seconds*10:.0f}/10'
        return sign < 0, exif_angle

    def custom_capture(iss, camera, image):
        # Use `camera` to capture an `image` file with lat/long Exif data
        point = iss.coordinates()

        # Convert the latitude and longitude to Exif-appropriate
        # representations
        south, exif_latitude = convert(point.latitude)
        west, exif_longitude = convert(point.longitude)

        # Set the Exif tags specifying the current location
        camera.exif_tags['GPS.GPSLatitude'] = exif_latitude
        camera.exif_tags['GPS.GPSLatitudeRef'] = "S" if south else "N"
        camera.exif_tags['GPS.GPSLongitude'] = exif_longitude
        camera.exif_tags['GPS.GPSLongitudeRef'] = "W" if west else "E"

        # Capture the image
        camera.capture(image)

    for x in range(30):
        custom_capture(ISS(), cam, f'new_gps_image_{x}.jpg')


from_childstderr(
        &mut self,
        stderr: &mut ChildStderr,
    ) -> Result<(), Error> {
        let mut buf = String::new();
        stderr.read_to_string(&mut buf)?;
        self.parse_asan_output(&buf);
        Ok(())
    }

    /// read ASAN output from the log file and parse it.
    pub fn parse_asan_output_from_asan_log_file(&mut self, pid: i32) -> Result<(), Error> {
        let log_path = format!("{}.{}", ASAN_LOG_PATH, pid);
        let mut asan_output = File::open(Path::new(&log_path))?;

        let mut buf = String::new();
        asan_output.read_to_string(&mut buf)?;
        fs::remove_file(&log_path)?;

        self.parse_asan_output(&buf);
        Ok(())
    }

    /// parse ASAN error output emited by the target command and compute the hash
    pub fn parse_asan_output(&mut self, output: &str) {
        let mut hasher = AHasher::new_with_keys(0, 0);
        let matcher = Regex::new("\\s*#[0-9]*\\s0x[0-9a-f]*\\sin\\s(.*)").unwrap();
        matcher.captures_iter(output).for_each(|m| {
            let g = m.get(1).unwrap();
            hasher.write(g.as_str().as_bytes());
        });
        let hash = hasher.finish();
        self.update_hash(hash);
    }
}

impl ObserverWithHashField for ASANBacktraceObserver {
    /// Gets the hash value of this observer.
    #[must_use]
    fn hash(&self) -> &Option<u64> {
        &self.hash
    }

    /// Updates the hash value of this observer.
    fn update_hash(&mut self, hash: u64) {
        self.hash = Some(hash);
    }

    /// Clears the current hash value
    fn clear_hash(&mut self) {
        self.hash = None;
    }
}

impl Default for ASANBacktraceObserver {
    fn default() -> Self {
        Self::new("ASANBacktraceObserver")
    }
}

impl<I, S> Observer<I, S> for ASANBacktraceObserver
where
    I: Debug,
{
    fn pre_exec(&mut self, _state: &mut S, _input: &I) -> Result<(), Error> {
        Ok(())
    }

    fn post_exec(
        &mut self,
        _state: &mut S,
        _input: &I,
        _exit_kind: &ExitKind,
    ) -> Result<(), Error> {
        Ok(())
    }
}

impl Named for ASANBacktraceObserver {
    fn name(&self) -> &str {
        &self.observer_name
    }
}
<reponame>coffeecup-winner/nesness
use super::*;

#[test]
fn test_jmp() {
    // Values
    for addr in 0..=0xffff {
        let (mut cpu, mut mem) = test_cpu(&vec![JMP_ABS, lo(addr), hi(addr)]);
        assert_eq!(3, cpu.run_one(&mut mem));
        assert_eq!(addr, cpu.pc);
    }
    for addr in 0..=0xffff {
        let (mut cpu, mut mem) = test_cpu(&vec![JMP_IND, 0x34, 0x12]);
        mem[0x1234] = lo(addr);
        mem[0x1235] = hi(addr);
        assert_eq!(5, cpu.run_one(&mut mem));
        assert_eq!(addr, cpu.pc);
    }
}

#[test]
fn test_jsr() {
    // Values
    for addr in 0..=0xffff {
        let (mut cpu, mut m


acm.org

Previous message: Emptyness vs. virtualness

Next message: Emptyness vs. virtualness

 Messages sorted by:
              [ date ]
              [ thread ]
              [ subject ]
              [ author ]

More information about the cxx-abi-dev
mailing list

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

   <TITLE> [cxx-abi-dev] Mangling of function reference
   </TITLE>
   <LINK REL="Index" HREF="index.html" >
   <LINK REL="made" HREF="mailto:cxx-abi-dev%40codesourcery.com?Subject=Re%3A%20%5Bcxx-abi-dev%5D%20Mangling%20of%20function%20reference&In-Reply-To=%3Calpine.DEB.2.02.1204301322140.2550%40laptop-mg.saclay.inria.fr%3E">
   <META NAME="robots" CONTENT="index,nofollow">

   <META http-equiv="Content-Type" content="text/html; charset=us-ascii">

   <LINK REL="Next"  HREF="002425.html">

[cxx-abi-dev] Mangling of function reference

    Marc Glisse
    marc.glisse at inria.fr

    Thu May 10 21:17:41 UTC 2012

Next message: [cxx-abi-dev] Mangling of function reference

 Messages sorted by:
              [ date ]
              [ thread ]
              [ subject ]
              [ author ]

Hello,

it seems that the mangling used by clang and proposed here (although it
hasn't made it to the document on the web) is the same for:
void (&)()  // reference to a function
void ()&
where the second one is what you get from a pointer to a member function
that takes its *this argument by reference, when you remove the "pointer
to member" part


setState(() => trustThisDevice = !trustThisDevice);
              },
            ),
            */
            // NOT use Offstage to wrap LinearProgressIndicator
            if (isInProgress) const LinearProgressIndicator(),
          ],
        ),
        onCancel: close,
        onSubmit: getOnSubmit(),
        actions: [
          dialogButton("Cancel", onPressed: close, isOutline: true),
          dialogButton("Verify", onPressed: getOnSubmit()),
        ]);
  });
  // For verification code, desktop update other models in login dialog, mobile need to close login dialog first,
  // otherwise the soft keyboard will jump out on each key press, so mobile update in verification code dialog.
  if (isMobile && res == true) {
    await UserModel.updateOtherModels();
  }

  return res;
}

void logOutConfirmDialog() {
  gFFI.dialogManager.show((setState, close, context) {
    submit() {
      close();
      gFFI.userModel.logOut();
    }

    return CustomAlertDialog(
      content: Text(translate("logout_tip")),
      actions: [
        dialogButton(translate("Cancel"), onPressed: close, isOutline: true),
        dialogButton(translate("OK"), onPressed: submit),
      ],
      onSubmit: submit,
      onCancel: close,
    );
  });
}
// https://github.com/rodrigobastosv/fancy_password_field
import 'package:flutter/material.dart';
import 'package:flutter_hbb/common.dart';
import 'package:get/get.dart';
import 'package:password_strength/password_strength.dart';

abstract class ValidationRule {
  String get name;
  bool validate(String value);
}

class UppercaseValidationRule extends ValidationRule {
  @override
  String get name => translate('uppercase');
  @override
  bool validate(String value) {
    return value.runes.any((int rune) {
      var character = String.fromCharCode(rune);
      return character.toUpperCase() == character &&
          character.toLowerCase() != character;
    });
  }
}

class LowercaseValidationRule extends ValidationRule {
  @override
  String get name => translate('lowercase');

  @override
  bool validate(String value) {
    return value.runes.any((int rune) {
      var character = String.fromCharCode(rune);
      return character.toLowerCase() == character &&
          character.toUpperCase() != character;
    });
  }
}

class DigitValidationRule extends ValidationRule {
  @override
  String get name => translate('digit');

  @override
  bool validate(String value) {
    return value.contains(RegExp(r'[0-9]'));
  }
}

class SpecialCharacterValidationRule extends ValidationRule {
  @override
  String get name => translate('special character');

  @override
  bool validate(String value) {
    return value.contains(RegExp(r'[!@#$%^&*(),.?":{}|<>]'));
  }
}

class MinCharactersValidationRule extends ValidationRule {
  final int _numberOfCharacters;
  MinCharactersValidationRule(this._numberOfCharacters);

  @override
  String get name => translate('length>=$_numberOfCharacters');

  @override
  bool validate(String value) {
    return value.length >= _numberOfCharacters;
  }
}

class PasswordStrengthIndicator extends StatelessWidget {
  final RxString password;
  final double weakMedium = 0.33;
  final double mediumStrong = 0.67;
  const PasswordStrengthIndicator({Key? key, required this.password})
      : super(key: key);

  @override
  Widget build(BuildContext co


x.room.migration.Migration
import androidx.sqlite.db.SupportSQLiteDatabase
import eu.opencloud.android.data.ProviderMeta
import timber.log.Timber

val MIGRATION_42_43 = object : Migration(42, 43) {
    override fun migrate(database: SupportSQLiteDatabase) {
        database.run {
            execSQL("ALTER TABLE ${ProviderMeta.ProviderTableMeta.FOLDER_BACKUP_TABLE_NAME} ADD COLUMN `spaceId` TEXT")
            val query = "SELECT `accountName` FROM ${ProviderMeta.ProviderTableMeta.FOLDER_BACKUP_TABLE_NAME}"
            val cursor = database.query(query)
            cursor.use {
                while (it.moveToNext()) {
                    val accountName = it.getString(it.getColumnIndexOrThrow("accountName"))

                    val spacePersonalQuery = "SELECT `space_id` FROM ${ProviderMeta.ProviderTableMeta.SPACES_TABLE_NAME}\n" +
                            "WHERE `account_name` = '$accountName' AND `drive_type`= 'personal'"
                    val cursorSpacePersonal = database.query(spacePersonalQuery)

                    cursorSpacePersonal.use {
                        if (cursorSpacePersonal.moveToFirst()) {
                            val spaceId = cursorSpacePersonal.getString(cursorSpacePersonal.getColumnIndexOrThrow("space_id"))
                            execSQL("UPDATE `folder_backup` SET `spaceId` = '$spaceId' WHERE `accountName` = '$accountName'")
                        } else {
                            execSQL("UPDATE `folder_backup` SET `spaceId` = NULL WHERE `accountName` = '$accountName'")
                            Timber.d("No personal spaces found for account: $accountName.")
                        }
                    }
                }
            }
        }
    }
}
/**
 * openCloud Android client application
 *
 * @author Abel García de Prada
 * @author Jorge Aguado Recio
 * Copyright (C) 2024 ownCloud GmbH.
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2,
 * 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 eu.opencloud.android.data.user.datasources.implementation

import eu.opencloud.android.data.ClientManager
import eu.opencloud.android.data.executeRemoteOperation
import eu.opencloud.android.data.user.datasources.RemoteUserDataSource
import eu.opencloud.android.domain.user.model.UserAvatar
import eu.opencloud.android.domain.user.model.UserInfo
import eu.opencloud.android.domain.user.model.UserQuota
import eu.opencloud.android.lib.resources.users.GetRemoteUserQuotaOperation
import eu.opencloud.android.lib.resources.users.RemoteAvatarData
import eu.opencloud.android.lib.resources.users.RemoteUserInfo

class OCRemoteUserDataSource(
    private val clientManager: ClientManager,
    private val avatarDimension: Int
) : RemoteUserDataSource {

    override fun getUserInfo(accountName: String): UserInfo =
        executeRemoteOperation {
            clientManager.getUserService(accountName).getUserInfo()
        }.toDomain()

    override fun getUserQuota(accountName: String): UserQuota =
        executeRemoteOperation {
            clientManager.getUserService(accountName).getUserQuota()
        }.toDomain(accountName)

    override fun getUserAvatar(accountName: String): UserAvatar =
        executeRemoteOperation {
            clientManager.getUserService(accountName = accountName).getUserAvatar(avatarDimension)
        }.toDomain()

}

/*******