}
    $prev-key: $key;
    $prev-num: $num;
  }
}

// Starts at zero
// Another grid mixin that ensures the min-width of the lowest breakpoint starts at 0.
@mixin _assert-starts-at-zero($map) {
  $values: map-values($map);
  $first-value: nth($values, 1);
  @if $first-value != 0 {
    @warn "First breakpoint in `$grid-breakpoints` must start at 0, but starts at #{$first-value}.";
  }
}

// Replace `$search` with `$replace` in `$string`
// Used on our SVG icon backgrounds for custom forms.
//
// @author Hugo Giraudel
// @param {String} $string - Initial string
// @param {String} $search - Substring to replace
// @param {String} $replace ('') - New value
// @return {String} - Updated string
@function str-replace($string, $search, $replace: "") {
  $index: str-index($string, $search);

  @if $index {
    @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace);
  }

  @return $string;
}

// Color contrast
@function color-yiq($color, $dark: $yiq-text-dark, $light: $yiq-text-light) {
  $r: red($color);
  $g: green($color);
  $b: blue($color);

  $yiq: (($r * 299) + ($g * 587) + ($b * 114)) / 1000;

  @if ($yiq >= $yiq-contrasted-threshold) {
    @return $dark;
  } @else {
    @return $light;
  }
}

// Retrieve color Sass maps
@function color($key: "blue") {
  @return map-get($colors, $key);
}

@function theme-color($key: "primary") {
  @return map-get($theme-colors, $key);
}

@function gray($key: "100") {
  @return map-get($grays, $key);
}

// Request a theme color level
@function theme-color-level($color-name: "primary", $level: 0) {
  $color: theme-color($color-name);
  $color-base: if($level > 0, $black, $white);
  $level: abs($level);

  @return mix($color-base, $color, $level * $theme-color-interval);
}
:root {
  // Custom variable values only support SassScript inside `#{}`.
  @each $color, $value in $colors {
    --#{$color}: #{$value};
  }

  @each $color, $value in $theme-colors {
    --#{$color}: #{$value};
  }

  @each $bp, $value in $grid-breakpoints {
    --breakpoint-#{$bp}: #{$value};
  }

  // Use `inspect` for lists so that quoted items keep the quotes.
  // See https://github.com/sass/sass/issues/2383#issuecomment-336349172
  --font-family-sans-serif: #{inspect($font-family-sans-serif)};
  --font-family-monospace: #{inspect($font-family-monospace)};
}
// stylelint-disable selector-no-qualifying-type

//
// Base styles
//

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap; // For form validation feedback
  align-items: stretch;
  width: 100%;

  > .form-control,
  > .form-control-plaintext,
  > .custom-select,
  > .custom-file {
    position: relative; // For focus state's z-index
    flex: 1 1 auto;
    // Add width 1% and flex-basis auto to ensure that button will not wrap out
    // the column. Applies to IE Edge+ and Firefox. Chrome does not require this.
    wid


read used to have its own vfork implementation that differed
   from libc's only in having a pointless micro-optimization.  There
   is no longer any use to having a separate copy in libpthread, but
   the historical ABI requires it.  For static linking, there is no
   need to provide anything here--the libc version will be linked in.
   For shared library ABI compatibility, there must be __vfork and
   vfork symbols in libpthread.so.  */

#if (SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_20) \
     || SHLIB_COMPAT (libpthread, GLIBC_2_1_2, GLIBC_2_20))

#include <vfork.S>

#endif

#if SHLIB_COMPAT (libpthread, GLIBC_2_0, GLIBC_2_20)
compat_symbol (libpthread, __libc_vfork, vfork, GLIBC_2_0);
#endif

#if SHLIB_COMPAT (libpthread, GLIBC_2_1_2, GLIBC_2_20)
strong_alias (__libc_vfork, __vfork_compat)
compat_symbol (libpthread, __vfork_compat, __vfork, GLIBC_2_1_2);
#endif


L05
        ret
        .L10:
        mov     al,UNIT_LOCATION_X[di]
        mov     UNIT_DEST_X[si],al
        mov     al,UNIT_LOCATION_Y[di]
        mov     UNIT_DEST_Y[si],al
        call    CHECK_DISTANCE_TO_DESTINATION
        mov     bl,[TEMP_B]             ; get search range
        cmp     [TEMP_X],bl             ; distance
        ja      .L06
        cmp     [TEMP_Y],bl             ; distance
        ja      .L06
        mov     byte UNIT_GEN_B[si],10  ; reset attack delay
        mov     ax,di
        mov     [TEMP_A],al
        ; find new projectile unit number
        mov     di,196
        .L15:
        mov     al,UNIT_TYPE[di]
        cmp     al,0
        je      .L20
        inc     di
        cmp     di,212
        jne     .L15
        ret                             ; failure to find free projectile unit
        .L20:
        ; set information for projectile
        mov     byte UNIT_TYPE[di],28   ; projectile unit type
        mov     byte UNIT_AI[di],11     ; projectile ai
        mov     byte UNIT_GEN_A[di],10  ; damage
        mov     al,[TEMP_A]
        mov     UNIT_GEN_B[di],al       ; fire at unit#
        mov     byte UNIT_TILE[di],0b7h ; blue projectile tile
        mov     byte UNIT_TIMER[di],2
        mov     al,UNIT_LOCATION_X[si]
        mov     UNIT_LOCATION_X[di],al
        mov     al,UNIT_LOCATION_Y[si]
        mov     UNIT_LOCATION_Y[di],al
        call    CHECK_WINDOW_FOR_ACTION_S
        cmp     byte [WINDOW_ACTION],1
        jne     .L21
        mov     al,04                   ; shooting sound
        mov     ah,128                  ; priority
        call    m_playSFX               ; play sound
        .L21:
        ret

AI_PROT_CLONE:
        ; first check if pyramid has been destroyed, if so rebuild.
        mov     byte UNIT_TIMER[si],255
        mov     si,[UNIT_SCAN]
        mov     al,UNIT_LOCATION_X[si]
        mov     ah,UNIT_LOCATION_Y[si]
        add     ah,3                    ; Locate 3 tiles SOUTH OF CLONE FACILITY
        call    AI_CHECK_PYRAMID
        dec     byte UNIT_GEN_B[si]
        cmp     byte UNIT_GEN_B[si],0
        jne     .L2
        mov     byte UNIT_GEN_B[si],2   ; delay for creating more clones.
        mov     byte [TEMP_A],5         ; unit type
        mov     byte [TEMP_B],40        ; health
        mov     byte [TEMP_C],36        ; AI type
        call    SPAWN_WALKER1
        .L2:
        ret

AI_PROT_ACADEMY:
        ; first check if pyramid has been destroyed, if so rebuild.
        mov     byte UNIT_TIMER[si],255
        mov     si,[UNIT_SCAN]
        mov     al,UNIT_LOCATION_X[si]
        mov     ah,UNIT_LOCATION_Y[si]
        sub     al,3                    ; Locate 3 tiles WEST OF THE ACADEMY
        call    AI_CHECK_PYRAMID
        cmp     byte [GAME_DIFF],2      ; if playing in hard mode, skip the delay!
        je      .L1
        dec     byte UNIT_GEN_B[si]
        cmp     byte UNIT_GEN_B[si],0
        jne     .L2
        mov     byte UNIT_GEN_B[si],2   ; delay for creating more clones.
        .L1:
        mov     byte [TEMP_A],6         ; unit type
        mov     byte [TEMP_B],60        ; health
        mov     b


_r15_present, 1));
      HANDLE_CODE(bref.unpack(c.delta_f_subslot_spucch_rm_format4_r15_present, 1));
      HANDLE_CODE(bref.unpack(c.delta_f_subslot_spucch_tbcc_format4_r15_present, 1));
      if (c.delta_f_slot_spucch_format1_r15_present) {
        HANDLE_CODE(c.delta_f_slot_spucch_format1_r15.unpack(bref));
      }
      if (c.delta_f_slot_spucch_format1a_r15_present) {
        HANDLE_CODE(c.delta_f_slot_spucch_format1a_r15.unpack(bref));
      }
      if (c.delta_f_slot_spucch_format1b_r15_present) {
        HANDLE_CODE(c.delta_f_slot_spucch_format1b_r15.unpack(bref));
      }
      if (c.delta_f_slot_spucch_format3_r15_present) {
        HANDLE_CODE(c.delta_f_slot_spucch_format3_r15.unpack(bref));
      }
      if (c.delta_f_slot_spucch_rm_format4_r15_present) {
        HANDLE_CODE(c.delta_f_slot_spucch_rm_format4_r15.unpack(bref));
      }
      if (c.delta_f_slot_spucch_tbcc_format4_r15_present) {
        HANDLE_CODE(c.delta_f_slot_spucch_tbcc_format4_r15.unpack(bref));
      }
      if (c.delta_f_subslot_spucch_format1and1a_r15_present) {
        HANDLE_CODE(c.delta_f_subslot_spucch_format1and1a_r15.unpack(bref));
      }
      if (c.delta_f_subslot_spucch_format1b_r15_present) {
        HANDLE_CODE(c.delta_f_subslot_spucch_format1b_r15.unpack(bref));
      }
      if (c.delta_f_subslot_spucch_rm_format4_r15_present) {
        HANDLE_CODE(c.delta_f_subslot_spucch_rm_format4_r15.unpack(bref));
      }
      if (c.delta_f_subslot_spucch_tbcc_format4_r15_present) {
        HANDLE_CODE(c.delta_f_subslot_spucch_tbcc_format4_r15.unpack(bref));
      }
      break;
    default:
      log_invalid_choice_id(type_, "delta_flist_spucch_r15_c");
      return SRSASN_ERROR_DECODE_FAIL;
  }
  return SRSASN_SUCCESS;
}
bool delta_flist_spucch_r15_c::operator==(const delta_flist_spucch_r15_c& other) const
{
  return type() == other.type() and c.ext == other.c.ext and
         c.delta_f_slot_spucch_format1_r15_present == other.c.delta_f_slot_spucch_format1_r15_present and
         (not c.delta_f_slot_spucch_format1_r15_present or
          c.delta_f_slot_spucch_format1_r15 == other.c.delta_f_slot_spucch_format1_r15) and
         c.delta_f_slot_spucch_format1a_r15_present == other.c.delta_f_slot_spucch_format1a_r15_present and
         (not c.delta_f_


ion: 0,
      required: true,
      thisGuild: true
    }
  },
  cooldown: 20000,
  description: {
    "en-us": `Putting in office the permission to be able to approve or disapprove memes sent in the memes channel.`,
    "pt-br": `Seta no cargo a permissão de poder aprovar ou reprovar memes enviados no canal de memes.`
  },
  example: `${client.defaultPrefix}setmememoderatorrole @meme-mod`,
  permissions: {
    member: new Permissions('ADMINISTRATOR')
  },
  releases_notes: {
    '1.0': {
      created_timestamp: 1611355955389,
      name: 'Initial'
    }
  },
  type: 'configuration',
  usage: `${client.defaultPrefix}setmememoderatorrole <role>`
};

const run: CommandRun = ({ client, message, guildLang }, args) => {
  const memeRole = args!.memeModeratorRole as Role;

  Guild.updateOne(
    { guild_id: message.guild!.id },
    { meme_role: memeRole.id },
    { new: true, useFindAndModify: false }
  ).then(() => {
    sender(message, t044(memeRole, guildLang), 'cd').catch(() => message.react('✅').catch(() => {}));
  }, (e) => {
    sender(message, t045(guildLang), 'cd').catch(() => message.react('❌').catch(() => {}));

    throw new EError(t046(), {
      error: e,
      message,
      memeRole
    }, { important: true, client });
  });
};

export const command = new Command(config, run);import {CatalogItemFragment} from "../../generated/types";
import React, {useState} from "react";
import {useFormContext, ValidationOptions} from "react-hook-form";
import {SelectionItem, SelectionState} from "./types";

