"FATAL: Attempting to set Wire%s.SDA to illegal pin %d", i2c_hw_index(_i2c) ? "1" : "", pin);
    }
    return false;
}

bool TwoWire::setSCL(pin_size_t pin) {
#if defined(PICO_RP2350) && !PICO_RP2350A // RP2350B
    constexpr uint64_t valid[2] = { __bitset({1, 5, 9, 13, 17, 21, 25, 29, 33, 37, 41, 45}) /* I2C0 */,
                                    __bitset({3, 7, 11, 15, 19, 23, 27, 31, 35, 39, 43, 47})  /* I2C1 */
                                  };
#else
    constexpr uint64_t valid[2] = { __bitset({1, 5, 9, 13, 17, 21, 25, 29}) /* I2C0 */,
                                    __bitset({3, 7, 11, 15, 19, 23, 27})  /* I2C1 */
                                  };
#endif
    if ((!_running) && ((1LL << pin) & valid[i2c_hw_index(_i2c)])) {
        _scl = pin;
        return true;
    }

    if (_scl == pin) {
        return true;
    }

    if (_running) {
        panic("FATAL: Attempting to set Wire%s.SCL while running", i2c_hw_index(_i2c) ? "1" : "");
    } else {
        panic("FATAL: Attempting to set Wire%s.SCL to illegal pin %d", i2c_hw_index(_i2c) ? "1" : "", pin);
    }
    return false;
}

void TwoWire::setClock(uint32_t hz) {
    _clkHz = hz;
    if (_running) {
        i2c_set_baudrate(_i2c, hz);
    }
}

// Master mode
void TwoWire::begin() {
    if (_running) {
        // ERROR
        return;
    }
    _slave = false;
    i2c_init(_i2c, _clkHz);
    i2c_set_slave_mode(_i2c, false, 0);
    gpio_set_function(_sda, GPIO_FUNC_I2C);
    gpio_pull_up(_sda);
    gpio_set_function(_scl, GPIO_FUNC_I2C);
    gpio_pull_up(_scl);

    _running = true;
    _txBegun = false;
    _buffLen = 0;
}

static void _handler0() {
#if defined(__WIRE0_DEVICE)
    if (__WIRE0_DEVICE == i2c0) {
        Wire.onIRQ();
    } else {
        Wire1.onIRQ();
    }
#else
    Wire.onIRQ();
#endif
}

static void _handler1() {
#if defined(__WIRE1_DEVICE)
    if (__WIRE1_DEVICE == i2c0) {
        Wire.onIRQ();
    } else {
        Wire1.onIRQ();
    }
#else
    Wire1.onIRQ();
#endif
}

// Slave mode
void TwoWire::begin(uint8_t addr) {
    if (_running) {
        // ERROR
        return;
    }

    // allocate buffer if necessary
    if (!_buff) {
        _buff = (uint8_t *)malloc(_buffSize);
        if (!_buff) {
            // ERROR
            return;
        }
    }

    _slave = true;
    i2c_init(_i2c, _clkHz);
    i2c_set_slave_mode(_i2c, true, addr);

    // Our callback IRQ
    _i2c->hw->intr_mask = (1 << 12) | (1 << 10) | (1 << 9) | (1 << 6) | (1 << 5) | (1 << 2);

    int irqNo = I2C0_IRQ + i2c_hw_index(_i2c);
    irq_set_exclusive_handler(irqNo, i2c_hw_index(_i2c) == 0 ? _handler0 : _handler1);
    irq_set_enabled(irqNo, true);

    gpio_set_function(_sda, GPIO_FUNC_I2C);
    gpio_pull_up(_sda);
    gpio_set_function(_


ignment(1).GetDescription(),
				want: "OTN to ETH",
			},
			{
				desc: "Ethernet Assignment: Allocation",
				got:  cc.GetAssignment(1).GetAllocation(),
				want: float64(400),
			},
			{
				desc: "Ethernet Assignment: Type",
				got:  cc.GetAssignment(1).GetAssignmentType().String(),
				want: oc.Assignment_AssignmentType_LOGICAL_CHANNEL.String(),
			},
		}
		tcs = append(tcs, logicalChannelAssignmentTestcases...)
	}

	for _, tc := range tcs {
		t.Run(tc.desc, func(t *testing.T) {
			if diff := cmp.Diff(tc.got, tc.want); diff != "" {
				t.Errorf("OTN Logical Channel: %s, diff (-got +want):\n%s", tc.desc, diff)
			}
		})
	}
}
// © 2022 Nokia.
//
// This code is a Contribution to the gNMIc project (“Work”) made under the Google Software Grant and Corporate Contributor License Agreement (“CLA”) and governed by the Apache License 2.0.
// No other rights or licenses in or to any of Nokia’s intellectual property are granted for any other purpose.
// This code is provided on an “as is” basis without any warranties of any kind.
//
// SPDX-License-Identifier: Apache-2.0

package file

import (
	"sync"

	"github.com/prometheus/client_golang/prometheus"
)

var registerMetricsOnce sync.Once

var numberOfWrittenBytes = prometheus.NewCounterVec(prometheus.CounterOpts{
	Namespace: "gnmic",
	Subsystem: "file_output",
	Name:      "number_bytes_written_total",
	Help:      "Number of bytes written to file output",
}, []string{"name", "file_name"})

var numberOfReceivedMsgs = prometheus.NewCounterVec(prometheus.CounterOpts{
	Namespace: "gnmic",
	Subsystem: "file_output",
	Name:      "number_messages_received_total",
	Help:      "Number of messages received by file output",
}, []string{"name", "file_name"})

var numberOfWrittenMsgs = prometheus.NewCounterVec(prometheus.CounterOpts{
	Namespace: "gnmic",
	Subsystem: "file_output",
	Name:      "number_messages_writes_total",
	Help:      "Number of messages written to file output",
}, []string{"name", "file_name"})

var numberOfFailWriteMsgs = prometheus.NewCounterVec(prometheus.CounterOpts{
	Namespace: "gnmic",
	Subsystem: "file_output",
	Name:      "number_messages_writes_fail_total",
	Help:      "Number of failed message writes to file output",
}, []string{"name", "file_name", "reason"})

func (f *File) initMetrics() {
	numberOfWrittenBytes.WithLabelValues(f.cfg.Name, "").Add(0)
	numberOfReceivedMsgs.WithLabelValues(f.cfg.Name, "").Add(0)
	numberOfWrittenMsgs.WithLabelValues(f.cfg.Name, "").Add(0)
	numberOfFailWriteMsgs.WithLabelValues(f.cfg.Name, "", "").Add(0)
}