export default <T extends CatalogItemFragment>({name, defaultValues, validationOptions}: { name: string, defaultValues: T[], validationOptions?: ValidationOptions }) => {
    const {register, unregister, setValue} = useFormContext();
    const initialState: SelectionItem<T>[] = (defaultValues || []).map(value => ({state: SelectionState.PERSISTENT, ...value}));
    const [selection, setSelection] = useState(initialState);

    React.useEffect(() => {
        register(name, validationOptions);
        return () => unregister(name);
    }, [register, unregister, name, validationOptions]);

    const setFormValue = (selection: SelectionItem<T>[]) => {
        const value = selection.filter(x => x.state !== SelectionState.REMOVED).map(x => x.id).join(",");
        setValue(name, value);
    }

    const handleOnAdd = (item: T) => {
        const newState = [...selection, {state: SelectionState.NEW, ...item}];
        setSelection(newState);
        setFormValue(newState);
    };

    const handleOnRemove = ({id, state}: { id: string, state: SelectionState }) => {
        let newState;
        switch (state) {
            case SelectionState.NEW:
                newState = selection.filter(item => item.id !== id);
                break;
            case SelectionState.PERSISTENT:
                newState = selection.map(item => item.id === id ? ({...item, state: SelectionState.REMOVED}) : item);
                break;
            case SelectionState.REMOVED:
                newState = selection.map(item => item.id === id ? ({...item, state: SelectionState.PERSISTENT}) : item);
                break;
        }
        setSelection(newState);
        setFormValue(newState);
    }

    return {selection, add: handleOnAdd, remove: handle


60,
		voice_key = 10216,
		feeling5 = "缺了我總覺得渾身不自在？放心吧，我會為你盡心護航的，所以，你也要盡心陪著我才行~",
		main = "接受檢閱，就應該把最好的一面展示給大家看。這是我的準則~|一直以來都頻繁地巡洋四海，在港區多待上一段時間都是奢望…不過沒關係，我喜歡讓自己忙碌起來~|要我在回港的時候帶點禮物給你？指揮官得先在港區好好表現才行~",
		voice_key_2 = -1,
		profile = "我是奧馬哈級的輕巡洋艦曼非斯。生涯裡迎接過一些重要的賓客，也曾作為旗艦被徵用。多說無用，想要更好地了解我，就好好跟在後頭，看我的精彩表現吧~",
		mission_complete = "抽空去看看吧，這是你應得的獎勵。",
		headtouch = "",
		feeling2 = "接下來我會處理一些文書並審核一些訓練計劃，指揮官最好也幫忙看下其中的細節，可別拖了我後腿喲~",
		feeling4 = "靠得這麼近，是想感受一下我髮稍的氣味嗎？嘻嘻，怎麼樣，有沒有海風的味道？",
		unlock = "哦？你就是這裡的指揮官嗎？放心吧，我會為你護航的。不過，你得要先達到我的標準才行呢~",
		battle = "上吧！大家都要發揮出最好的水準！",
		login = "指揮官，總算來了。那就出發吧~快跟上我的腳步！",
		vote = "",
		detail = "如果想繼續陪著我，那就好好審視我的全部吧~",
		couple_encourage = {
			{
				{
					10201,
					10202,
					10211
				},
				1,
				"好不容易能一起出戰。跟我前進吧~",
				0
			}
		}
	},
	[102180] = {
		touch = "嗯？你也喜歡糖分嗎？嘻嘻，求我的話，說不定我會分你一點哦？",
		feeling3 = "就這樣多陪我一下不也挺好嘛。好好看著我，別發呆！",
		upgrade = "感覺真棒～",
		expedition = "委託組回來了～不知道有沒有帶新品的冰淇淋什麼的回來呢",
		win_mvp = "嘻嘻，MVP也不是那麼困難的事情嘛～",
		home = "終於回來了~要嚐嚐我手上的新式甜筒嗎？",
		mission = "還有


*/
    readonly data: ArrayBuffer;

    /**
     * The media type of the Data URL.
     *
     * Example: image/png, image/jpeg, etc.
     */
    readonly type: string;

}

/**
 * Represents an data: URL as a string.
 */
export namespace DataURLs {

    export function decode(dataURL: DataURL): DecodedDataURL {

        try {

            // data:[<media type>][;base64],<data>

            // example:
            //
            //   data:image/png;base64,iVBOR

            // convert base64 to raw binary data held in a string
            // doesn't handle URLEncoded DataURIs - see SO answer #6850276 for code
            // that does this

            const dataPortion = parseDataPortion(dataURL);

            const byteString = Base64.atob(dataPortion);

            // separate out the mime component
            const type = dataURL.substring(dataURL.indexOf(":") + 1, dataURL.indexOf(";"));

            // write the bytes of the string to an ArrayBuffer
            const ab = new ArrayBuffer(byteString.length);

            // create a view into the buffer
            const ia = new Uint8Array(ab);

            // set the bytes of the buffer to the correct values
            for (let i = 0; i < byteString.length; i++) {
                ia[i] = byteString.charCodeAt(i);
            }

            // write the ArrayBuffer to a blob, and you're done
            return { data: ab, type };
        } catch (e) {
            log.warn("Unable to decode data URL: ", dataURL);
            throw e;
        }

    }

    export function encode(ab: ArrayBuffer,
                           type: ImageType) {

        const encoded = ArrayBuffers.toBase64(ab);

        return `data:${type};base64,` + encoded;

    }

    export function parseDataPortion(dataURL: DataURL) {
        return dataURL.substring(dataURL.indexOf(",") + 1);
    }

    export function toBlob(data: DataURL): Blob {

        const decoded = decode(data);

        return new Blob([decoded.data], {type: decoded.type});

    }

}

import { Pipe, PipeTransform } from '@angular/core';
/*
    Case of use when we have enums in these way
    enum Example{
        'Text1': 'A',
        'Text2': 'B',
        ....
        'C': 'Text3'
    }
    <mat-option *ngFor="let feq of Example | letterKeys" [value]="feq.key">

 {{ feq.value }}

    </mat-option>
    --->
    <option value="A">Text1</option>
    <option value="B">Text2</option>
    <option value="C">Text3</option>
*/
@Pipe({ name: 'letterKeys' })
export class LetterKeysPipe implements PipeTransform {
  transform(value): any {
    const keys = [];
    for (const enumMember in value) {
      if (enumMember.length === 1) {
        keys.push({ key: enumMember, value: value[enumMember] });
      }
    }
    return keys;
  }
}
const input1 = document.getElementById("input1") as HTMLInputElement
const input2 = document.getElementById("input2") as HTMLInputElement
const botao = document.getElementById('botao')!

function sum(a: number,b: number){
  return a+b
}

botao.addEventListener("click",function(){
  console.log(sum(Number(input1.value),Number(input2.value)))
})import { Query, Resolver, Args, Mutation } from '@nestjs/graphql';
import { Sintoma, SintomaInput, SintomaUpdate } from './sintoma.model';
import { SintomaService } from './sintoma.service';
import { Roles } from '../../../common/security/u


| ---               | ---                 |`MPU6886`
68h|`MPU6886`
68h (opt)       |IMU                          |
|IMU
(old lot)             |`SH200Q`
6Ch                    | ---                  | ---                | ---               |`SH200Q`
6Ch      | ---               | ---                 | ---            | ---                         |IMU
(old lot)             |
|ENV                          | ---                               | ---                  | ---                |`LTR553ALS`
23h | ---                 | ---               |`SHT30`
44h       | ---            | ---                         |ENV                          |
|EEPROM                       | ---                               | ---                  | ---                | ---               | ---                 | ---               |`FM24C02`
50h     | ---            | ---                         |EEPROM                       |
|Camera                       | ---                               | ---                  | ---                |`GC0308`
21h    | ---                 | ---               | ---                 | ---            | ---                         |Camera                       |
|Speaker                      | ---                               | ---                  | ---                |`AW88298`
36h   | ---                 | ---               | ---                 | ---            | ---                         |Speaker                      |
|Microphone                   | ---                               | ---                  | ---                |`ES7210`
40h    | ---                 | ---               | ---                 | ---            | ---                         |Microphone                   |
|GPIO Expander                | ---                               | ---                  | ---                |`AW9523B`
58h   | ---                 | ---               | ---                 | ---            | ---                         |GPIO Expander                |
|Current
Voltage
Monitor| ---                               | ---                  | ---                | ---               | ---                 | ---               | ---                 | ---            |`INA3221`
40h/41h
(opt)|Current
Voltage
Monitor|

---
layout: home

title: RetroAchievements

# TODO track what the most popular links are and update these accordingly
hero:
  name: RetroAchievements
  text: Documentation
  tagline: Adding achievements to retro games since 2012.
  actions:
    - theme: brand
      text: Emulator Support
      link: /general/emulator-support-and-issues
    - theme: alt
      text: Code of Conduct
      link: /guidelines/users/code-of-conduct
    - theme: alt
      text: Become a Developer
      link: /developer-docs/how-to-become-an-achievement-developer
  image:
    src: /ra-logo-big-shadow.png
    alt: VitePress

features:
  - icon: 🙋🏽
    title: Sign Up
    details: Get started by making an account.
    link: https://retroachievements.org/createaccount.php
  - icon: 🕹
    title: Download an Emulator
    details: Install a verified emulator and start earning achievements.
    link: https://retroachievements.org/downloads
  - icon: 📡
    title: API Docs
    details: Integrate RetroAchievements into your app, website, or


 sizeof(ccfn) / sizeof(char*));
	}
	return ptr && new_rp && free_rp;
}
class dspr_cx
{
public:
	librpspr_lib* so = 0;
	void* ctx = 0;
	std::vector<glm::ivec4> sprv;
	std::vector<uint32_t> imgdata;
	cairo_surface_t* img = 0;

	// 坐骑的渲染坐标
	glm::ivec2 ride_pos = {};
	glm::ivec2 csize = {};
public:
	dspr_cx();
	~dspr_cx();

	void init(int w, int h);
	void clear();
	void add_spr(const std::string& sprfn, const std::string& palbmp, int pal_pos);
	//不同坐骑可能要设置不同值
	void set_spr_pos(uint32_t idx, int x, int y, int z = 950000);
	void set_ride(const std::string& fly, int d, const std::string& addon, const std::string& fnm_dir, const std::string& fntcp_dir);
	void draw(int i, int x, int y);
private:

};

dspr_cx::dspr_cx()
{
	so = new librpspr_lib();
}

dspr_cx::~dspr_cx()
{
	if (img)
		free_image_cr(img);
	img = 0;
	if (so)
	{
		if (ctx)
			so->free_rp((int64_t)ctx);
		delete so; so = 0;
	}
}

void dspr_cx::init(int w, int h)
{
	bool tex_bgr = 1;
	csize = { w,h };
	if (ctx)
		so->free_rp((int64_t)ctx);
	so->new_rp(w, h, (int64_t*)&ctx, tex_bgr);
	glm::ivec2 csize = { w,h };
	imgdata.resize(w * h);
	if (img)
		free_image_cr(img);
	img = 0;
	img = new_image_cr(csize, imgdata.data());
	sprv.clear();
}

//在__init__函数调用 add_spr\set_ride
void dspr_cx::add_spr(const std::string& sprfn, const std::string& palbmp, int pal_pos)
{
	auto w = so->add_spr(ctx, sprfn.c_str(), palbmp.c_str(), pal_pos);
	sprv.push_back({ 0,0,0,w });
}

void dspr_cx::set_ride(const std::string& fly, int d, const std::string& addon, const std::string& fnm_dir, const std::string& fntcp_dir)
{
	// 动作类型，方向，坐骑深度目录(需要有这三种文件json;png;graypng)，坐骑tcp目录（json;png;graypng;pal.bmp）
	//so->set_ride(ctx, "stand", 0, R"(https://xyq.gsf.netease.com/h5avtres/1.25/e135776/p722/)", R"(https://xyq.gsf.netease.com/static_h5/shape/char/0722/)");
	so->set_ride(ctx, fly.c_str(), d, fnm_dir.c_str(), fntcp_dir.c_str());
	// 附件，路径和坐骑tcp一样，（json;png;graypng;pal.bmp）保存在addon_f之类文件夹。支持fblr四种要有相应文件夹
	so->set_addon


", nil, {"아달이 폭풍우 요새의 메카나르에 있는 기계군주 캐퍼시투스를 처치해 달라고 했습니다."}},
[29658] = {"철두철미한 적", nil, {"아달이 폭풍우 요새의 메카나르에 있는 철두철미한 파탈리온을 처치해 달라고 했습니다."}},
[29659] = {"잃어버린 보물", nil, {"아달이 폭풍우 요새의 메카나르에 있는 군단 저장고에서 눈부신 격노를 되찾아 달라고 했습니다."}},
[29660] = {"신록의 정원 살리기", nil, {"아달이 폭풍우 요새에 있는 신록의 정원에서 지휘관 새래니스, 고위 식물학자 프레이윈, 감시인 쏜그린을 처치해 달라고 했습니다."}},
[29661] = {"마른 몸의 가르침", nil, {"균형대를 건너 수련용 종을 울려야 합니다. 레벨 1 유랑도"}},
[29662] = {"갈대보다 강하다", nil, {"단단한 눈물숲 갈대를 8개 모아야 합니다. 레벨 1 유랑도"}},
[29663] = {"균형 잡힌 바위의 가르침", nil, {"균형대 위에서 투슈이 수도사를 6명 이겨야 합니다. 레벨 1 유랑도"}},
[29664] = {"도전자의 불꽃", nil, {"꺼져가는 불길의 화로에서 불붙지 않은 도전자의 횃불에 불을 붙인 후, 사부 리 페이 근처에 있는 화로 세 개에 불을 지펴야 합니다."}},
[29665] = {"엎친 데 덮친 격", nil, {"깊은비늘 심문관을 8마리 처치해야 합니다. 레벨 1 유랑도"}},
[29666] = {"가르침의 아픔", nil, {"물집게 소금쟁이를 6마리 처치해야 합니다. 레벨 1 유랑도"}},
[29667] = {"솎�


: true,
          description: "Get Behind the wheels of one of the most famous supercars in the world. The Lamborghini Aventador LP700 is one of the world most famous supercars in the world. The price tag of a Lamborghini Aventador is one of the worlds most famous Supercars.With a price tag of a million dollars the Lamborghini Aventador is one of the worlds most sophisticated supercars ever build.

 Get a chance and drive one of the worlds most exquisite cars ever built today.",
          price: 2400,
        });
        await Car.create({
          name: "Porsche Cayenne",
          brand: "Porsche",
          model: "Cayenne",
          seats: 5,
          doors: 4,
          luggages: 2,
          gear: "automatic",
          location_id: location[Math.floor(Math.random() * 3)].id,
          purchase_date: new Date(2019, 10, 9),
          addons: "GPS, Air Conditioning, MP4, Sky Window",
          available: true,
          description: "The Porsche Cayenne is a mid-size luxury crossover sport utility vehicle produced by the German manufacturer Porsche since 2002, with North American sales beginning in 2003. It is the first V8-engined vehicle built by Porsche since 1995, when the Porsche 928 was discontinued.

This significant reduction of fuel consumption throughout the entire range of Porsche Cayenne models results, among other things, from the introduction of Porsche’s new eight-speed Tiptronic S automatic transmission complete with Auto Start-Stop and an even wider range of gear increments, thermal management on the engine and transmission cooling circuit, recuperation of the onboard network, variable overrun cut-off and, not least, consistent reduction of weight and intelligent lightweight construction.",
          price: 300,
        });
        await Car.create({
          name: "Porsche Boxter S 981",
          brand: "Porsche",
          model: "Boxter S 981",
          seats: 2,
          doors: 2,
          luggages: 1,
          gear: "automatic",
          location_id: location[Math.floor(Math.random() * 3)].id,
          purchase_date: new Date(2019, 6, 28),
          addons: "GPS, Air Conditioning, MP4, Convertible",
          available: true,
          description: "The 981 was the first Boxster/Cayman to use electronically assisted steering, and the parking brake in the car uses an electronic linkage. The instrument cluster features a 4.6' TFT color screen in conjunction with various sensors that can display accurate engine temperature, oil temperature and oil pressure.

The new Porsche Boxster S – code named 981 – is without a doubt the best Boxster yet. Lighter, more muscular, more distinctive, and of course incredibly good looking, it’s pure Porsche at its best. One spin in this baby will take you straight to supercar heaven.",
          price: 630,
        });
        await Car.create({
          name: "Ferrari California T",
          brand: "Ferrari",
          model: "California T",
          seats: 2,
          doors: 2,
          luggages: 1,
          gear: "automatic",
          location_id: location[Math.floor(Math.random() * 3)].id,
          purchase_date: new Date(2019, 3, 9),
          addons: "GPS, Air Conditioning, MP4, Convertible",
          available: true,
          description: "The Ferrari California T is the Italian carmaker's entry level model and it's more of an 'everyday driving car' than something like the hardcore 488 GTB or F12 Berlinetta... 9.5/10.

The Ferrari California T Epitomises the Sublime Elegance, sportiness, versatility and exclusivity that have distinguished every California model since the 1950s. It is a car that's brimming with innovation that the expectations of discerning clients for whom fun behind the wheel is a priority.

Driving this amazing Ferrari is a drea


导 技术发展方向

### 微软公司

- 微软 期待建立 标准和秩序
	- vscode
	- C#
	- VB.net
	- TypeScript

![图片描述](https://doc.shiyanlou.com/courses/uid1190679-20230221-1676939301151)

- 微软 在 软件行业
	- 获得大量资金
	- 可以 做很多事情

### 软件行业

- 微软等 软件公司
	- 以 免费、盗版 获客
		- 建立习惯
	- 给 付费产品 导流
		- 占领市场
	- 盈利后 再通过利润来
		- 买流量
	- 再 试图以 部分开源
		- 获得 声望

![图片描述](https://doc.shiyanlou.com/courses/uid1190679-20240126-1706249257017)

- 不只是 软件产业
	- 游戏产业 也是如此

### 游戏产业

- 游戏 创作 出来之后
	- 要 面向市场 盈利

![图片描述](https://doc.shiyanlou.com/courses/uid1190679-20240211-1707651326915)

- 公司 要发展
	- 要 一轮轮 融资变现

### 金融运作

- 一轮轮融资 之后
	- 最初爱游戏、懂游戏、真玩游戏的创作者
		- 早已出局
- 资源投放在
	- 曾经证明了的
	- 成功项目上过
	- 再也 没有 新游戏出来

![图片描述](https://doc.shiyanlou.com/courses/uid1190679-20240211-1707651337778)

- 玩家的 热爱和梦想
	- 渐渐 变成了
	- 公司报表上 合并的数据

### 文化领域

- 公司 越做越大
	- 运作 大型项目
	- 雇佣 顶级人才
	- 兼并 商业公司

![图片描述](https://doc.shiyanlou.com/courses/uid1190679-20240212-1707737070019)

- 潜移默化
	- 宣传 产品和观念

### 资金

- 全球的 社会经济
	- 都是基于 货币的
	- 这已经 成为了 潜意识里的约定俗成
- 巨头 通过 基金会
	- 公关 政府
	- 宣传 形象

![图片描述](https://doc.shiyanlou.com/courses/uid1190679-20240302-1709329629660)

- 微软
	- 凭借资本 收购了 大量新兴公司
		- githu


FromDOMElement(element);

QDomElement child=element.firstChild().toElement();
while (!child.isNull())
{
if (child.tagName() == "Light")
{
if (child.hasAttribute("state"))
setLightOn(child.attribute("state").lower() == "on");

// Assumes there is only one child. Otherwise you need to parse child's children recursively.
QDomElement lf = child.firstChild().toElement();
if (!lf.isNull() && lf.tagName() == "LightFrame")
lightManipulatedFrame()->initFromDomElement(lf);
}
child = child.nextSibling().toElement();
}
}
\endcode

See also qglviewer::Camera::initFromDOMElement(), qglviewer::ManipulatedFrame::initFromDOMElement().

\note The manipulatedFrame() \e pointer is not modified by this method. If defined, its state is
simply set from the \p element values. */
void QGLViewer::initFromDOMElement(const QDomElement& element)
{
	const QString version = element.attribute("version");
	// if (version != QGLViewerVersionString())
	if (version[0] != '2')
		// Patches for previous versions should go here when the state file syntax is modified.
		qWarning("State file created using QGLViewer version %s may not be correctly read.", version.toLatin1().constData());

	QDomElement child=element.firstChild().toElement();
	bool tmpCameraIsEdited = cameraIsEdited();
	while (!child.isNull())
	{
		if (child.tagName() == "State")
		{
			// #CONNECTION# default values from defaultConstructor()
			// setMouseTracking(DomUtils::boolFromDom(child, "mouseTracking", false));
			setStereoDisplay(DomUtils::boolFromDom(child, "stereo", false));
			//if ((child.attribute("cameraMode", "revolve") == "fly") && (cameraIsInRevolveMode()))
			//	toggleCameraMode();

			QDomElement ch=child.firstChild().toElement();
			while (!ch.isNull())
			{
				if (ch.tagName() == "foregroundColor")
					setForegroundColor(DomUtils::QColorFromDom(ch));
				if (ch.tagName() == "backgroundColor")
					setBackgroundColor(DomUtils::QColorFromDom(ch));
				ch = ch.nextSibling().toElement();
			}
		}

		if (child.tagName() == "Display")
		{
			// #CONNECTION# default values from defaultConstructor()
			setAxisIsDrawn(DomUtils::boolFromDom(child, "axisIsDrawn", false));
			setGridIsDrawn(DomUtils::boolFromDom(child, "gridIsDrawn", false));
			setFPSIsDisplayed(DomUtils::boolFromDom(child, "FPSIsDisplayed", false));
			// See comment below.
			tmpCameraIsEdited = DomUtils::boolFromDom(child, "cameraIsEdited", false);
			// setTextIsEnabled(DomUtils::boolFromDom(child, "textIsEnabled", true));
		}

		if (child.tagName() == "Geometry")
		{
			setFullScreen(DomUtils::boolFromDom(child, "fullScreen", false));

			if (isFullScreen())
			{
				prevPos_.setX(DomUtils::intFromDom(child, "prevPosX", 0));
				prevPos_.setY(DomUtils::intFromDom(child, "prevPosY", 0));
			}
			else
			{
				int width  = DomUtils::intFromDom(child, "width",  600);
				int height = DomUtils::intFromDom(child, "height", 400);
				topLevelWidget()->resize(width, height);
				camera()->setScreenWidthAndHeight(this->width(), this->height());

				QPoint pos;
				pos.setX(DomUtils::intFromDom(child, "posX", 0));
				pos.setY(DomUtils::intFromDom(child, "posY", 0));
				topLevelWidget()->move(pos);
			}
		}

		if (child.tagName() == "Camera")
		{
			connectAllCameraKFIInterpol


td.disabled .cell:hover{color:#C0C4CC}.el-month-table td .cell{width:60px;height:36px;display:block;line-height:36px;color:#606266;margin:0 auto;border-radius:18px}.el-month-table td .cell:hover{color:#00D1B2}.el-month-table td.in-range div,.el-month-table td.in-range div:hover{background-color:#F2F6FC}.el-month-table td.end-date div,.el-month-table td.start-date div{color:#FFF}.el-month-table td.end-date .cell,.el-month-table td.start-date .cell{color:#FFF;background-color:#00D1B2}.el-month-table td.start-date div{border-top-left-radius:24px;border-bottom-left-radius:24px}.el-month-table td.end-date div{border-top-right-radius:24px;border-bottom-right-radius:24px}.el-month-table td.current:not(.disabled) .cell{color:#00D1B2}.el-year-table{margin:-1px}.el-year-table .el-icon{color:#303133}.el-year-table td{text-align:center;padding:20px 3px;cursor:pointer}.el-year-table td.today .cell{color:#00D1B2;font-weight:700}.el-year-table td.disabled .cell{background-color:#F5F7FA;cursor:not-allowed;color:#C0C4CC}.el-year-table td.disabled .cell:hover{color:#C0C4CC}.el-year-table td .cell{width:48px;height:32px;display:block;line-height:32px;color:#606266;margin:0 auto}.el-year-table td .cell:hover,.el-year-table td.current:not(.disabled) .cell{color:#00D1B2}.el-date-range-picker{width:646px}.el-date-range-picker.has-sidebar{width:756px}.el-date-range-picker table{table-layout:fixed;width:100%}.el-date-range-picker .el-picker-panel__body{min-width:513px}.el-date-range-picker .el-picker-panel__content{margin:0}.el-date-range-picker__header{position:relative;text-align:center;height:28px}.el-date-range-picker__header [class*=arrow-left]{float:left}.el-date-range-picker__header [class*=arrow-right]{float:right}.el-date-range-picker__header div{font-size:16px;font-weight:500;margin-right:50px}.el-date-range-picker__content{float:left;width:50%;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:16px}.el-date-range-picker__content.is-left{border-right:1px solid #e4e4e4}.el-date-range-picker__content .el-date-range-picker__header div{margin-left:50px;margin-right:50px}.el-date-range-picker__editors-wrap{-webkit-box-sizing:border-box;box-sizing:border-box;display:table-cell}.el-date-range-picker__editors-wrap.is-right{text-align:right}.el-date-range-picker__time-header{position:relative;border-bottom:1px solid #e4e4e4;font-size:12px;padding:8px 5px 5px;display:table;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.el-date-range-picker__time-header>.el-icon-arrow-right{font-size:20px;vertical-align:middle;display:table-cell;color:#303133}.el-date-range-picker__time-picker-wrap{position:relative;display:table-cell;padding:0 5px}.el


([]protoimpl.MessageInfo, 1)
var file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_goTypes = []interface{}{
	(*TraceIdRatioBasedSamplerConfig)(nil), // 0: envoy.extensions.tracers.opentelemetry.samplers.v3.TraceIdRatioBasedSamplerConfig
	(*v3.FractionalPercent)(nil),           // 1: envoy.type.v3.FractionalPercent
}
var file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_depIdxs = []int32{
	1, // 0: envoy.extensions.tracers.opentelemetry.samplers.v3.TraceIdRatioBasedSamplerConfig.sampling_percentage:type_name -> envoy.type.v3.FractionalPercent
	1, // [1:1] is the sub-list for method output_type
	1, // [1:1] is the sub-list for method input_type
	1, // [1:1] is the sub-list for extension type_name
	1, // [1:1] is the sub-list for extension extendee
	0, // [0:1] is the sub-list for field type_name
}

func init() {
	file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_init()
}
func file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_init() {
	if File_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*TraceIdRatioBasedSamplerConfig); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   1,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_goTypes,
		DependencyIndexes: file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_depIdxs,
		MessageInfos:      file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_msgTypes,
	}.Build()
	File_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto = out.File
	file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_rawDesc = nil
	file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_goTypes = nil
	file_envoy_extensions_tracers_opentelemetry_samplers_v3_trace_id_ratio_based_sampler_proto_depIdxs = nil
}
//go:build !disable_pgv
// Code generated by protoc-gen-validate. DO NOT EDIT.
// source: envoy/extensions/tracers/opentelemetry/resource_detectors/v3/dynatrace_resource_detector.proto

package resource_detectorsv3

import (


						e.thumbh = e.thumbhide>=pw ? 0 : e.thumbh;
						for (var i in e.rl) nl[i] = e.rl[i]<window.RSIW ? 0 : e.rl[i];
						sl = nl[0];
						for (var i in nl) if (sl>nl[i] && nl[i]>0) { sl = nl[i]; ix=i;}
						var m = pw>(e.gw[ix]+e.tabw+e.thumbw) ? 1 : (pw-(e.tabw+e.thumbw)) / (e.gw[ix]);
						newh =  (e.gh[ix] * m) + (e.tabh + e.thumbh);
					}
					if(window.rs_init_css===undefined) window.rs_init_css = document.head.appendChild(document.createElement("style"));
					document.getElementById(e.c).height = newh+"px";
					window.rs_init_css.innerHTML += "#"+e.c+"_wrapper { height: "+newh+"px }";
				} catch(e){
					console.log("Failure at Presize of Slider:" + e)
				}
			//});
		  };</script>
<style id="fusion-stylesheet-inline-css" type="text/css">/********* Compiled CSS - Do not edit *********/ :root{--button_padding:11px 23px;--button_font_size:13px;--button_line_height:16px;}/* cyrillic-ext */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/ptsans/v12/jizaRExUiTo99u79D0-Ew8OPIDUg-g.woff) format('woff');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/ptsans/v12/jizaRExUiTo99u79D0aEw8OPIDUg-g.woff) format('woff');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/ptsans/v12/jizaRExUiTo99u79D0yEw8OPIDUg-g.woff) format('woff');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/ptsans/v12/jizaRExUiTo99u79D0KEw8OPIDU.woff) format('woff');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Raleway';
  font-style: italic;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/raleway/v19/1Pt_g8zYS_SKggPNyCgSQamb1W0lwk4S4WjMDr4


filter(cluster=cluster,
                            hostname__in=node.info['sinst_list']) \
                    .update(secondary_node=node)

    else:
        form = NodeForm(nodes)

    nodes = {}
    for cluster in clusters:
        for hostname in cluster.nodes_missing_in_db:
            nodes[hostname] = ('%s:%s' % (cluster.id, hostname),
                               cluster.hostname, hostname)
    node_hostnames = nodes.keys()
    node_hostnames.sort()

    nodes_tuple_list = []
    for i in node_hostnames:
        nodes_tuple_list.append(nodes[i])

    nodes = nodes_tuple_list

    return render_to_response("ganeti/importing/nodes/import.html",
                              {'nodes': nodes,
                               'form': form, },
                              context_instance=RequestContext(request), )


: 3px solid #ec494c;
}

.selected-game-category-nav-item>a, .game-category-navbar li:hover>a {
	color: #fe0200 !important;
}

.game-block {

}

.game {

}

.game-body {
	display: flex;
	flex-flow: column;
	border: 1px solid #ebebeb;
	margin-bottom: 20px;
	border-radius: 4px;
}

.game-row1 {
	display: flex;
	flex: 2;
	padding-left: 10px;
	padding-top: 5px;
}

.game-logo {
	flex: 0.5;
	display: flex;
	align-items: center;
	padding-right: 14px;
}

.game-logo img {
	height: 80px;
	width: 80px;
}

.game-name-and-issue-num {
	flex: 1;
}

.game-issue-num {
	color: red;
}

.game-name-and-issue-num div {
	height: 34px;
}

.hot-game-logo {
	height: 36px;
	position: absolute;
	right: 26px;
	top: 0px;
}

.game-pre-issue-lottery-label {
	flex: 1;
	padding-left: 10px;
}

.game-pre-issue-lottery {
	flex: 1;
	padding-left: 10px;
	padding-top: 5px;
	padding-bottom: 5px;
}

.game-pre-issue-lottery span {
	width: 18px;
	height: 18px;
	font-weight: normal;
	display: inline-block;
	background-color: #1783c6;
	background: linear-gradient(#f56868, #cb3a3a);
	color: #fff;
	line-height: 18px;
	text-align: center;
	margin: 0 2px;
	border-radius: 10px;
}

.game-lottery-tip {
	color: #ffc200;
}

.game-action {
	flex: 1;
}

.game-action .btn-group {
	width: 100%;
}

.game-action button {
	width: 50%;
	border-radius: unset;
	margin-left: unset !important;
}

.countdown-clock span {
	background: #fff;
	border: 1px solid #eee;
	padding: 1.5px;
}

.countdown-clock em {
	font-style: unset;
}
</style>

全部游戏

{{gameCategory.gameCategoryName}}

{{game.gameName}}

									第{{game.currentIssue != null ? game.currentIssue : game.preIssue}}期


Child.siblings(forward = true).find { isElementToExtract(it) }
            val last = containerElement.lastChild.siblings(forward = false).find { isElementToExtract(it) }
            if (first == null || last == null) return
            var toExtract = first
            if (isEffective) {
                toExtract = addRangeBefore(first, last, element.parent, element)
            }

            do {
                if (toExtract != null) {
                    addElementToExtract(toExtract)
                    toExtract = toExtract.nextSibling
                }
                first = first?.nextSibling
            } while (first != null && first.prevSibling !== last)
        }

        private fun isElementToExtract(element: PsiElement): Boolean {
            return element is PsiComment || element is CwtProperty || element is CwtValue
        }
    }
}
package icu.windea.pls.images.actions