func (f *File) registerMetrics() error {
	if !f.cfg.EnableMetrics {
		return nil
	}
	if f.reg == nil {
		f.logger.Printf("ERR: metrics enabled but main registry is not initialized, enable main metrics under `api-server`")
		return nil
	}
	var err error
	registerMetricsOnce.Do(func() {
		if err = f.reg.Register(numberOfWrittenBytes); err != nil {
			return
		}
		if err = f.reg.Register(numberOfReceivedMsgs); err != nil {
			ret


, ccColor4B color3, ccVertex3F gradientPositions) {
    if(!CCActionInterval::initWithDuration(duration)) {
        return false;
    }

    // save arguments
    m_color1 = color1;
    m_color2 = color2;
    m_color3 = color3;
    m_gradientPositions = gradientPositions;

    return true;
}

void CCShine::update(float time) {
    ccCustomUniformValue& v = m_pTarget->getCustomUniformValue();
    v.shine.time = time;
}

void CCShine::startWithTarget(CCNode *pTarget) {
    CCActionInterval::startWithTarget(pTarget);

    // save old program
    if(!m_oldProgram) {
        m_oldProgram = pTarget->getShaderProgram();
        m_oldUniforms = pTarget->getCustomUniformValue();
    }

    // calculate speed
    m_size = pTarget->getContentSize();

    // set new program
    ccCustomUniformValue v = {
        .shine = {
            m_size.width,
            ccPointMake(0, m_size.height),
            ccPointMake(m_size.height, 0),
            m_color1,
            m_color2,
            m_color3,
            m_gradientPositions,
            0
        }
    };
    pTarget->setShaderProgram(CCShaderCache::sharedShaderCache()->programForKey(kCCShader_shine), v);
}

void CCShine::stop() {
    if(getTarget()) {
        getTarget()->setShaderProgram(m_oldProgram, m_oldUniforms);
    }
    CCActionInterval::stop();
}

CCObject* CCShine::copyWithZone(CCZone* pZone) {
    CCZone* pNewZone = NULL;
    CCShine* pCopy = NULL;
    if(pZone && pZone->m_pCopyObject) {
        // in case of being called at sub class
        pCopy = (CCShine*)(pZone->m_pCopyObject);
    } else {
        pCopy = new CCShine();
        pZone = pNewZone = new CCZone(pCopy);
        CC_SAFE_AUTORELEASE(pCopy);
    }

    CCActionInterval::copyWithZone(pZone);
    pCopy->initWithColors(m_fDuration, m_color1, m_color2, m_color3, m_gradientPositions);

    CC_SAFE_DELETE(pNewZone);
    return pCopy;
}

CCActionInterval* CCShine::reverse() {
    return (CCActionInterval*)copyWithZone(NULL);
}

NS_CC_END/****************************************************************************
Copyright (c) 2010-2012 cocos2d-x.org
Copyright (c) 2009      On-Core

http://www.cocos2d-x.org

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,


opcao = ''
while opcao != 'sair':
  opcao = inp()


---@diagnostic disable: missing-fields
local utils = require('pynappo.utils')
return {
  {
    'Saghen/blink.cmp',
    version = '*',
    dependencies = 'rafamadriz/friendly-snippets',
    enabled = not utils.is_termux,
    ---@module 'blink.cmp'
    ---@type blink.cmp.Config
    opts = {
      keymap = {
        preset = 'enter',
        ['<C-p>'] = { 'show', 'select_prev', 'fallback' },
        ['<C-n>'] = { 'show', 'select_next', 'fallback' },
      },
      cmdline = {
        enabled = true,
        keymap = {


'Directional_Accuracy']:.2f}%")

        # Generate visualizations
        print("\nGenerating comprehensive visualizations...")

        # Original model plots
        plot_prediction_vs_actual(y_test_actual, y_pred_original, " (Original Model)")
        plot_residuals_over_time(y_test_actual, y_pred_original, " (Original Model)")
        plot_predicted_vs_actual_scatter(y_test_actual, y_pred_original, " (Original Model)")
        plot_error_distribution(y_test_actual, y_pred_original, " (Original Model)")

        # Enhanced model plots
        plot_prediction_vs_actual(y_test_actual, y_pred_enhanced, " (Enhanced 2.0)")
        plot_residuals_over_time(y_test_actual, y_pred_enhanced, " (Enhanced 2.0)")
        plot_predicted_vs_actual_scatter(y_test_actual, y_pred_enhanced, " (Enhanced 2.0)")
        plot_error_distribution(y_test_actual, y_pred_enhanced, " (Enhanced 2.0)")

        # Comparison plot
        plot_metrics_comparison(original_metrics, enhanced_metrics)

        # Generate summary report
        generate_summary_report(original_metrics, enhanced_metrics, original_efficiency, enhanced_efficiency)

        print("\n" + "="*80)
        print("EVALUATION COMPLETE! ✓")
        print("="*80)
        print("✓ All graphs saved to 'analysis_graphs' directory")
        print("✓ Both models evaluated and compared")
        print("✓ Enhanced Model 2.0 is compatible with your original pipeline")

    except Exception as e:
        print(f"\n✗ Error during evaluation: {e}")
        import traceback
        traceback.print_exc()

if __name__ == "__main__":
    main()


s.class, 5, 5), new StructureAbyStrongholdPieces.PieceWeight(StructureAbyStrongholdPieces.Crossing.class, 5, 4), new StructureAbyStrongholdPieces.PieceWeight(StructureAbyStrongholdPieces.ChestCorridor.class, 5, 4)
	{

		@Override
		public boolean canSpawnMoreStructuresOfType(int par1)
		{
			return super.canSpawnMoreStructuresOfType(par1) && par1 > 4;
		}
	}, new StructureAbyStrongholdPieces.PieceWeight(StructureAbyStrongholdPieces.PortalRoom.class, 20, 1)
	{

		@Override
		public boolean canSpawnMoreStructuresOfType(int par1)
		{
			return super.canSpawnMoreStructuresOfType(par1) && par1 > 5;
		}
	}
	};
	private static List<PieceWeight> structurePieceList;
	private static Class<?> strongComponentType;
	static int totalWeight;
	private static final StructureAbyStrongholdPieces.Stones strongholdStones = new StructureAbyStrongholdPieces.Stones(null);
	public static void registerStructurePieces()
	{
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.ChestCorridor.class, "SHACC");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.Corridor.class, "SHAFC");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.Crossing.class, "SHA5C");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.LeftTurn.class, "SHALT");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.PortalRoom.class, "SHAPR");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.Prison.class, "SHAPH");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.RightTurn.class, "SHART");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.RoomCrossing.class, "SHARC");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.Stairs.class, "SHASD");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.Stairs2.class, "SHAStart");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.Straight.class, "SHAS");
		MapGenStructureIO.registerStructureComponent(StructureAbyStrongholdPieces.StairsStraight.class, "SHASSD");
	}

	/**
	 * sets up Arrays with the Structure pieces and their weights
	 */
	public static void prepareStructurePieces()
	{
		structurePieceList = new ArrayList<>();
		StructureAbyStrongholdPieces.PieceWeight[] apieceweight = pieceWeightArray;
		int i = apieceweight.length;

		for (int j = 0; j < i; ++j)
		{
			StructureAbyStrongholdPieces.PieceWeight pieceweight = apieceweight[j];
			pieceweight.instancesSpawned = 0;
			structurePieceList.add(pieceweight);
		}

		strongComponentType = null;
	}

	private static boolean canAddStructurePieces()
	{
		boolean flag = false;
		totalWeight = 0;
		StructureAbyStrongholdPieces.PieceWeight pieceweight;

		for (Iterator<PieceWeight> iterator = structurePieceList.iterator(); iterator.hasNext(); totalWeight += pieceweight.pieceWeight)
		{
			pieceweight = iterator.next();

			if (pieceweight.instancesLimit > 0 && pieceweight.instancesSpawned < pieceweight.instancesLimit)
				flag = true;
		}

		return flag;
	}

	/**
	 * translates the


)
  }
}
import Entity, { FieldOrBundle } from '../schema-core/Entity';
import { notEmpty } from '../util/util';

/**
 * This class exposes access to the underlying entities and fields.
 */
class EntityRegistry<E> {
  readonly #entityLookup: Map<E, Entity<any>>;

  readonly #entityLookupByPrefix: Map<string, Entity<any>>;

  readonly #entityLookupByAlternatePrefix: Map<string, Entity<any>>;

  constructor(entityLookup: Map<E, Entity<any>>) {
    EntityRegistry.validate(Array.from(entityLookup.values()));
    this.#entityLookup = entityLookup;

    this.#entityLookupByPrefix = new Map(
      Array.from(entityLookup.values()).map((entity) => [entity.entityPrefix, entity]),
    );

    this.#entityLookupByAlternatePrefix = new Map(
      Array.from(entityLookup.values())
        .filter((e) => e.alternateRequirementPrefix)
        .map((entity) => [notEmpty(entity.alternateRequirementPrefix), entity]),
    );
  }

  private static validate(entities: Entity<any>[]): void {
    const allEntityNames = entities.map((e) => e.name);
    this.raiseIfDuplicates(allEntityNames, 'entity names');
    const allEntityPrefixes = entities.map((e) => e.entityPrefix);
    this.raiseIfDuplicates(allEntityPrefixes, 'entity prefixes');
  }

  private static raiseIfDuplicates(items: string[], errorType: string): void {
    const duplicates = items.filter((value, index) => items.indexOf(value) !== index);
    if (duplicates.length > 0) {
      throw new Error(`Found duplicate ${errorType}: ${duplicates}`);
    }
  }

  /**
   *
   * @param token A stripe token (e.g. person_123abc)
   */
  lookupEntityByToken(token: string): E | undefined {
    const prefix = token.split('_')[0];
    const entity = this.#entityLookupByPrefix.get(prefix);
    if (!entity) {
      return undefined;
    }

    return notEmpty(Array.from(this.#entityLookup.entries()).find((pair) => pair[1] === entity))[0];
  }

  /**
   * @param prefix A placeholder value used to denote a new entity needs to be created. See PersonSchema for
   * an example.
   */
  lookupEntityByAlternatePrefix(prefix: string): E | undefined {
    const entity = this.#entityLookupByAlternatePrefix.get(prefix);
    if (!entity) {
      return undefined;
    }

    return notEmpty(Array.from(this.#entityLookup.entries()).find((pair) => pair[1] === entity))[0];
  }

  lookupFieldOrBundle(entityName: E, fieldId: string): FieldOrBundle<any> | undefined {
    const entity = this.#entityLookup.get(entityName);
    if (!entity) {
      return undefined;
    }

    const field = entity.fields.find((f) => f.id === fieldId);
    if (!field) {
      return undefined;
    }
    return field;
  }
}

export default EntityRegistry;
import { SET_TARGET } from '../actions/targetActions'
import { Action } from '../interfaces'

const targetReducer = (state:number = 0, action:Action) => {
  switch (action.type) {
    case SET_TARGET:
      return action.payload
    default:
      return state
  }
}

export default targetReducer;let car: string = 'hello';
let age: number = 30;
let isAdult: boolean = true;
let a: number[] = [1,2,3];
let a2: Array<number> = a;

let week: string[] = ['mon', 'tue', 'wed'];
let week2: Array<string> = week;

// tuple
let b:[string, number];
b = ['z', 1];
// b = [1, 'b']; error

b


gramChange(programChangeEvent.ProgramNumber).InstrumentToneMenuKey;
                using var manager = trackChunks.Merge().ManageNotes();
                var note = new Note((SevenBitNumber)number);
                var timedEvents = manager.Objects;
                note.Time = timedEvent.Time;
                timedEvents.Add(note);
            }
        }

        var trackChunk = (await
            trackChunks.GetNoteDictionary(Song.SourceTempoMap, ProcessorConfig.Instrument.InstrumentTone,
                    ProcessorConfig.OctaveRange.LowerNote,
                    ProcessorConfig.OctaveRange.UpperNote,
                    (int) ProcessorConfig.Instrument.InstrumentToneMenuKey,
                    true,
                    -ProcessorConfig.OctaveRange.LowerNote)
                .MoveNoteDictionaryToDefaultOctave(ProcessorConfig.OctaveRange)
                .ConcatNoteDictionaryToList()).ToTrackChunk();

        var playerNotesDictionary = await trackChunk.GetPlayerNoteDictionary(ProcessorConfig.PlayerCount, OctaveRange.C3toC6.LowerNote, OctaveRange.C3toC6.UpperNote);
        var concurrentPlayerTrackDictionary = new ConcurrentDictionary<long, TrackChunk>(ProcessorConfig.PlayerCount, ProcessorConfig.PlayerCount);

        Parallel.ForEach(playerNotesDictionary.Values, async (notesDictionary, _, iteration) =>
            {
                concurrentPlayerTrackDictionary[iteration] = (await notesDictionary.ConcatNoteDictionaryToList().FixChords().OffSet50Ms().FixEndSpacing()).ToTrackChunk();
                concurrentPlayerTrackDictionary[iteration].AddObjects(new List<ITimedObject>{new TimedEvent(new SequenceTrackNameEvent("tone:" + ProcessorConfig.Instrument.InstrumentTone.Name))});
            }
        );
        trackChunks = concurrentPlayerTrackDictionary.Values.ToList();
        return trackChunks;
    }
}


# addiu $a1, $a1, -0x7c90
/* 1207FC 8017938C 0C0571D0 */  jal   func_8015C740_ovl5
/* 120800 80179390 02802025 */   move  $a0, $s4
/* 120804 80179394 0C05E46F */  jal   func_801791BC_ovl5
/* 120808 80179398 2404001D */   li    $a0, 29
/* 12080C 8017939C 3C038019 */  lui   $v1, %hi(D_80188688_ovl5) # $v1, 0x8019
/* 120810 801793A0 24638688 */  addiu $v1, %lo(D_80188688_ovl5) # addiu $v1, $v1, -0x7978
/* 120814 801793A4 8C660000 */  lw    $a2, ($v1)
/* 120818 801793A8 8C670004 */  lw    $a3, 4($v1)
/* 12081C 801793AC 02802025 */  move  $a0, $s4
/* 120820 801793B0 0C05E3E7 */  jal   func_80178F9C_ovl5
/* 120824 801793B4 00402825 */   move  $a1, $v0
/* 120828 801793B8 10000050 */  b     .L801794FC_ovl5
/* 12082C 801793BC 92A90013 */   lbu   $t1, 0x13($s5)
.L801793C0_ovl5:
/* 120830 801793C0 3C058019 */  lui   $a1, %hi(D_80188448_ovl5) # $a1, 0x8019
/* 120834 801793C4 0C0571D0 */  jal   func_8015C740_ovl5
/* 120838 801793C8 24A58448 */   addiu $a1, %lo(D_80188448_ovl5) # addiu $a1, $a1, -0x7bb8
/* 12083C 801793CC 3C058019 */  lui   $a1, %hi(D_80188468_ovl5) # $a1, 0x8019
/* 120840 801793D0 24A58468 */  addiu $a1, %lo(D_80188468_ovl5) # addiu $a1, $a1, -0x7b98
/* 120844 801793D4 0C0571D0 */  jal   func_8015C740_ovl5
/* 120848 801793D8 02802025 */   move  $a0, $s4
/* 12084C 801793DC 3C058019 */  lui   $a1, %hi(D_80188488_ovl5) # $a1, 0x8019
/* 120850 801793E0 24A58488 */  addiu $a1, %lo(D_80188488_ovl5) # addiu $a1, $a1, -0x7b78
/* 120854 801793E4 0C0571D0 */  jal   func_8015C740_ovl5
/* 120858 801793E8 02802025 */   move  $a0, $s4
/* 12085C 801793EC 3C058019 */  lui   $a1, %hi(D_801884A8_ovl5) # $a1, 0x8019
/* 120860 801793F0 24A584A8 */  addiu $a1, %lo(D_801884A8_ovl5) # addiu $a1, $a1, -0x7b58
/* 120864 801793F4 0C0571D0 */  jal   func_8015C740_ovl5
/* 120868 801793F8 02802025 */   move  $a0, $s4
/* 12086C 801793FC 3C11800D */  lui   $s1, %hi(D_800D7178) # $s1, 0x800d
/* 120870 8017


  StudentsPerCourse removeStudentFromAllCourses(Student student) =>
      StudentsPerCourse._(imap.removeValues([student]));

  StudentsPerCourse removeCourse(Course course) => StudentsPerCourse._(imap.removeSet(course));

  Map<Course, Set<Student?>> toMap() => imap.unlock;

  int get numberOfCourses => imap.lengthOfKeys;

  int get numberOfStudents => imap.lengthOfNonRepeatingValues;
}
// Developed by Marcelo Glasberg (2021) https://glasberg.dev and https://github.com/marcglasberg
// and Philippe Fanaro https://github.com/psygo
// For more info, see: https://pub.dartlang.org/packages/fast_immutable_collections
// ignore_for_file: prefer_const_constructors, prefer_final_locals, prefer_final_in_for_each
// ignore_for_file: non_const_call_to_literal_constructor
import "package:fast_immutable_collections/fast_immutable_collections.dart";
import "package:test/test.dart";

void main() {
  setUp(() {
    ImmutableCollection.resetAllConfigurations();
    ImmutableCollection.autoFlush = false;
  });

  test("Runtime Type", () {
    expect(const IListConst([]), isA<IListConst>());
    expect(const IListConst([]), isA<IListConst>());
    expect(const IListConst<String>([]), isA<IListConst<String>>());
    expect(const IListConst([1]), isA<IListConst<int>>());
    expect(const IListConst<int>([]), isA<IListConst<int>>());
  });

  test("isEmpty | isNotEmpty", () {
    expect(const IListConst([]), isEmpty);
    expect(const IListConst([]).isEmpty, isTrue);
    expect(const IListConst([]).isNotEmpty, isFalse);

    expect(const IListConst<String>([]).isEmpty, isTrue);
    expect(const IListConst<String>([]).isNotEmpty, isFalse);

    expect(const IListConst([1]), isNotEmpty);
    expect(const IListConst([1]).isEmpty, isFalse);
    expect(const IListConst([1]).isNotEmpty, isTrue);

    expect(const IListConst<int>([]), isEmpty);
    expect(const IListConst<int>([]).isEmpty, isTrue);
    expect(const IListConst<int>([]).isNotEmpty, isFalse);
  });

  test("hashCode", () {
    expect(const IListConst([]) == const IListConst([]), isTrue);
    expect(IList() == IList(), isTrue);
    expect(const IListConst([]) == IList(), isTrue);
    expect(const IListConst([]) == IList([]), isTrue);
    expect(IList() == const IListConst([]), isTrue);
    expect(IList([]) == const IListConst([]), isTrue);

    expect(const IListConst([1, 2]) == const IListConst([1, 2]), isTrue);
    expect(IList([1, 2]) == IList([1, 2]), isTrue);
    expect(const IListConst([1, 2]) == IList([1, 2]), isTrue);
    expect(IList([1, 2]) == const IListConst([1, 2]), isTrue);

    var a = IList<int>(<int>[]);
    var b = const IListConst<String>(<String>[]);
    expect(a, b);
    expect(a.hashCode, b.hashCode);

    var x = IList([1, 2, 3]);
    var y = IList([1, 2]).add(3);
    expect(x, y);
    expect(x.hashCode, y.hashCode);
  });

  test("withConfig", () {
    // 1) Regular usage
    const IList<int> ilist = IListConst([1, 2]);

    expect(ilis


NzdkNmNlY2U5L3NlYzo4Y2U1YzI1YjkzODQ0NWIxYmVjODM1Nzc3ZDZjZWNlOV8xMDkvZnJhZzoxOWZmNTVmNDMxOTU0NDBiODkyZmVlZGRkOTBlMTFlOC90YWJsZTpmN2JiZDFkNGZhNmM0N2FiOTkxN2FmY2Y0MDcyMDU3ZC90YWJsZXJhbmdlOmY3YmJkMWQ0ZmE2YzQ3YWI5OTE3YWZjZjQwNzIwNTdkXzc0LTktMS0xLTY2MjAw_74061774-27eb-4fb3-bf2c-99919341af04">11</ix:nonFraction>)			<ix:nonFraction unitRef="usd" contextRef="i76e8b5cd670147bfa3943e66fb3c0472_I20220130" decimals="-6" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhjZTVjMjViOTM4NDQ1YjFiZWM4MzU3NzdkNmNlY2U5L3NlYzo4Y2U1YzI1YjkzODQ0NWIxYmVjODM1Nzc3ZDZjZWNlOV8xMDkvZnJhZzoxOWZmNTVmNDMxOTU0NDBiODkyZmVlZGRkOTBlMTFlOC90YWJsZTpmN2JiZDFkNGZhNmM0N2FiOTkxN2FmY2Y0MDcyMDU3ZC90YWJsZXJhbmdlOmY3YmJkMWQ0ZmE2YzQ3YWI5OTE3YWZjZjQwNzIwNTdkXzc0LTExLTEtMS02NjIwMA_64392c0c-0667-40c6-8259-f2ea5e8826ac">16,235</ix:nonFraction> 			<ix:nonFraction unitRef="usd" contextRef="ic619c64b7ec144819ced619835d6138b_I20220130" decimals="-6" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjhjZTVjMjViOTM4NDQ1


--]{--zr-dialog-gutter: 2.5%;--zr-dialog-margin: 16vw;align-self:baseline;background:var(--zr-dialog-bg);box-shadow:none;margin-left:calc(var(--zr-dialog-margin) + var(--zr-dialog-gutter));padding-bottom:0;width:calc(100% - 2 * (var(--zr-dialog-margin) + var(--zr-dialog-gutter)))}@media (max-width: 1000px){.bp3-dialog[class*=zr-dialog-overlay--]{--zr-dialog-gutter: 2.5%;--zr-dialog-margin: 10vw}}@media (max-width: 700px){.bp3-dialog[class*=zr-dialog-overlay--]{--zr-dialog-gutter: 2.5%;--zr-dialog-margin: 5vw}}.bp3-dialog[class*=zr-dialog-overlay--]>.bp3-dialog-body{flex-wrap:nowrap;display:flex;margin:0}#zotero-roam-search-autocomplete{background:var(--zr-box-bg);border-bottom:1px var(--zr-border-co) solid;box-shadow:none;color:var(--zr-auxiliary);font-size:13px}#zotero-roam-search-autocomplete::placeholder{opacity:.8}#zotero-roam-search-autocomplete:focus{box-shadow:none}label.zr-quick-copy{font-weight:var(--zr-secondary-fw);font-size:var(--zr-text-small);margin-bottom:0}.roam-body.mobile+#zotero-roam-portal label.zr-quick-copy{display:none}.zr-library-search-input-group.bp3-input{background:none;box-shadow:none;padding:unset}.zr-library-search-input-group.bp3-input .bp3-input-left-container>*{margin-right:10px}.zr-library-search-input-group.bp3-input .bp3-input-action{display:flex;align-items:center}#zotero-roam-library-rendered .bp3-menu{max-height:70vh;overflow-y:scroll;background:unset;padding:0}#zotero-roam-library-rendered .bp3-menu::-webkit-scrollbar{width:0px}#zotero-roam-library-rendered .zr-querylist--more-results{border-top:1px var(--zr-border-co) solid;color:var(--zr-accent-2);font-size:var(--zr-text-small);font-weight:500;padding:3px 10px}#zotero-roam-library-rendered .zotero-roam-search_result{padding:3px 10px;font-size:.9em}#zotero-roam-library-rendered .zotero-roam-search_result .zr-library-item--key{flex:0 0 auto;padding:0 6px;font-size:var(--zr-text-small);text-align:right}#zotero-roam-library-rendered .zotero-roam-search_result[data-in-graph=true] .zr-library-item--key{background-color:var(--zr-positive-bg);border-radius:3px;color:var(--zr-positive-co);font-weight:500}#zotero-roam-library-rendered .zotero-roam-search_result .zr-library-item--title{display:block;font-weight:500}#zotero-roam-library-rendered .zr-library-item--contents{color:var(--zr-text-co);white-space:normal}.bp3-context-menu2-virtual-target{position:fixed}.bp3-popover2{-webkit-box-shadow:0 0 0 1px rgba(16,22,26,.1),0 2px 4px rgba(16,22,26,.2),0 8px 24px rgba(16,22,26,.2);box-shadow:0 0 0 1px #10161a1a,0 2px 4px #10161a33,0 8px 24


個應該在荒蕪之地的卡加斯哨所裏。也許妳應該去那裏找找。"}, {"在荒蕪之地的卡加斯哨所裏尋找壹個可以幫妳翻譯聖騎士日記的人。"}},
[2338] = {"翻譯日記", {"杜佛斯那個蠢貨是不可能恢復項鏈的力量的，不過我可以。現在我要做的就是好好研究壹下項鏈，然後給妳制作壹條跟它完全壹樣的復制品。請把項鏈借給我作為我幫妳翻譯日記的交換吧，在妳出發去找尋寶石的這段時間裏，我應該可以完成對項鏈的研究和對日記的翻譯工作。","這個交易很簡單明了，而且沒有別人可以幫妳翻譯日記。妳看怎麽樣？"}, {"將項鏈借給加卡爾。作為交換，他將幫妳翻譯日記。"}},
[2339] = {"尋找寶貝", {"日記已經全部翻譯完畢了。","其中的關鍵是紅寶石在暗爐矮人手裏，黃寶石在石腭怪手裏，而藍寶石則在壹個名叫格瑞姆洛克的石腭怪那裏。","妳需要壹個強力能力源來讓項鏈重新恢復以前的力量，這壹點是德蘭·杜佛斯所不知道的。我所能想到唯壹符合如此要求的能量源應該在奧達曼的最強生物身上，所以妳必須深入奧達曼的最底層，殺掉所有看上去最強的生物，這樣妳就肯定可以獲得它。","當妳把所有東西找全之後就盡快把它們帶回來給我。"}, {"從奧達曼找回項鏈上的所有三塊寶石和能量源，然後把它們交給卡加斯的加卡爾。","紅寶石被藏在暗影矮人層層設防的地區。","黃寶石藏在石腭怪活動地區的壹個甕中。","藍寶石在格瑞姆洛克手中，他是石腭怪的領袖。","能量源可能在奧達曼的某個最強生物的手中。"}},
[2340] = {"交付寶石", {"只要采用相同的材料進行制作，任何的項鏈和寶石的組合都能發揮作用。而這個能量源才是真正給項鏈提供力量的關鍵……我希望如此。","只要能量源能夠壹直保持正常運�


link_to "Sign in", '#' %>

在这里，虽然 `nav` 标签好似优点多余，但是表明了块内的代码作用，并且在这里，`nav` 和 `pull-right` class 在 `Bootstrap` 中存在特殊含义。当经过Rails处理了内嵌的Ruby代码之后，这样的列表就会变成这样:

Home

Help

Sign in

在整个布局文件的末尾才是主要内容的 `div`。

      <%= yield %>

同样，`container` 也在Bootstrap中有着特殊意义。我们曾经在 3.3.4 中学过了 `yield` 方法可以将内容页插入布局页。页脚我们将会在 5.1.3 中加入，我们的布局页面暂时已经完成，我们已经可以通过访问首页来对其进行访问了。要想用上这个布局文件，我们还需要在 `home.html.erb` 页面之中插入一些元素：

Listing 5.2. The Home page with a link to the signup page. \
`app/views/static_pages/home.html.erb`

Welcome to the Sample App

        This is the home page for the
        Ruby on Rails Tutorial
        sample application.

      <%= link_to "Sign up now!", '#', class: "btn btn-large btn-primary" %>

    <%= link_to image_tag("rails.png", alt: "Rails"), 'http://rubyonrails.org/' %>

我们在这里就为第七章的用户系统做好准备，第一个 `link_to` 建立了一个固定链接。

    Sign up now!

在这里，div标签中的 `hero-unit` 在Bootstrap中有着特殊意义的，同理对于注册按钮中的 `btn`, `btn-large`, 和 `btn-primary` 类名。

第二个  `link_to` 中见加上了 `image_tag` helper函数，它接受的参数为图片的路径和一个可选的哈希，在这里，我们把图片链接的  `alt`  属性通过符号进行了设置，它能产生出这样的HTML代码：

 `alt` 属性的值将会当在图片不存在的时候显示，它是一种当图片无法显示时对读者补偿机制。由于人们常常漏过图片的 alt 属性，Rails 在你使用了 image_tag 函数的时候默认把图片的文件名作为其 alt 属性。在这个例子里，我们把 alt 文字值指定为 “Rails”。

现在，我们终于可以看到我们辛苦劳动的果实。很酷，不是么？([Figure 5.2](filling-in-the-layout#fig-layout_no_logo_or_


tom.toFloat()
        gpuShapeViewCommands.addVertex(x0, y0, 0f, BIG_MAX_LEN)
        gpuShapeViewCommands.addVertex(x1, y0, 0f, BIG_MAX_LEN)
        gpuShapeViewCommands.addVertex(x1, y1, 0f, BIG_MAX_LEN)
        gpuShapeViewCommands.addVertex(x0, y1, 0f, BIG_MAX_LEN)
        val vend = gpuShapeViewCommands.verticesEnd()

        //println("[($lx0,$ly0)-($lx1,$ly1)]")

        gpuShapeViewCommands.draw(
            AGDrawType.TRIANGLE_FAN,
            paintShader = paintShader,
            colorMask = AGColorMask(true),
            stencilOpFunc = AGStencilOpFunc.DEFAULT.withEnabled(true).withCompareMode(stencilCompare),
            stencilRef = AGStencilReference.DEFAULT.withReferenceValue(stencilReferenceValue).withWriteMask(0),
            startIndex = vstart,
            endIndex = vend,
            blendMode = renderBlendMode,
            //startIndex = pathDataStart,
            //endIndex = pathDataEnd,
        )
    }

    init {
        invalidateShape()
    }
}
package korlibs.korge.gradle

import korlibs.*
import korlibs.korge.gradle.module.*
import korlibs.korge.gradle.targets.*
import korlibs.korge.gradle.targets.all.*
import korlibs.korge.gradle.targets.jvm.*
import korlibs.korge.gradle.targets.linux.LDLibraries
import korlibs.korge.gradle.typedresources.*
import korlibs.korge.gradle.util.*
import korlibs.modules.*
import korlibs.root.*
import org.gradle.api.*
import org.gradle.api.plugins.*
import org.gradle.api.tasks.*
import org.gradle.api.tasks.diagnostics.*
import org.gradle.internal.classloader.*
import org.jetbrains.kotlin.gradle.dsl.*
import java.io.*
import java.net.*
import java.util.*
import java.util.concurrent.*
import kotlin.concurrent.*

class KorgeGradleApply(val project: Project, val projectType: ProjectType) {
	fun apply(includeIndirectAndroid: Boolean = true) = project {
        checkMinimumJavaVersion()
        // @TODO: Doing this disables the ability to use configuration cache
		//System.setProperty("java.awt.headless", "true")

		val currentGradleVersion = SemVer(project.gradle.gradleVersion)
        //val expectedGradleVersion = SemVer("6.8.1")
        val expectedGradleVersion = SemVer("7.5.0")
		val korgeCheckGradleVersion = (project.ext.properties["korgeCheckGradleVersion"] as? Boolean) ?: true

		if (korgeCheckGradleVersion && currentGradleVersion < expectedGradleVersion) {
			error("Korge requires at least Gradle $expectedGradleVersion, but running on Gradle $currentGradleVersion. Please, edit gradle/wrapper/gradle-wrapper.properties")
		}

        if (isLinux) {
            project.logger.info("LD folders: ${LDLibraries.ldFolders}")
            for (lib in listOf("libGL.so.1")) {
                if (!LDLibraries.hasLibrary(lib)) {
                    System.err.println("Can't find $lib. Please: sudo apt-get -y install freeglut3")
                }
            }
        }

        logger.info("Korge Gradle plugin: ${BuildVersions.ALL}, projectType=$projectType")

        KorgeVersionsTask.registerShowKorgeVersions(project)

        project.korge.init(includeIndirectAndroid, projectType)

        project.configureIdea()
		project.addVersionExtension()
		project.configureRepositories()
		project.configureKotlin()

        korge.targetJvm()

        project.afterEvaluate {
            project.configureDependencies()
            project.addGenResourcesTasks()
            project.enableFeaturesOnAllTargets()

            project.configureTests()
        }

        project.configureTypedResourcesGenerator()
	}

	private fun Project.configureDependencies() {
		dependencies {
            add("commonMainApi", "org


lt.push(content));

        await sandbox.evaluate(`deject(typeof ["${value}"]);`);

        expect(result).to.be.lengthOf(1);
        expect(result[0]).to.be.equal('array');
    });

    it('should be able to handle typeof operation - null', async (): Promise<void> => {

        const sandbox: Sandbox = createSandbox();

        const result: any[] = [];
        sandbox.inject('deject', (content: any) => result.push(content));

        await sandbox.evaluate(`deject(typeof null);`);

        expect(result).to.be.lengthOf(1);
        expect(result[0]).to.be.equal('null');
    });

    it('should be able to handle typeof operation - undefined', async (): Promise<void> => {

        const sandbox: Sandbox = createSandbox();

        const result: any[] = [];
        sandbox.inject('deject', (content: any) => result.push(content));

        await sandbox.evaluate(`deject(typeof undefined);`);

        expect(result).to.be.lengthOf(1);
        expect(result[0]).to.be.equal('undefined');
    });
});
import { StageConfig } from './config'
import * as _ from 'lodash'

declare global {
  interface CreepMemory {
    [key: string]: any
  }
  interface StructureMemory {
    [key: string]: any
  }
  interface FlagMemory {
    [key: string]: any
  }
  interface Memory {
    [name: string]: any;
  }
}

function clear_memory() {
  for (let name in Memory.creeps) {
    if (!Game.creeps[name]) {
      delete Memory.creeps[name];
    }
  }
}

function visualize_spawning() {
  for (let sp_n in Game.spawns) {
    let sp = Game.spawns[sp_n];
    if (sp.spawning) {
      let spawning_creep = Game.creeps[sp.spawning.name];
      sp.room.visual.text(
        '🛠' + spawning_creep.memory.role,
        sp.pos.x + 1,
        sp.pos.y,
        { align: 'left', opacity: 0.8 });
    }
  }
}

function pre_execution() {
  clear_memory();
  visualize_spawning();
}

function spawn_creeps(config: StageConfig) {
  // select a creep to spawn
  let role_count: {[role_name: string]: number} = {};
  Object.values(Game.creeps).forEach((creep) => {
    role_count[creep.memory.role] = role_count[creep.memory.role] ?
      role_count[creep.memory.role] + 1 : 1;
  })
  let role_to_spawn: string = '';
  for (let role in config.roles) {
    if (! role_count[role] || role_count[role] < config.roles[role].number) {
      role_to_spawn = role;
      break;
    }
  }
  if (role_to_spawn === '') return;

  // select a spawner
  let spawner: StructureSpawn | null = null;
  for (let sp of Object.values(Game.spawns)) {
    if (! sp.spawning) {
      spawner = sp;
      break;
    }
  }
  if (spawner === null) return;

  let profile = config.roles[role_to_spawn].profile;

  let count_key = `${role_to_spawn}_count`;
  if (! Memory[count_key]) Memory[count_key] = 0;
  let idx = Memory[count_key] + 1;
  let body_parts = _.flatten(profile.body.map(p => _.times(p[1], _=>p[0])));
  let ret = spawner.spawnCreep(body_parts, `${role_to_spawn}_${idx}`,
    { memory: { role: role_to_spawn, state: 'init' } });
  if (ret === OK) Memory[count_key]++;
  return;
}

export {


w	#62,-(sp)
	trap	#1
	addq.l	#4,sp
	rts

* Positive numbers only!
display_number
	lea	buffer+32,a0
	clr.b	-(a0)
.next	clr.l	d1
	divu.l	#10,d1:d0
	add.b	#'0',d1
	move.b	d1,-(a0)
	tst.w	d0
	bne.s	.next
	bsr	text
	rts

	section	data
DSPbin.start
	incbin	mp2.dsp	; DSP binary file
DSPbin.end	even
DSPtables.start
	incbin	dsp.dat
DSPtables.end

bitrates	dc.w	0,32,48,56,64,80,96,112,128,160,192,224,256,320,384

info_text0	dc.b	'mp2 version 0.4alpha, Copyright (C) 1996 Fredrik Noring',10,13
	dc.b	'DSP 44.1kHz Stereo MPEG2 Audio decoder (external clock)',10,13
;	dc.b	'DSP 44.1kHz Stereo MPEG2 Audio decoder',10,13
	dc.b	'This program is free software and distributed under',10,13
	dc.b	'the conditions of the GNU General Pub


thod to display the timed count in seconds
	friend	ostream& operator << (ostream& o,PZTimer& timer);
	};

//---------------------------------------------------------------------------
// Long Period Zen Timer class. This can be used to time code that takes up
// to 1 hour to execute between calls to start() and stop() or lap(). The
// aggregate count can be up to 2^32 - 1 microseconds (about 1 hour
// and 10 mins).
//---------------------------------------------------------------------------

class LZTimer {
protected:
	ulong	_count;
	short	_overflow;
public:
			// Constructor
			LZTimer()		{ _count = 0; _overflow = false; };

			// Method to start the timer
			void start()	{ LZTimerOn(); };

			// Method to restart the timer
			void restart()	{ reset(); start(); };

			// Method to stop the timer
			void stop()
			{
				LZTimerOff();
				if (!overflow()) {
					ulong newcount = _count + LZTimerCount();
					if (newcount < _count || newcount == 0xFFFFFFFF)
						_overflow = true;
					else
						_count = newcount;
					}
			};

			// Method to return the current count
			ulong count()	{ return overflow() ? 0xFFFFFFFF : _count; };

			// Method to reset the timer to a zero count
			void reset()	{ _count = 0; _overflow = false; };

			// Method to determine if overflow occurred
			bool overflow()	{ return _overflow; };

			// Method to return timer resolution (counts in a second).
			ulong resolution()	{ return 1000000L; };

			// Method to display the timed count in seconds
	friend	ostream& operator << (ostream& o,LZTimer& timer);
	};

//---------------------------------------------------------------------------
// Ultra Long Period Zen Timer class. This can be used to time code that
// takes up 24 hours total to execute between calls to start() and stop().
// The aggregate count can be up to 2^32 - 1 tenths of a second, which
// is about 119,000 hours! Should be enough for most applications.
//---------------------------------------------------------------------------

class ULZTimer {
protected:
	ulong	_count,_start,_finish;
	short	_overflow;
public:
			// Constructor
			ULZTimer()		{ _count = 0; _overflow = false; };

			// Method to start the timer
			void start()	{ _start = ULZReadTime(); };

			// Method to restart the timer
			void restart()	{ reset(); start(); };

			// Method to stop the timer
			void stop();

			// Method to return the current count
			ulong count()	{ return overflow() ? 0xFFFFFFFF : _count; };

			// Method to reset the timer to a zero count
			void reset()	{ _count = 0; _overflow = false; };

			// Method to determine if overflow occurred
			bool overflow()	{ return _overflow; };

			// Method to return timer resolution (counts in a second).
			ulong resolution()	{ return 10L; };

			// Method to display the timed count in seconds
	friend	ostream& operator << (ostream& o,ULZTimer& timer);
	};

#endif

#endif	__ZTIMER_H


framework.stereotype.Component;

@Component
@Profile("!prod")
public class FestagoOAuth2Client implements OAuth2Client {

    private final Map<String, UserInfo> userInfoMap = new HashMap<>();

    public FestagoOAuth2Client() {
        userInfoMap.put("1", new UserInfo("1", getSocialType(), "member1", null));
        userInfoMap.put("2", new UserInfo("2", getSocialType(), "member2", null));
        userInfoMap.put("3", new UserInfo("3", getSocialType(), "member3", null));
    }

    @Override
    public UserInfo getUserInfo(String code) {
        UserInfo userInfo = userInfoMap.get(code);
        if (userInfo == null) {
            throw new BadRequestException(ErrorCode.OAUTH2_INVALID_TOKEN);
        }
        return userInfo;
    }

    @Override
    public SocialType getSocialType() {
        return SocialType.FESTAGO;
    }
}
package team.teamby.teambyteam.common.fixtures;

import team.teamby.teambyteam.teamplace.application.dto.TeamPlaceCreateRequest;
import team.teamby.teambyteam.teamplace.domain.TeamPlace;
import team.teamby.teambyteam.teamplace.domain.vo.Name;

public class TeamPlaceFixtures {

    public static final String ENGLISH_TEAM_PLACE_NAME = "영어 팀플";
    public static final String JAPANESE_TEAM_PLACE_NAME = "일본어 팀플";
    public static final String FLUID_TEAM_PLACE_NAME = "유체역학 팀플";
    public static final String STATICS_TEAM_PLACE_NAME = "정역학 팀플";
    public static final String DYNAMICS_TEAM_PLACE_NAME = "동역학 팀플";
    public static final String CONTROLS_TEAM_PLACE_NAME = "제어공학 팀플";
    public static final String MATERIALS_TEAM_PLACE_NAME = "제료공학 팀플";

    public static TeamPlace ENGLISH_TEAM_PLACE() {
        return new TeamPlace(new Name(ENGLISH_TEAM_PLACE_NAME));
    }

    public static TeamPlace JAPANESE_TEAM_PLACE() {
        return new TeamPlace(new Name(JAPANESE_TEAM_PLACE_NAME));
    }

    public static TeamPlace FLUID_TEAM_PLACE() {
        return new TeamPlace(new Name(FLUID_TEAM_PLACE_NAME));
    }

    public static TeamPlace STATICS_TEAM_PLACE() {
        return new TeamPlace(new Name(STATICS_TEAM_PLACE_NAME));
    }

    public static TeamPlace DYNAMICS_TEAM_PLACE() {
        return new TeamPlace(new Name(DYNAMICS_TEAM_PLACE_NAME));
    }

    public static TeamPlace CONTROLS_TEAM_PLACE() {
        return new TeamPlace(new Name(CONTROLS_TEAM_PLACE_NAME));
    }

    public static TeamPlace MATERIALS_TEAM_PLACE() {
        return new TeamPlace(new Name(MATERIALS_TEAM_PLACE_NAME));
    }

    public static TeamPlaceCreateRequest CREATE_ENGLISH_TEAM_PLACE_REQUEST() {
        return new TeamPlaceCreateRequest(ENGLISH_TEAM_PLACE_NAME);
    }
}
package com.festago.auth.infrastructure.openid;

import com.festago.common.exception.ErrorCode;
import com.festago.common.exception.InternalServerException;
import io.jsonwebtoken.io.Parser;
import io.jsonwebtoken.security.JwkSet;
import io.jsonwebtoken.security.Jwks;
import java.time.Duration;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.web.client.RestTemplateBuilder;
import org.springframework.stereotype.Component;
import org.springframework.web.client.ResourceAccessException;
import org.springframework.web.client.RestTemplate;

@Slf4j
@Component
public class KakaoOpenIdJwksClient {

    private final RestTemplate restTemplate;
    private final Parser<JwkSet> parser;

    public KakaoOpenIdJwksClient(
        RestTemplateBuilder restTemplateBuilder
    ) {


apDist_ ## SIG \
  ( ElUpperOrLower uplo, ElDistMatrix_ ## SIG A, ElInt to, ElInt from ) \
  { EL_TRY( HermitianSwap( CReflect(uplo), *CReflect(A), to, from ) ) } \
  /* MakeHermitian */ \
  ElError ElMakeHermitian_ ## SIG \
  ( ElUpperOrLower uplo, ElMatrix_ ## SIG A ) \
  { EL_TRY( MakeHermitian( CReflect(uplo), *CReflect(A) ) ) } \
  ElError ElMakeHermitianDist_ ## SIG \
  ( ElUpperOrLower uplo, ElDistMatrix_ ## SIG A ) \
  { EL_TRY( MakeHermitian( CReflect(uplo), *CReflect(A) ) ) } \
  ElError ElMakeHermitianSparse_ ## SIG \
  ( ElUpperOrLower uplo, ElSparseMatrix_ ## SIG A ) \
  { EL_TRY( MakeHermitian( CReflect(uplo), *CReflect(A) ) ) } \
  ElError ElMakeHermitianDistSparse_ ## SIG \
  ( ElUpperOrLower uplo, ElDistSparseMatrix_ ## SIG A ) \
  { EL_TRY( MakeHermitian( CReflect(uplo), *CReflect(A) ) ) } \
  /* MakeReal */ \
  ElError ElMakeReal_ ## SIG \
  ( ElMatrix_ ## SIG A ) { EL_TRY( MakeReal( *CReflect(A) ) ) } \
  ElError ElMakeRealDist_ ## SIG \
  ( ElDistMatrix_ ## SIG A ) { EL_TRY( MakeReal( *CReflect(A) ) ) }

#include <El/macros/CInstantiate.h>

} // extern "C"
/*
   Copyright (c) 2009-2016, Jack Poulson
   All rights reserved.

   This file is part of Elemental and is under the BSD 2-Clause License,
   which can be found in the LICENSE file in the root directory, or at
   http://opensource.org/licenses/BSD-2-Clause
*/
#include <El.hpp>

#include "./SVD/Chan.hpp"
#include "./SVD/Product.hpp"

namespace El {

// Grab the SVD of the general matrix A, A = U diag(s) V^H
// =======================================================

namespace svd {

// The following exists primarily for benchmarking purposes
template<typename Field,
         typename=EnableIf<IsBlasScalar<Field>>>
SVDInfo ScaLAPACKHelper
( const AbstractDistMatrix<Field>& APre,
        AbstractDistMatrix<Field>& UPre,
        AbstractDistMatrix<Base<Field>>& sPre,
        AbstractDistMatrix<Field>& V,
  const SVDCtrl<Base<Field>>& ctrl )
{
    EL_DEBUG_CSE
    AssertScaLAPACKSupport();
    SVDInfo info;
#ifdef EL_HAVE_SCALAPACK
    typedef Base<Field> Real;
    DistMatrix<Field,MC,MR,BLOCK> A( APre );
    DistMatrixWriteProxy<Real,Real,STAR,STAR> sProx(sPre);
    DistMatrixWriteProxy<Field,Field,MC,MR,BLOCK> UProx(UPre);
    auto& s = sProx.Get();
    auto& U = UProx.Get();

    const int m = A.Height();
    const int n = A.Width();
    const int k = Min(m,n);

    auto approach = ctrl.bidiagSVDCtrl.approach;
    if( approach == THIN_SVD || approach == COMPACT_SVD )
    {
        Zeros( U, m, k );
        DistMatrix<Field,MC,MR,BLOCK> VH( A.Grid() );
        Zeros( VH, k, n );
        s.Resize( k, 1 );

        auto descA = FillDesc( A );
        auto descU = FillDesc( U );
        auto descVH = FillDesc( VH );
        scalapack::SVD
        ( m, n,
          A.Buffer(), descA.data(),
          s.Buffer(),
          U.Buffer(), descU.data(),


hdu li a{opacity:.8}#hp_sw_hdr ul#sc_hdu li a:hover{opacity:1}#hp_sw_hdr ul li a:hover{color:#fff;text-decoration:none}#hp_sw_hdr li.sc_active{border-left:solid 1px #a8b1b7;border-right:solid 1px #a8b1b7;border:none;font-weight:700;margin:0}#hp_sw_hdr li.sc_active>a{border-bottom:1px solid #fff}ul.hp_head_nav{padding-left:3px}ul.hp_head_nav li a{color:#fff;margin-left:18px;margin-right:18px}.sh_hst{position:absolute;visibility:hidden;z-index:4}.sh_hto{background:#000;filter:alpha(opacity=40);height:39px;opacity:.4;padding:1px;width:39px}.sh_hto div{border:1px solid #fff;float:left;height:37px;width:37px}a.sh_hs{color:#fff;cursor:pointer;display:block;line-height:1.4em;padding:3px 8px 6px;position:absolute;text-decoration:none;visibility:hidden;width:205px;z-index:6}a.sh_hs:hover{text-decoration:none}a.sh_hs p,a:visited.sh_hs p{margin:0 0 .2em}.sh_hq{text-decoration:underline}.sh_hi{color:#0c8484;display:inline;font-size:medium}.sh_ho{background:#000;filter:alpha(opacity=60);left:0;opacity:.6;padding:1px;position:absolute;top:0;width:100%;z-index:-1}.sh_ho div{border:1px solid #fff}#hp_bk,#hp_tbar{display:none}#thp_notf_div{position:fixed}.hidden{display:none!important}#hp_sw_hdr #langChange{vertical-align:top}#hp_sw_hdr #langChange a{line-height:43px}#hp_sw_hdr .sw_mktsw a,#hp_sw_hdr .sw_mktsw span{color:#fff;line-height:39px;height:43px;margin:0 10px 0 9px}#hp_id_hdr #dhpc{display:block;float:right;line-height:43px;height:43px;position:relative;visibility:hidden}#hp_id_hdr #dhpc>a{color:#fff;opacity:.8}#hp_id_hdr #dhpc>a:hover{opacity:1}#hp_id_hdr #dhpc>span{color:#fff;margin-left:18px;margin-right:18px}#hp_container .pp_tile,#hp_container .sa_as{border-color:#e5e5e5}#hp_tbar{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.55)),to(rgba(0,0,0,.55)));background-image:-moz-linear-gradient(rgba(0,0,0,.55) 0,rgba(0,0,0,.55) 100%);background-image:-ms-linear-gradient(rgba(0,0,0,.55) 0,rgba(0,0,0,.55) 100%);background-image:-o-linear-gradient(rgba(0,0,0,.55) 0,rgba(0,0,0,.55) 100%);background-image:linear-gradient(rgba(0,0,0,.55) 0,rgba(0,0,0,.55) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#8C000000',endColorstr='#8C000000');height:0;max-width:1366px;min-width:900px;overflow:hidden;width:100%}#hp_tbar .sc_mdi{float:left}#hp_tbar .sc_mdi a{color:#fff;font-size:13px;line-height:27px;height:27px;overflow:hidden;text-decoration:none}#hp_tbar .sc_mdi a:hover{text-decoration:underlin


:pt-r11 {
    padding-top: calc(var(--scale) * 2.75rem);
  }
  .xl\:pt-r12 {
    padding-top: calc(var(--scale) * 3rem);
  }
  .xl\:pt-r14 {
    padding-top: calc(var(--scale) * 3.5rem);
  }
  .xl\:pt-r16 {
    padding-top: calc(var(--scale) * 4rem);
  }
  .xl\:pt-r2 {
    padding-top: calc(var(--scale) * 0.5rem);
  }
  .xl\:pt-r20 {
    padding-top: calc(var(--scale) * 5rem);
  }
  .xl\:pt-r3 {
    padding-top: calc(var(--scale) * 0.75rem);
  }
  .xl\:pt-r4 {
    padding-top: calc(var(--scale) * 1rem);
  }
  .xl\:pt-r5 {
    padding-top: calc(var(--scale) * 1.25rem);
  }
  .xl\:pt-r6 {
    padding-top: calc(var(--scale) * 1.5rem);
  }
  .xl\:pt-r7 {
    padding-top: calc(var(--scale) * 1.75rem);
  }
  .xl\:pt-r8 {
    padding-top: calc(var(--scale) * 2rem);
  }
  .xl\:pt-r9 {
    padding-top: calc(var(--scale) * 2.25rem);
  }
  .xl\:text-left {
    text-align: left;
  }
  .xl\:text-center {
    text-align: center;
  }
  .xl\:text-right {
    text-align: right;
  }
  .xl\:text-justify {
    text-align: justify;
  }
  .xl\:text-start {
    text-align: start;
  }
  .xl\:text-end {
    text-align: end;
  }
  .xl\:indent-0 {
    text-indent: 0;
  }
  .xl\:indent-0\.5 {
    text-indent: 0.125rem;
  }
  .xl\:indent-1 {
    text-indent: 0.25rem;
  }
  .xl\:indent-1\.5 {
    text-indent: 0.375rem;
  }
  .xl\:indent-10 {
    text-indent: 2.5rem;
  }
  .xl\:indent-11 {
    text-indent: 2.75rem;
  }
  .xl\:indent-12 {
    text-indent: 3rem;
  }
  .xl\:indent-14 {
    text-indent: 3.5rem;
  }
  .xl\:indent-16 {
    text-indent: 4rem;
  }
  .xl\:indent-2 {
    text-indent: 0.5rem;
  }
  .xl\:indent-2\.5 {
    text-indent: 0.625rem;
  }
  .xl\:indent-20 {
    text-indent: 5rem;
  }
  .xl\:indent-24 {
    text-indent: 6rem;
  }
  .xl\:indent-28 {
    text-indent: 7rem;
  }
  .xl\:indent-3 {
    text-indent: 0.75rem;
  }
  .xl\:indent-3\.5 {
    text-indent: 0.875rem;
  }
  .xl\:indent-32 {
    text-indent: 8rem;
  }
  .xl\:indent-36 {
    text-indent: 9rem;
  }
  .xl\:indent-4 {
    text-indent: 1rem;
  }
  .xl\:indent-40 {
    text-indent: 10rem;
  }
  .xl\:indent-44 {
    text-indent: 11rem;


using AAEmu.Game.Core.Managers;
using AAEmu.Game.Models.Game;
using AAEmu.Game.Models.Game.Char;
using AAEmu.Game.Utils.Scripts;
using AAEmu.Game.Models;

namespace AAEmu.Game.Scripts.Commands;

public class SetTradePackMailDelay : ICommand
{
    public string[] CommandNames { get; set; } = ["settradepackmaildelay"];

    public void OnLoad()
    {
        CommandManager.Instance.Register(CommandNames, this);
    }

    public string GetCommandLineHelp()
    {
        return "<delay_in_minutes>";
    }

    public string GetCommandHelpText()
    {
        return $"Changes the delay in receiving the trade pack reward mail to <delay> minute(s)\n" +
               $"Example usage:\n" +
               $"Receive the reward without delay: {CommandManager.CommandPrefix} {CommandNames[0]} 0\n" +
               $"Receive the


, $v0, 0x4e
/* 13F524 801994B4 14200004 */  bnez  $at, .L801994C8_ovl7
/* 13F528 801994B8 01194021 */   addu  $t0, $t0, $t9
/* 13F52C 801994BC 2841005D */  slti  $at, $v0, 0x5d
/* 13F530 801994C0 54200026 */  bnezl $at, .L8019955C_ovl7
/* 13F534 801994C4 8FBF0014 */   lw    $ra, 0x14($sp)
.L801994C8_ovl7:
/* 13F538 801994C8 8D080D50 */  lw    $t0, 0xd50($t0)
/* 13F53C 801994CC 3C09800E */  lui   $t1, 0x800e
/* 13F540 801994D0 01234821 */  addu  $t1, $t1, $v1
/* 13F544 801994D4 51000021 */  beql  $t0, $zero, .L8019955C_ovl7
/* 13F548 801994D8 8FBF0014 */   lw    $ra, 0x14($sp)
/* 13F54C 801994DC 912978F0 */  lbu   $t1, 0x78f0($t1)
/* 13F550 801994E0 312A0020 */  andi  $t2, $t1, 0x20
/* 13F554 801994E4 5540001D */  bnezl $t2, .L8019955C_ovl7
/* 13F558 801994E8 8FBF0014 */   lw    $ra, 0x14($sp)
.L801994EC_ovl7:
/* 13F55C 801994EC 0C02CC56 */  jal   func_800B3158
/* 13F560 801994F0 00000000 */   nop
/* 13F564 801994F4 14400006 */  bnez  $v0, .L80199510_ovl7
/* 13F568 801994F8 3C0B8005 */   lui   $t3, %hi(D_8004A7C4) # $t3, 0x8005
/* 13F56C 801994FC 8D6BA7C4 */  lw    $t3, %lo(D_8004A7C4)($t3)
/* 13F570 80199500 0C067628 */  jal   func_8019D8A0_ovl7
/* 13F574 80199504 95640002 */   lhu   $a0, 2($t3)
/* 13F578 80199508 0C02BE85 */  jal   func_800AFA14
/* 13F57C 8019950C 00000000 */   nop
.L80199510_ovl7:
/* 13F580 80199510 3C01447A */  li    $at, 0x447A0000 # 1000.000000
/* 13F584 80199514 44816000 */  mtc1  $at, $f12
/* 13F588 80199518 0C0669FA */  jal   func_8019A7E8_ovl7
/* 13F58C 8019951C 00000000 */   nop
/* 13F590 80199520 10400009 */  beqz  $v0, .L80199548_ovl7
/* 13F594 80199524 3C01801D */   lui   $at, %hi(D_801CDB9C) # $at, 0x801d
/* 13F598 80199528 C42CDB9C */  lwc1  $f12, %lo(D_801CDB9C)($at)
/* 13F59C 8019952C 3C01801D */  lui   $at, %hi(D_801CDBA0) # $at, 0x801d
/* 13F5A0 80199530 3C0644BB */  lui   $a2, (0x44BB8000 >> 16) # lui $a


 ED |
//! |64-bit unsigned integer    |1311768467750121216    |0x12345678ABCDEF00 |00 EF CD AB 78 56 34 12 |
//!
//! ### ULEB128-Encoded Integers
//!
//! The BCS format also uses the [ULEB128 encoding](https://en.wikipedia.org/wiki/LEB128) internally
//! to represent unsigned 32-bit integers in two cases where small values are usually expected:
//! (1) lengths of variable-length sequences and (2) tags of enum values (see the corresponding
//! sections below).
//!
//! |Type                       |Original data          |Hex representation |Serialized bytes   |
//! |---                        |---                    |---                |---                |
//! |ULEB128-encoded u32-integer|2^0 = 1                |0x00000001         |01                 |
//! |                           |2^7 = 128              |0x00000080         |80 01              |
//! |                           |2^14 = 16384           |0x00004000         |80 80 01           |
//! |                           |2^21 = 2097152         |0x00200000         |80 80 80 01        |
//! |                           |2^28 = 268435456       |0x10000000         |80 80 80 80 01     |
//! |                           |9487                   |0x0000250f         |8f 4a              |
//!
//! In general, a ULEB128 encoding consists of a little-endian sequence of base-128 (7-bit)
//! digits. Each digit is completed into a byte by setting the highest bit to 1, except for the
//! last (highest-significance) digit whose highest bit is set to 0.
//!
//! In BCS, the result of decoding ULEB128 bytes is required to fit into a 32-bit unsigned
//! integer and be in canonical form. For instance, the following values are rejected:
//! * 80 80 80 80 80 01 (2^36) is too large.
//! * 80 80 80 80 10 (2^33) is too large.
//! * 80 00 is not a minimal encoding of 0.
//!
//! ### Optional Data
//!
//! Optional or nullable data either exists in its full representation or does not. BCS represents
//! this as a single byte representing the presence `0x01` or absence `0x00` of data. If the data
//! is present then the serialized form of that data follows. For example:
//!
//! ```rust
//! # use bcs::{Result, to_bytes};
//! # fn main() -> Result<()> {
//! let some_data: Option<u8> = Some(8);
//! assert_eq!(to_bytes(&some_data)?, vec![1, 8]);
//!
//! let no_data: Option<u8> = None;
//! assert_eq!(to_bytes(&no_data)?, vec![0]);
//! # Ok(())}
//! ```
//!
//! ### Fixed and Variable Length Sequences
//!
//! Sequences can be made of up of any BCS supported types (even complex structures) but all
//! elements in the sequence must be of the same type. If the length of a sequence is fixed and
//! well known then BCS represents this as just the concatenation of the serialized form of each
//! individual element in the sequence. If the length of the sequence can be variable, then the
//! serialized sequence is length prefixed with a ULEB128-encoded unsigned integer indicating
//! the number of elements in the sequence. All variable length sequences must be
//! `MAX_SEQUENCE_LENGTH` elements long or less.
//!
//! ```rust
//! # use bcs::{Result, to_bytes};
//! # fn main() -> Result<()> {
//! let fixed: [u16; 3] = [1, 2, 3];
//! assert_eq!(to_bytes(&fixed)?, vec![1, 0, 2, 0, 3, 0]);


/**************************************************************************
 * arch/z80/src/z8/z8_xdef.S
 * Interrupt Handling
 *
 *   Copyright (C) 2008 Gregory Nutt. All rights reserved.
 *   Author: Gregory Nutt <gnutt@nuttx.org>
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 * 3. Neither the name NuttX 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 THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS or IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
 * COPYRIGHT OWNER or CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, or CONSEQUENTIAL DAMAGES (INCLUDING,
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS or SERVICES; LOSS
 * OF USE, DATA, or PROFITS; or BUSINESS INTERRUPTION) HOWEVER CAUSED
 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 * LIABILITY, or TORT (INCLUDING NEGLIGENCE or OTHERWISE) ARISING IN
 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 *
 **************************************************************************/

/**************************************************************************
 * Included Files
 **************************************************************************/

#include <nuttx/config.h>
#include <arch/irq.h>

#include <ez8.inc>
#include <vect.inc>

/**************************************************************************
 * Definitions
 **************************************************************************/

/**************************************************************************
 * External References / External Definitions
 **************************************************************************/

	xref	_up_doirq:ROM

#if defined(ENCORE_VECTORS)
	xdef	_z8_wdt_handler
	xdef	_z8_trap_handler
if EZ8_TIMER3=1
	xdef	_z8_timer2_handler
endif
	xdef	_z8_timer1_handler
	xdef	_z8_timer0_handler
if EZ8_UART0=1
	xdef	_z8_uart0rx_handler
	xdef	_z8_uart0tx_


d8c7851a9">EnvelopeFollowerParameters

attributeID : AuxParameterAttribute

auBundleID : APISpecificInfo

auBundleName : APISpecificInfo

auChannelInfo : AUFXPlugin, AUSynthPlugin

audioData : DecimatorInput, InterpolatorOutput

audioDetectorParameters : AudioDetector

audioFilterParameters : AudioFilter

audioInputFrame : ProcessFrameInfo

audioOutputFrame : ProcessFrameInfo

audioProcDescriptor : PluginBase

audioTimeStamp : midiEvent

AUEventListener : VSTGUI::PluginGUI

auInstance : GUIPluginConnector, PluginHostConnector

auxAudioInputFrame : <a class="el" href="struct_process_frame_info.html#a9c6095fefb88


1]) / (float)Math.abs(comph - currAnim.end[3])));
						}
					}
					else
					{
						WidgetFidget.setProperty(effect, RENDER_SCALE_X, "" + currAnim.end[0]/100.0f);
						if (currAnim.end.length == 1)
							WidgetFidget.setProperty(effect, RENDER_SCALE_Y, "" + currAnim.end[0]/100.0f);
						else if (currAnim.end.length > 1)
							WidgetFidget.setProperty(effect, RENDER_SCALE_Y, "" + currAnim.end[1]/100.0f);
					}
				}
				if (currAnim.start == null && currAnim.end == null)
				{
					if (inEffect)
					{
						WidgetFidget.setProperty(effect, START_RENDER_SCALE_X, "0");
						WidgetFidget.setProperty(effect, START_RENDER_SCALE_Y, "0");
						WidgetFidget.setProperty(effect, RENDER_SCALE_X, "1.0");
						WidgetFidget.setProperty(effect, RENDER_SCALE_Y, "1.0");
					}
					else
					{
						WidgetFidget.setProperty(effect, START_RENDER_SCALE_X, "1.0");
						WidgetFidget.setProperty(effect, START_RENDER_SCALE_Y, "1.0");
						WidgetFidget.setProperty(effect, RENDER_SCALE_X, "0");
						WidgetFidget.setProperty(effect, RENDER_SCALE_Y, "0");
					}
				}
			}
			if (animKey != null)
				animWidgMap.put(animKey, effect);
		}
	}

	private String cleanImagePath(String path)
	{
		if (path != null && path.startsWith("special://skin/media/"))
			return path.substring(21);
		else if (path != null && path.startsWith("special://skin/backgrounds/"))
			return ".." + path.substring(14);
		else
			return path;
	}

	private String translateImagePath(String path)
	{
		if (path == null)
			return "";
		if (path.startsWith("special://skin/media/"))
			return "\"" + mediaPath + path.substring(20) + "\"";
		else if (path.startsWith("special://skin/backgrounds/"))
			return "\"" + path.substring(15) + "\"";
		else if (path.startsWith("$INFO["))
		{
			String orgExpr = path;
			String infoBlock;
			int endIdx = path.lastIndexOf(']');
			infoBlock = path.substring(6, endIdx);
			java.util.StringTokenizer toker = new java.util.StringTokenizer(infoBlock, ",", true);
			String infoExpr = toker.nextToken();
			if (toker.hasMoreTokens())
				toker.nextToken(); // comma
			String infoPrefix = "";
			String infoPostfix = "";
			String nexty = toker.hasMoreTokens() ? toker.nextToken() : ",";
			if (!nexty.equals(","))
			{
				infoPrefix = nexty;
				infoPrefix = infoPrefix.replace("$COMMA", ",");
				infoPrefix = infoPrefix.replace("$LBRACKET", "[");
				infoPrefix = infoPrefix.replace("$RBRACKET", "]");
				infoPrefix = infoPrefix.replace("$$", "$");
				if (toker.hasMoreTokens())
					toker.nextToken(); // comma
			}
			if (toker.hasMoreTokens())
			{
				infoPostfix = toker.nextToken();
				infoPostfix = infoPostfix.replace("$COMMA", ",");
				infoPostfix = infoPostfix.replace("$LBRACKET", "[");
				infoPostfix = infoPostfix.replace("$RBRACKET", "]");
				infoPostfix = infoPostfix.replace("$$", "$");
			}


8
-1.105
u_cz80/ff_bus_address_2_s0/Q
u_uart/ff_d_7_s0/CE
u_pll/rpll_inst/CLKOUTD.default_gen_clk:[R]
u_sdram/u_ddr3_controller/gw3_top/u_ddr_phy_top/fclkdiv/CLKOUT.default_gen_clk:[R]
6.734
3.477
4.292

9
-1.105
u_cz80/ff_bus_address_2_s0/Q
u_uart/ff_d_0_s0/CE
u_pll/rpll_inst/CLKOUTD.default_gen_clk:[R]
u_sdram/u_ddr3_controller/gw3_top/u_ddr_phy_top/fclkdiv/CLKOUT.default_gen_clk:[R]
6.734
3.477
4.292

10
-1.105
u_cz80/ff_bus_address_2_s0/Q
u_uart/ff_d_1_s0/CE
u_pll/rpll_inst/CLKOUTD.default_gen_clk:[R]
u_sdram/u_ddr3_controller/gw3_top/u_ddr_phy_top/fclkdiv/CLKOUT.default_gen_clk:[R]
6.734
3.477
4.292

11
-1.105
u_cz80/ff_bus_address_2_s0/Q
u_uart/ff_d_3_s0/CE
u_pll/rpll_inst/CLKOUTD.default_gen_clk:[R]
u_sdram/u_ddr3_controller/gw3_top/u_ddr_phy_top/fclkdiv/CLKOUT.default_gen_clk:[R]
6.734
3.477
4.292

12
-1.105
u_cz80/ff_bus_address_2_s0/Q
u_uart/ff_d_4_s0/CE
u_pll/rpll_inst/CLKOUTD.default_gen_clk:[R]
u_sdram/u_ddr3_controller/gw3_top/u_ddr_phy_top/fclkdiv/CLKOUT.default_gen_clk:[R]
6.734
3.477
4.292

13
-1.105
u_cz80/ff_bus_address_2_s0/Q
u


ntr_abgybttrqva%2Psvz_zlfcnpr_aba_HTP%2Psvz_zlfcnpr_havgrq-fgngrf&hey=uggc%3N%2S%2Szrffntvat.zlfcnpr.pbz%2Svaqrk.psz&nq_glcr=grkg&rvq=6083027&rn=0&sez=0&tn_ivq=1192552091.1231367807&tn_fvq=1231367807&tn_uvq=1155446857&synfu=9.0.115&h_u=768&h_j=1024&h_nu=738&h_nj=1024&h_pq=24&h_gm=-480&h_uvf=2&h_wnin=gehr&h_acyht=7&h_azvzr=22';
  var str24 = 'ZFPhygher=VC=66.249.85.130&VCPhygher=ra-HF&CersreerqPhygher=ra-HF&Pbhagel=IIZ%3Q&SbeprqRkcvengvba=633669358527244818&gvzrMbar=-8&HFEYBP=DKWyLHAiMTH9AwHjWxAcqUx9GJ91oaEunJ4tIzyyqlMQo3IhqUW5D29xMG1IHlMQo3IhqUW5GzSgMG1Iozy0MJDtH3EuqTImWxEgLHAiMTH9BQN3WxkuqTy0qJEyCGZ3YwDkBGVzGT9hM2y0qJEyCF0kZwVhZQH3APMDo3A0LJkQo2EyCGx0ZQDmWyWyM2yiox5uoJH9D0R%3Q';
  var str25 = 'ZFPhygher=VC=66.249.85.130&VCPhygher=ra-HF&CersreerqPhygher=ra-HF&CersreerqPhygherCraqvat=&Pbhagel=IIZ=&SbeprqRkcvengvba=633669358527244818&gvzrMbar=0&HFEYBP=DKWyLHAiMTH9AwHjWxAcqUx9GJ91oaEunJ4tIzyyqlMQo3IhqUW5D29xMG1IHlMQo3IhqUW5GzSgMG1Iozy0MJDtH3EuqTImWxEgLHAiMTH9BQN3WxkuqTy0qJEyCGZ3YwDkBGVzGT9hM2y0qJEyCF0kZwVhZQH3APMDo3A0LJkQo2EyCGx0ZQDmWyWyM2yiox5uoJH9D0R=';
  var str26 = 'hy.ynat-fryrpgbe';
  var re39 = /\\/g;
  var re40 = / /g;
  var re41 = /\/\xc4\/t/;
  var re42 = /\/\xd6\/t/;
  var re43 = /\/\xdc\/t/;
  var re44 = /\/\xdf\/t/;
  var re45 = /\/\xe4\/t/;
  var re46 = /\/\xf6\/t/;
  var re47 = /\/\xfc\/t/;
  var re48 = /\W/g;
  var re49 = /uers|fep|fglyr/;
  function runBlock4() {
    for (var i = 0; i < 16; i++) {
      ''.replace(/\*/g, '');
      /\bnpgvir\b/.exec('npgvir');
      /sversbk/i.exec(str0);
      re36.exec('glcr');
      /zfvr/i.


,
            &None,
            interrupt.clone(),
            |_, _| {}, // Ignore these.
        );
        pin_mut!(deflate);

        // The third queue is used for stats messages. The message type is the
        // id of the stats request, so we can detect if there are any stale
        // stats results that were queued during an error condition.
        let (stats_tx, stats_rx) = mpsc::channel::<u64>(1);
        let stats_event =
            EventAsync::new(queue_evts.remove(0).0, &ex).expect("failed to set up the stats event");
        let stats = handle_stats_queue(
            &mem,
            queues.remove(0),
            stats_event,
            stats_rx,
            &command_tube,
            config.clone(),
            interrupt.clone(),
        );
        pin_mut!(stats);

        // Future to handle command messages that resize the balloon.
        let command = handle_command_tube(&command_tube, interrupt.clone(), config, stats_tx);
        pin_mut!(command);

        // Process any requests to resample the irq value.
        let resample = async_utils::handle_irq_resample(&ex, interrupt);
        pin_mut!(resample);

        // Exit if the kill event is triggered.
        let kill = async_utils::await_and_exit(&ex, kill_evt);
        pin_mut!(kill);

        if let Err(e) = ex.run_until(select6(inflate, deflate, stats, command, resample, kill)) {
            error!("error happened in executor: {}", e);
        }
    }

    (command_tube.into(), inflate_tube)
}

/// Virtio device for memory balloon inflation/deflation.
pub struct Balloon {
    command_tube: Option<Tube>,
    inflate_tube: Option<Tube>,
    config: Arc<BalloonConfig>,
    features: u64,
    kill_evt: Option<Event>,
    worker_thread: Option<thread::JoinHandle<(Tube, Option<Tube>)>>,
}

impl Balloon {
    /// Creates a new virtio balloon device.
    /// To let Balloon able to successfully release the memory which are pinned
    /// by CoIOMMU to host, the inflate_tube will be used to send the inflate
    /// ranges to CoIOMMU with UnpinRequest/UnpinResponse messages, so that The
    /// memory in the inflate range can be unpinned first.
    pub fn new(
        base_features: u64,
        command_tube: Tube,
        inflate_tube: Option<Tube>,
        init_balloon_size: u64,
    ) -> Result<Balloon> {
        Ok(Balloon {
            command_tube: Some(command_tube),
            inflate_tube,
            config: Arc::new(BalloonConfig {
                num_pages: AtomicUsize::new(
                    (init_balloon_size >> VIRTIO_BALLOON_PFN_SHIFT) as usize,
                ),
                actual_pages: AtomicUsize::new(0),
            }),
            kill_evt: None,
            worker_thread: None,
            features: base_features
                | 1 << VIRTIO_BALLOON_F_MUST_TELL_HOST
                | 1 << VIRTIO_BALLOON_F_STATS_VQ
                | 1 << VIRTIO_BALLOON_F_DEFLATE_ON_OOM,
        })
    }

    fn get_config(&self) -> virtio_balloon_config {
        let num_pages = self.config.num_pages.load(Ordering::Relaxed) as u32;
        let actual_pages = self.config.actual_pages.load(Ordering::Relaxed) as u32;
        virtio_balloon_config {
            num_pages: num_pages.into(),
            actual: actual_pages.into(),
        }
    }
}

impl Drop for Balloon {
    fn drop(&mut self) {


          startLetter: "G"),
      ContactModel(
          type: 1,
          url:
          "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcT4hzXLbHh3WpNS2JPeDNGFrUxCy8G6q7ZhiEWch_rpsH-qjmlL",
          name: "考研",
          startLetter: "K"),
      ContactModel(
          type: 1,
          url:
          "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcSWhPmbTURlGR7Uw5eBPlXZnUEviQ6IPFOysANKNygCRMiGszFY",
          name: "James",
          startLetter: "J"),
      ContactModel(type: 1, url: null, name: "...", startLetter: "#"),
      ContactModel(type: 1, url: null, name: "齐天大圣", startLetter: "Q"),
      ContactModel(
          type: 1,
          url:
          "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcQs4Q6FnVBC2xzmzmryFs1pKkHZ8e2gOoRsE3UjLTme_jzF3mas",
          name: "西门庆",
          startLetter: "X"),
      ContactModel(
          type: 1,
          url:
          "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcR3HsH3q2LkXh_abUc_T7Nx-iNkCgRUus4yr8givvbvpah05X43",
          name: "Age",
          startLetter: "A"),
      ContactModel(type: 1, url: null, name: "花果山", startLetter: "H"),
      ContactModel(
          type: 1,
          url:
          "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcTaXwwMnO760jdZUmWIcryDhNUL6iC-eA73kCKXRHbGfHXW_4_2",
          name: "Sky",
          startLetter: "S"),
      ContactModel(
          type: 1,
          url:
          "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcRQRNGE15zEjPG0iPMzszoSF15Gt1-P-BGQhLR9WXEnBhSPoU9c",
          name: "朋友",
          startLetter: "P"),
      ContactModel(
          type: 1,
          url:
          "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcTXLMYnpb-PMV0wPYf9L5kPJzgjSXvIfdJhhbQdLLlLieq8m5zA",
          name: "Java工程师",
          startLetter: "J"),
      ContactModel(
          type: 1,
          url:
          "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcQiH3mCzekL-nfaUlyUGZgNYZUrw6hZ16t94cAfbUMKwSYn2W3P",
          name: "Zyn",
          startLetter: "Z"),
      ContactModel(
          type: 1,
          url:
          "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcS4JMNLEU2hiDy8Ex5xG50ANgHZreOetVwNJKRqWiYrYJOm7mIr",
          name: "花花酱",
          startLetter: "H"),
      ContactModel(
          type: 1,
          url:
          "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcTiLwxp7JZwSWKzBH-bMufQqrhFJo8mFW93femb-Tc4oIxxRDqt",
          name: "赵四",
          startLetter: "Z"),
      Contact


drv=0; drv < pc->drivecnt; drv++) {
		PCAPSDRIVE pd=pc->drive+drv;
		pd->track=0;
		pd->buftrack=-1;
		pd->side=0;
		pd->bufside=-1;
		pd->newside=0;
		pd->diskattr=CAPSDRIVE_DA_WP;
		pd->idistance=0;
		pd->ipcnt=0;
		pd->ovlact=0;
		pd->nact=0;
		pd->nseed=0x87654321;

		// no track data
		FdcClearTrackData(pd);
	}

	// reset internal state
	FdcResetState(pc);

	// all output lines are clear, without callbacks from init
	pc->dataline=0;
	pc->lineout=0;

	// forced update
	pc->drivesel=pc->drivenew-1;
	FdcUpdateDrive(pc, 0);
}

// reset fdc and drive lines
void FdcReset(PCAPSFDC pc)
{
	// reset internal state
	FdcResetState(pc);

	// all output lines are clear
	pc->dataline=0;
	FdcSetLine(pc, 0);

	// forced update
	pc->drivesel=pc->drivenew-1;
	FdcUpdateDrive(pc, 0);
}

// reset fdc internal state
void FdcResetState(PCAPSFDC pc)
{
	// clear internal registers
	pc->r_st0=0;
	pc->r_st1=0;
	pc->r_command=0;
	pc->r_track=0;
	pc->r_sector=0;
	pc->r_data=0;

	// type 1 status, idle
	pc->r_stm=CAPSFDC_SM_TYPE1;
	pc->runmode=cfdcrmIdle;
	pc->runstate=0;
	pc->indexcount=0;
	pc->indexlimit=-1;
	pc->spinupcnt=0;
	pc->idlecnt=0;
	pc->clockcnt=0;
}

// process commands
void FdcCom(PCAPSFDC pc, UDWORD data)
{
	// store command
	pc->r_command=data;

#ifdef _DEBUG
	{
		char dbuf[64];
		int rtrack=pc->driveprc ? pc->driveprc->track : -1;
		int rside=pc->driveprc ? pc->driveprc->side : -1;
		sprintf(dbuf, "%2.2x: %2.2x %2.2x %2.2x %d.%d\n",
			pc->r_command,
			pc->r_track,
			pc->r_sector,
			pc->r_data,
			rtrack,
			rside);
		OutputDebugString(dbuf);
	}
#endif

	// reset command state
	pc->runstate=0;
	pc->indexlimit=-1;

	int comcl=(pc->r_command>>4) & 0xf;

	if (comcl == 0xd)
		FdcComT4(pc);
	else {
		// start loop
		pc->runmode=fdcinit[comcl].runmode;
		pc->idlecnt=0;

		// set status type
		pc->r_stm=fdcinit[comcl].stmask;

		// clear status bits
		pc->r_st0&=~fdcinit[comcl].st0clr;
		pc->r_st1&=~fdcinit[comcl].st1clr;

		// set status bits
		pc->r_st0|=fdcinit[comcl].st0set;
		pc->r_st1|=fdcinit[comcl].st1set;

		// clear drq, intrq, forced interrupt and index enable lines
		FdcSetLine(pc, pc->lineout & ~(CAPSFDC_LO_DRQ | CAPSFDC_LO_INTRQ | CAPSFDC_LO_INTFRC | CAPSFDC_LO_INTIP));
	}
}

// end commands
void FdcComEnd(PCAPSFDC pc)
{
	// command complete
	if (pc->endrequest & CAPSFDC_ER_COMEND) {
		// start idle
		pc->runmode=cfdcrmIdle;
		pc->runstate=0;
		pc->


 = getelementptr inbounds [[CLASS_ANON]], ptr [[REF_TMP]], i32 0, i32 1
// CHECK1-NEXT:    [[TMP2:%.*]] = load ptr, ptr [[G1]], align 8
// CHECK1-NEXT:    store ptr [[TMP2]], ptr [[TMP1]], align 8
// CHECK1-NEXT:    call void @"_ZZ4mainENK3$_0clEv"(ptr noundef nonnull align 8 dereferenceable(16) [[REF_TMP]])
// CHECK1-NEXT:    ret i32 0
//
//
// CHECK1-LABEL: define {{[^@]+}}@{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l68
// CHECK1-SAME: (i64 noundef [[G:%.*]], i64 noundef [[G1:%.*]], i64 noundef [[SVAR:%.*]], i64 noundef [[SFVAR:%.*]]) #[[ATTR2:[0-9]+]] {
// CHECK1-NEXT:  entry:
// CHECK1-NEXT:    [[G_ADDR:%.*]] = alloca i64, align 8
// CHECK1-NEXT:    [[G1_ADDR:%.*]] = alloca i64, align 8
// CHECK1-NEXT:    [[SVAR_ADDR:%.*]] = alloca i64, align 8
// CHECK1-NEXT:    [[SFVAR_ADDR:%.*]] = alloca i64, align 8
// CHECK1-NEXT:    [[TMP:%.*]] = alloca ptr, align 8
// CHECK1-NEXT:    store i64 [[G]], ptr [[G_ADDR]], align 8
// CHECK1-NEXT:    store i64 [[G1]], ptr [[G1_ADDR]], align 8
// CHECK1-NEXT:    store i64 [[SVAR]], ptr [[SVAR_ADDR]], align 8
// CHECK1-NEXT:    store i64 [[SFVAR]], ptr [[SFVAR_ADDR]], align 8
// CHECK1-NEXT:    store ptr [[G1_ADDR]], ptr [[TMP]], align 8
// CHECK1-NEXT:    [[TMP0:%.*]] = load ptr, ptr [[TMP]], align 8
// CHECK1-NEXT:    call void (ptr, i32, ptr, ...) @__kmpc_fork_teams(ptr @[[GLOB3:[0-9]+]], i32 4, ptr @{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l68.omp_outlined, ptr [[G_ADDR]], ptr [[TMP0]], ptr [[SVAR_ADDR]], ptr [[SFVAR_ADDR]])
// CHECK1-NEXT:    ret void
//
//
// CHECK1-LABEL: define {{[^@]+}}@{{__omp_offloading_[0-9a-z]+_[0-9a-z]+}}_main_l68.omp_outlined
// CHECK1-SAME: (ptr noalias noundef [[DOTGLOBAL_TID_:%.*]], ptr noalias noundef [[DOTBOUND_TID_:%.*]], ptr noundef nonnull align 8 dereferenceable(8) [[G:%.*]], ptr noundef nonnull align 8 dereferenceable(8) [[G1:%.*]], ptr noundef nonnull align 4 dereferenceable(4) [[SVAR:%.*]], ptr noundef nonnull align 4 dereferenceable(4) [[SFVAR:%.*]]) #[[ATTR2]] {
// CHECK1-NEXT:  entry:
// CHECK1-NEXT:    [[DOTGLOBAL_TID__ADDR:%.*]] = alloca ptr, align 8
// CHECK1-NEXT:    [[DOTBOUND_TID__ADDR:%.*]] = alloca ptr, align 8
// CHECK1-NEXT:    [[G_ADDR:%.*]] = alloca ptr, align 8
// CHECK1-NEXT:    [[G1_ADDR:%.*]] = alloca ptr, align 8
// CHECK1-NEXT:    [[SVAR_ADDR:%.*]] = alloca ptr, align 8
// CHECK1-NEXT:    [[SFVAR_ADDR:%.*]] = alloca ptr, align 8
// CHECK1-NEXT:    [[TMP:%.*]] = alloca ptr, align 8
// CHECK1-NEXT:    [[


dentifier: 'c'),
        tester.updateNode(id: 4, identifier: 'd'),
      ],
    );
    tester.apply();

    object = tester.getSemanticsObject(0);
    expect(
      object.element.getAttribute('aria-controls'),
      'flt-semantic-node-1 flt-semantic-node-2 flt-semantic-node-4',
    );
  });

  semantics().semanticsEnabled = false;
}