import com.intellij.openapi.vfs.VirtualFile
import icu.windea.pls.images.dds.DdsFileType
import icu.windea.pls.images.tga.TgaFileType
import org.intellij.images.fileTypes.impl.ImageFileType

interface ConvertImageFormatActions {
    class Png : ConvertImageFormatAction("PNG") {
        override fun isAvailableForFile(file: VirtualFile): Boolean {
            if (file.fileType == ImageFileType.INSTANCE && file.extension?.lowercase() == "png") return false
            return super.isAvailableForFile(file)
        }
    }

    class Dds : ConvertImageFormatAction("DDS") {
        override fun isAvailableForFile(file: VirtualFile): Boolean {
            if (file.fileType == DdsFileType) return false
            return super.isAvailableForFile(file)
        }
    }

    class Tga : ConvertImageFormatAction("TGA") {
        override fun isAvailableForFile(file: VirtualFile): Boolean {
            if (file.fileType == TgaFileType) return false
            return super.isAvailableForFile(file)
        }
    }
}
package icu.windea.pls.images.dds.info

object DdsConstants {
    // DdsInfo.dwMagic
    val DDS_MAGIC: Int = make4CC("DDS ")
    // DdsHeader.dwSize
    const val HEADER_SIZE = 124
    // DdsPixelFormat.dwSize
    const val PIXEL_FORMAT_SIZE = 32

    // DdsHeader.dwFlags
    // const val DDSD_CAPS: Int = 0x1
    // const val DDSD_HEIGHT: Int = 0x2
    // const val DDSD_WIDTH: Int = 0x4
    // const val DDSD_PITCH: Int = 0x8
    // const val DDSD_PIXELFORMAT: Int = 0x1000
    // const val DDSD_MIPMAPCOUNT: Int = 0x20000
    // const val DDSD_LINEARSIZE: Int = 0x80000
    // const val DDSD_DEPTH: Int = 0x800000
    // const val DDS_HEADER_FLAGS_TEXTURE: Int = DDSD_CAPS or DDSD_HEIGHT or DDSD_WIDTH or DDSD_PIXELFORMAT
    // const val DDS_HEADER_FLAG


new JobInstanceCreateException(saveResp.getErr().toString());
        }

        return instance;
    }

    private class RefreshJobFireTimeTask implements Runnable {

        private final String appName;

        private final String jobClass;

        private final JobExecutionContext context;

        public RefreshJobFireTimeTask(String appName, String jobClass, JobExecutionContext context) {
            this.appName = appName;
            this.jobClass = jobClass;
            this.context = context;
        }

        @Override
        public void run() {
            try {

                // update job fire time info
                JobFireTime jobFireTime = new JobFireTime();

                jobFireTime.setCurrent(Dates.format(context.getFireTime()));
                jobFireTime.setPrev(Dates.format(context.getPreviousFireTime()));
                jobFireTime.setNext(Dates.format(context.getNextFireTime()));

                jobSupport.updateJobFireTime(appName, jobClass, jobFireTime);

            } catch (Exception e){
                Logs.error("failed to execute async task when execute job({}/{}), cause: {}.",
                        appName, jobClass, Throwables.getStackTraceAsString(e));
            }
        }
    }
}
package me.hao0.wechat.model.material;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import me.hao0.wechat.serializer.DateDeserializer;
import java.io.Serializable;
import java.util.Date;

/**
 * 上传临时素材后的返回对象
 * Author: haolin
 * Email: haolin.h0@gmail.com
 * Date: 13/11/15
 */
public class TempMaterial implements Serializable {

    private static final long serialVersionUID = -824128825701922924L;

    private MaterialUploadType type;

    @JsonProperty("media_id")
    private String mediaId;

    @JsonProperty("created_at")
    @JsonDeserialize(using = DateDeserializer.class)
    private Date createdAt;

    public MaterialUploadType getType() {
        return type;
    }

    public void setType(MaterialUploadType type) {
        this.type = type;
    }

    public String getMediaId() {
        return mediaId;
    }

    public void setMediaId(String mediaId) {
        this.mediaId = mediaId;
    }

    public Date getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(Date createdAt) {
        this.createdAt = createdAt;
    }

    @Override
    public String toString() {
        return "Media{" +
                "type=" + type +
                ", mediaId='" + mediaId + '\'' +
                ", createdAt=" + createdAt +
                '}';
    }
}
package me.hao0.wechat.model.base;

import com.fasterxml.jackson.annotation.JsonProperty;

import java.io.Serializable;

/**
 * 用户同意授权后，通过code获取的访问Token
 * Author: haolin
 * Email: haolin.h0@gmail.com
 * @since 1.9.1
 *

 *     参考链接
 *

 */
public class AuthAccessToken implements Serializable {

    private static final long serialVersionUID = 7082882275191271333L;

    /**
     * accessToken
     */
    @JsonProperty("access_token")
    private St


16, f2
    csrrci x7, fcsr, 0x1F
    sd x7, 64(x1)
    fmv.x.d x8, f14
    fsd f14, 72(x1)
    RVMODEL_IO_ASSERT_GPR_EQ(x7, x8, 0x3ff0000000000000)

    RVTEST_SIGBASE(x2,signature_4_0)

    # Testcase 15:  rs1:x15(0xc11bdedc00000000), rs2:x1(0x40934a3d70a3d70a), result rd:x15(0x40934a3d70a3d70a)
    li  x4, MASK_XLEN(0x40934a3d70a3d70a)
    li  x3, MASK_XLEN(0xc11bdedc00000000)
    fmv.d.x f1, x4
    fmv.d.x f15, x3
    fmax.d f15, f15, f1
    csrrci x3, fcsr, 0x1F
    sd x3, 0(x2)
    fmv.x.d x4, f15
    fsd f15, 8(x2)
    RVMODEL_IO_ASSERT_GPR_EQ(x3, x4, 0x40934a3d70a3d70a)

    # Testcase 16:  rs1:x14(0x40934a3d70a3d70a), rs2:x0(0xc11bdedc00000000), result rd:x16(0x40934a3d70a3d70a)
    li  x4, MASK_XLEN(0xc11bdedc00000000)
    li  x3, MASK_XLEN(0x40934a3d70a3d70a)
    fmv.d.x f0, x4
    fmv.d.x f14, x3
    fmax.d f16, f14, f0
    csrrci x3, fcsr, 0x1F
    sd x3, 16(x2)
    fmv.x.d x4, f16
    fsd f16, 24(x2)
    RVMODEL_IO_ASSERT_GPR_EQ(x3, x4, 0x40934a3d70a3d70a)

    # Testcase 17:  rs1:x13(0x0000000000000000), rs2:x30(0x3ff0000000000000), result rd:x17(0x3ff0000000000000)
    li  x4, MASK_XLEN(0x3ff0000000000000)
    li  x3, MASK_XLEN(0x0)
    fmv.d.x f30, x4
    fmv.d.x f13, x3
    fmax.d f17, f13, f30
    csrrci x3, fcsr, 0x1F
    sd x3, 32(x2)
    fmv.x.d x4, f17
    fsd f17, 40(x2)
    RVMODEL_IO_ASSERT_GPR_EQ(x3, x4, 0x3ff0000000000000)

    # Testcase 18:  rs1:x12(0x4194e5fec7333333), rs2:x29(0x4215f7421c388000), result rd:x18(0x4215f7421c388000)
    li  x4, MASK_XLEN(0x4215f7421c388000)
    li  x3, MASK_XLEN(0x4194e5fec7333333)
    fmv.d.x f29, x4
    fmv.d.x f12, x3
    fmax.d f18, f12, f29
    csrrci x3, fcsr, 0x1F
    sd x3, 48(x2)
    fmv.x.d x4, f18
    fsd f18, 56(x2)
    RVMODEL_IO_ASSER


f c in the columns
    cString = c;
    cNumber = this.columns.indexOf(c);
    console.log('string');
  }
  else{
    cNumber = c;
    cString = this.columns[c];
  }

  var chunk = this.columns.splice(cNumber+1, this.columns.length);
  this.columns.pop();
  this.columns = this.columns.concat(chunk);

  for (var i = 0; i < this.rows.length; i++){
    var tempR = this.rows[i].arr;
    var chip = tempR.splice(cNumber+1, tempR.length);
    tempR.pop();
    this.rows[i].arr = tempR.concat(chip);
    delete this.rows[i].obj[cString];
  }

};

/**
 * Stores a value in the Table's specified row and column.
 * The row is specified by its ID, while the column may be specified
 * by either its ID or title.
 *
 * @method  set
 * @param {String|Number} column column ID (Number)
 *                               or title (String)
 * @param {String|Number} value  value to assign
 *
 * @example
	*

	*
	* // Given the CSV file "mammals.csv"
	* // in the project's "assets" folder:
	* //
	* // id,species,name
	* // 0,Capra hircus,Goat
	* // 1,Panthera pardus,Leopard
	* // 2,Equus zebra,Zebra
	*
	* var table;
	*
	* function preload() {
	*   //my table is comma separated value "csv"
	*   //and has a header specifying the columns labels
	*   table = loadTable("assets/mammals.csv", "csv", "header");
	* }
	*
	* function setup() {
	*   table.set(0, "species", "Canis Lupus");
	*   table.set(0, "name", "Wolf");
	*
	*   //print the results
	*   for (var r = 0; r < table.getRowCount(); r++)
	*     for (var c = 0; c < table.getColumnCount(); c++)
	*       print(table.getString(r, c));
	* }
	*
	*

 */
p5.Table.prototype.set = function(row, column, value) {
  this.rows[row].set(column, value);
};

/**
 * Stores a Float value in the Table's specified row and column.
 * The row is specified by its ID, while the column may be specified
 * by either its ID or title.
 *
 * @method setNum
 * @param {Number} row row ID
 * @param {String|Number} column column ID (Number)
 *                               or title (String)
 * @param {Number} value  value to assign
 *
 * @example
	*

	*
	* // Given the CSV file "mammals.csv"
	* // in the project's "assets" folder:
	* //
	* // id,species,name
	* // 0,Capra hircus,Goat
	* // 1,Panthera pardus,Leopard
	* // 2,Equus zebra,Zebra
	*
	* var table;
	*
	* function preload() {
	*   //my table is comma separated value "csv"
	*   //and has a header specifying the columns labels
	*   table = loadTable("assets/mammals.csv", "csv", "header");
	* }
	*
	* function setup() {
	*   table.setNum(1, "id", 1);
	*
	*   print(table.getColumn(0));
	*   //["0", 1, "2"]
	* }
	*
	*

 */
p5.Table.prototype.setNum = function(row, column, value){
  this.rows[row].setNum(


 "1234",
            player_name: "5678"
        })?;
        binary_writer_login_disconnect, "test-data/login-disconnect-1.in", w => w.structure(&Disconnect{
            reason: "bad player"
        })?;
    }

    macro_rules! raw_read_tests {
        ($($name:ident, $input:expr, $expected:expr;)*) => {
            $(
                #[test]
                pub fn $name() -> Result<(), Error> {
                    let mut reader = make_reader(include_bytes!($input) as &[u8]);
                    assert_eq!(block_on(reader.read_login())?, $expected);
                    Ok(())
                }
            )*
        }
    }

    raw_read_tests! {
        binary_reader_login_start, "test-data/login-start-1.in", Start {
            player_name: "test".into()
        };
        binary_reader_login_encryption_response, "test-data/login-encryption-response-1.in", EncryptionResponse {
            encrypted_shared_secret: (b"1234" as &[u8]).into(),
            encrypted_verifier: (b"56789" as &[u8]).into()
        };
    }
}
<gh_stars>0
use std::process::Command;
use util::*;

static PROGNAME: &'static str = "./mkdir";
static TEST_DIR1: &'static str = "mkdir_test1";
static TEST_DIR2: &'static str = "mkdir_test2";
static TEST_DIR3: &'static str = "mkdir_test3";
static TEST_DIR4: &'static str = "mkdir_test4/mkdir_test4_1";
static TEST_DIR5: &'static str = "mkdir_test5/mkdir_test5_1";

#[path = "common/util.rs"]
#[macro_use]
mod util;

#[test]
fn test_mkdir_mkdir() {
    let mut cmd = Command::new(PROGNAME);
    let exit_success = run(&mut cmd.arg(TEST_DIR1)).success;
    cleanup(TEST_DIR1);
    assert_eq!(exit_success, true);
}

#[test]
fn test_mkdir_dup_dir() {
    let mut cmd = Command::new(PROGNAME);
    let exit_success = run(&mut cmd.arg(TEST_DIR2)).success;
    if !exit_success {
        cleanup(TEST_DIR2);
        panic!();
    }
    let exit_success2 = run(&mut cmd.arg(TEST_DIR2)).success;
    cleanup(TEST_DIR2);
    assert_eq!(exit_success2, false);
}

#[test]
fn test_mkdir_mode() {
    let mut cmd = Command::new(PROGNAME);
    let exit_success = run(&mut cmd.arg("-m").arg("755").arg(TEST_DIR3)).success;
    cleanup(TEST_DIR3);
    assert_eq!(exit_success, true);
}

#[test]
fn test_mkdir_parent() {
    let mut cmd = Command::new(PROGNAME);
    let exit_success = run(&mut cmd.arg("-p").arg(TEST_DIR4)).success;
    cleanup(TEST_DIR4);
    assert_eq!(exit_success, true);
}

#[test]
fn test_mkdir_no_parent() {
    let mut cmd = Command::new(PROGNAME);
    let exit_success = run(&mut cmd.arg(TEST_DIR5)).success;
    cleanup(TEST_DIR5);
    assert_eq!(exit_success, false);
}
use chalk_ir::fold::shift::Shift;
use chalk_ir::fold::{Fold, Folder};
use chalk_ir::interner::Interner;
use chalk_ir::*;
use chalk_solve::infer::InferenceTable;

pub(crate) struct DeepNormalizer<'table, 'i, I: Interner> {
    table: &'table mut InferenceTable<I>,
    interner: &'i I,
}

impl<I: Interner> DeepNormalizer<'_, '_, I> {
    /// Given a value `value` with variables in it, replaces those variables
    /// with their instantiated


os, ir.OLEN, nr))
	nif.Body.Append(ir.NewAssignStmt(base.Pos, nlen, ir.NewUnaryExpr(base.Pos, ir.OLEN, nr)))
	l = append(l, nif)

	// if to.ptr != frm.ptr { memmove( ... ) }
	ne := ir.NewIfStmt(base.Pos, ir.NewBinaryExpr(base.Pos, ir.ONE, nto, nfrm), nil, nil)
	ne.Likely = true
	l = append(l, ne)

	fn := typecheck.LookupRuntime("memmove")
	fn = typecheck.SubstArgTypes(fn, nl.Type().Elem(), nl.Type().Elem())
	nwid := ir.Node(typecheck.Temp(types.Types[types.TUINTPTR]))
	setwid := ir.NewAssignStmt(base.Pos, nwid, typecheck.Conv(nlen, types.Types[types.TUINTPTR]))
	ne.Body.Append(setwid)
	nwid = ir.NewBinaryExpr(base.Pos, ir.OMUL, nwid, ir.NewInt(nl.Type().Elem().Size()))
	call := mkcall1(fn, nil, init, nto, nfrm, nwid)
	ne.Body.Append(call)

	typecheck.Stmts(l)
	walkStmtList(l)
	init.Append(l...)
	return nlen
}

// walkDelete walks an ODELETE node.
func walkDelete(init *ir.Nodes, n *ir.CallExpr) ir.Node {
	init.Append(ir.TakeInit(n)...)
	map_ := n.Args[0]
	key := n.Args[1]
	map_ = walkExpr(map_, init)
	key = walkExpr(key, init)

	t := map_.Type()
	fast := mapfast(t)
	key = mapKeyArg(fast, n, key, false)
	return mkcall1(mapfndel(mapdelete[fast], t), nil, init, reflectdata.TypePtr(t), map_, key)
}

// walkLenCap walks an OLEN or OCAP node.
func walkLenCap(n *ir.UnaryExpr, init *ir.Nodes) ir.Node {
	if isRuneCount(n) {
		// Replace len([]rune(string)) with runtime.countrunes(string).
		return mkcall("countrunes", n.Type(), init, typecheck.Conv(n.X.(*ir.ConvExpr).X, types.Types[types.TSTRING]))
	}

	n.X = walkExpr(n.X, init)

	// replace len(*[10]int) with 10.
	// delayed until now to preserve side effects.
	t := n.X.Type()

	if t.IsPtr() {
		t = t.Elem()
	}
	if t.IsArray() {
		safeExpr(n.X, init)
		con := typecheck.OrigInt(n, t.NumElem())
		con.SetTypecheck(1)
		return con
	}
	return n
}

// walkMakeChan walks an OMAKECHAN node.
func walkMakeChan(n *ir.MakeExpr, init *ir.Nodes) ir.Node {
	// When size fits into int, use makechan instead of
	// makechan64, which is faster and shorter on 32 bit platforms.
	size := n.Len
	fnname := "makechan64"
	argtype := types.Types[types.TINT64]

	// Type checking guarantees that TIDEAL size is positive and fits in an int.
	// The case of size overflow when converting TUINT or TUINTPTR to TINT
	// will be handled by the negative range checks in makechan during runtime.
	if size.Type().IsKind(types.TIDEAL) || size.Type().Size() <= types.Types[types


 x10, EXP_MISA
	bne x10, x12, csr_fail
	li x10, 0x2b6072c4
	csrrw x12, 769, x10
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	li x10, 0xa5a5a5a5
	csrrs x12, 769, x10
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	li x10, 0x5a5a5a5a
	csrrs x12, 769, x10
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	li x10, 0x02d41fd3
	csrrs x12, 769, x10
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	li x10, 0xa5a5a5a5
	csrrc x12, 769, x10
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	li x10, 0x5a5a5a5a
	csrrc x12, 769, x10
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	li x10, 0x1c5f3c0e
	csrrc x12, 769, x10
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	csrrwi x12, 769, 0b00101
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	csrrwi x12, 769, 0b11010
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	csrrwi x12, 769, 0b10110
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	csrrsi x12, 769, 0b00101
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	csrrsi x12, 769, 0b11010
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	csrrsi x12, 769, 0b01111
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	csrrci x12, 769, 0b00101
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	csrrci x12, 769, 0b11010
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	csrrci x12, 769, 0b11100
	li x10, EXP_MISA
	bne x10, x12, csr_fail
	# mie
	li x10, 0xa5a5a5a5
	csrrw x12, 772, x10
	li x10, 0x00000000
	bne x10, x12, csr_fail
	li x10, 0x5a5a5a5a
	csrrw x12, 772, x10
	li x10, 0xa5a50080
	bne x10, x12, csr_fail
	li x10, 0x0884b377
	csrrw x12, 772, x10
	li x10, 0x5a5a0808
	bne x10, x12, csr_fail
	li x10, 0xa5a5a5a5
	csrrs x12, 772, x10
	li x10, 0x08840000
	bne x10, x12, csr_fail
	li x10, 0x5a5a5a5a
	csrrs x12, 772, x10
	li x10, 0xada50080
	bne x10, x12, csr_fail
	li x10


    GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, textureHandle)

        val initialAlphaHandle = GLES20.glGetUniformLocation(program, "initialAlpha")
        GLES20.glUniform1f(initialAlphaHandle, initialAlpha)

        if (initialAlpha < 1f)
            initialAlpha += 0.005f

        val resolutionHandle = GLES20.glGetUniformLocation(program, "u_resolution")
        GLES20.glUniform2f(resolutionHandle, width, height)

        GLES20.glUniform1i(GLES20.glGetUniformLocation(program, "u_texture0"), 0)

        val animatedXHandle = GLES20.glGetUniformLocation(program, "startRangeX")
        GLES20.glUniform1f(animatedXHandle, startRangeX)

        val animatedYHandle = GLES20.glGetUniformLocation(program, "startRangeY")
        GLES20.glUniform1f(animatedYHandle, startRangeY)

        val endRangeXHandle = GLES20.glGetUniformLocation(program, "endRangeX")
        GLES20.glUniform1f(endRangeXHandle, endRangeX)

        val endRangeYHandle = GLES20.glGetUniformLocation(program, "endRangeY")
        GLES20.glUniform1f(endRangeYHandle, endRangeY)

        GLES20.glDrawArrays(GLES20.GL_TRIANGLE_STRIP, 0, 4)

        val rangeSkippingValueHandle = GLES20.glGetUniformLocation(program, "rangeSkippingValue")
        GLES20.glUniform1f(rangeSkippingValueHandle, rangeSkippingValue)

        val isTouchingHandle = GLES20.glGetUniformLocation(program, "isTouching")
        if (!isTouching) {
            if ((endRangeX >= width || startRangeX <= 0)) {
                speedFactorX = if (endRangeX >= width) abs(speedFactorX) * -1 else abs(speedFactorX)
            }
            if ((endRangeY >= height || startRangeY <= 0)) {
                speedFactorY =
                    if (endRangeY >= height) abs(speedFactorY) * -1 else abs(speedFactorY)
            }

            startRangeX += speedFactorX
            endRangeX += speedFactorX
            startRangeY += speedFactorY
            endRangeY += speedFactorY
            //GLES20.glUniform1f(rangeSkippingValueHandle, 0.95f)
            GLES20.glUniform1i(isTouchingHandle, 0)
        } else {
            //GLES20.glUniform1f(rangeSkippingValueHandle, 0.8f)
            GLES20.glUniform1i(isTouchingHandle, 1)
        }

        GLES20.glDisableVertexAttribArray(0)
        GLES20.glDisableVertexAttribArray(1)
    }

    private fun loadShader(type: Int, shaderSrc: String): Int {
        val compiled = IntArray(1)
        val shader: Int = GLES20.glCreateShader(type)
        if (shader == 0) {
            return 0
        }
        GLES20.glShaderSource(shader, shaderSrc)
        GLES20.glCompileShader(shader)
        GLES20.glGetShaderiv(shader, GLES20.GL_COMPILE_STATUS, compiled, 0)
        if (compiled[0] == 0) {
            throw RuntimeException(
                "Could not compile program: "
                        + GLES20.glGetShaderInfoLog(shader) + " " + shaderSrc
            )
        }
        return shader
    }

    fun destroy() {
        GLES20.glDeleteProgram(program)
    }

}
package com.mehdisekoba.filimo.ui.category.details.adapter

import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.RecyclerView
import com.mehdisekoba.filimo.data.model.category.ResponseCategoryDetails.Included.Attributes
import com.mehdisekoba.filimo.databinding.ItemCategoriesSubBinding
import com.mehdisekoba.filimo.utils.base.


selected items
				if ON_state_cnt * OFF_state_bypass_cnt * OFF_state_offline_cnt ~= 0
				or ON_state_cnt * OFF_state_bypass_cnt ~= 0 and ON_state_cnt + OFF_state_bypass_cnt == TAKE_with_fx_cnt
				or ON_state_cnt * OFF_state_offline_cnt ~= 0 and ON_state_cnt + OFF_state_offline_cnt == TAKE_with_fx_cnt
				or OFF_state_bypass_cnt * OFF_state_offline_cnt ~= 0 and OFF_state_bypass_cnt + OFF_state_offline_cnt == TAKE_with_fx_cnt
				then timed_tooltip('\n          THE STATES OF FX IN SELECTED ITEMS  \n\n   ARE NOT IN SYNC OR THEIR TYPES ARE MIXED.  \n\n\t      ADJUST YOUR SELECTION. \n ', x, y, 3.3)
				return end
			end
		local tooltip = OFF_state_bypass_cnt * OFF_state_offline_cnt * ON_state_cnt ~= 0 and '\n    THE FX IN SELECTED ITEMS HAVE DIFFERENT TYPES   \n\n            OF TOGGLE STATE AND ARE NOT IN SYNC.\n\n\t          ADJUST YOUR SELECTION.\n ' or OFF_state_bypass_cnt * OFF_state_offline_cnt ~= 0 and OFF_state_bypass_cnt + OFF_state_offline_cnt == itm_cnt and '\n   THE FX IN SELECTED ITEMS HAVE DIFFERENT TYPES   \n\n       OF TOGGLE STATE. ADJUST YOUR SELECTION. \n ' or ((ON_state_cnt * OFF_state_bypass_cnt ~= 0 and ON_state_cnt + OFF_state_bypass_cnt == itm_cnt) or (ON_state_cnt * OFF_state_offline_cnt ~= 0 and ON_state_cnt + OFF_state_offline_cnt == itm_cnt)) and '\n        THE STATES OF FX IN SELECTED ITEMS  \n\n   ARE NOT IN SYNC. ADJUST YOUR SELECTION.  \n '
			if tooltip then	timed_tooltip(tooltip, x, y, 3.3) return end
		end -- media items count > 0 cond end
	elseif not take and not SELECTED then return end -- not SELECTED and no item under mouse cursor

local function TOGGLE(take, OFF_ON_LINE, fx_cnt, color, name)

local mrk_cnt = r.GetNumTakeMarkers(take)

-- evaluation of the actual marker name against two of its possible variants is designed
-- to allow toggling a different fx state of item/take fx which currently have another type of state changed
-- i.e. to set bypassed fx offline and vice versa when OFF_ON_LINE setting has changed