void _testRequirable() {
  test('renders and updates non-requirable, required, and unrequired nodes', () async {
    semantics()
      ..debugOverrideTimestampFunction(() => _testTime)
      ..semanticsEnabled = true;

    final tester = SemanticsTester(owner());
    tester.updateNode(
      id: 0,
      rect: const ui.Rect.fromLTRB(0, 0, 100, 60),
      children: <SemanticsNodeUpdate>[
        tester.updateNode(
          id: 1,
          flags: ui.SemanticsFlags.none,
          rect: const ui.Rect.fromLTRB(0, 0, 100, 20),
        ),
        tester.updateNode(
          id: 2,
          flags: const ui.SemanticsFlags(isRequired: ui.Tristate.isFalse),
          rect: const ui.Rect.fromLTRB(0, 20, 100, 40),
        ),
        tester.updateNode(
          id: 3,
          flags: const ui.SemanticsFlags(isRequired: ui.Tristate.isTrue),
          rect: const ui.Rect.fromLTRB(0, 40, 100, 60),
        ),
      ],
    );
    tester.apply();

    expectSemanticsTree(owner(), '''
<sem>
    <sem></sem>
    <sem aria-required="false"></sem>
    <sem aria-required="true"></sem>
</sem>
''');

    // Missing attributes cannot be expressed using HTML patterns, so check directly.
    final notRequirable1 = owner().debugSemanticsTree![1]!.element;
    expect(notRequirable1.getAttribute('aria-required'), isNull);

    // Flip the values and check that that ARIA attribute is updated.
    tester.updateNode(
      id: 2,
      flags: const ui.SemanticsFlags(isRequired: ui.Tristate.isTrue),
      rect: const ui.Rect.fromLTRB(0, 20, 100, 40),
    );
    tester.updateNode(
      id: 3,
      flags: const ui.SemanticsFlags(isRequired: ui.Tristate.isFalse),
      rect: const ui.Rect.fromLTRB(0, 40, 100, 60),
    );
    tester.apply();

    expectSemanticsTree(owner(), '''
<sem>
    <sem></sem>
    <sem aria-required="true"></sem>
    <sem aria-required="false"></sem>
</sem>
''');

    // Remove the ARIA attribute
    tester.updateNode(
      id: 2,
      flags: ui.SemanticsFlags.none,
      rect: const ui.Rect.fromLTRB(0, 20, 100, 40),
    );
    tester.updateNode(
      id: 3,
      flags: ui.SemanticsFlags.none,
      rect: const ui.Rect.fromLTRB(0, 40, 100, 60),
    );
    tester.apply();

    expectSemanticsTree(owner(), '''
<sem>
    <sem></sem>
    <sem></sem>
    <sem></sem>
</sem>
''');

    // Missing attributes cannot be expressed using HTML patterns, so check directly.
    final notRequirable2 = owner().debugSemanticsTree![2]!.element;
    expect(notRequirable2.getAttribute('aria-required'), isNull);

    final notRequirable3 = owner().debugSemanticsTree![3]!.element;
    expect(notRequirable3.getAttribute('aria-required'), isNull);

    semantics().semanticsEnabled = false;
  });


120345678",
        "p",
        "123 999",
        [mentsuType.shuntsu, mentsuType.koutsu]
      );
      expect(toCode(handTiles, fuluTiles)).toEqual("123405678pf123p 999p");
    });
    test("correct parse zi", () => {
      const { handTiles, fuluTiles } = getTileByCodeAndAcronym(
        "z",
        "12234566",
        "z",
        "111 7777",
        [1, 3]
      );
      expect(toCode(handTiles, fuluTiles)).toEqual("12234566zf111z 7777z");
    });
    test("only hand", () => {
      const { handTiles } = getTileByCodeAndAcronym("z", "12234566", "m");
      expect(toCode(handTiles)).toEqual("12234566z");
    });
    it("correct parse ankan", () => {
      const code = "11mf2222M 2222P 2222S 2222Z";
      const hand = Hand.fromCode(code);
      expect(toCode(hand.handTiles, hand.fuluTiles)).toEqual(code);
    });
  });
});
/**
* @category controls
* @component radio
*/
export function csRadio() {
  let directive = {
    scope: {
      name: '@',
      value: '=',
      label: '=',
      radioModel: '=ngModel',
      id: '=',
      isDisabled: '=isdisabled',
      horizontal: '=',
    },
    restrict: 'E', // E = Element, A = Attribute, C = Class, M = Comment
    template: `

        <input class="cui-input cui-radio__input" type="radio" ng-model="radioModel" ng-value="value" name="{{name}}" id="{{id}}" ng-disabled="{{isDisabled}}">

          {{label}}

    `,
    // replace: true,
  };

  return directive;
}
/*
* @name Radios
* @description
* @category controls
* @component radios
* @section basic
*
* @param cs-input-label
* @param ng-model
*
* @html

  <form name="myRadioForm">

      <input
        cs-input
        type="radio"
        ng-model="individualRadio.model"
        id="individualRadio1"
        name="individualRadio"
        value="1"
        cs-input-label="Radio Example 1">
      <input
        cs-input
        type="radio"
        ng-model="individualRadio.model"
        id="individualRadio2"
        name="individualRadio"
        value="2"
        cs-input-label="Radio Example 2">
      <input
        cs-input
        type="radio"
        ng-model="individualRadio.model"
        id="individualRadio3"
        name="individualRadio"
        value="3"
        cs-input-label="Radio Example 3"
        cs-input-help-text="This is help text for the cs-input radio">
      <input
        cs-input
        type="radio"
        ng-model="individualRadio.model"
        id="individualRadio4"
        name="individualRadio"
        value="4"
        cs-input-label="Radio Example 4"
        cs-input-help-text="This is help text for the cs-input radio">

  </form>
  <cs-card class="large">

Directive Radio Example has the following value:


\
  }                                                                          \
  /* Set */                                                                  \
  if (IN##e==el_i8) { for (usz i=m; i--;    ) tab[((i8 *)ip)[i]]=SET; }      \
  else              { for (usz i=m; i--;    ) tab[((i16*)ip)[i]]=SET; }      \
  decG(IN);                                                                  \
  /* Lookup */                                                               \
  if (FOR##e==el_bit) {                                                      \
    r = bit_sel(FOR, m_i32(tab[0]), m_i32(tab[1]));                          \
  } else {                                                                   \
    TY* rp; r = m_##TY##arrc(&rp, FOR);                                      \
    if (FOR##e==el_i8){ for (usz i=0; i<n; i++) rp[i]=tab[((i8 *)fp)[i]]; }  \
    else              { for (usz i=0; i<n; i++) rp[i]=tab[((i16*)fp)[i]]; }  \
    decG(FOR);                                                               \
  }                                                                          \
  TFREE(tab0);

typedef struct { B n, p; } B2;
static NOINLINE B toIntCell(B x, ux csz0, ur co) {
  assert(TI(x,elType)!=el_B);
  usz ria = shProd(SH(x), 0, co);
  ShArr* rsh ONLY_GCC(=0);
  if (co>1) { rsh=m_shArr(co); shcpy(rsh->a,SH(x),co); }
  B r0 = widenBitArr(x, co);
  usz csz = shProd(SH(r0),co,RNK(r0)) << elwBitLog(TI(r0,elType));
  u8 t;
  if      (csz==8)  t = t_i8slice;
  else if (csz==16) t = t_i16slice;
  else if (csz==32) t = t_i32slice;
  else if (csz==64) t = t_f64slice;
  else UD;
  TySlice* r = m_arr(sizeof(TySlice), t, ria);
  r->p = a(r0);
  r->a = tyany_ptr(r0);
  if (co>=1) arr_shSetUO((Arr*)r, co, rsh);
  else arr_shVec((Arr*)r);
  return taga(r);
}
static NOINLINE B cpyToElLog(B x, u8 xe, u8 lb) {
  switch(lb) { default: UD;
    case 0: return taga(cpyBitArr(x));
    case 3: return taga(elNum(xe)? cpyI8Arr(x) : cpyC8Arr(x));
    case 4: return taga(elNum(xe)? cpyI16Arr(x) : cpyC16Arr(x));
    case 5: return taga(elNum(xe)? cpyI32Arr(x) : cpyC32Arr(x));
    case 6: return taga(cpyF64Arr(x));
  }
}
static NOINLINE B2 splitCells(B n, B p, u8 mode) { // 0:∊ 1:⊐ 2:⊒
  #define SYMB (mode==0? "∊" : mode==1? "⊐" : "⊒")
  #define ARG_N (mode? "𝕩" : "𝕨")
  #define ARG_P (mode? "𝕨" : "𝕩")
  if (isAtm(p) || RNK(p)==0) thrF("𝕨%U𝕩: %U cannot have rank 0", SYMB, ARG_P);
  ur pr = RNK(p);
  if (isAtm(n)) n = m_unit(n);
  ur nr = RNK(n);
  if (nr < pr-1) thrF("𝕨%U𝕩: Rank of %U must be at least the cell rank of %U (%H ≡ ≢𝕨, %H ≡ ≢𝕩)", SYMB, ARG_N, ARG_P, mode?p:n, mode?n:p);
  ur pcr = pr-1;
  ur nco = nr-pcr;
  if (nco>0 && eqShPart(SH(n)+nco, SH(p)+1, pcr)) {
    u8 ne = TI(n,elType);
    u8 pe = TI(p,elType);
    if (ne<el_B && pe<el_B && elNum(ne)==elNum(pe)) {
      usz csz = arr_csz(p);
      u8 neb = elwBitLog(ne);
      u8 peb = elwBitLog(pe);
      u8 meb = neb>peb? neb : peb;
      ux rb = csz<<meb;
      if (rb!=0 && rb<=62) {
        if (n.u == p.u) { decG(p); n=toIntCell(n,rb,1); return (B2){.n=n, .p=incG(n)}; }
        if      (neb!=meb) n = cpyToElLog(n, ne, meb);
        else if (peb!=meb) p = cpyToElLog(p, pe, meb);
        return (B2){.n=toIntCell(n,rb,nco), .p=toIntCell(p,rb,1)};
      }
    }
  }
  return (B2){.n=toKCells(n,nco), .p=toCells(p)};

  #undef ARG_N
  #undef ARG_P
  #undef SYMB
}

static B reduceI32Width(B r, usz count) {
  return count<=I8_MAX? taga(cpyI8Arr(r)) : count<=I16_MAX? taga(cpyI16Arr(r)) : r;
}

static NOINLINE usz indexOfOne(B l, B e) {
    void* lp = tyany_ptr(l);
    usz wia = IA(l);
    u8 v8; u16 v16; u32 v32; f64 v64f;
    switch(TI(l,elType)) { default: UD;
      case el_bit: if (!q_bit(e)) return wia;  return bit_find(lp,wia,o2bG(e));
      case el_i8:  if (!q_i8 (e)) return wia;  v8  = ( u8)( i8)o2iG(e); goto chk8;
      case el_i16: if (!q_i16(e)) return wia;  v16 = (u16)(i16)o2iG(e); goto chk16;
      case el_i32: if (!q_i32(e)) return wia;  v32 = (u32)(i32)o2iG(e); goto chk32;
      case el_f64: if (!q_f64(e)) return wia;  v64f=           o2fG(e); goto chk64f;
      case el_c8:  if (!q_c8 (e)) return wia;  v8  = ( u8)     o2cG(e); goto chk8;
      case el_c16: if (!q_c16(e)) return wia;  v16 = (u16)     o2cG(e); goto chk16;
      case el_c32: if (!q_c32(e)) return wia;  v32 = (u32)     o2cG(e); goto chk32;
      case el_B: {
        if (isF64(e) && sizeof(B)==sizeof(f64)) { // TODO could also have character atom case
          if ((lp = arr_bptr(l)) == NULL) goto gen


()
  ..antialias = (json['antialias'] as num?)?.toInt()
  ..background = json['background'] == null
      ? null
      : VColor.fromJson(json['background'] as Map<String, dynamic>)
  ..clipping = json['clipping'] == null
      ? null
      : VRectangle.fromJson(json['clipping'] as Map<String, dynamic>)
  ..fillRule = (json['fillRule'] as num?)?.toInt()
  ..foreground = json['foreground'] == null
      ? null
      : VColor.fromJson(json['foreground'] as Map<String, dynamic>)
  ..interpolation = (json['interpolation'] as num?)?.toInt()
  ..lineCap = (json['lineCap'] as num?)?.toInt()
  ..lineDash = (json['lineDash'] as List<dynamic>?)
      ?.map((e) => (e as num).toInt())
      .toList()
  ..lineJoin = (json['lineJoin'] as num?)?.toInt()
  ..lineStyle = (json['lineStyle'] as num?)?.toInt()
  ..lineWidth = (json['lineWidth'] as num?)?.toInt()
  ..textAntialias = (json['textAntialias'] as num?)?.toInt()
  ..xORMode = json['xORMode'] as bool?;

Map<String, dynamic> _$VGCToJson(VGC instance) => <String, dynamic>{
      'swt': instance.swt,
      'id': instance.id,
      'style': instance.style,
      'advanced': instance.advanced,
      'alpha': instance.alpha,
      'antialias': instance.antialias,
      'background': instance.background,
      'clipping': instance.clipping,
      'fillRule': instance.fillRule,
      'foreground': instance.foreground,
      'interpolation': instance.interpolation,
      'lineCap': instance.lineCap,
      'lineDash': instance.lineDash,
      'lineJoin': instance.lineJoin,
      'lineStyle': instance.lineStyle,
      'lineWidth': instance.lineWidth,
      'textAntialias': instance.textAntialias,
      'xORMode': instance.xORMode,
    };

VGCCopyArea _$VGCCopyAreaFromJson(Map<String, dynamic> json) => VGCCopyArea(
      srcX: (json['srcX'] as num?)?.toInt() ?? 0,
      srcY: (json['srcY'] as num?)?.toInt() ?? 0,
      width: (json['width'] as num?)?.toInt() ?? 0,
      height: (json['height'] as num?)?.toInt() ?? 0,
      destX: (json['destX'] as num?)?.toInt() ?? 0,
      destY: (json['destY'] as num?)?.toInt() ?? 0,
      paint: json['paint'] as bool? ?? false,
    );

Map<String, dynamic> _$VGCCopyAreaToJson(VGCCopyArea instance) =>
    <String, dynamic>{
      'srcX': instance.srcX,
      'srcY': instance.srcY,
      'width': instance.width,
      'height': instance.height,
      'destX': instance.destX,
      'destY': instance.destY,
      'paint': instance.paint,
    };

VGCCopyAreaImage _$VGCCopyAreaImageFromJson(Map<String, dynamic> json) =>
    VGCCopyAreaImage(
      x: (json['x'] as num?)?.toInt() ?? 0,
      y: (json['y'] as num?)?.toInt() ?? 0,
    )..image = json['image'] == null
        ? null
        : VImage.fromJson(json['image'] as Map<String, dynamic>);

Map<String, dy


n(cmds) != len(cases) {
		t.Errorf("ExpectedCommands: %d ActualCommands: '%d'", len(cases), len(cmds))
	}

	for i, c := range cases {
		if c.use != cmds[i].Use {
			t.Errorf("ExpectedCommand: '%s' ActualCommand: '%s'", c.use, cmds[i].Use)
		}
	}

}
/*
Copyright 2019 The OpenEBS Authors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package config

import (
	"fmt"
	"io"
	"net"
	"os"
	"path/filepath"
	"sort"
	"strconv"
	"strings"

	stringer "github.com/openebs/maya/pkg/apis/stringer/v1alpha1"
	"github.com/pkg/errors"
)

// MayaConfig is the configuration for Maya server.
type MayaConfig struct {
	// Region is the region this Maya server is supposed to deal in.
	// Defaults to global.
	Region string `mapstructure:"region" json:"region"`

	// Datacenter is the datacenter this Maya server is supposed to deal in.
	// Defaults to dc1
	Datacenter string `mapstructure:"datacenter" json:"datacenter"`

	// NodeName is the name we register as. Defaults to hostname.
	NodeName string `mapstructure:"name" json:"name"`

	// DataDir is the directory to store Maya server's state in
	DataDir string `mapstructure:"data_dir" json:"data_dir"`

	// LogLevel is the level of the logs to putout
	LogLevel string `mapstructure:"log_level" json:"log_level"`

	// BindAddr is the address on which maya's services will
	// be bound. If not specified, this defaults to 127.0.0.1.
	BindAddr string `mapstructure:"bind_addr" json:"bind_addr"`

	// EnableDebug is used to enable debugging HTTP endpoints
	EnableDebug bool `mapstructure:"enable_debug" json:"enable_debug"`

	// Mayaserver can make use of various providers e.g. Nomad,
	// k8s etc
	ServiceProvider string `mapstructure:"service_provider" json:"service_provider"`

	// Ports is used to control the network ports we bind to.
	Ports *Ports `mapstructure:"ports" json:"ports"`

	// Addresses is used to override the network addresses we bind to.
	//
	// Use normalizedAddrs if you need the host+port to bind to.
	Addresses *Addresses `mapstructure:"addresses" json:"addresses"`

	// NormalizedAddr is set to the Address+Port by normalizeAddrs()
	NormalizedAddrs *Addresses

	// AdvertiseAddrs is used to control the addresses we advertise.
	AdvertiseAddrs *AdvertiseAddrs `mapstructure:"advertise" json:"advertise"`

	// LeaveOnInt is used to gracefully leave on the interrupt signal
	LeaveOnInt bool `mapstructure:"leave_on_interrupt" json:"leave_on_interrupt"`

	// LeaveOnTerm is used to gracefully leave on the terminate signal
	LeaveOnTerm bool `mapstructure:"leave_on_terminate" json:"leave_on_terminate"`

	// EnableSyslog is used to enable sending logs to syslog
	EnableSyslog bool `mapstructure:"enable_syslog" json:"enable_syslog"`

	// SyslogFacility is used to control the syslog facility used.
	SyslogFacility string `mapstructure:"syslog_facility" json:"syslog_facility"`

	// Version information is set at compilation time
	Revision


 in GroupID.registeredGroupIDs) {
                let item = GroupID.registeredGroupIDs[key]
                if (item.classID === groupID.classID && item.classInstanceID === groupID.classInstanceID) {
                    if (!item.duplicatable || !groupID.duplicatable) {
                        return item;
                    } else {
                        return undefined;
                    }
                }
            }
            GroupID.registeredGroupIDs.push(groupID);
        } else if (AmpException.areExceptionsEnabled()) {
            throw new BadArgumentException('Null _element argument was passed into registerGroupIDIfNoCollision().');
        }
        return undefined;
    }

    public static unregisterGroupID(groupID: GroupID) {
        if (groupID != null) {
            throw new Error('implement unregisterGroupID')
        } else if (AmpException.areExceptionsEnabled()) {
            throw new BadArgumentException("Null _element argument was passed into unregisterGroupID().");
        }
    }

    public static unregisterAllGroupIDs() {
        GroupID.registeredGroupIDs = [];
    }

    public static enableCollisionProtection() {
        this.collisionProtectionEnabled = true;
    }

    public static disableCollisionProtection() {
        this.collisionProtectionEnabled = false;
        GroupID.unregisterAllGroupIDs()
    }

    public static enableStrongCollisionProtection() {
        this.strongCollisionProtectionEnabled = true;
    }

    public static disableStrongCollisionProtection() {
        this.strongCollisionProtectionEnabled = false;
    }
}import { Capture, Template } from '../../assertions';
import { App, Aws, CfnElement, CfnResource, Lazy, Stack } from '../../core';
import {
  IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME,
} from '../../cx-api';
import { AnyPrincipal, ArnPrincipal, Grant, IRole, Policy, PolicyStatement, Role } from '../lib';

/* eslint-disable quote-props */

const roleAccount = '123456789012';
const notRoleAccount = '012345678901';

describe('IAM Role.fromRoleArn', () => {
  let app: App;

  beforeEach(() => {
    app = new App();
  });

  let roleStack: Stack;
  let importedRole: IRole;

  describe('imported with a static ARN', () => {
    const roleName = 'MyRole';

    describe('into an env-agnostic stack', () => {
      beforeEach(() => {
        roleStack = new Stack(app, 'RoleStack');
        importedRole = Role.fromRoleArn(roleStack, 'ImportedRole',
          `arn:aws:iam::${roleAccount}:role/${roleName}`);
      });

      test('correctly parses the imported role ARN', () => {
        expect(importedRole.roleArn).toBe(`arn:aws:iam::${roleAccount}:role/${roleName}`);
      });

      test('correctly parses the imported role name', () => {
        expect(importedRole.roleName).toBe(roleName);
      });

      describe('then adding a PolicyStatement to it', () => {
        let addToPolicyResult: boolean;

        beforeEach(() => {
          addToPolicyResult = importedRole.addToPolicy(somePolicyStatement());
        });

        test('returns true', () => {
          expect(addToPolicyResult).toBe(true);
        });

        test("generates a default Policy resource pointing at the imported role's physical name", () => {
          assertRoleHasDefaultPolicy(roleStack, roleName);
        });
      });

      describe('future flag: @aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName', () => {
        test('the same role imported in different stacks has different default policy names', () => {
          const appWithFeatureFlag = new App({ context: { [IAM_IMPORTED_ROLE_STACK_SAFE_DEFAULT_POLICY_NAME]: true } });
          const roleStack1 = new Stack(appWithFeatureFlag, 'RoleStack1');
          const importedRoleInStack1 = Role.fromRoleArn(roleStack1, 'Imported


block_on(work)?;
        Ok(out.map(|out| Source::bytes(name, out)))
    }
}

/// Load objects from an HTTP url.
pub fn objects_from_url(config: ObjectsConfig, url: &Url) -> Result<Box<dyn Objects>> {
    let client = Client::builder().build(HttpsConnector::new());

    let http_objects = HttpObjects {
        url: url.clone(),
        client,
    };

    let missing_cache_time = config
        .missing_cache_time
        .unwrap_or_else(|| Duration::new(60, 0));

    return Ok(Box::new(CachedObjects::new(
        config.cache_home,
        missing_cache_time,
        http_objects,
    )));
}
<reponame>iamdb/musicbrainz_rs
use musicbrainz_rs::entity::release_group::*;
use musicbrainz_rs::prelude::*;

#[test]
fn should_get_release_group_artists() {
    let harvest = ReleaseGroup::fetch()
        .id("b25419cf-71bf-3a54-8cd4-2161c61056a0")
        .with_artists()
        .execute();

    assert!(harvest
        .unwrap()
        .artist_credit
        .unwrap()
        .iter()
        .any(|credit| credit.artist.name == "<NAME>"));
}

#[test]
fn should_get_release_group_releases() {
    let harvest = ReleaseGroup::fetch()
        .id("b25419cf-71bf-3a54-8cd4-2161c61056a0")
        .with_releases()
        .execute();

    assert!(harvest
        .unwrap()
        .releases
        .unwrap()
        .iter()
        .any(|release| release.title == "Harvest" && release.country == Some("CA".to_string())));
}

#[test]
fn should_get_release_group_tags() {
    let in_utero = ReleaseGroup::fetch()
        .id("2a0981fb-9593-3019-864b-ce934d97a16e")
        .with_tags()
        .execute()
        .unwrap();

    assert!(in_utero
        .tags
        .unwrap()
        .iter()
        .any(|tag| tag.name == "rock_grunge"));
}

#[test]
fn should_get_release_group_aliases() {
    let in_utero = ReleaseGroup::fetch()
        .id("2a0981fb-9593-3019-864b-ce934d97a16e")
        .with_aliases()
        .execute()
        .unwrap();

    assert!(in_utero.aliases.is_some());
}

#[test]
fn should_get_release_group_rating() {
    let in_utero = ReleaseGroup::fetch()
        .id("2a0981fb-9593-3019-864b-ce934d97a16e")
        .with_ratings()
        .execute()
        .unwrap();

    assert!(in_utero.rating.is_some());
}

#[test]
fn should_get_release_group_genres() {
    let in_utero = ReleaseGroup::fetch()
        .id("2a0981fb-9593-3019-864b-ce934d97a16e")
        .with_genres()
        .execute()
        .unwrap();

    assert!(in_utero.genres.is_some());
}

#[test]
fn should_get_release_group_annotation() {
    let dirt = ReleaseGroup::fetch()
        .id("92d8f0c4-8c64-3bee-bee1-812a70e77efa")
        .with_annotations()
        .execute()
        .unwrap();

    assert!(dirt.annotation.is_some());
}

// FIXME: This is currently panicking with:
// thread 'main' panicked at 'called `Result::unwrap()` on an `E