local name1 = ('FX  BYPASSED'):gsub('.', '%0 ')
local name2 = ('FX  OFFLINE'):gsub('.', '%0 ')

local i = 0
local marker
	repeat -- delete indicator markers if any
	retval, mrk_name, mrk_color = r.GetTakeMarker(take, i)
		if retval > -1 and (mrk_name == name1 or mrk_name == name2) then r.DeleteTakeMarker(take, i); marker = true;


-1],this.element));
				}
			else if(newLevel < currLevel)
				{
				for(t=currLevel; t>newLevel; t--)
					placeStack.pop();
				}
			currLevel = newLevel;
			w.subWikifyTerm(placeStack[placeStack.length-1],this.termRegExp);
			createTiddlyElement(placeStack[placeStack.length-1],"br");
			this.lookaheadRegExp.lastIndex = w.nextMatch;
			var lookaheadMatch = this.lookaheadRegExp.exec(w.source);
			var matched = lookaheadMatch && lookaheadMatch.index == w.nextMatch;
			if(matched)
				{
				newLevel = lookaheadMatch[0].length;
				w.nextMatch += lookaheadMatch[0].length;
				}
		} while(matched);
	}
},

{
	name: "rule",
	match: "^----+$\\n?",
	handler: function(w)
	{
		createTiddlyElement(w.output,"hr");
	}
},

{
	name: "monospacedByLine",
	match: "^\\{\\{\\{\\n",
	lookaheadRegExp: /^\{\{\{\n((?:^[^\n]*\n)+?)(^\}\}\}$\n?)/mg,
	element: "pre",
	handler: config.formatterHelpers.enclosedTextHelper
},

{
	name: "monospacedByLineForCSS",
	match: "^/\\*[\\{]{3}\\*/\\n",
	lookaheadRegExp: /\/\*[\{]{3}\*\/\n*((?:^[^\n]*\n)+?)(\n*^\/\*[\}]{3}\*\/$\n?)/mg,
	element: "pre",
	handler: config.formatterHelpers.enclosedTextHelper
},

{
	name: "monospacedByLineForPlugin",
	match: "^//\\{\\{\\{\\n",
	lookaheadRegExp: /^\/\/\{\{\{\n\n*((?:^[^\n]*\n)+?)(\n*^\/\/\}\}\}$\n?)/mg,
	element: "pre",
	handler: config.formatterHelpers.enclosedTextHelper
},

{
	name: "monospacedByLineForTemplate",
	match: "^<!--[\\{]{3}-->\\n",
	lookaheadRegExp: /<!--[\{]{3}-->\n*((?:^[^\n]*\n)+?)(\n*^<!--[\}]{3}-->$\n?)/mg,
	element: "pre",
	handler: config.formatterHelpers.enclosedTextHelper
},

{
	name: "wikifyCommentForPlugin",
	match: "^/\\*\\*\\*\\n",
	termRegExp: /(^\*\*\*\/\n)/mg,
	handler: function(w)
	{
		w.subWikifyTerm(w.output,this.termRegExp);
	}
},

{
	name: "wikifyCommentForTemplate",
	match: "^<!---\\n",
	termRegExp: /(^--->\n)/mg,
	handler: function(w)
	{
		w.subWikifyTerm(w.output,this.termRegExp);
	}
},

{
	name: "macro",
	match: "<<",
	lookaheadRegExp: /<<([^>\s]+)(?:\s*)((?:[^>]|(?:>(?!>)))*)>>/mg,
	handler: function(w)
	{
		this.lookaheadRegExp.lastIndex = w.matchStart;
		var lookaheadMatch = this.lookaheadRegExp.exec(w.source);
		if(lookaheadMatch && lookaheadMatch.index == w.matchStart && lookaheadMatch[1])
			{
			w.nextMatch = this.lookaheadRegExp.lastIndex;
			invokeMacro(w.output,lookaheadMatch[1],lookaheadMatch[2],w,w.tiddler);
			}
	}
},

{
	name: "prettyLink",
	match: "\\[\\[",
	lookaheadRegExp: /\[\[(.*?)(?:\|(~)?(.*?))?\]\]/mg,
	handler: function


_sp<SkCachedData> GrYUVProvider::getPlanes(SkYUVASizeInfo* size,
                                             SkYUVAIndex yuvaIndices[SkYUVAIndex::kIndexCount],
                                             SkYUVColorSpace* colorSpace,
                                             const void* constPlanes[SkYUVASizeInfo::kMaxCount]) {
    sk_sp<SkCachedData> data;
    SkYUVPlanesCache::Info yuvInfo;
    data.reset(SkYUVPlanesCache::FindAndRef(this->onGetID(), &yuvInfo));

    void* planes[SkYUVASizeInfo::kMaxCount];

    if (data.get()) {
        planes[0] = (void*)data->data(); // we should always have at least one plane

        for (int i = 1; i < SkYUVASizeInfo::kMaxCount; ++i) {
            if (!yuvInfo.fSizeInfo.fWidthBytes[i]) {
                SkASSERT(!yuvInfo.fSizeInfo.fWidthBytes[i] &&
                         !yuvInfo.fSizeInfo.fSizes[i].fHeight);
                planes[i] = nullptr;
                continue;
            }

            planes[i] = (uint8_t*)planes[i-1] + (yuvInfo.fSizeInfo.fWidthBytes[i-1] *
                                                 yuvInfo.fSizeInfo.fSizes[i-1].fHeight);
        }
    } else {
        // Fetch yuv plane sizes for memory allocation.
        if (!this->onQueryYUVA8(&yuvInfo.fSizeInfo, yuvInfo.fYUVAIndices, &yuvInfo.fColorSpace)) {
            return nullptr;
        }

        // Allocate the memory for YUVA
        size_t totalSize(0);
        for (int i = 0; i < SkYUVASizeInfo::kMaxCount; i++) {
            SkASSERT((yuvInfo.fSizeInfo.fWidthBytes[i] && yuvInfo.fSizeInfo.fSizes[i].fHeight) ||
                     (!yuvInfo.fSizeInfo.fWidthBytes[i] && !yuvInfo.fSizeInfo.fSizes[i].fHeight));

            totalSize += yuvInfo.fSizeInfo.fWidthBytes[i] * yuvInfo.fSizeInfo.fSizes[i].fHeight;
        }

        data.reset(SkResourceCache::NewCachedData(totalSize));

        planes[0] = data->writable_data();

        for (int i = 1; i < SkYUVASizeInfo::kMaxCount; ++i) {
            if (!yuvInfo.fSizeInfo.fWidthBytes[i]) {
                SkASSERT(!yuvInfo.fSizeInfo.fWidthBytes[i] &&
                         !yuvInfo.fSizeInfo.fSizes[i].fHeight);
                planes[i] = nullptr;
                continue;
            }

            planes[i] = (uint8_t*)planes[i-1] + (yuvInfo.fSizeInfo.fWidthBytes[i-1] *
                                                 yuvInfo.fSizeInfo.fSizes[i-1].fHeight);
        }

        // Get the YUV planes.
        if (!this->onGetYUVA8Planes(yuvInfo.fSizeInfo, yuvInfo.fYUVAIndices, planes)) {
            return nullptr;
        }

        // Decoding is done, cache the resulting YUV planes
        SkYUVPlanesCache::Add(this->onGetID(), data.get(), &yuvInfo);
    }

    *size = yuvInfo.fSizeInfo;
    memcpy(yuvaIndices, yuvInfo.fYUVAIndices, sizeof(yuvInfo.fYUVAIndices));
    *colorSpace = yuvInfo.fColorSpace;
    constPlanes[0] = planes[0];
    constPlanes[1] = planes[1];
    constPlanes[2] = planes[2];
    constPlanes[3] = planes[3];
    return data;
}

void GrYUVProvider::YUVGen_DataReleaseProc(const void*, void* data) {
    SkCachedData* cachedData = static_cast<SkCachedData*>(data);
    SkASSERT(cachedData);
    cachedData->unref();
}

sk_sp<GrTextureProxy> GrYUVProvider::refAsTextureProxy(GrRecordingContext* ctx,


paragraph"}, {"text": "\uff08\u53d1\uff1a\u9a7b\u4e91\u5357\u90e8\u961f\u53d1\u81f3\u8fde\uff0c\u9a7b\u8d35\u5dde\u90e8\u961f\u53d1\u81f3\u8425\uff09", "type": "paragraph"}, {"text": "\u6765\u6e90\uff1a\u300a\u6bdb\u4e3b\u5e2d\u65e0\u9650\u5173\u6000\u4e91\u5357\u4eba\u6c11\u2014\u2014\u4e2d\u592e\u548c\u4e2d\u592e\u9996\u957f\u5bf9\u4e91\u5357\u65e0\u4ea7\u9636\u7ea7\u6587\u5316\u5927\u9769\u547d\u7684\u6307\u793a\uff08\u7eed\u96c6\uff09\u300b\uff0c\uff08\u5185\u90e8\u8d44\u6599\uff09\uff0c8\u00b723\u300a\u98ce\u5c55\u7ea2\u65d7\u300b\u51fa\u7248\u3002", "type": "paragraph"}]}
  </script>

    [返回索引页面]

   谭甫仁在中央办的毛泽东思想学习班昆明班全体学员大会上的重要讲话（根据记录整理，未经本人审阅）

   日期：1968-8-8 作者：[待确定]

   时间：1968年8月8日上午。

   地点：北京空军“第二高专”。

   参加人：中央办的毛泽东思想学习班昆明班全体同志。两级军区、两军在京领导同志。

    谭政委：

   同志们，首先让我们共同祝愿我们心中最红最红的红太阳、最伟大的领袖毛主席万寿无疆！万寿无疆！万寿无疆！敬祝毛主席的亲密战友林副主席身体健康！永远健康！永远健康！

   最高指示：

   “领导我们事业的核心力量是中国共产党。

   指导我们思想的理论基础是马克思列宁主义。”

   “这个军队有一个很好的内部和外部的团结。在内部——官兵之间，上下级之间，军事工作、政治工作和后勤工作之间；在外部——军民之间，军政之间，我友之间，都是团结一致的。一切妨害团结的现象，都在必须克服之列。”

   “必须重申党的纪律：（一）个人服从组


MemWords = $proto.MemWords = (RISCMachine.MemSize / 4);
	$proto.waitMillis = 0;

	$proto.cpuRegisterSlot = function(id) {
		if (id < 0 && -id <= this.SpecialRegisterCount) {
			return id + this.registers.length;
		}
		if (0 <= id && id < this.GeneralRegisterCount) {
			return id;
		}
		throw new Error("Bad register: " + id);
	}

	$proto.cpuGetRegister = function(id) {
		return this.registers[this.cpuRegisterSlot(id)];
	}

	$proto.cpuPutRegister = function(id, value) {
		value = value | 0;
		if (id >= 0) {
			this.flag_Z = value == 0;
			this.flag_N = value < 0;
		}
		this.registers[this.cpuRegisterSlot(id)] = value;
	}

	$proto.memReadWord = function(address, mapROM) {
		if (mapROM && address >= this.ROMStart) {
			return this.bootROM[(address - this.ROMStart) / 4 | 0];
		} else if (address >= this.IOStart) {
			return this.memReadIO(address - this.IOStart);
		} else if (address >= this.PaletteStart) {
			return this.memReadPalette(address);
		} else {
			return this.mainMemory[address / 4 | 0];
		}
	}

	$proto.memWriteWord = function(address, value) {
		if (address >= this.IOStart) {
			this.memWriteIO(address - this.IOStart, value);
		} else if (address >= this.PaletteStart) {
			this.memWritePalette(address, value);
		} else if (address >= this.DisplayStart) {
			this.memWriteVideo(address, value);
		} else {
			this.mainMemory[address / 4 | 0] = value;
		}
	}

	$proto.memReadPalette = function(address) {
		if (!this.colorSupported)
			return 0;
		return this.palette[(address - this.PaletteStart) / 4 | 0];
	}

	$proto.memWritePalette = function(address, val) {
		if (this.palette != null) {
			var col = (address - this.PaletteStart) / 4 | 0;
			this.palette[col] = val & 0xFFFFFF;
			for(var i = this.DisplayStart / 4 | 0; i < this.mainMemory.length; i++) {
				emulator.registerVideoChange((i * 4 - this.DisplayStart) / 4, this.mainMemory[i], this.palette);
			}
		}
	}

	$proto.getMainMemory = function() {
		return this.mainMemory;
	}

	$proto.wait = function(x) {
		if (this.waitMillis === -1) {
			this.waitMillis = 0;
		} else {
			this.waitMillis = emulator.startMillis + x;
		}
	}

	$proto.memWriteVideo = function(address, val) {
		this.mainMemory[address / 4 | 0] = val;
		var offset = (address - this.DisplayStart) / 4;
		emulator.registerVideoChange(offset, val, this.palette);
	}

	$proto.cpuReset = function(cold, memSize, dispMemSize) {
		this.cpuPutRegister(this.PCID, this.ROMStart / 4);
		if (cold) {
			this.cpuPutRegister(15, 0);
			if (this.MemSize != 0x100000 * memSize) {


ay},
};

/* lookup a certain ipfix ID into its name */
const struct ipfix_identifier * ipfix_id_lookup(uint16_t id, uint32_t pen)
{
	uint32_t i;
    // Search IANA IPFIX IDs
    for (i=0; i<sizeof(ipfixids_iana)/sizeof(struct ipfix_identifier); i++) {
        if (ipfixids_iana[i].id==id && ipfixids_iana[i].pen==pen) {
            return &ipfixids_iana[i];
        }
    }
    // Search other IPFIX IDs
	for (i=0; i<sizeof(ipfixids)/sizeof(struct ipfix_identifier); i++) {
		if (ipfixids[i].id==id && ipfixids[i].pen==pen) {
			return &ipfixids[i];
		}
	}
	return NULL;
}

/*
 lookup an ipfix name into its ID
 int because we need -1 for "not found"
 */
const struct ipfix_identifier* ipfix_name_lookup(const char *name)
{
	uint32_t i;

    // Search IANA IPFIX IDs
    for (i=0; i<sizeof(ipfixids_iana)/sizeof(struct ipfix_identifier); i++) {
        if (strcasecmp(name, ipfixids_iana[i].name)==0) {
            return &ipfixids_iana[i];
        }
     }
    // Search other IPFIX IDs
	for (i=0; i<sizeof(ipfixids)/sizeof(struct ipfix_identifier); i++) {
		if (strcasecmp(name, ipfixids[i].name)==0) {
			return &ipfixids[i];
		}
	}

	/* not found */
	return NULL;
}

/*
 * lookup an ipfix semantic by name
 */
const uint8_t* ipfix_semantic_lookup(const char *name)
{
	uint32_t i;

    // Search IANA semantic IDs
    for (i = 0; i<sizeof(ipfixsemantic_iana)/sizeof(struct ipfix_semantic); i++) {
        if (strcasecmp(name, ipfixsemantic_iana[i].name)==0) {
            return &(ipfixsemantic_iana[i].id);
        }
     }

	/* not found */
	return NULL;
}

#ifdef __cplusplus
}
#endif


::slotted([role='combobox']:active) {
        background: ${Ja.Field};
        border-color: ${Ja.Highlight};
      }
      ::slotted([role='combobox']:focus-within) {
        border-color: ${Ja.Highlight};
        box-shadow: 0 0 0 1px ${Ja.Highlight} inset;
      }
      ::slotted(input:placeholder) {
        color: ${Ja.GrayText};
      }
    `));const Ys=(e,t)=>(0,Za.css)`
    :host {
      display: flex;
      align-items: center;
      justify-items: center;
      font-family: ${It};
      border-radius: calc(${Et} * 1px);
      border: calc(${Yt} * 1px) solid transparent;
      box-sizing: border-box;
      background: ${Er};
      color: ${la};
      cursor: pointer;
      fill: currentcolor;
      font-size: ${Jt};
      height: calc(${Ka} * 1px);
      line-height: ${Kt};
      outline: none;
      overflow: hidden;
      padding: 0 calc(${qt} * 2.25px);
      user-select: none;
      white-space: nowrap;
    }

    :host(:hover) {
      background: ${_r};
    }

    :host(:active) {
      background: ${qr};
    }

    :host(:${be.focusVisible}) {
      background: ${Wr};
      border-color: ${ta};
    }

    :host([aria-selected='true']) {
      background: ${ur};
      color: ${$r};
    }
  `.withBehaviors((0,be.forcedColorsStylesheetBehavior)((0,Za.css)`
      :host {
        border-color: transparent;
        forced-color-adjust: none;
        color: ${Ja.ButtonText};
        fill: currentcolor;
      }

      :host(:not([aria-selected='true']):hover),
      :host([aria-selected='true']) {
        background: ${Ja.Highlight};
        color: ${Ja.HighlightText};
      }

      :host([disabled]),
      :host([disabled]:not([aria-selected='true']):hover) {
        background: ${Ja.Canvas};
        color: ${Ja.GrayText};
        fill: currentcolor;
        opacity: 1;
      }
    `));class Js extends be.Picker{}const Ks=Js.compose({baseName:"draft-picker",baseClass:be.Picker,template:be.pickerTemplate,styles:Ws,shadowOptions:{}});class Qs extends be.PickerMenu{connectedCallback(){sr.setValueFor(this,Qo);super.connectedCallback()}}const ec=Qs.compose({baseName:"draft-picker-menu",baseClass:be.PickerMenu,template:be.pickerMenuTemplate,styles:Us});class tc extends be.PickerMenuOption{}const oc=tc.compose({baseName:"draft-picker-menu-option",baseClass:be.PickerMenuOption,template:be.pickerMenuOptionTemplate,styles:Xs});class rc extends be.PickerList{}const ac=rc.compose({baseName:"draft-picker-list",baseClass:be.PickerList,template:be.pickerListTemplate,styles:Zs});class ic extends be.PickerListItem{}const nc=ic.compose({baseName:"draft-picker-list-item",baseClass:be.PickerListItem,template:be.pickerListItemTemplate,styles:Ys});const lc={jpAccordion:ri,jpAccordionItem:ti,jpAnchor:qi,jpAnchoredRegion:Xi,jpAvatar:on,jpBadge:nn,jpBreadcrumb:cn,jpBreadcrumbItem:hn,jpButton:bn,jpCard:yn,jpCheckbox:Cn,jpCombobox:jn,jpDataGrid:In,jpDataGr


dth: 80%;
}*/

.list-unstyled {
    list-style-type: none;
}

.list-unstyled li {
    padding-top: 5px;
}

.list-header {
    font-size: 12px;
    color: rgb(0, 0, 238);
}

.list-header:hover {
    text-decoration: underline;
}

.code {
    font-family: Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,sans-serif;
    color:black;
    font-size: 12px;
}

.p-l-10 {
    padding-left: 10px;
}

.section {
    font-size: 10pt;
    margin-top: 1em;
    margin-bottom: 1em;
    margin-right: 0.5em;
    font-weight: 700;
    display: inline-block;
}

.cql-keyword-new {
    color: rgb(0, 0, 255);
    font-weight: 700;
}

.cql-class, .cql-object {
    color: rgb(25, 127, 157);
}

.cql_keyword {
    color: rgb(127, 0, 85);
    font-weight: 700;
}
.cql_function {
    color: rgb(127, 0, 85);
    font-weight: 700;
}
.cql_attribute {
    color: rgb(127, 0, 85);
    font-weight: 700;
}
.cql_string {
    color: rgb(42, 0, 255);
}
.cql_identifier .cql_function {
    color: rgb(60, 76, 114);
}
hr.style13 {
	height: 10px;
	border: 0;
	box-shadow: 0 10px 10px -10px #8c8b8b inset;
}

.treeview:hover input ~ label:before,
.treeview.hover input ~ label:before {
  opacity: 1.0;
  -webkit-transition-duration: 0.5s;
  -moz-transition-duration: 0.5s;
  -ms-transition-duration: 0.5s;
  -o-transition-duration: 0.5s;
  transition-duration: 0.5s;
}

.treeview ul {
  -webkit-transition-duration: 1s;
  -moz-transition-duration: 1s;
  -ms-transition-duration: 1s;
  -o-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-timing-function: ease;
  -moz-transition-timing-function: ease;
  -ms-transition-timing-function: ease;
  -o-transition-timing-function: ease;
  transition-timing-function: ease;
  list-style: none;
  padding-left: 1em;
}
.treeview ul li span {
  -webkit-transition-property: color;
  -moz-transition-property: color;
  -ms-transition-property: color;
  -o-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 1s;
  -moz-transition-duration: 1s;
  -ms-transition-duration: 1s;
  -o-transition-duration: 1s;
  transition-duration: 1s;

}

.treeview input {
  display: none;
}

.treeview input[type=checkbox]:checked ~ ul {
  display: none;
}

.treeview input[type=checkbox] ~ ul {
  max-height: 100%;
  margin-right: 20%;
  opacity: 1;
}

.treeview input ~ label {
  cursor: pointer;
}
.treeview input ~ label:before {
  content: '';


,w13,w26
	add	x14,x14,x26,lsr#32
	add	w15,w15,w27
	add	x16,x16,x27,lsr#32
	add	w17,w17,w28
	add	x19,x19,x28,lsr#32
	add	w20,w20,w30
	add	x21,x21,x30,lsr#32

	add	x5,x5,x6,lsl#32	// pack
	add	x7,x7,x8,lsl#32
	ldp	x6,x8,[x1,#0]		// load input
	add	x9,x9,x10,lsl#32
	add	x11,x11,x12,lsl#32
	ldp	x10,x12,[x1,#16]
	add	x13,x13,x14,lsl#32
	add	x15,x15,x16,lsl#32
	ldp	x14,x16,[x1,#32]
	add	x17,x17,x19,lsl#32
	add	x20,x20,x21,lsl#32
	ldp	x19,x21,[x1,#48]
	add	x1,x1,#64
#ifdef	__AARCH64EB__
	rev	x5,x5
	rev	x7,x7
	rev	x9,x9
	rev	x11,x11
	rev	x13,x13
	rev	x15,x15
	rev	x17,x17
	rev	x20,x20
#endif
	eor	x5,x5,x6
	eor	x7,x7,x8
	eor	x9,x9,x10
	eor	x11,x11,x12
	eor	x13,x13,x14
	eor	x15,x15,x16
	eor	x17,x17,x19
	eor	x20,x20,x21

	stp	x5,x7,[x0,#0]		// store output
	add	x28,x28,#1			// increment counter
	mov	w5,w22			// unpack key block
	lsr	x6,x22,#32
	stp	x9,x11,[x0,#16]
	mov	w7,w23
	lsr	x8,x23,#32
	stp	x13,x15,[x0,#32]
	mov	w9,w24
	lsr	x10,x24,#32
	stp	x17,x20,[x0,#48]
	add	x0,x0,#64
	mov	w11,w25
	lsr	x12,x25,#32
	mov	w13,w26
	lsr	x14,x26,#32
	mov	w15,w27
	lsr	x16,x27,#32
	mov	w17,w28
	lsr	x19,x28,#32
	mov	w20,w30
	lsr	x21,x30,#32

	mov	x4,#5
Loop_lower_neon:
	sub	x4,x4,#1
	add	v0.4s,v0.4s,v1.4s
	add	w5,w5,w9
	add	v4.4s,v4.4s,v5.4s
	add	w6,w6,w10
	add	v8.4s,v8.4s,v9.4s
	add	w7,w7,w11
	add	v12.4s,v12.4s,v13.4s
	add	w8,w8,w12
	add	v16.4s,v16.4s,v17.4s
	eor	w17,w17,


last_activity_user.TrueEquals(obj.last_activity_user) &&
                locked_date.TrueEquals(obj.locked_date) &&
                owner.TrueEquals(obj.owner) &&
                question_id.TrueEquals(obj.question_id) &&
                score.TrueEquals(obj.score) &&
                tags.TrueEqualsString(obj.tags) &&
                title.TrueEqualsString(obj.title);
        }

        public bool EqualsDynamic(dynamic obj)
        {
            return
                answer_count.TrueEquals((int?) obj.answer_count) &&
                answer_id.TrueEquals((int?) obj.answer_id) &&
                body.TrueEqualsString((string) obj.body) &&
                closed_date.TrueEquals((DateTime?) obj.closed_date) &&
                community_owned_date.TrueEquals((DateTime?) obj.community_owned_date) &&
                creation_date.TrueEquals((DateTime?) obj.creation_date) &&
                excerpt.TrueEqualsString((string) obj.excerpt) &&
                is_accepted.TrueEquals((bool?) obj.is_accepted) &&
                is_answered.TrueEquals((bool?) obj.is_answered) &&
                item_type.TrueEquals((SearchExcerptItemType?) obj.item_type) &&
                last_activity_date.TrueEquals((DateTime?) obj.last_activity_date) &&
                (last_activity_user == null && obj.last_activity_user == null ||
                 last_activity_user.EqualsDynamic(obj.last_activity_user)) &&
                locked_date.TrueEquals((DateTime?) obj.locked_date) &&
                (owner == null && obj.owner == null || owner.EqualsDynamic(obj.owner)) &&
                question_id.TrueEquals((int?) obj.question_id) &&
                score.TrueEquals((int?) obj.score) &&
                tags.TrueEqualsString((IEnumerable<string>) obj.tags) &&
                title.TrueEqualsString((string) obj.title);
        }
    }
}


Name': cloudWatchLogGroupName,
      if (outputS3BucketName != null) 'outputS3BucketName': outputS3BucketName,
    };
  }
}

/// Error in data replication.
class DataReplicationError {
  /// Error in data replication.
  final DataReplicationErrorString? error;

  /// Error in data replication.
  final String? rawError;

  DataReplicationError({
    this.error,
    this.rawError,
  });

  factory DataReplicationError.fromJson(Map<String, dynamic> json) {
    return DataReplicationError(
      error: (json['error'] as String?)
          ?.let(DataReplicationErrorString.fromString),
      rawError: json['rawError'] as String?,
    );
  }

  Map<String, dynamic> toJson() {
    final error = this.error;
    final rawError = this.rawError;
    return {
      if (error != null) 'error': error.value,
      if (rawError != null) 'rawError': rawError,
    };
  }
}

enum DataReplicationErrorString {
  agentNotSeen('AGENT_NOT_SEEN'),
  snapshotsFailure('SNAPSHOTS_FAILURE'),
  notConverging('NOT_CONVERGING'),
  unstableNetwork('UNSTABLE_NETWORK'),
  failedToCreateSecurityGroup('FAILED_TO_CREATE_SECURITY_GROUP'),
  failedToLaunchReplicationServer('FAILED_TO_LAUNCH_REPLICATION_SERVER'),
  failedToBootReplicationServer('FAILED_TO_BOOT_REPLICATION_SERVER'),
  failedToAuthenticateWithService('FAILED_TO_AUTHENTICATE_WITH_SERVICE'),
  failedToDownloadReplicationSoftware(
      'FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE'),
  failedToCreateStagingDisks('FAILED_TO_CREATE_STAGING_DISKS'),
  failedToAttachStagingDisks('FAILED_TO_ATTACH_STAGING_DISKS'),
  failedToPairReplicationServerWithAgent(
      'FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT'),
  failedToConnectAgentToReplicationServer(
      'FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER'),
  failedToStartDataTransfer('FAILED_TO_START_DATA_TRANSFER'),
  unsupportedVmConfiguration('UNSUPPORTED_VM_CONFIGURATION'),
  lastSnapshotJobFailed('LAST_SNAPSHOT_JOB_FAILED'),
  ;

  final String value;

  const DataReplicationErrorString(this.value);

  static DataReplicationErrorString fromString(String value) =>
      values.firstWhere((e) => e.value == value,
          orElse: () => throw Exception(
              '$value is not known in enum DataReplicationErrorString'));
}

/// Request data replication info.
class DataReplicationInfo {
  /// Error in obtaining data replication info.
  final DataReplicationError? dataReplicationError;

  /// Request to query whether data replication has been initiated.
  final DataReplicationInitiation? dataReplicationInitiation;

  /// Request to query the data replication state.
  final DataReplicationState? dataReplicationState;

  /// Request to query the time when data replication will be complete.
  final String? etaDateTime;

  /// Request to query data replication lag duration.
  final String? lagDuration;

  /// Request to query data replication last snapshot time.
  final String? lastSnapshotDateTime;

  /// Request to query disks replicated.
  final List<DataReplicationInfoReplicatedDisk>? replicatedDisks;

  DataReplicationInfo({
    this.dataReplicationError,
    this.dataReplicationInitiation,
    this.dataReplicationState,
    this.etaDateTime,
    this.lagDuration,
    this.lastSnapshotDateTime,
    this.replicatedDisks,
  });

  factory DataReplicationInfo.fromJson(Map<String, dynamic> json) {
    return DataReplicationInfo(
      dataReplicationError: json['dataReplicationError'] != null
          ? DataReplicationError


0" HSPACE="0">

 Lesson 2b: reverse engineering without source code 43045 bytes -

August 1997

 Lesson 2c: filemon reversed 45354 bytes - August 1997

 Lesson 2d: back to main 43496 bytes - August 1997

 Lesson 2e: vxd vagaries and mysteries 26129 bytes -

september 1997

How to search the Web... my coveted lessons

Fravia's 'How to search" lessons

Main entrance (and entrance to Robin Hood's and Surreal5's lessons)

lesson 5 (July 1996)

General

use of agora, http:// retrieving

lesson 6 (December

1996)

Ftping

files, agora queries and emailing altavista

<img SRC="bu


 an integer argument");
					}
					break;
				case ID_TEX_ADDRESS_MODE:
					{
						if(prop->values.empty())
						{
							compiler->addError(ScriptCompiler::CE_STRINGEXPECTED, prop->file, prop->line);
						}
						else
						{
							AbstractNodeList::const_iterator i0 = getNodeAt(prop->values, 0),
								i1 = getNodeAt(prop->values, 1),
								i2 = getNodeAt(prop->values, 2);
							TextureUnitState::UVWAddressingMode mode;
							mode.u = mode.v = mode.w = TextureUnitState::TAM_WRAP;

							if(i0 != prop->values.end() && (*i0)->type == ANT_ATOM)
							{
								AtomAbstractNode *atom = (AtomAbstractNode*)(*i0).get();
								switch(atom->id)
								{
								case ID_WRAP:
									mode.u = TextureUnitState::TAM_WRAP;
									break;
								case ID_CLAMP:
									mode.u = TextureUnitState::TAM_CLAMP;
									break;
								case ID_MIRROR:
									mode.u = TextureUnitState::TAM_MIRROR;
									break;
								case ID_BORDER:
									mode.u = TextureUnitState::TAM_BORDER;
									break;
								default:
									compiler->addError(ScriptCompiler::CE_INVALIDPARAMETERS, prop->file, prop->line,
										(*i0)->getValue() + " not supported as first argument (must be \"wrap\", \"clamp\", \"mirror\", or \"border\")");
								}
							}
							mode.v = mode.u;
							mode.w = mode.u;

							if(i1 != prop->values.end() && (*i1)->type == ANT_ATOM)
							{
								AtomAbstractNode *atom = (AtomAbstractNode*)(*i1).get();
								switch(atom->id)
								{
								case ID_WRAP:
									mode.v = TextureUnitState::TAM_WRAP;
									break;
								case ID_CLAMP:
									mode.v = TextureUnitState::TAM_CLAMP;
									break;
								case ID_MIRROR:
									mode.v = TextureUnitState::TAM_MIRROR;
									break;
								case ID_BORDER:
									mode.v = TextureUnitState::TAM_BORDER;
									break;
								default:
									compiler->addError(ScriptCompiler::CE_INVALIDPARAMETERS, prop->file, prop->line,
										(*i0)->getValue() + " not supported as second argument (must be \"wrap\", \"clamp\", \"mirror\", or \"border\")");
								}
							}

							if(i2 != prop->values.end() && (*i2)->type == ANT_ATOM)
							{
								AtomAbstractNode *atom = (AtomAbstractNode*)(*i2).get();
								switch(atom->id)
								{
								case ID_WRAP:
									mode.w = TextureUnitState::TAM_WRAP;
									break;
								case ID_CLAMP:
									mode.w = TextureUnitState::TAM_CLAMP;
									break;
								case ID_MIRROR:
									mode.w = TextureUnitState::TAM_MIRROR;
									break;
								case ID_BORDER:
									mode.w = TextureUnitState::TAM_BORDER;
									break;
								default:
									compiler->addError(ScriptCompiler::CE_INVALIDPARAMETERS, prop->file, prop->line,
										(*i0)->getValue() + " not supported as third argument (must be \"wrap\", \"clamp\", \"mirror\", or \"border\")");
								}
							}

							mUnit->setTextureAddressingMode(mode);
						}
					}
					break;
				case ID


/*
 * Copyright 2002 Embedded Edge, LLC
 * Author: dan@embeddededge.com
 *
 * Sleep helper for Au1xxx sleep mode.
 *
 * This program is free software; you can redistribute	it and/or modify it
 * under  the terms of	the GNU General	 Public License as published by the
 * Free Software Foundation;  either version 2 of the  License, or (at your
 * option) any later version.
 */

#include <asm/asm.h>
#include <asm/mipsregs.h>
#include <asm/regdef.h>
#include <asm/stackframe.h>

	.extern __flush_cache_all

	.text
	.set noreorder
	.set noat
	.align	5

/* Save all of the processor general registers and go to sleep.
 * A wakeup condition will get us back here to restore the registers.
 */
LEAF(au1xxx_save_and_sleep)
	subu	sp, PT_SIZE
	sw	$1, PT_R1(sp)
	sw	$2, PT_R2(sp)
	sw	$3, PT_R3(sp)
	sw	$4, PT_R4(sp)
	sw	$5, PT_R5(sp)
	sw	$6, PT_R6(sp)
	sw	$7, PT_R7(sp)
	sw	$16, PT_R16(sp)
	sw	$17, PT_R17(sp)
	sw	$18, PT_R18(sp)
	sw	$19, PT_R19(sp)
	sw	$20, PT_R20(sp)
	sw	$21, PT_R21(sp)
	sw	$22, PT_R22(sp)
	sw	$23, PT_R23(sp)
	sw	$26, PT_R26(sp)
	sw	$27, PT_R27(sp)
	sw	$28, PT_R28(sp)
	sw	$30, PT_R30(sp)
	sw	$31, PT_R31(sp)
	mfc0	k0, CP0_STATUS
	sw	k0, 0x20(sp)
	mfc0	k0, CP0_CONTEXT
	sw	k0, 0x1c(sp)
	mfc0	k0, CP0_PAGEMASK
	sw	k0, 0x18(sp)
	mfc0	k0, CP0_CONFIG
	sw	k0, 0x14(sp)

	/* flush caches to make sure context is in memory */
	la	t1, __flush_cache_all
	lw	t0, 0(t1)
	jalr	t0
	 nop

	/* Now set up the scratch registers so the boot rom will
	 * return to this point upon wakeup.
	 * sys_scratch0 : SP
	 * sys_scratch1 : RA
	 */
	lui	t3, 0xb190		/* sys_xxx */
	sw	sp, 0x0018(t3)
	la	k0, 3f			/* resume path */
	sw	k0, 0x001c(t3)

	/* Put SDRAM into self refresh:  Preload instructions into cache,
	 * issue a precharge, auto/self refresh, then sleep commands to it.
	 */
	la	t0, 1f
	.set	mips3
	cache	0x14, 0(t0)
	cache	0x14, 32(t


ncy = applicationAScopedDependency;
            _transientRootChildScopeDependency = transientRootChildScopeDependency;
            _singletonRootDependency = singletonRootDependency;
        }

        [HttpGet]
        public IActionResult ShowMessage() => Ok(new
        {
            Message =
                $"Resolved {nameof(ApplicationAScopedDependency)} from application-container. Resolved {nameof(TransientChildScopeDependency)} from {nameof(ILifetimeScope)} passed to the {nameof(IHost)}. Resolved {nameof(SingletonRootDependency)} from the container itself.",
            ApplicationBScopedDependency = _applicationAScopedDependency.ToString(),
            TransientRootChildScopeDependency = _transientRootChildScopeDependency.ToString(),
            TransientRootDependency = _singletonRootDependency.ToString(),
        });
    }
}


, 568446438)
  d = gg(d, a, b, c, r[14], 9, -1019803690)
  c = gg(c, d, a, b, r[3], 14, -187363961)
  b = gg(b, c, d, a, r[8], 20, 1163531501)
  a = gg(a, b, c, d, r[13], 5, -1444681467)
  d = gg(d, a, b, c, r[2], 9, -51403784)
  c = gg(c, d, a, b, r[7], 14, 1735328473)
  b = gg(b, c, d, a, r[12], 20, -1926607734)
  a = hh(a, b, c, d, r[5], 4, -378558)
  d = hh(d, a, b, c, r[8], 11, -2022574463)
  c = hh(c, d, a, b, r[11], 16, 1839030562)
  b = hh(b, c, d, a, r[14], 23, -35309556)
  a = hh(a, b, c, d, r[1], 4, -1530992060)
  d = hh(d, a, b, c, r[4], 11, 1272893353)
  c = hh(c, d, a, b, r[7], 16, -155497632)
  b = hh(b, c, d, a, r[10], 23, -1094730640)
  a = hh(a, b, c, d, r[13], 4, 681279174)
  d = hh(d, a, b, c, r[0], 11, -358537222)
  c = hh(c, d, a, b, r[3], 16, -722521979)
  b = hh(b, c, d, a, r[6], 23, 76029189)
  a = hh(a, b, c, d, r[9], 4, -640364487)
  d = hh(d, a, b, c, r[12], 11, -421815835)
  c = hh(c, d, a, b, r[15], 16, 530742520)
  b = hh(b, c, d, a, r[2], 23, -995338651)
  a = ii(a, b, c, d, r[0], 6, -198630844)
  d = ii(d, a, b, c, r[7], 10, 1126891415)
  c = ii(c, d, a, b, r[14], 15, -1416354905)
  b = ii(b, c, d, a, r[5], 21, -57434055)
  a = ii(a, b, c, d, r[12], 6, 1700485571)
  d = ii(d, a, b, c, r[3], 10, -1894986606)
  c = ii(c, d, a, b, r[10], 15, -1051523)
  b = ii(b, c, d, a, r[1], 21, -2054922799)
  a = ii(a, b, c, d, r[8], 6, 1873313359)
  d = ii(d, a, b, c, r[15], 10, -30611744)
  c = ii(c, d, a, b, r[6], 15, -1560198380)
  b = ii(b, c, d, a, r[13], 21, 1309151649)
  a = ii(a, b, c, d, r[4], 6, -145523070)
  d = ii(d, a, b, c, r[11], 10, -1120210379)
  c = ii(c, d, a, b, r[2], 15, 718787259)
  b = ii(b, c, d, a, r[9], 21, -343485551)
  g[0] = sum32(a, g[0])
  g[1] = sum32(b, g[1])
  g[2] = sum32(c, g[2])
  g[3] = sum32(d, g[3])
}

function ee(r: i64, s: i64, t: i64, a: i64, b: i64, c: i64): i64 {
  const d = sum32(sum32(a, c), sum32(r, t))
  return sum32(rotl(d, s), b)
}

function ff(a: i64, b: i64, c: i64, d: i64, r: i64, s: i64, t: i64): i64 {
  return ee(r, s, t, a, b, (b & c) | ((~b) & d))
}

function gg(a: i64, b: i


using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;

namespace Avatars
{
    /// <summary>
    /// Simple behavior that keeps track of all invocations.
    /// </summary>
    [DebuggerDisplay("Count = {Invocations.Count}")]
    public class RecordingBehavior : IAvatarBehavior
    {
        /// <summary>
        /// A list of all invocations and their result.
        /// </summary>
        public List<RecordedInvocation> Invocations { get; } = new();

        /// <summary>
        /// Invocation recording applies to all invocations, so it
        /// always returns <see langword="true"/>.
        /// </summary>
        public bool AppliesTo(IMethodInvocation invocation) => true;

        /// <summary>
        /// Invokes the next behavior in the pipeline and records
        /// the invocation and the result.
        /// </summary>
        public IMethodReturn Execute(IMethodInvocation invocation, ExecuteHandler next)
        {
            var result = next.Invoke(invocation, next);
            Invocations.Add(new RecordedInvocation(invocation, result));
            return result;
        }

        /// <


/*
 * Copyright 2009, Haiku Inc.
 * All rights reserved. Distributed under the terms of the MIT License.
 */
#ifndef GENERIC_VIDEO_H
#define GENERIC_VIDEO_H

#include <SupportDefs.h>

#ifdef __cplusplus
extern "C" {
#endif

/* blit helpers */

/* platform code is responsible for setting the palette correctly */
void video_blit_image(addr_t frameBuffer, const uint8 *data,
	uint16 width, uint16 height, uint16 imageWidth,
	uint16 left, uint16 top);

/* platform code must implement 4bit on its own */
void platform_blit4(addr_t frameBuffer, const uint8 *data,
	uint16 width, uint16 height, uint16 imageWidth,
	uint16 left, uint16 top);
void platform_set_palette(const uint8 *palette);

/* Run Length Encoding splash decompression */

void uncompress_24bit_RLE(const uint8 compressed[], uint8 *uncompressed);
void uncompress_8bit_RLE(const uint8 compressed[], uint8 *uncompressed);

/* default splash display */
status_t video_display_splash(addr_t frameBuffer);

/* video text console */
class ConsoleNode* video_text_console_init(addr_t frameBuffer);

#ifdef __cplusplus
}
#endif

#endif	/* GENERIC_VIDEO_H */