structures:villages/dark_forest/crop_randomizer"), cropProcessor, processorListRegistry);
		addNewRuleToProcessorList(ResourceLocation.tryParse("repurposed_structures:villages/giant_taiga/crop_randomizer"), cropProcessor, processorListRegistry);
		addNewRuleToProcessorList(ResourceLocation.tryParse("repurposed_structures:villages/jungle/crop_randomizer"), cropProcessor, processorListRegistry);
		addNewRuleToProcessorList(ResourceLocation.tryParse("repurposed_structures:villages/mountains/crop_randomizer"), cropProcessor, processorListRegistry);
		addNewRuleToProcessorList(ResourceLocation.tryParse("repurposed_structures:villages/oak/crop_randomizer"), cropProcessor, processorListRegistry);
		addNewRuleToProcessorList(ResourceLocation.tryParse("repurposed_structures:villages/swamp/crop_randomizer"), cropProcessor, processorListRegistry);
	}

	private static void addNewRuleToProcessorList(ResourceLocation targetProcessorList, StructureProcessor processorToAdd, Registry<StructureProcessorList> processorListRegistry) {
		processorListRegistry.getOptional(targetProcessorList)
				.ifPresent(processorList -> {
					List<StructureProcessor> newSafeList = new ArrayList<>(processorList.list());
					newSafeList.add(processorToAdd);
					processorList.list = newSafeList; //Have to use an AT to be able to modify the list (or Accessor Mixin)
				});
	}
}
///*
// * This file ("BookletPage.java") is part of the Actually Additions mod for Minecraft.
// * It is created and owned by Ellpeck and distributed
// * under the Actually Additions License to be found at
// * http://ellpeck.de/actaddlicense
// * View the source code at https://github.com/Ellpeck/ActuallyAdditions
// *
// * © 2015-2017 Ellpeck
// */
//
//package de.ellpeck.actuallyadditions.mod.booklet.page;
//
//import de.ellpeck.actuallyadditions.api.booklet.IBookletChapter;
//import de.ellpeck.actuallyadditions.api.booklet.IBookletPage;
//import de.ellpeck.actuallyadditions.api.booklet.internal.GuiBookletBase;
//import de.ellpeck.actuallyadditions.mod.ActuallyAdditions;
//import de.ellpeck.actuallyadditions.mod.util.StringUtil;
//import net.minecraft.block.Block;
//import net.minecraft.client.gui.widget.button.Button;
//import net.minecraft.fluid.Fluid;
//import net.minecraft.item.ItemStack;
//import net.minecraft.util.text.TextFormatting;
//import net.minecraftforge.api.distmarker.Dist;
//import net.minecraftforge.api.distmarker.OnlyIn;
//import net.minecraftforge.fluids.FluidStack;
//
//import java.util.*;
//
//public class BookletPage implements IBookletPage {
//
//    protected final HashMap<String, String> textReplacements = new HashMap<>();
//    protected final int localizationKey;
//    private final int priority;
//    private final List<ItemStack> itemsForPage = new ArrayList<>();
//    private final List<FluidStack> fluidsForPage = new ArrayList<>();
//    protected IBookletChapter chapter;
//    protected boolean hasNoText;
//
//    public BookletPage(int localizationKey) {
//        this(localizationKey, 0);
//    }
//
//    public BookletPage(int localizationKey, int priority) {
//        this.localizationKey = localizationKey;
//        this.priority = priority;
//    }
//
//    @Override
//    public void getItemStacksForPage(List<ItemStack> list) {
//        list.addAll(th


/*  Bluetooth Mesh */

/*
 * Copyright (c) 2017 Intel Corporation
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#ifndef _FRIEND_H_
#define _FRIEND_H_

enum bt_mesh_friend_pdu_type {
    BLE_MESH_FRIEND_PDU_SINGLE,
    BLE_MESH_FRIEND_PDU_PARTIAL,
    BLE_MESH_FRIEND_PDU_COMPLETE,
};

bool bt_mesh_friend_match(u16_t net_idx, u16_t addr);

struct bt_mesh_friend *bt_mesh_friend_find(u16_t net_idx, u16_t lpn_addr,
        bool valid, bool established);

bool bt_mesh_friend_queue_has_space(u16_t net_idx, u16_t src, u16_t dst,
                                    u64_t *seq_auth, u8_t seg_count);

void bt_mesh_friend_enqueue_rx(struct bt_mesh_net_rx *rx,
                               enum bt_mesh_friend_pdu_type type,
                               u64_t *seq_auth, u8_t seg_count,
                               struct net_buf_simple *sbuf);
bool bt_mesh_friend_enqueue_tx(struct bt_mesh_net_tx *tx,
                               enum bt_mesh_friend_pdu_type type,
                               u64_t *seq_auth, u8_t seg_count,
                               struct net_buf_simple *sbuf);

void bt_mesh_friend_clear_incomplete(struct bt_mesh_subnet *sub, u16_t src,
                                     u16_t dst, u64_t *seq_auth);

void bt_mesh_friend_sec_update(u16_t net_idx);

void bt_mesh_friend_clear_net_idx(u16_t net_idx);

int bt_mesh_friend_poll(struct bt_mesh_net_rx *rx, struct net_buf_simple *buf);
int bt_mesh_friend_req(struct bt_mesh_net_rx *rx, struct net_buf_simple *buf);
int bt_mesh_friend_clear(struct bt_mesh_net_rx *rx, struct net_buf_simple *buf);
int bt_mesh_friend_clear_cfm(struct bt_mesh_net_rx *rx,
                             struct net_buf_simple *buf);
int bt_mesh_friend_sub_add(struct bt_mesh_net_rx *rx,
                           struct net_buf_simple *buf);
int bt_mesh_friend_sub_rem(struct bt_mesh_net_rx *rx,
                           struct net_buf_simple *buf);

int bt_mesh_friend_init(void);

#endif /* _FRIEND_H_ */


ErrorMinifyingFile(null, e);
            }
        }

        public static event EventHandler<MinifyFileEventArgs> BeforeWritingMinFile;
        public static event EventHandler<MinifyFileEventArgs> AfterWritingMinFile;
        public sta


stackTrace) {
              if (_isBound) {
                // A new stream takes over - forward errors to that stream.
                _controllerCompleter!.completeError(error, stackTrace);
                _controllerCompleter = null;
                _controllerInstance = null;
              } else {
                // No new stream. No need to close target, as it has already
                // failed.
                _completeDoneError(error, stackTrace);
              }
            },
          );
    }
    return _controllerInstance!;
  }
}

class _IOSinkImpl extends _StreamSinkImpl<List<int>> implements IOSink {
  Encoding _encoding;
  bool _encodingMutable = true;

  final _HttpProfileData? _profileData;
  _IOSinkImpl(
    StreamConsumer<List<int>> target,
    this._encoding,
    this._profileData,
  ) : super(target);

  Encoding get encoding => _encoding;

  void set encoding(Encoding value) {
    if (!_encodingMutable) {
      throw StateError("IOSink encoding is not mutable");
    }
    _encoding = value;
  }

  void _writeString(String string) {
    Uint8List? utf8Encoding;
    _profileData?.appendRequestData(utf8Encoding = utf8.encode(string));
    super.add(
      utf8Encoding != null && identical(_encoding, utf8)
          ? utf8Encoding
          : _encoding.encode(string),
    );
  }

  void write(Object? obj) {
    String string = '$obj';
    if (string.isEmpty) return;
    _writeString(string);
  }

  void writeAll(Iterable objects, [String separator = ""]) {
    Iterator iterator = objects.iterator;
    if (!iterator.moveNext()) return;
    if (separator.isEmpty) {
      do {
        write(iterator.current);
      } while (iterator.moveNext());
    } else {
      write(iterator.current);
      while (iterator.moveNext()) {
        write(separator);
        write(iterator.current);
      }
    }
  }

  void writeln([Object? object = ""]) {
    write('$object\n');
  }

  void writeCharCode(int charCode) {
    write(String.fromCharCode(charCode));
  }
}

abstract class _HttpOutboundMessage<T> extends _IOSinkImpl {
  // Used to mark when the body should be written. This is used for HEAD
  // requests and in error handling.
  bool _encodingSet = false;

  bool _bufferOutput = true;

  final Uri _uri;
  final _HttpOutgoing _outgoing;

  final _HttpHeaders headers;

  _HttpOutboundMessage(
    Uri uri,
    String protocolVersion,
    _HttpOutgoing outgoing,
    _HttpProfileData? profileData, {
    _HttpHeaders? initialHeaders,
  }) : _uri = uri,
       headers = _HttpHeaders(
         protocolVersion,
         defaultPortForScheme: uri.isScheme('https')
             ? HttpClient.defaultHttpsPort
             : HttpClient.defaultHttpPort,
         initialHeaders: initialHeaders,
       ),
       _outgoing = outgoing,
       super(outgoing, latin1, profileData) {
    _outgoing.outbound = this;
    _encodingMutable = false;
  }

  int get contentLength => headers.contentLength;
  void set contentLength(int contentLength) {
    headers.contentLength = contentLength;
  }

  bool get persistentConnection => headers.persistentConnection;
  void set persistentConnection(bool p) {
    headers.persistentConnection = p;
  }

  bool get bufferOutput => _bufferOutput;
  void set bufferOutput(bool bufferOutput) {
    if (_outgoing.headersWritten) throw StateError("Header already sent");
    _bufferOutput = bufferOutput;
  }

  Encoding get encoding {
    if (_encodingSet && _outgoing.headersWritten) {
      return _encoding;
    }
    String charset;


.put("[疑问]", R.drawable.d_yiwen);

        general.put("[神马]", R.drawable.f_shenma);
        general.put("[最右]", R.drawable.d_zuiyou);

        general.put("[赞]", R.drawable.h_zan);
        general.put("[心]", R.drawable.l_xin);
        // general.put("[伤心]", R.drawable.unheart);
        // general.put("[囧]", R.drawable.j_org);
        general.put("[奥特曼]", R.drawable.d_aoteman);
        general.put("[蜡烛]", R.drawable.o_lazhu);
        general.put("[蛋糕]", R.drawable.o_dangao);
        general.put("[弱]", R.drawable.h_ruo);
        general.put("[ok]", R.drawable.h_ok);
        general.put("[耶]", R.drawable.h_ye);

        general.put("[威武]", R.drawable.f_v5);
        // general.put("[猪头]", R.drawable.face281);
        // general.put("[月亮]", R.drawable.face18);
        // general.put("[浮云]", R.drawable.face229);
        // general.put("[咖啡]", R.drawable.face74);
        // general.put("[爱心传递]", R.drawable.face221);
        general.put("[来]", R.drawable.h_lai);

        general.put("[熊猫]", R.drawable.d_xiongmao);
        // general.put("[帅]", R.drawable.face94);
        // general.put("[不要]", R.drawable.face274);

        general.put("[笑cry]", R.drawable.lxh_xiaocry);

        /**
         * huahua emotion
         */
        huahua.put("[笑哈哈]", R.drawable.lxh_xiaohaha);
        huahua.put("[好爱哦]", R.drawable.lxh_haoaio);
        huahua.put("[噢耶]", R.drawable.lxh_oye);
        huahua.put("[偷乐]", R.drawable.lxh_toule);
        huahua.put("[泪流满面]", R.drawable.lxh_leiliumanmian);
        huahua.put("[巨汗]", R.drawable.lxh_juhan);
        huahua.put("[抠鼻屎]", R.drawable.lxh_koubishi);
        huahua.put("[求关注]", R.drawable.lxh_qiuguanzhu);
        huahua.put("[好喜欢]", R.drawable.lxh_haoxihuan);
        huahua.put("[崩溃]", R.drawable.lxh_bengkui);
        huahua.put("[好囧]", R.drawable.lxh_haojiong);
        huahua.put("[震惊]", R.drawable.lxh_zhenjing);
        huahua.put("[别烦我]", R.drawable.lxh_biefanwo);
        huahua.put("[不好意思]", R.drawable.lxh_buhaoyisi);
        huahua.put("[羞嗒嗒]", R.drawable.lxh_xiudada);
        huahua.put("[得意地笑]", R.drawable.lxh_deyidexiao);
        huahua.put("[纠结]", R.drawable.lxh_jiujie);
        huahua.put("[给劲]", R.drawable.lxh_feijin);
        huahua.put("[悲催]", R.drawable.lxh_beicui);
        huahua.put("[甩甩手]", R.drawable.lxh_shuaishuaishou);
        huahua.put("[好棒]", R.drawable.lxh_haobang);
        huahua.put("[瞧


로그래밍 언어이다.

## Rust 공식 홈페이지

https://www.rust-lang.org/

## Rust의 장점

- 성능
  - 굉장히 빠르고 메모리 효율적이다.
  - 별도의 런타임이 없으며, 가비지 컬렉터 ( GC ) 가 없다.
  - 컴파일 타임에 미리 메모리 관리를 한다.
- 신뢰성
  - 강력한 정적 타입 시스템이다.
  - 소유권 모델이 잘 갖춰져 있어 메모리 + 스레드 관리가 안전하다.
  - 컴파일 시점에 미리 에러 / 버그를 방지
- 생산성
  - 문서가 굉장히 잘 갖춰져 있어, 정보 수집에 용이하다.
  - 친절한 컴파일러의 성능으로 문제에 대한 파악을 굉장히 빠르게 할 수 있다.
  - 패키지 매니저와 빌드 툴이 잘 갖춰져 있어 개발에 필요한 많은 작업을 빠르게 할 수 있다.
  - 언어 환경이 너무나 잘 갖춰져 있어 자동 완성, 타입 검사, 자동 포맷팅 기능도 지원 받을 수 있다. ( 간편 )

## 자바스크립트 개발자가 갑자기 Rust를 배우는 이유

큰 이유는 없다. 궁금하기도 하고 재밌을 거 같아서 취미로 해 보려는 목적도 있다.

또한, 자바스크립트라는 High-Level의 언어를 다룸으로서 개발에 대한 시야가 좁은 상태이다.

Low-Level의 언어를 배우면서 평소 개발 습관과 생각에서 접근을 달리 할 수 있는 생각의 길을 만들고 싶다.

자바스크립트는 백그라운드에서 알아서 다 해주는 느낌이다. 개발자로서 언어에 대한 이해 없이 개발을 하고 있는 기분이 든다.

따라서, 이번 기회에 여러 경험을 하고 싶다. 평소에 접해보지 못했던 부분을 얻어가며, 개발자로서의 시야를 넓히고 싶다.

결론적으로 배워서 나쁠 것도 없고 ..

## Rust, 시작하기

https://www.rust-lang.org/learn/get-started

```
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
`


olor{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}
.tox{box-shadow:none;box-sizing:content-box;color:#2a3746;cursor:auto;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:normal;-webkit-tap-highlight-color:transparent;text-decoration:none;text-shadow:none;text-transform:none;vertical-align:initial;white-space:normal}.tox :not(svg):not(rect){box-sizing:inherit;color:inherit;cursor:inherit;direction:inherit;font-family:inherit;


NB. number of printed bit values is limited to sizeof(buf) - 1
#define DBUG_PRINT_BITSET(N,FRM,BS)                \
  do {                                             \
    char buf[256];                                 \
    uint i;                                        \
    for (i = 0 ; i < MY_MIN(sizeof(buf) - 1, (BS)->n_bits) ; i++) \
      buf[i] = bitmap_is_set((BS), i) ? '1' : '0'; \
    buf[i] = '\0';                                 \
    DBUG_PRINT((N), ((FRM), buf));                 \
  } while (0)

#endif /* RPL_UTILITY_H */


1-1h5V7.5l3.5 3.5-3.5 3.5z"}}]})(t)}.displayName="MdDirections",function(t){return Object(c.a)({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M15.5 5.5c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zM5 12c-2.8 0-5 2.2-5 5s2.2 5 5 5 5-2.2 5-5-2.2-5-5-5zm0 8.5c-1.9 0-3.5-1.6-3.5-3.5s1.6-3.5 3.5-3.5 3.5 1.6 3.5 3.5-1.6 3.5-3.5 3.5zm5.8-10l2.4-2.4.8.8c1.3 1.3 3 2.1 5.1 2.1V9c-1.5 0-2.7-.6-3.6-1.5l-1.9-1.9c-.5-.4-1-.6-1.6-.6s-1.1.2-1.4.6L7.8 8.4c-.4.4-.6.9-.6 1.4 0 .6.2 1.1.6 1.4L11 14v5h2v-6.2l-2.2-2.3zM19 12c-2.8 0-5 2.2-5 5s2.2 5 5 5 5-2.2 5-5-2.2-5-5-5zm0 8.5c-1.9 0-3.5-1.6-3.5-3.5s1.6-3.5 3.5-3.5 3.5 1.6 3.5 3.5-1.6 3.5-3.5 3.5z"}}]})(t)}.displayName="MdDirectionsBike",function(t){return Object(c.a)({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M20 21c-1.39 0-2.78-.47-4-1.32-2.44 1.71-5.56 1.71-8 0C6.78 20.53 5.39 21 4 21H2v2h2c1.38 0 2.74-.35 4-.99 2.52 1.29 5.48 1.29 8 0 1.26.65 2.62.99 4 .99h2v-2h-2zM3.95 19H4c1.6 0 3.02-.88 4-2 .98 1.12 2.4 2 4 2s3.02-.88 4-2c.98 1.12 2.4 2 4 2h.05l1.89-6.68c.08-.26.06-.54-.06-.78s-.34-.42-.6-.5L20 10.62V6c0-1.1-.9-2-2-2h-3V1H9v3H6c-1.1 0-2 .9-2 2v4.62l-1.29.42c-.26.08-.48.26-.6.5s-.15.52-.06.78L3.95 19zM6 6h12v3.97L12 8 6 9.97V6z"}}]})(t)}.displayName="MdDirectionsBoat",function(t){return Object(c.a)({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M4 16c0 .88.39 1.67 1 2.22V20c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-1h8v1c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-1.78c.61-.55 1-1.34 1-2.22V6c0-3.5-3.58-4-8-4s-8 .5-8 4v10zm3.5 1c-.83 0-1.5-.67-1.5-1.5S6.


der_widget(tab_1(settings, state), halves[1])
        }
    };
}

pub fn tab_1<'a>(settings: &'a mut Config, state: &'a Arc<Mutex<State>>) -> Table<'a> {
    let enabled = Style::default().fg(Color::Green);
    let disabled = Style::default().fg(Color::Red);
    let _module_states = if settings.saved.modules.launch_info.enabled {
        (Text::styled("True", enabled), Text::raw("False"))
    } else {
        (Text::raw("True"), Text::styled("False", disabled))
    };

    let token_states = if settings.saved.api_token.len() > 0 {
        (Text::styled("True", enabled), Text::raw("False"))
    } else {
        (Text::raw("True"), Text::styled("False", disabled))
    };

    let raw_rows: Vec<(i8, Vec<Text>)> = vec![
        (-1, vec![Text::styled(" General Settings", Style::default().fg(Color::Magenta)), Text::raw("")]),
        // (0, vec![Text::raw(" Enabled"), Text::raw(""), module_states.0, module_states.1]),
        (1, vec![Text::raw(" Cache Update Frequency"), Text::raw(""), Text::raw(""), Text::raw(format!("{} Seconds", settings.saved.cache_update_frequency))]),
        (1, vec![Text::raw(" Using Token"), Text::raw(""), token_states.0, token_states.1]),
        // (-1, vec![Text::raw("")]),
        // (-1, vec![Text::styled(" Color Settings", Style::default().fg(Color::Magenta)), Text::raw("")]),
        // (-1, vec![Text::styled("   Status", Style::default().fg(Color::Yellow)), Text::raw(""), Text::styled("Foreground", Style::default().fg(Color::Yellow)), Text::styled("Background", Style::default().fg(Color::Yellow))]),
        // (2, vec![Text::raw("    Success"), Text::styled("SAMPLE", compute_style(&settings.saved.colors.status.suc)), Text::raw(capitalize(&settings.saved.colors.status.suc.fg.color)), Text::raw(capitalize(&settings.saved.colors.status.suc.bg.color))]),
        // (3, vec![Text::raw("    Go For Liftoff"), Text::styled("SAMPLE", compute_style(&settings.saved.colors.status.g4l)), Text::raw(capitalize(&settings.saved.colors.status.g4l.fg.color)), Text::raw(capitalize(&settings.saved.colors.status.g4l.bg.color))]),
        // (4, vec![Text::raw("    To Be Determined"), Text::styled("SAMPLE", compute_style(&settings.saved.colors.status.tbd)), Text::raw(capitalize(&settings.saved.colors.status.tbd.fg.color)), Text::raw(capitalize(&settings.saved.colors.status.tbd.bg.color))]),
        // (5, vec![Text::raw("    To Be Confirmed"), Text::styled("SAMPLE", compute_style(&settings.saved.colors.status.tbc)), Text::raw(capitalize(&settings.saved.colors.status.tbc.fg.color)), Text::raw(capitalize(&settings.saved.colors.status.tbc.bg.color))]),
        // (6, vec![Text::raw("    Partial Failure"), Text::styled("SAMPLE", compute_style(&settings.saved.colors.status.paf)), Text::raw(capitalize(&settings.saved.colors.status.paf.fg.color)), Text::raw(capitalize(&settings.saved.colors.status.paf.bg.color))]),
        // (7, vec![Text::raw("    Failure"), Text::styled("SAMPLE", compute_style(&settings.saved.colors.status.fal)), Text::raw(capitalize(&settings.saved.colors.status.fal.fg.color)), Text::raw(capitalize(&settings.saved.colors.status.fal.bg.color))]),
        // (8, vec![Text::raw("    In Flight"), Text::styled("SAMPLE", compute_style(&settings.saved.colors.status.inf)), Text::raw(capitalize(&settings.saved.


t: web_sys::Event| {
        let evt = evt.dyn_into::<web_sys::KeyboardEvent>().unwrap();
        let c = std::char::from_u32(evt.key_code()).unwrap();
        if let Ok(ch) = keyboard_to_keypad(c) {
            KEYS.key_down(ch);
        } else if c == 'G' {
            // trigger restart
            *TRIGGER_RESTART.write().unwrap() = true;
        }
    }) as Box<dyn FnMut(_)>);

    document.add_event_listener_with_callback("keydown", callback.as_ref().unchecked_ref())?;

    callback.forget();
    Ok(())
}

/// Keyup event listener
fn attach_keyup_listener(document: &Document) -> Result<()> {
    let callback = Closure::wrap(Box::new(move |evt: web_sys::Event| {
        let evt = evt.dyn_into::<web_sys::KeyboardEvent>().unwrap();
        let c = std::char::from_u32(evt.key_code()).unwrap();
        if let Ok(ch) = keyboard_to_keypad(c) {
            KEYS.key_up(ch);
        }
    }) as Box<dyn FnMut(_)>);

    document.add_event_listener_with_callback("keyup", callback.as_ref().unchecked_ref())?;

    callback.forget();
    Ok(())
}

// When a new game is selected, pass it to the machine
// this is the onChange handler
fn update_all() -> Result<()> {
    // get new game
    let document = get_document();
    let new_game_select = document
        .get_element_by_id("game")
        .unwrap()
        .dyn_into::<web_sys::HtmlSelectElement>()?;
    // Load new game
    *CURRENT_GAME.write().unwrap() = new_game_select.value().to_string();
    Ok(())
}

fn window() -> Window {
    web_sys::window().expect("no global `window` exists")
}

/// Mount the DOM necessary to host the app
pub fn mount() {
    set_once(); // console_error_panic_hook
    let document = get_document();
    let body = document.body().unwrap();
    mount_app(&document, &body).unwrap();
    attach_game_listener(&document).unwrap();
    attach_keydown_listener(&document).unwrap();
    attach_keyup_listener(&document).unwrap();
}
<filename>impl-traits/src/main.rs
struct Person {
    name: String,
    age: u8
}

impl ToString for Person {
    fn to_string(&self) -> String {
        return format!("name: {}, age: {}", self.name, self.age);
    }
}

fn main() {

    let person = Person{name: String::from("michael"), age: 38};

    println!("{}", person.to_string());
}
<gh_stars>1-10
use std::sync::Arc;

use anyhow::Result;
use async_raft::raft::MembershipConfig;
use async_raft::Config;
use async_raft::LogId;
use async_raft::State;
use fixtures::RaftRouter;
use futures::prelude::*;
use maplit::btreeset;

#[macro_use]
mod fixtures;

/// Client write tests.
///
/// What does this test do?
///
/// - create a stable 3-node cluster.
/// - write a lot of data to it.
/// - assert that the cluster stayed stable and has all of the expected data.
///
/// RUST_LOG=async_raft,memstore,client_writes=trace cargo test -p async-raft --test client_writes
#[tokio::test(flavor = "multi_thread", worker_threads = 4)]
async fn client_writes() -> Result<


licenses/>.
 */

package testing

import bridge.ContractInstanceInSDC
import compiler.AbstractSolcRunner
import org.apache.commons.lang3.SystemUtils
import scene.source.IContractSourceFull
import java.math.BigInteger

class StaticContractSource(val sourceCode: String, private val solidityExec : String = "solc", address: BigInteger = BigInteger.ZERO, optimize: Boolean) : IContractSourceFull {
    private val runner = object : AbstractSolcRunner(address, optimize) {
        override fun getContractSource(): Map<String, Source> =
                mapOf("test" to Source.Literal(contractSource = sourceCode))
        override fun getSolcExecutable(): String = "${solidityExec}${if (SystemUtils.IS_OS_WINDOWS) ".exe" else ""}"
    }

    val runnerErrors : List<String> get() = runner.errors

    override fun instances(): List<ContractInstanceInSDC> = runner.contractInstances

    override fun fullInstances(): List<ContractInstanceInSDC> = instances()
}
/*
 *     The Certora Prover
 *     Copyright (C) 2025  Certora Ltd.
 *
 *     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, version 3 of the License.
 *
 *     This program is distributed in the hope that it will be useful,
 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *     GNU General Public License for more details.
 *
 *     You should have received a copy of the GNU General Public License
 *     along with this program.  If not, see <https://www.gnu.org/licenses/>.
 */

package testing

import analysis.icfg.CVLLabelStack
import config.Config
import config.ReportTypes
import datastructures.stdcollections.listOf
import log.*
import report.CVTAlertReporter
import report.CVTAlertSeverity
import report.CVTAlertType
import report.TreeViewLocation
import tac.NBId
import utils.*
import vc.data.CoreTACProgram
import vc.data.TACCmd
import vc.data.TACProgram
import vc.data.destructiveOptimizations

private val logger = Logger(LoggerTypes.COMMON)

/**
 * Helpers for narrowing down bugs in the tac pipeline. (Hopefully helps answering questions like "Which transformation
 * 'optimized' _that_ away, I still need it?!", and similar queries.)
 *
 * Provides methods that are called at various stages of the pipeline and that can be used to check invariants (one- or
 * two-state style).
 *
 * The actual invariants can be temporarily hardcoded in [TacPipelineDebuggerJustForTemporaryDebugging] by the person who is debugging or
 * added as permanent checks into [TacPipelineDebuggers.debuggers].
 *
 * The places where these are checked are currently:
 *  - twoState: code transformations via [CodeTransFormer] (and few select transformations where that class is not used)
 *  - oneState:
 *    - before and after twoState
 *    - our standard tac-dump locations, like preOptimized, preSolver, etc.
 */
class TacPipelineDebuggerJustForTemporaryDebugging : TacPipelineDebugger {
    override fun <T : TACCmd> oneStateInvariant(prog: Map<NBId, List<T>>, loc: () -> InvariantLocation) {
        /* insert your invariant check or print debugging code */
        unused(loc)
        unused(prog)
    }

    override fun <T1 : TACCmd, T2 : TACCmd> twoStateInvariant(
        old: TACProgram<T1>,
        new: TACProgram<T2>,
        loc: () -> InvariantLocation
    ) {
        super.twoStateInvariant(old, new, loc)
        /* insert your invariant check or print debugging code */
        unused(loc)
        unused(


#ifndef ROCKET_H
#define ROCKET_H
#pragma warning (disable:4786)
//-----------------------------------------------------------------------------
//
//  Name:   Rocket.h
//
//  Author: Mat Buckland (ai-junkie.com)
//
//  Desc:   class to implement a rocket
//
//-----------------------------------------------------------------------------

#include "Raven_Projectile.h"

class Raven_Bot;

class Rocket : public Raven_Projectile
{
private:

  //the radius of damage, once the rocket has impacted
  double    m_dBlastRadius;

  //this is used to render the splash when the rocket impacts
  double    m_dCurrentBlastRadius;

  //If the rocket has impacted we test all bots to see if they are within the
  //blast radius and reduce their health accordingly
  void InflictDamageOnBotsWithinBlastRadius();

    //tests the trajectory of the shell for an impact
  void TestForImpact();

public:

  Rocket(Raven_Bot* shooter, Vector2D target);

  void Render();

  void Update();

};

#endif


 LongArray(valueCount)

        /** True if this entry has ever been published.  */
        var readable: Boolean = false

        /** The ongoing edit or null if this entry is not being edited.  */
        var currentEditor: Editor? = null

        /** The sequence number of the most recently committed edit to this entry.  */
        var sequenceNumber: Long = 0

        @Throws(IOException::class)
        fun getLengths(): String {
            val result = StringBuilder()
            for (size in lengths) {
                result.append(' ').append(size)
            }
            return result.toString()
        }

        /** Set lengths using decimal numbers like "10123".  */
        @Throws(IOException::class)
        fun setLengths(strings: Array<String>) {
            if (strings.size != valueCount) {
                throw invalidLengths(strings)
            }

            try {
                for (i in strings.indices) {
                    lengths[i] = strings[i].toLong()
                }
            } catch (_: NumberFormatException) {
                throw invalidLengths(strings)
            }
        }

        @Throws(IOException::class)
        private fun invalidLengths(strings: Array<String>): IOException {
            throw IOException("unexpected journal line: " + strings.contentToString())
        }

        fun getCleanFile(i: Int): File {
            return File(directory, "$key.$i")
        }

        fun getDirtyFile(i: Int): File {
            return File(directory, "$key.$i.tmp")
        }
    }

    companion object {
        const val JOURNAL_FILE: String = "journal"
        const val JOURNAL_FILE_TEMP: String = "journal.tmp"
        const val JOURNAL_FILE_BACKUP: String = "journal.bkp"
        const val MAGIC: String = "libcore.io.DiskLruCache"
        const val VERSION_1: String = "1"
        const val ANY_SEQUENCE_NUMBER: Long = -1
        const val STRING_KEY_PATTERN: String = "[a-z0-9_-]{1,120}"
        val LEGAL_KEY_PATTERN: Pattern = Pattern.compile(STRING_KEY_PATTERN)
        private const val CLEAN = "CLEAN"
        private const val DIRTY = "DIRTY"
        private const val REMOVE = "REMOVE"
        private const val READ = "READ"

        /**
         * Opens the cache in `directory`, creating a cache if none exists
         * there.
         *
         * @param directory a writable directory
         * @param valueCount the number of values per cache entry. Must be positive.
         * @param maxSize the maximum number of bytes this cache should use to store
         * @throws IOException if reading or writing the cache directory fails
         */
        @Throws(IOException::class)
        fun open(directory: File, appVersion: Int, valueCount: Int, maxSize: Long): DiskLruCache {
            require(maxSize > 0) { "maxSize <= 0" }
            require(valueCount > 0) { "valueCount <= 0" }

            // If a bkp file exists, use it instead.
            val backupFile = File(directory, JOURNAL_FILE_BACKUP)
            if (backupFile.exists()) {
                val journalFile = File(directory, JOURNAL_FILE)
                // If journal file also exists just delete backup file.
                if (journalFile.exists()) {
                    backupFile.delete()
                } else {
                    renameTo(backupFile, journalFile, false)
                }
            }

            // Prefer to pick up where we left off.
            var cache = DiskLruCache(directory, appVersion, valueCount, maxSize)
            if (cache.journalFile.exists()) {
                try {
                    cache.readJournal()
                    cache.processJournal()
                    return cache
                } catch (journalIsCorrupt: IOException) {
                    println(
                        "DiskLruCache "
                                + directory
                                + " is corrupt: "


qs.gamespot.com/coco/category/50-adventure" target="_blank" rel="noopener noreferrer">Adventure » Text|
|206|Mysterious Adventure 2: The Time Machine|1981|Adventure » Text|
|207|Mysterious Adventure 7: Feasibility Experiment|1984|Adventure » Text|
|208|Mystery Fun House|1983|Adventure » Text|
|209|New World (1982)|1982|Strategy » Turn-Based » General|
|210|<a href="https://gamefaqs.gamespot.com/coco/350843-


2addr, div-double/2addr, rem-double/2addr
     */
    /* binop/2addr vA, vB */
    lsr     w1, wINST, #12              // w1<- B
    ubfx    w2, wINST, #8, #4           // w2<- A
    GET_VREG_WIDE $r1, w1               // x1<- vB
    GET_VREG_WIDE $r0, w2               // x0<- vA
    .if $chkzero
    cbz     $r1, common_errDivideByZero
    .endif
    FETCH_ADVANCE_INST 1                // advance rPC, load rINST
    $preinstr
    $instr                              // result<- op
    GET_INST_OPCODE ip                  // extract opcode from rINST
    SET_VREG_WIDE $r0, w2               // vAA<- result
    GOTO_OPCODE ip                      // jump to next instruction
    /* 10-13 instructions */


"PriorityConfiguration": (PriorityConfiguration, False),
        "Tags": (Tags, False),
        "TimeoutInSeconds": (integer, False),
    }

class Location(AWSObject):
    """
    `Location <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-location.html>`__
    """

    resource_type = "AWS::GameLift::Location"

    props: PropsDictType = {
        "LocationName": (str, True),
        "Tags": (Tags, False),
    }

class GameProperty(AWSProperty):
    """
    `GameProperty <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-matchmakingconfiguration-gameproperty.html>`__
    """

    props: PropsDictType = {
        "Key": (str, True),
        "Value": (str, True),
    }

class MatchmakingConfiguration(AWSObject):
    """
    `MatchmakingConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html>`__
    """

    resource_type = "AWS::GameLift::MatchmakingConfiguration"

    props: PropsDictType = {
        "AcceptanceRequired": (boolean, True),
        "AcceptanceTimeoutSeconds": (integer, False),
        "AdditionalPlayerCount": (integer, False),
        "BackfillMode": (str, False),
        "CreationTime": (str, False),
        "CustomEventData": (str, False),
        "Description": (str, False),
        "FlexMatchMode": (str, False),
        "GameProperties": ([GameProperty], False),
        "GameSessionData": (str, False),
        "GameSessionQueueArns": ([str], False),
        "Name": (str, True),
        "NotificationTarget": (str, False),
        "RequestTimeoutSeconds": (integer, True),
        "RuleSetArn": (str, False),
        "RuleSetName": (str, True),
        "Tags": (Tags, False),
    }

class MatchmakingRuleSet(AWSObject):
    """
    `MatchmakingRuleSet <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html>`__
    """

    resource_type = "AWS::GameLift::MatchmakingRuleSet"

    props: PropsDictType = {
        "Name": (str, True),
        "RuleSetBody": (str, True),
        "Tags": (Tags, False),
    }

class S3Location(AWSProperty):
    """
    `S3Location <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-script-s3location.html>`__
    """

    props: PropsDictType = {
        "Bucket": (str, True),
        "Key": (str, True),
        "ObjectVersion": (str, False),
        "RoleArn": (str, True),
    }

class Script(AWSObject):
    """
    `Script <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html>`__
    """

    resource_type = "AWS::GameLift::Script"

    props: PropsDictType = {
        "Name": (str, False),
        "StorageLocation": (S3Location, True),
        "Tags": (Tags, False),
        "Version": (str, False),
    }

class DeploymentDetails(AWSProperty):
    """
    `DeploymentDetails <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-containerfleet-deploymentdetails.html>`__
    """

    props: PropsDictType = {
        "LatestDeploymentId": (str, False),
    }


igli.foodexpirationdates.model

class Contributor(
    val name: String,
    val username: String,
    val platform: Platform = Platform.GITHUB
) {
    constructor(username: String) : this(name = username, username = username)
    constructor(username: String, platform: Platform) : this(
        name = username,
        username = username,
        platform = platform
    )
}

enum class Platform(val url: String) {
    GITHUB("github.com"),
    WEBLATE("weblate.org")
}

val contributors = listOf(
    Contributor(name = "Lorenzo Vainigli", username = "lorenzovngl"),
    Contributor(name = "Abdul Muizz", username = "abdulmuizz0903"),
    Contributor(name = "Steve", username = "uDEV2019"),
    Contributor(name = "Devpreyo Roy", username = "devedroy"),
    Contributor(name = "Quadropo", username = "Quadropo"),
    Contributor(name = "Bhavesh Kumawat", username = "bhavesh100"),
    Contributor(name = "Richard", username = "Rick-AB"),
    Contributor(name = "Dmitriy", username = "DeKaN"),
    Contributor(name = "Aditya Kumdale", username = "AdityaKumdale"),
    Contributor(name = "Aaryan", username = "An-Array"),
    Contributor(name = "Yusril A", username = "rasvanjaya21"),
    Contributor(name = "Максим", username = "gerasimov-mv"),
    Contributor(name = "WINZORT", username = "mikropsoft"),
    Contributor(username = "3limssmile"),
    Contributor(username = "ngocanhtve"),
    Contributor(name = "kuragehime", username = "kuragehimekurara1"),
    Contributor(name = "gallegonovato", username = "gallegonovato", platform = Platform.WEBLATE),
    Contributor(name = "Eryk Michalak", username = "gnu-ewm", platform = Platform.WEBLATE),
    Contributor(name = "Oğuz Ersen", username = "oersen"),
    Contributor(username = "hugoalh", platform = Platform.WEBLATE),
    Contributor(name = "Ettore Atalan", username = "Atalanttore"),
    Contributor(name = "Maha Rajan", username = "Maha-Rajan"),
    Contributor(name = "Anurag Kanojiya", username = "anuragkanojiya1"),
    Contributor(name = "Prakash Irom", username = "PrakashIrom"),
    Contributor(name = "serAKL16lysA", username = "serAKL16lysA"),
    Contributor(name = "Aritra Das", username = "aritra-tech"),
    Contributor(name = "Saterz_", username = "Saterz"),
    Contributor(name = "Vadim Erenkov", username = "vadimerenkov"),
    Contributor(name = "Eduardo Nakatani", username = "ednakatani"),
    Contributor(name = "Avinash Sharma", username = "Avinash-Codes"),
    Contributor(name = "Adiputra Setiawan", username = "adiputrastwn"),
)
package com.lorenzovainigli.foodexpirationdates.view.preview

import android.os.Build
import androidx.annotation.RequiresApi
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.absoluteOffset
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.draw.scale
impo


.include "source/macros_asm.s"

.word 0 @ # of Furnitures
@ Script, ?, ?, ?, ?, ?, Z, ?, Orientation, ?

.word 4 @ # of Overworlds
@     ID,        Overworld, Movement, Trainer, Flag, Script, Orientation, Sight, ?, ?, Movement Width, Movement Length, X (Matrix,Map), Y (Matrix,Map), Z, ?
.hword  0,                    35,  3, 0,    0,     1,  ORIENT_DOWN, 0, 0, 0, 2, 2,  0 << 5 | 11,  0 << 5 | 14, 0, 0
.hword  1,                   168,  0, 0,    0,     2, ORIENT_RIGHT, 0, 0, 0, 1, 1,  0 << 5 | 12,  0 << 5 |  6, 0, 0
.hword  2,       SPRI


17.5-10.5c0-2.8 1-5.5 2.8-7.6l36-43.2-36-43.2c-1.8-2.1-2.8-4.8-2.8-7.6c0-9 9.6-14.7 17.5-10.5zM396 157.1c0 2.8-1 5.5-2.8 7.6l-36 43.2 36 43.2c1.8 2.1 2.8 4.8 2.8 7.6c0 9-9.6 14.7-17.5 10.5l-89.9-47.9c-10.7-5.7-10.7-21.1 0-26.8l89.9-47.9c7.9-4.2 17.5 1.5 17.5 10.5z"]},Ry=Yy,Fy={prefix:"fas",iconName:"hand-holding-dollar",icon:[576,512,["hand-holding-usd"],"f4c0","M312 24l0 10.5c6.4 1.2 12.6 2.7 18.2 4.2c12.8 3.4 20.4 16.6 17 29.4s-16.6 20.4-29.4 17c-10.9-2.9-21.1-4.9-30.2-5c-7.3-.1-14.7 1.7-19.4 4.4c-2.1 1.3-3.1 2.4-3.5 3c-.3 .5-.7 1.2-.7 2.8c0 .3 0 .5 0 .6c.2 .2 .9 1.2 3.3 2.6c5.8 3.5 14.4 6.2 27.4 10.1l.9 .3s0 0 0 0c11.1 3.3 25.9 7.8 37.9 15.3c13.7 8.6 26.1 22.9 26.4 44.9c.3 22.5-11.4 38.9-26.7 48.5c-6.7 4.1-13.9 7-21.3 8.8l0 10.6c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-11.4c-9.5-2.3-18.2-5.3-25.6-7.8c-2.1-.7-4.1-1.4-6-2c-12.6-4.2-19.4-17.8-15.2-30.4s17.8-19.4 30.4-15.2c2.6 .9 5 1.7 7.3 2.5c13.6 4.6 23.4 7.9 33.9 8.3c8 .3 15.1-1.6 19.2-4.1c1.9-1.2 2.8-2.2 3.2-2.9c.4-.6 .9-1.8 .8-4.1l0-.2c0-1 0-2.1-4-4.6c-5.7-3.6-14.3-6.4-27.1-10.3l-1.9-.6c-10.8-3.2-25-7.5-36.4-14.4c-13.5-8.1-26.5-22-26.6-44.1c-.1-22.9 12.9-38.6 27.7-47.4c6.4-3.8 13.3-6.4 20.2-8.2L264 24c0-13.3 10.7-24 24-24s24 10.7 24 24zM568.2 336.3c13.1 17.8 9.3 42.8-8.5 55.9L433.1 485.5c-23.4 17.2-51.6 26.5-80.7 26.5L192 512 32 512c-17.7 0-32-14.3-32-32l0-64c0-17.7 14.3-32 32-32l36.8 0 44.9-36c22.7-18.2 50.9-28 80-28l78.3 0 16 0 64 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-64 0-16 0c-8.8 0-16 7.2-16 16s7.2 16 16 16l120.6 0 119.7-88.2c17.8-13.1 42.8-


     ctx.Arch.X86.Segments.Gs.Selector = (ctx.Arch.X86.Ring == 3) ? 0x23 : 0x00;

        ctx.Arch.X86.Segments.Fs.Base = 0x7FFF0000;
        ctx.Arch.X86.Segments.Gs.Base = 0;
    }

    // Dummy values, to resemble regular CR0/CR4 values.
    ctx.Arch.X86.Registers.RegCr0 = 0x0000000080050031;
    ctx.Arch.X86.Registers.RegCr4 = 0x0000000000170678;

    if (Options->UseShemuRegs)
    {
        // Copy the new GPRs
        memcpy(&ctx.Arch.X86.Registers.RegRax, Options->ShemuRegs, sizeof(Options->ShemuRegs));

        // Update the stack to point to the new RSP, if one exists
        if (ctx.Arch.X86.Registers.RegRsp != 0)
        {
            // Consider the stack base at least with a page before the current RSP. In case of pushes or operations
            // which decrease the RSP, we will always give SHEMU_ABORT_RIP_OUTSIDE otherwise.
            ctx.StackBase = ctx.Arch.X86.Registers.RegRsp - 0x1000;
        }
    }

    ctx.TibBase = 0x7FFF0000;
    ctx.MaxInstructionsCount = 10000;
    ctx.Flags = 0;
    ctx.Options = SHEMU_OPT_TRACE_EMULATION | SHEMU_OPT_TRACE_MEMORY | SHEMU_OPT_TRACE_STRINGS | SHEMU_OPT_TRACE_LOOPS;
    ctx.Log = &ShemuLog;
    ctx.AccessMemory = (ShemuMemAccess)&ShemuAccessMem;
    ctx.AccessShellcode = (ShemuMemAccess)&ShemuAccessShellcode;

    // Configurable thresholds.
    ctx.NopThreshold = SHEMU_DEFAULT_NOP_THRESHOLD;
    ctx.StrThreshold = SHEMU_DEFAULT_STR_THRESHOLD;
    ctx.MemThreshold = SHEMU_DEFAULT_MEM_THRESHOLD;

    // Check for AES support.
    int regs[4] = { 0 };

#if defined(ND_ARCH_X86) || defined(ND_ARCH_X64)
    cpuid(regs, 1);
#endif

    // CPUID leaf function 1, register ECX, bit 25 indicates AES-NI support.
    if (!!(regs[2] & (1UL << 25)))
    {
        ctx.Options |= SHEMU_OPT_SUPPORT_AES;
    }

    if (Options->BypassSelfWrites)
    {
        ctx.Options |= SHEMU_OPT_BYPASS_SELF_WRITES;
    }

    ctx.Options |= SHEMU_OPT_SUPPORT_APX;

    shstatus = ShemuX86Emulate(&ctx);

    // Print each set flag after emulation.
    printf("Emulation terminated with status 0x%08x, flags: 0x%llx, %llu NOPs, %llu NULLs, %llu total instructions, %llu unique instructions\n",
           shstatus, (unsigned long long)ctx.Flags, ctx.NopCount, ctx.NullCount, ctx.InstructionsCount, ctx.UniqueCount);

    struct
    {
        ND_UINT64   Flag;
        const char* Name;
    } const shemuFlags[] = {
#define FLAGENTRY(f)       { .Flag = f, .Name = #f }
        FLAGENTRY(SHEMU_FLAG_NOP_SLED),
        FLAGENTRY(SHEMU_FLAG_LOAD_RIP),
        FLAGENTRY(SHEMU_FLAG_WRITE_SELF),
        FLAGENTRY(SHEMU_FLAG_TIB_ACCESS_PEB),
        FLAGENTRY(SHEMU_FLAG_SYSCALL),
        FLAGENTRY(SHEMU_FLAG_STACK_STR),
        FLAGENTRY(SHEMU_FLAG_TIB_ACCESS_WOW32),
        FLAGENTRY(SHEMU_FLAG_HEAVENS_GATE),
        FLAGENTRY(SHEMU_FLAG_STACK_PIVOT),
        FLAGENTRY(SHEMU_FLAG_SUD_ACCESS),
        FLAGENTRY(SHEMU_FLAG_KPCR_ACCESS),
        FLAGENTRY(SHEMU_FLAG_SWAPGS),
        FLAGENTRY(SHEMU_FLAG_SYSCALL_MSR_READ),
        FLAGENTRY(SHEMU_FLAG_SYSCALL_MSR_WRITE),
        FLAGENTRY(SHEMU_FLAG_SIDT),
#undef  FLAGENTRY
    };

    for (uint32_t fli = 0; fli < ARRAYSIZE(shemuFlags); fli++)
    {
        if (ctx.Flags & shemuFlags[fli].Flag)
        {
            printf("        %s\n", shemuFlags[fli].Name);
        }
    }

    if (fNameDecoded != NULL)
    {
        size_t outSize;
        FILE *file = fopen(fNameDecoded, "wb");
        if (file == NULL)
        {
            printf("Could not create the file %s\n", fNameDecoded);
            goto cleanup_and_exit;
        }

        outSize = fwrite(ctx.Shellcode, 1, fsize, file);

        if (outSize == 0)
        {
            printf("No bytes written to %s!\n", fNameDecoded);
        }

        fclose(file);
    }

cleanup_and_exit:
    if (NULL != fileName && NULL != fNameDecoded)
    {
        free(fNameDecoded);
    }

    if (NULL != ctx.Shellcode)
    {
        free(ctx.Shellcode);
    }

    if (NULL != ctx.Stack)
    {
        free(ctx.Stack);
    }

    if (NULL != ctx.Intbuf)
    {
        free(ctx.Intbuf);
    }
}


combatant.darkvision = pc.darkvision;
		combatant.portrait = pc.portrait;
		combatant.url = pc.url;
	}

	public static encounterTemplates(includeRandom = false) {
		const slots = [
			{
				name: 'battlefield control',
				slots: [
					{
						roles: ['controller'],
						count: 1
					},
					{
						roles: ['skirmisher', 'sneak'],
						count: 5
					}
				]
			},
			{
				name: 'commander and troops',
				slots: [
					{
						roles: ['controller', 'soldier'],
						count: 1
					},
					{
						roles: ['soldier', 'tank'],
						count: 5
					}
				]
			},
			{
				name: 'dragon\'s den',
				slots: [
					{
						roles: ['boss'],
						count: 1
					}
				]
			},
			{
				name: 'double line',
				slots: [
					{
						roles: ['soldier', 'tank'],
						count: 3
					},
					{
						roles: ['artillery', 'controller'],
						count: 2
					}
				]
			},
			{
				name: 'wolf pack',
				slots: [
					{
						roles: ['skirmisher'],
						count: 6
					}
				]
			}
		];

		if (includeRandom) {
			slots.unshift({
				name: 'random',
				slots: []
			});
		}

		return slots;
	}

	public static getActiveCombatants(combat: Combat, playerView: boolean, showDefeated: boolean) {
		const controlledMounts = combat.combatants
			.filter(c => !!c.mountID && (c.mountType === 'controlled'))
			.map(c => c.mountID || '');

		return combat.combatants
			.filter(c => !controlledMounts.includes(c.id))
			.filter(c => c.active || (c.defeated && showDefeated))
			.filter(c => {
				// Ignore anything that's hidden, unless it's a PC
				if (playerView && (c.type !== 'pc')) {
					return c.showOnMap;
				}
				return true;
			})
			.filter(c => {
				// If there's a map, ignore monsters that aren't on it
				if (playerView && (c.type === 'monster') && (!!combat.map)) {
					return !!combat.map.items.find(i => i.id === c.id);
				}
				return true;
			})
			.filter(c => {
				// If it's a placeholder, only show it if this encounter has lair actions
				if (c.type === 'placeholder') {
					return this.combatHasLairActions(combat);
				}
				return true;
			});
	}

	public static getMountsAndRiders(ids: string[], combatants: Combatant[]) {
		const list = ids.map(id => combatants.find(c => c.id === id)).filter(c => c !== undefined) as Combatant[];
		const mounts = list.map(c => combatants.find(mount => mount.id === c.mountID)).filter(c => c !== undefined) as Combatant[];
		const riders = list.map(c => combatants.find(rider => rider.mountID === c.id)).filter(c => c !== undefined) as Combatant[];
		return list.concat(mounts).concat(riders);
	}

	public static setMountPositions(combatants: Combatant[], map: Map) {
		combatants.forEach(c => {
			if (c.mountID) {
				// Set mount location to equal rider location
				const riderItem = map.items.find(i => i.id === c.id);
				const mountItem = map.items.find(i => i.id === c.mountID);
				if (riderItem && mountItem) {
					mountItem.x = riderItem.x;
					mountItem.y = riderItem.y;
				}
			}
		});
	}

	public static getVictory


�クスト以外では何も起きませんが，org-support-shift-select変数をカスタマイズすることができます．Org-modeはスペシャルコマンドが適用される特別なコンテクストの外で(i)使用することによりShift選択を提供しようとし，また(ii)アクティブなリージョンを拡張することによっても特別なコンテクストを通してカーソルが移動します．

<samp>CUA.el</samp> by Kim. F. Storm
リージョンの選択と拡張について，Org-modeでのキーバインディングは(pc-select-modeやs-region-modeと同様に)CUAモードで使われるS-<cursor>と衝突します．実際，前の段落を見れば分かりますが，Emacs23はshift-selection-modeの形でこのビルトインを持ちますます．あなたがEmacs23を使っているのであれば，まず間違いなくこの目的のための別のパッケージは使いたくないでしょう．しかし，Org-modeでの作業中に別のパッケージにこれらのキーを渡すことを選ぶのであれば，org-replace-disputed-keys変数を設定してください．設定したとき，Org-modeはOrg-modeファイルとアジェンダバッファ(日付の選択を除きます)中で以下のキーバインディングを変えるでしょう．

          S-UP      ⇒  M-p             S-DOWN     ⇒  M-n
          S-LEFT    ⇒  M--             S-RIGHT    ⇒  M-+
          C-S-LEFT  ⇒  M-S--           C-S-RIGHT  ⇒  M-S-+

はい，残念ながら覚えることがより困難です．もしあなたが他の代わりのキーを持ちたいのであえれば，org-disputed-keys変数を見てください．

<samp>yasnippet.el</samp>
Org-modeはTABキー("\t"の代わりに．[tab]をバインドします)をバインドするこのキーでYASnippetsのアクセスを優先します．以下のコードはこの問題を修正します:

          (add-hook 'org-mode-hook
                    (lambda ()
                      (org-set-local 'yas/trigger-key [tab])
                      (define-key yas/keymap [tab] 'yas/next-field-group)))

yasnippetの最新のバージョンはOrg-modeと相性がよくありません．上記のコードが衝突を修正しないなら，以下の関数を定義してください:

          (defun yas/org-very-safe-expand ()
                 (let ((yas/fallba


width: 520px;">

Alien mais forte

Nenhum alienígena de Ben 10 já apresentou poderes tão grandes quanto o Alien X.

Last updated 3 mins ago

<!DOCTYPE html>

    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Onde Estamos - Verde no Mundo</title>
    <link rel="stylesheet" href="styles.css">

            🌳

Verde no Mundo

Início

Sobre

Contato

Doe

Onde Estamos

Onde Estamos

O projeto Verde no Mundo está presente em várias regiões ao redor do mundo, com o objetivo de restaurar e proteger áreas ambientais vulneráveis. Veja a seguir os locais onde nossos esforços de reflorestamento estão em andamento.

Nossas Regiões de Atuação:

Brasil - Amazônia

Estados Unidos - Califórnia

Índia - Regiões Florestais do Norte

África - Floresta do Congo

Europa - Florestas da Escandinávia

Austrália - Áreas de Reflorestamento Pós-Incêndios

Estamos continuamente expandindo nossos esforços para outras regiões do mundo que precisam de reflorestamento e recuperação ambiental. Junte-se a nós nesta missão global!

© 2024 Verde no Mundo. Todos os direitos reservados.

<!DOCTYPE html>

    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Doe - Verde no Mundo</title>
    <link rel="styl


 {
                      myToast(context, "Please enter port");
                      return;
                    }

                    prefs.syncIpPortCode = [
                      controllerIP.text.trim(),
                      controllerPort.text.trim(),
                      controllerCode.text.trim(),
                    ];
                    setState(() {
                      isSyncingKnownWords = true;
                    });
                    final respData = await compute((param) {
                      return handler.syncData(
                          param['ip'] as String,
                          param['port'] as int,
                          param['code'] as int,
                          param['syncKind'] as int);
                    }, <String, dynamic>{
                      'ip': controllerIP.text.trim(),
                      'port': int.parse(controllerPort.text.trim()),
                      'code': int.parse(controllerCode.text.trim()),
                      'syncKind': 1
                    });
                    if (context.mounted) {
                      setState(() {
                        isSyncingKnownWords = false;
                      });
                    }
                    if (respData.code != 0) {
                      myToast(context, respData.message);
                      return;
                    }
                    myToast(context, "Sync my word library successfully");
                    Global.allKnownWordsMap =
                        (await handler.allKnownWordsMap()).data ?? {};
                    produceEvent(EventType.updateKnownWord);
                  },
            icon: const Icon(Icons.sync)),
        subtitle: isSyncingKnownWords
            ? const LinearProgressIndicator()
            : const Text(""),
      ),
      ListTile(
        // title: const Text("同步文章信息"),
        title: const Text("Sync Articles"),
        leading: const Tooltip(
          // message: "同步数据后，本地数据将与远程数据进行合并",
          message:
              "After syncing data, local data will be merged with remote data",
          triggerMode: TooltipTriggerMode.tap,
          child: Icon(Icons.info_outline),
        ),
        subtitle:
            isSyncFileInfos ? const LinearProgressIndicator() : const Text(""),
        trailing: IconButton(
            onPressed: isSyncFileInfos
                ? null
                : () async {
                    if (controllerIP.text.trim() == "") {
                      myToast(context, "Please enter IP/domain name");
                      return;
                    }
                    if (controllerPort.text.trim() == "") {
                      myToast(context, "Please enter port");
                      return;
                    }

                    prefs.syncIpPortCode = [
                      controllerIP.text.trim(),
                      controllerPort.text.trim(),
                      controllerCode.text.trim(),
                    ];
                    setState(() {
                      isSyncFileInfos = true;
                    });

                    final respData = await compute((param) {
                      return handler.syncData(
                          param['ip'] as String,
                          param['port'] as int,
                          param['code'] as int,
                          param['syncKind'] as int);
                    }, <String, dynamic>{
                      'ip': controllerIP.text.trim(),
                      'port': int.parse(controllerPort.text.trim()),
                      'code': int.parse(controllerCode.text.trim()),
                      'syncKind': 2
                    });
                    if (context.mounted) {
                      setState(() {
                        isSyncFileInfos = false;
                      });
                    }
                    if (respData.code != 0) {
                      myToast(context, respData.message);
                      return;


@ Songgroup: 1

	.include "MPlayDef.s"

	.equ	song137_grp, group_6
	.equ	song137_pri, 4
	.equ	song137_rev, 178
	.equ	song137_mvl, 127
	.equ	song137_key, 0
	.equ	song137_tbs, 1
	.equ	song137_exg, 1
	.equ	song137_cmp, 1

	.section .rodata
	.global	song137
	.align	2

@**************** Track 00 ****************************@

song137_0:
	.byte	KEYSH , 0
	.byte	TEMPO , 75
	.byte		VOICE , 29
	.byte		BENDR , 12
	.byte		PAN   , c_v+0
	.byte		VOL   , 22*song137_mvl/mxv
	.byte		BEND  , c_v+0
	.byte		N30   , Dn4 , v127
	.byte	W01
	.byte		VOL   , 49*song137_mvl/mxv
	.byte	W01
	.byte		        71*song137_mvl/mxv
	.byte	W01
	.byte		        95*song137_mvl/mxv
	.byte		BEND  , c_v+8
	.byte	W01
	.byte		VOL   , 110*song137_mvl/mxv
	.byte	W02
	.byte		PAN   , c_v+5
	.byte		BEND  , c_v+16
	.byte	W01
	.byte		VOL   , 95*song137_mvl/mxv
	.byte	W02
	.byte		        88*song137_mvl/mxv
	.byte		PAN   , c_v+0
	.byte		BEND  , c_v+7
	.byte	W01
	.byte		VOL   , 93*song137_mvl/mxv
	.byte	W02
	.byte		        110*song137_mvl/mxv
	.byte		PAN   , c_v-5
	.byte		BEND  , c_v+0
	.byte	W02
	.byte		VOL   , 86*song137_mvl/mxv
	.byte	W01
	.byte		PAN   , c_v+0
	.byte		BEND  , c_v-9
	.byte	W01
	.byte		VOL   , 63*song137_mvl/mxv
	.byte	W02
	.byte		        3


from_str`] when the string isn't a recognized language
#[derive(Error, Debug)]
#[error("not a language `{lang}`")]
pub struct NotALanguageError {
    lang: String,
}

impl NotALanguageError {
    pub(crate) fn new(s: impl Into<String>) -> Self {
        Self { lang: s.into() }
    }
}

impl FromStr for Language {
    type Err = NotALanguageError;

    fn from_str(s: &str) -> Result<Self, Self::Err> {
        match s {
            "c" | "C" => Ok(Self::C),
            "c++" | "C++" | "cpp" | "CPP" => Ok(Self::CPP),
            other => Err(NotALanguageError::new(format!(
                "Cannot parse language from '{}'",
                other
            ))),
        }
    }
}
use super::*;
use crate::{
    devices::FillElements,
    gradients::{Gradients, OwnsTape, Tape},
};

/// Runs backprop algorithm with all operations contained in the tape that `t` has.
///
/// This function takes ownership of `t` and returns [Gradients].
///
/// Note that `t` is required to have [OwnsTape], which means it currently owns the [GradientTape].
pub fn backward<T: Tensor<Dtype = f32, Tape = OwnsTape>>(t: T) -> Gradients {
    let (t, mut tape) = t.split_tape();
    tape.add_backward_op(move |grads| {
        T::Device::fill(grads.mut_gradient(&t), &mut || num_traits::One::one());
    });
    tape.0.execute()
}

macro_rules! tensor_impl {
    ($typename:ident, [$($Vs:tt),*]) => {
impl<$(const $Vs: usize, )*> $typename<$($Vs, )* OwnsTape> {
    /// Calls [backward()] on `self`
    pub fn backward(self) -> Gradients {
        backward(self)
    }
}
    };
}

tensor_impl!(Tensor0D, []);
tensor_impl!(Tensor1D, [M]);
tensor_impl!(Tensor2D, [M, N]);
tensor_impl!(Tensor3D, [M, N, O]);
tensor_impl!(Tensor4D, [M, N, O, P]);
//! [PUT /_matrix/client/r0/devices/{deviceId}](https://matrix.org/docs/spec/client_server/r0.6.0#put-matrix-client-r0-devices-deviceid)

use ruma_api::ruma_api;
use ruma_identifiers::DeviceId;

ruma_api! {
    metadata: {
        description: "Update metadata for a device.",
        method: PUT,
        name: "update_device",
        path: "/_matrix/client/r0/devices/:device_id",
        rate_limited: false,
        authentication: AccessToken,
    }

    request: {
        /// The device to update.
        #[ruma_api(path)]
        pub device_id: &'a DeviceId,

        /// The new display name for this device. If this is `None`, the display name won't be
        /// changed.
        #[serde(skip_serializing_if = "Option::is_none")]
        pub display_name: Option<String>,
    }

    #[derive(Default)]
    response: {}

    error: crate::Error
}

impl<'a> Request<'a> {
    /// Creates a new `Request` with the given device ID.
    pub fn new(device_id: &'a DeviceId) -> Self {
        Self { device_id, display_name: None }
    }
}

impl Response {
    /// Creates an empty `Response`.
    pub fn new() -> Self {
        Self
    }
}
// Copyright 2020 The VectorDB Authors.
//
// Code is licensed under Apache License, Version 2.0.

use sqlparser::ast::{
    Expr, Query, SelectItem, SetExpr, Statement, TableFactor, Value as ExprValue,


{
    '_id': '15380',
    'city': 'WIND RIDGE',
    'loc': [-80.464665, 39.897106],
    'pop': 554,
    'state': 'PA'
  },
  {
    '_id': '15401',
    'city': 'UNIONTOWN',
    'loc': [-79.728216, 39.889733],
    'pop': 34582,
    'state': 'PA'
  },
  {
    '_id': '15410',
    'city': 'ADAH',
    'loc': [-79.890827, 39.883101],
    'pop': 596,
    'state': 'PA'
  },
  {
    '_id': '15411',
    'city': 'ADDISON',
    'loc': [-79.319334, 39.761195],
    'pop': 1158,
    'state': 'PA'
  },
  {
    '_id': '15412',
    'city': 'ALLENPORT',
    'loc': [-79.85419400000001, 40.089845],
    'pop': 665,
    'state': 'PA'
  },
  {
    '_id': '15413',
    'city': 'ALLISON',
    'loc': [-79.875675, 39.982566],
    'pop': 326,
    'state': 'PA'
  },
  {
    '_id': '15417',
    'city': 'WEST BROWNSVILLE',
    'loc': [-79.920609, 40.02671],
    'pop': 9133,
    'state': 'PA'
  },
  {
    '_id': '15419',
    'city': 'CALIFORNIA',
    'loc': [-79.895319, 40.062529],
    'pop': 5778,
    'state': 'PA'
  },
  {
    '_id': '15423',
    'city': 'COAL CENTER',
    'loc': [-79.8839, 40.097272],
    'pop': 482,
    'state': 'PA'
  },
  {
    '_id': '15424',
    'city': 'LISTONBURG',
    'loc': [-79.351304, 39.821247],
    'pop': 1998,
    'state': 'PA'
  },
  {
    '_id': '15425',
    'city': 'SOUTH CONNELLSVI',
    'loc': [-79.587838, 40.025037],
    'pop': 25516,
    'state': 'PA'
  },
  {
    '_id': '15427',
    'city': 'DAISYTOWN',
    'loc': [-79.96703599999999, 40.074349],
    'pop': 1858,
    'state': 'PA'
  },
  {
    '_id': '15428',
    'city': 'DAWSON',
    'loc': [-79.660224, 40.063767],
    'pop': 1673,
    'state': 'PA'
  },
  {
    '_id': '15431',
    'city': 'DUNBAR',
    'loc': [-79.64305, 39.972171],
    'pop': 2947,
    'state': 'PA'
  },
  {
    '_id': '15432',
    'city': 'DUNLEVY',
    'loc': [-79.862703, 40.115077],
    'pop': 417,
    'state': 'PA'
  },
  {
    '_id': '15433',
    'city': 'EAST MILLSBORO',
    'loc': [-79.966442, 39.982214],
    'pop': 104,
    'state': 'PA'
  },
  {
    '_id': '15434',
    'city': 'ELCO',
    'loc': [-79.87583600000001, 40.079


y<Event, StateMachineWorkflowEvent<TActor>> _events;
		StateMachineWorkflow<TWorkflow, TActor> _workflow;

		public StateMachineWorkflowEventVisitor()
		{
			_events = new Dictionary<Event, StateMachineWorkflowEvent<TActor>>();
			_activities = new List<Activity<TActor>>();
		}

		public IEnumerable<StateMachineWorkflowEventBinder<TActor>> GetBinders()
		{
				return _events
					.Select(x => x.Value.CreateBinder(_activities.Where(a => a.Event == x.Key).Select(a => a.State)));
		}

		protected virtual bool Visit<TBody>(MessageEvent<TBody> messageEvent)
		{
			_events.Retrieve(messageEvent, () => new StateMachineWorkflowEvent<TWorkflow, TActor, TBody>(_workflow, messageEvent));

			return true;
		}

		protected virtual bool Visit(Activity<TActor> activity)
		{
			_activities.Add(activity);

			return true;
		}

		protected virtual bool Visit(StateMachineWorkflow<TWorkflow, TActor> workflow)
		{
			// this is the first thing hit, so let's make sure we are clean in case we get reused
			_activities.Clear();
			_events.Clear();

			_workflow = workflow;

			return true;
		}
	}
}


 A89, val b: B89)
    class D89(val a: A89, val b: B89, val c: C89)
    class A90
    class B90(val a: A90)
    class C90(val a: A90, val b: B90)
    class D90(val a: A90, val b: B90, val c: C90)
    class A91
    class B91(val a: A91)
    class C91(val a: A91, val b: B91)
    class D91(val a: A91, val b: B91, val c: C91)
    class A92
    class B92(val a: A92)
    class C92(val a: A92, val b: B92)
    class D92(val a: A92, val b: B92, val c: C92)
    class A93
    class B93(val a: A93)
    class C93(val a: A93, val b: B93)
    class D93(val a: A93, val b: B93, val c: C93)
    class A94
    class B94(val a: A94)
    class C94(val a: A94, val b: B94)
    class D94(val a: A94, val b: B94, val c: C94)
    class A95
    class B95(val a: A95)
    class C95(val a: A95, val b: B95)
    class D95(val a: A95, val b: B95, val c: C95)
    class A96
    class B96(val a: A96)
    class C96(val a: A96, val b: B96)
    class D96(val a: A96, val b: B96, val c: C96)
    class A97
    class B97(val a: A97)
    class C97(val a: A97, val b: B97)
    class D97(val a: A97, val b: B97, val c: C97)
    class A98
    class B98(val a: A98)
    class C98(val a: A98, val b: B98)
    class D98(val a: A98, val b: B98, val c: C98)
    class A99
    class B99(val a: A99)
    class C99(val a: A99, val b: B99)
    class D99(val a: A99, val b: B99, val c: C99)
    class A100
    class B100(val a: A100)
    class C100(val a: A100, val b: B100)
    class D100(val a: A100, val b: B100, val c: C100)
}
/*
 * Copyright 2017-present the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.koin.androidx.compose.navigation

import androidx.compose.runtime.Composable
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelStoreOwner
import androidx.lifecycle.viewmodel.CreationExtras
import androidx.lifecycle.viewmodel.compose


/*---------------------------------------------------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     |
    \\  /    A nd           | Copyright (C) 2013 OpenFOAM Foundation
     \\/     M anipulation  |
-------------------------------------------------------------------------------
License
    This file is part of OpenFOAM.

    OpenFOAM 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 3 of the License, or
    (at your option) any later version.

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

    You should have received a copy of the GNU General Public License
    along with OpenFOAM.  If not, see <http://www.gnu.org/licenses/>.

\*---------------------------------------------------------------------------*/

#include "LeastSquaresGrad.H"
//#include "centredCFCCellToCellStencilObject.H"
#include "centredCPCCellToCellStencilObject.H"
#include "centredCECCellToCellStencilObject.H"

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

namespace Foam
{
namespace fv
{
    // makeLeastSquaresGradScheme
    // (
    //     faceCellsLeastSquares,
    //     centredCFCCellToCellStencilObject
    // )

    makeLeastSquaresGradScheme
    (
        pointCellsLeastSquares,
        centredCPCCellToCellStencilObject
    )

    makeLeastSquaresGradScheme
    (
        edgeCellsLeastSquares,
        centredCECCellToCellStencilObject
    )
}
}

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


= %v, want %v", got, tt.want)
			}
		})
	}
}

func Test_protocol(t *testing.T) {
	type args struct {
		uri string
	}
	tests := []struct {
		name  string
		args  args
		want  string
		want1 Protocol
	}{
		{
			name: "http",
			args: args{
				uri: "http://127.0.0.1",
			},
			want:  "http://127.0.0.1",
			want1: HTTP,
		},
		{
			name: "grpc normal",
			args: args{
				uri: "grpc://127.0.0.1",
			},
			want:  "grpc://127.0.0.1",
			want1: GRPC,
		},
		{
			name: "grpc normal2",
			args: args{
				uri: "127.0.0.1",
			},
			want:  "grpc://127.0.0.1",
			want1: GRPC,
		},
		{
			name: "undefined",
			args: args{
				uri: "other://127.0.0.1",
			},
			want:  "other://127.0.0.1",
			want1: Undefined,
		},
	}
	for _, tt := range tests {
		t.Run(tt.name, func(t *testing.T) {
			got, got1 := protocol(tt.args.uri)
			if got != tt.want {
				t.Errorf("protocol() got = %v, want %v", got, tt.want)
			}
			if got1 != tt.want1 {
				t.Errorf("protocol() got1 = %v, want %v", got1, tt.want1)
			}
		})
	}
}
package client

import "github.com/wuqinqiang/easycar/core/consts"

type GroupOpt func(group *Group)

func LevelFixed() GroupOpt {
	return func(group *Group) {
		group.levelFixed = true
	}
}

type Group struct {
	//tranType for groups
	tranType   consts.TransactionType
	levelFixed bool
	branches   []*Branch
}

// NewTccGroup create a set of branches for TCC mode
func NewTccGroup(tryUri, confirmUri, cancelUri string, opts ...GroupOpt) *Group {
	g := &Group{
		tranType: consts.TCC,
	}
	for _, opt := range opts {
		opt(g)
	}

	// timeout?
	g.branches = []*Branch{
		NewBranch(tryUri, consts.Try),
		NewBranch(confirmUri, consts.Confirm),
		NewBranch(cancelUri, consts.Cancel),
	}
	return g
}

// NewSagaGroup create a set of branches for Saga mode
func NewSagaGroup(normalUri, compensation string, opts ...GroupOpt) *Group {
	g := &Group{
		tranType: consts.SAGA,
	}
	for _, opt := range opts {
		opt(g)
	}

	g.branches = []*Branch{
		NewBranch(normalUri, consts.Normal),
		NewBranch(compensation, consts.Compensation),
	}
	return g
}

func (g *Group) GetTranType() consts.TransactionType {
	return g.tranType
}

func (g *Group) SetData(data []byte) *Group {
	g.set(func(branch *Branch) {
		branch.SetData(data)
	})
	return g
}

func (g *Group) SetTimeout(second int) *Group {
	g.set(func(branch *Branch) {
		branch.timeout = int64(second)
	})
	return g
}

func (g *Group) SetHeader(data []byte) *Group {
	g.set(func(branch *Branch) {
		branch.SetHeader(data)
	})
	return g
}

func (g *Group) SetLevel(level consts


_Leave;
//            edit.Validated += Edit_Validated;
//            edit.Validating += Edit_Validating;
//            edit.GotFocus += Edit_GotFocus;
//            edit.LostFocus += Edit_LostFocus;
//            edit.MouseLeave += Edit_MouseLeave;
//            edit.MouseWheel += Edit_MouseWheel;
//            edit.MouseDown += Edit_MouseDown;
//            edit.MouseUp += Edit_MouseUp;
//            edit.MouseMove += Edit_MouseMove;
//            edit.SelectionChanged += Edit_SelectionChanged;
//            edit.MouseClick += Edit_MouseClick;
//            edit.MouseDoubleClick += Edit_MouseDoubleClick;
//            edit.SizeChanged += Edit_SizeChanged;
//            edit.FontChanged += Edit_FontChanged;

//            btn.Parent = this;
//            btn.Visible = false;
//            btn.Text = "";
//            btn.Symbol = 361761;
//            btn.Top = 1;
//            btn.Height = 25;
//            btn.Width = 29;
//            btn.BackColor = Color.Transparent;
//            btn.Click += Btn_Click;
//            btn.Radius = 3;
//            btn.SymbolOffset = new Point(-1, 1);

//            edit.Invalidate();
//            Controls.Add(edit);
//            fillColor = Color.White;

//            bar.Parent = this;
//            bar.Dock = DockStyle.None;
//            bar.Visible = false;
//            bar.ValueChanged += Bar_ValueChanged;
//            bar.MouseEnter += Bar_MouseEnter;
//            TextAlignment = ContentAlignment.MiddleLeft;

//            lastEditHeight = edit.Height;
//            Width = 150;
//            Height = 29;

//            editCursor = Cursor;
//            TextAlignmentChange += UITextBox_TextAlignmentChange;
//        }

//        [Browsable(false)]
//        public override string[] FormTranslatorProperties { get; }

//        private void Edit_FontChanged(object sender, EventArgs e)
//        {
//            if (!edit.Multiline)
//            {
//                int height = edit.Font.Height;
//                edit.AutoSize = false;
//                edit.Height = height + 2;
//                SizeChange();
//            }
//        }

//        int lastEditHeight = -1;
//        private void Edit_SizeChanged(object sender, EventArgs e)
//        {
//            if (lastEditHeight != edit.Height)
//            {
//                lastEditHeight = edit.Height;
//                SizeChange();
//            }
//        }

//        public override void SetDPIScale()
//        {
//            base.SetDPIScale();
//            if (DesignMode) return;
//            if (!UIDPIScale.NeedSetDPIFont()) return;

//            edit.SetDPIScale();
//        }

//        [Description("开启后可响应某些触屏的点击事件"), Category("SunnyUI")]
//        [DefaultValue(false)]
//        public bool TouchPressClick
//        {
//            get => edit.TouchPressClick;
//            set => edit.TouchPressClick = value;
//        }

//        private bool _autoSize = false;
//        public new bool AutoSize
//        {
//            get => _autoSize;
//            set
//            {
//                _autoSize = value;
//                SizeChange();
//            }
//        }

//        private UIButton tipsBtn;
//        public void SetTipsText(ToolTip toolTip, string text)
//        {
//            if (tipsBtn == null)
//            {
//                tipsBtn = new UIButton();
//                tipsBtn.Cursor = System.Windows.Forms.Cursors.Hand;
//                tipsBtn.Size = new System.Drawing.Size(6, 6);
//                tipsBtn


��해한다. 우리는 웨이브렛 트리 표현에서 충실하면서도 콤팩트한 표현을 가능하게 하여 계수 간의 관계를 악용하는 서브밴드 계수 필터링 절차를 설계하여 정보가 풍부한 파동 성분(크게, 세부 사항)을 유지할 수 있다.\n' +
      '\n' +
      '그림 4: 생성 접근법의 고려. (a) A 형상은 먼저 잘린 사인 거리 필드(TSDF)로 인코딩된 다음, 웨이블릿 트리 구조에서 멀티 스케일 웨이플릿 계수들로 분해된다. 우리는 계수 간의 관계를 활용하고 정보가 풍부한 계수를 추출하여 웨이브렛-트리 표현을 구축하기 위해 _subband 계수 필터링_ 절차를 설계한다. (b) 우리는 우리의 웨이브렛-트리 표현을 관리 가능한 공간 분해능의 규칙적인 격자 구조로 재배열하기 위해 _subband 계수 패킹_ 체계를 제안하므로, 우리는 재현을 효과적으로 생성하기 위해 데노징 확산 모델을 채택할 수 있다. 물론, 우리는 서로 다른 서브 밴드에서 형상 정보를 효과적으로 균형을 잡고 세부 계수 유출을 해결하기 위해 _subband 적응 훈련_ 전략을 수립한다. 따라서 수백만 개의 3D 모양으로 모델을 효율적으로 훈련할 수 있습니다. (d) 우리의 프레임워크는 다양한 양식의 조건으로 확장될 수 있다.\n' +
      '\n' +
      '효율적인 저장 및 스트리밍을 위해 3D 형상의 제품입니다.\n' +
      '\n' +
      '(ii) _Diffusible Whatlet-tree 발표___Diffusible Wavelet-tree 제시.


: SocketImpl.
     *
     * @see Socket#setTcpNoDelay
     * @see Socket#getTcpNoDelay
     */
    /*
     * 是否禁用Nagle算法
     *
     * 在连续多次写入小段数据，接着再读取的场景下，开启Nagle算法可以使得发送方凑齐一波数据再发送，降低网络拥堵，但缺点是增加了延迟。
     * 所以，在客户端应当尽量发送大段数据（可以拼接多个小段数据），并禁用Nagle算法，这样的话既减轻了网络拥堵，又不至于有太长延时。
     *
     * 适用范围：TCP连接-SocketImpl
     * 参数类型：boolean
     */
    @Native
    public static final int TCP_NODELAY = 0x0001;

    /*▲ IPPROTO_TCP ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓┛ */

    /**
     * Enable/disable the option specified by optID.
     * If the option is to be enabled, and it takes an option-specific "value",  this is passed in value.
     * The actual type of value is option-specific, and it is an error to pass something that isn't of the expected type:
     *

     * SocketImpl s;
     * ...
     * s.setOption(SO_LINGER, new Integer(10));
     * // OK - set SO_LINGER w/ timeout of 10 sec.
     * s.setOption(SO_LINGER, new Double(10));
     * // ERROR - expects java.lang.Integer
     *

     * If the requested option is binary, it can be set using this method by
     * a java.lang.Boolean:
     *

     * s.setOption(TCP_NODELAY, Boolean.TRUE);
     * // OK - enables TCP_NODELAY, a binary option
     *

     *

     * Any option can be disabled using this method with a Boolean.FALSE:
     *

     * s.setOption(TCP_NODELAY, Boolean.FALSE);
     * // OK - disables TCP_NODELAY
     * s.setOption(SO_LINGER, Boolean.FALSE);
     * // OK - disables SO_LINGER
     *

     *

     * For an option that has a notion of on and off, and requires
     * a non-boolean parameter, setting its value to anything other than
     * Boolean.FALSE implicitly enables it.
     *

     * Throws SocketException if the option is unrecognized,
     * the socket is closed, or some low-level error occurred
     *

     *
     * @param optID identifies the option
     * @param value the parameter of the socket option
     *
     * @throws SocketException if the option is unrecognized,
     *                         the socket is closed, or some low-level error occurred
     * @see #getOption(int)
     */
    // 根据Socket参数ID（名称），设置参数的值
    void setOption(int optID, Object value) throws SocketException;

    /**
     * Fetch the value of an option.
     * Binary options will return java.lang.Boolean.TRUE
     * if enabled, java.lang.Boolean.FALSE if disabled, e.g.:
     *

     * SocketImpl s;
     * ...
     * Boolean noDelay = (Boolean)(s.getOption(TCP_NODELAY));
     * if (noDelay.booleanValue()) {
     * // true if TCP_NODELAY is enabled...
     * ...
     * }
     *

     *

     * For options that take a particular type as a parameter,
     * getOption(int) will return the para


it_restart then unit:PopAndCallDestructor() return end
	elseif IsKindOf(obj, "BaseBlinds") then
		apartment = obj
		open_state = apartment:GetOpenState()
		if open_state == "Idle" then
			if bld:Random(100) < 50 then
				open_state = "Open"
			else
				open_state = "Open2"
			end
		end
		apartment[open_state](apartment)
		if unit.visit_restart then unit:PopAndCallDestructor() return end
		if open_state == "Open" then
			PrgVisitSlot(unit, bld, apartment, spot, slot_desc, slot, slotname)
			if unit.visit_restart then unit:PopAndCallDestructor() return end
			PrgLeadToExit(unit, apartment)
			if unit.visit_restart then unit:PopAndCallDestructor() return end
		else
			PrgVisitHolder(unit, bld)
			if unit.visit_restart then unit:PopAndCallDestructor() return end
		end
	else
		PrgVisitSlot(unit, bld, obj, spot, slot_desc, slot, slotname)
		if unit.visit_restart then unit:PopAndCallDestructor() return end
		PrgLeadToExit(unit, bld)
		if unit.visit_restart then unit:PopAndCallDestructor() return end
	end

	unit:PopAndCallDestructor()
end


vector.path
import androidx.compose.ui.unit.dp
import com.slapps.cupertino.icons.CupertinoIcons

val CupertinoIcons.Filled.TrayAndArrowDown: ImageVector
    get() {
        if (_trayAndArrowDown != null) {
            return _trayAndArrowDown!!
        }
        _trayAndArrowDown =
            Builder(
                name = "TrayAndArrowDown",
                defaultWidth = 27.6328.dp,
                defaultHeight = 29.4727.dp,
                viewportWidth = 27.6328f,
                viewportHeight =
                29.4727f,
            ).apply {
                path(
                    fill = SolidColor(Color(0xFF000000)),
                    stroke = null,
                    strokeLineWidth = 0.0f,
                    strokeLineCap = Butt,
                    strokeLineJoin = Miter,
                    strokeLineMiter = 4.0f,
                    pathFillType = NonZero,
                ) {
                    moveTo(3.6797f, 27.0938f)
                    lineTo(23.9531f, 27.0938f)
                    curveTo(26.4141f, 27.0938f, 27.6328f, 25.875f, 27.6328f, 23.4609f)
                    lineTo(27.6328f, 16.5234f)
                    curveTo(27.6328f, 15.457f, 27.4922f, 14.9297f, 26.9648f, 14.2969f)
                    lineTo(22.9219f, 9.2813f)
                    curveTo(21.5508f, 7.5938f, 20.707f, 6.6094f, 18.6328f, 6.6094f)
                    lineTo(16.9102f, 6.6094f)
                    lineTo(16.9102f, 8.2617f)
                    lineTo(18.7617f, 8.2617f)
                    curveTo(19.6172f, 8.2617f, 20.5078f, 9.0117f, 21.082f, 9.7383f)
                    lineTo(25.2422f, 14.9766f)
                    curveTo(25.7109f, 15.5742f, 25.5469f, 15.8086f, 24.9023f, 15.8086f)
                    lineTo(17.6719f, 15.8086f)
                    curveTo(17.0156f, 15.8086f, 16.7109f, 16.3125f, 16.7109f, 16.8281f)
                    lineTo(16.7109f, 16.875f)
                    curveTo(16.7109f, 18.3164f, 15.5859f, 19.8281f, 13.8164f, 19.8281f)
                    curveTo(12.0586f, 19.8281f, 10.9336f, 18.3164f, 10.9336f, 16.875f)
                    lineTo(10.9336f, 16.8281f)
                    curveTo(10.9336f, 16.3125f, 10.6172f, 15.8086f, 9.9609f, 15.8086f)
                    lineTo(2.7539f, 15.8086f)
                    curveTo(2.0742f, 15.8086f, 1.9453f, 15.5391f, 2.4023f, 14.9766f)
                    lineTo(6.5508f, 9.7383f)
                    curveTo(7.125f, 9.0117f, 8.0156f, 8.2617f, 8.8711f, 8.2617f)
                    lineTo(10.7344f, 8.2617f)
                    lineTo(10.7344f, 6.6094f)
                    lineTo(9.0117f, 6.6094f)
                    curveTo(6.9258f, 6.6094f, 6.0938f, 7.5938f, 4.7227f, 9.2813f)
                    lineTo(0.668f, 14.2969f)
                    curveTo(0.1523f, 14.9297f, 0.0f, 15.457f, 0.0


it="10" stroke-width="2" d="M50,21c0,0,4,2,3,4c0,0,3.3333,0,4.1667,2.5C58,30,63,28,63,28l-4.3333-2.1667c0,0,0-2.8333-1.3333-2.8333C56,23,53,20,50,21z"/></g></svg>';
	--whale: '<svg id="emoji" viewBox="0 0 72 72" version="1.1" xmlns="http://www.w3.org/2000/svg"><g id="color" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path fill="#61b2e4" d="m22.3 44.828c0.62116 2.6752 1.8697 5.2427 3.5273 7.752 0.90598 1.3714 2.5825 0.78665 2.9766-0.8086 0.3406-0.88089 0.54173-1.8991 0.63282-2.959"/><path fill="#61b2e4" stroke-miterlimit="10" d="m46.638 14.502c-0.69375 0.20563-0.99696 3.4163-0.94922 4.5234 0.13123 3.0431 5.2776 3.0916 2.8477 6.4004-10.496 11.84-26.393-3.7844-34.527 3.6602-1.2447 11.436 16.858 27.45 30.99 17.914 8.2058-5.537 10.459-14.795 11.082-20.096 0.44063-1.1459 1.4648-1.4028 3.2832-1.8984 5.1933-1.4603 4.9047-4.3002 4.9531-8.127-2.3585 2.8572-4.9069 1.8006-6.8223 1.7285-1.1068-0.004-2.1817 1.2444-2.8574 1.7949-0.0901-0.63086-0.22618-1.4757-0.83203-2.1777-1.5055-1.7445-4.947-0.75965-6.4004-2.877-0.2318-0.53526-0.43943-0.79209-0.62305-0.84571-0.0497-0.0145-0.0983-0.0137-0.14453 0z"/><path fill="#d0cfce" d="m57 26.054-0.21093 0.0645-0.8086 1.4707c0.005-0.04 0.0143-0.0893 0.0195-0.12891v-0.041c-0.0185 0.0842-0.0415 0.16082-0.0605 0.24414l-1.4375 2.6152c-0.32488 1.4765-0.7974 3.0771-1.4277 4.7051-5.5366 8.8989-15.765 7.7844-22.539 3.2774-3.7744-2.5113-8.691-7.2733-11.914-7.6699-2.1209-0.26099-4.4794 1.0163-4.0644 3.1387l-0.73243 1.291c1.5312 4.4107 5.0009 8.6791 9.3711 11.699 6.3756 4.406 14.943 6.1214 22.389 1.0977 8.2808-5.5876 10.687-14.682 11.416-20.201v-1.5625z"/><path fill="#61b2e4" d="m35.89 40.827c0.52212 5.6188 3.5252 9.756 8.0055 13.242 1.2972 1.0094 2.6965-0.0816 2.5593-1.7191 0.18853-4.3613-2.6643-10.672-5.7064-10.677"/></g><g id="line" stroke-


_RxI0, bit::extract<0, 3>(value));
        INTC.SetLevel(SCI0_TxI0, bit::extract<0, 3>(value));
        INTC.SetLevel(SCI0_TEI0, bit::extract<0, 3>(value));
        UpdateInterruptLevels<ITU4_IMIA4, ITU4_IMIB4, ITU4_OVI4, SCI0_ERI0, SCI0_RxI0, SCI0_TxI0, SCI0_TEI0>();
        break;
    case 0x18C: // INTC IPRE (bits 8-15)
        using enum InterruptSource;
        INTC.SetLevel(SCI1_ERI1, bit::extract<4, 7>(value));
        INTC.SetLevel(SCI1_RxI1, bit::extract<4, 7>(value));
        INTC.SetLevel(SCI1_TxI1, bit::extract<4, 7>(value));
        INTC.SetLevel(SCI1_TEI1, bit::extract<4, 7>(value));
        INTC.SetLevel(PRT_PEI, bit::extract<0, 3>(value));
        INTC.SetLevel(AD_ITI, bit::extract<0, 3>(value));
        UpdateInterruptLevels<SCI1_ERI1, SCI1_RxI1, SCI1_TxI1, SCI1_TEI1, PRT_PEI, AD_ITI>();
        break;
    case 0x18D: // INTC IPRE (bits 0-7)
        using enum InterruptSource;
        INTC.SetLevel(WDT_ITI, bit::extract<4, 7>(value));
        INTC.SetLevel(REF_CMI, bit::extract<4, 7>(value));
        UpdateInterruptLevels<WDT_ITI, REF_CMI>();
        break;
    case 0x18E: INTC.WriteICR<false, true, poke>(value << 8u); break;
    case 0x18F: INTC.WriteICR<true, false, poke>(value); break;

    case 0x190: // UBC BARH (bits 8-15)
    case 0x191: // UBC BARH (bits 0-7)
    case 0x192: // UBC BARL (bits 8-15)
    case 0x193: // UBC BARL (bits 0-7)
    case 0x194: // UBC BAMRH (bits 8-15)
    case 0x195: // UBC BAMRH (bits 0-7)
    case 0x196: // UBC BAMRL (bits 8-15)
    case 0x197: // UBC BAMRL (bits 0-7)
    case 0x198: // UBC BBR (bits 8-15)
    case 0x199: // UBC BBR (bits 0-7)
        // TODO: implement
        break;

    case 0x1A0: bit::deposit_into<8, 15>(BSC.BCR.u16, value & 0xF8); break;
    case 0x1A1: break; // BCR bits 7-0 are all reserved
    case 0x1A2: bit::deposit_into<8, 15>(BSC.WCR1.u16, value); break;
    case 0x1A3: bit::deposit_into<0, 7>(BSC.WCR1.u16, (value & 0x02) | 0xFD); break;
    case 0x1A4: bit::deposit_into<8, 15>(BSC.WCR2.u16, value); break;
    case 0x1A5: bit::deposit_into<0, 7>(BSC.WCR2.u16, value); break;
    case 0x1A6: bit::deposit_into<8, 15>(BSC.WCR3.u16, value & 0xF8); break;
    case 0x1A7: break; // WCR3 bits 7-0 are all reserved
    case 0x1A8: bit::deposit_into<8, 15>(BSC.DCR.u16, value); break;
    case 0x1A9: break; // DCR bits 7-0 are all reserved
    case 0x1AA: bit::deposit_i


boolean,
	in_options?: ApplyChangeSetOptions,
) {
	if (io_rangeA.removeInsertOperation) {
		io_resultingSegment.removeInsertOperationA = io_rangeA.removeInsertOperation;
	} else {
		delete io_resultingSegment.removeInsertOperationA;
	}
	if (io_rangeB.removeInsertOperation) {
		io_resultingSegment.removeInsertOperationB = io_rangeB.removeInsertOperation;
	} else {
		delete io_resultingSegment.removeInsertOperationB;
	}

	if (io_rangeB.begin === undefined) {
		io_resultingSegment.begin = io_rangeA.begin;
		io_resultingSegment.end = io_rangeA.end;
		io_resultingSegment.op = io_rangeA.op;
		io_resultingSegment.flag = io_rangeA.flag;
		return;
	}

	if (
		io_rangeB.removeInsertOperation &&
		io_rangeB.op.type === ArrayChangeSetIterator.types.REMOVE &&
		(io_rangeA.begin === undefined ||
			io_rangeB.removeInsertOperation[0] < io_rangeA.begin - io_rangeA.op.offset) &&
		io_rangeB.removeInsertOperation[0] < io_rangeB.begin &&
		!io_rangeB.insertAlreadyProcessed
	) {
		io_resultingSegment.begin = io_rangeB.removeInsertOperation[0];
		io_resultingSegment.end = io_rangeB.removeInsertOperation[0];
		(io_resultingSegment as OperationRangeInsert).op = {
			type: ArrayChangeSetIterator.types.INSERT,
			operation: io_rangeB.removeInsertOperation as arrayInsertList,
			offset: io_rangeB.op.offset,
		};
		io_resultingSegment.flag = ArrayChangeSetRangeType.completeB;
		io_rangeB.insertAlreadyProcessed = true;
		return;
	}

	if (io_rangeA.begin === undefined) {
		io_resultingSegment.begin = io_rangeB.begin;
		io_resultingSegment.end = io_rangeB.end;
		io_resultingSegment.op = io_rangeB.op;
		io_resultingSegment.flag = io_rangeB.flag;
		return;
	}
	io_resultingSegment.opA = undefined;
	io_resultingSegment.opB = undefined;
	io_resultingSegment.op = undefined;

	// We have an overlapping remove and insert operation at the same position
	// in a squash operation. In that case, we try to create a more efficient
	// ChangeSet by detecting cases, in which the remove and insert cancel out
	// (which we can detect for a reversible ChangeSet).
	// TODO: In the most general case, we should convert the overlapping remove
	//       insert operations into the most optimal modify operation, but this
	//       would require the computation of the edit distance between the two
	//       operations, which could only be done efficiently for named properties.
	let nextInsertOffset = 0;
	if (io_rangeA.removeInsertOperation) {
		nextInsertOffset = getOpLength(io_rangeA.removeInsertOperation);
	}
	if (
		!in_rebasing &&
		io_rangeA.begin <= io_rangeB.begin &&
		io_rangeA.begin + nextInsertOffset >= io_rangeB.begin &&
		io_rangeA.op.type === ArrayChangeSetIterator.types.REMOVE &&
		Array.isArray(io_rangeA.op.operation[1]) && // This is a reversible remove operation
		io_rangeB.op.type === ArrayChangeSetIterator.types.INSERT
	) {
		// Are the two operations canceling out?
		let startOffset = 0;
		let rangeStart = 0;
		let matchFound = false;
		let rangeLength = io_rangeB.op.operation[1].length;
		const operationMetaInfo =
			in_options &&
			in_options.applyAfterMetaInformation &&
			in_options.applyAfterMetaInformation.get(io_rangeB.op.operation[1]);
		if (operationMeta


Errorf("parent of query node must be a BatchNode but is %T", source)
	}
	child := batch.QueryFlux("")
	err := json.Unmarshal(data, child)
	return child, err
}

func unmarshalWhere(data []byte, parents []Node, typ TypeOf) (Node, error) {
	if len(parents) != 1 {
		return nil, fmt.Errorf("expected one parent for node %d but found %d", typ.ID, len(parents))
	}
	parent := parents[0]
	nodeParent, ok := parent.(chainNodeAliasWhere)
	if !ok {
		return nil, fmt.Errorf("parent node does not have where clause but is %T", parent)
	}
	child := nodeParent.Where(nil)
	err := json.Unmarshal(data, child)
	return child, err
}

func unmarshalGroupby(data []byte, parents []Node, typ TypeOf) (Node, error) {
	if len(parents) != 1 {
		return nil, fmt.Errorf("expected one parent for node %d but found %d", typ.ID, len(parents))
	}
	parent := parents[0]
	nodeParent, ok := parent.(chainNodeAliasGroupBy)
	if !ok {
		return nil, fmt.Errorf("parent node does not have groupBy clause but is %T", parent)
	}
	child := nodeParent.GroupBy()
	err := json.Unmarshal(data, child)
	return child, err
}

func unmarshalStats(data []byte, parents []Node, typ TypeOf) (Node, error) {
	if len(parents) != 1 {
		return nil, fmt.Errorf("expected one parent for node %d but found %d", typ.ID, len(parents))
	}
	parent := parents[0]
	nodeParent, ok := parent.(*node)
	if !ok {
		return nil, fmt.Errorf("parent node is not a node but is %T", parent)
	}
	child := nodeParent.Stats(0)
	err := json.Unmarshal(data, child)
	if child.Interval == 0 {
		return nil, errors.New("zero is an invalid stats interval")
	}
	return child, err
}

func unmarshalTopBottom(data []byte, parents []Node, typ TypeOf) (Node, error) {
	if len(parents) != 1 {
		return nil, fmt.Errorf("expected one parent for node %d but found %d", typ.ID, len(parents))
	}
	parent := parents[0]
	chainParent, ok := isChainNode(parent)
	if !ok {
		return nil, fmt.Errorf("parent node is not a chain node but is %T", parent)
	}

	var raw = &struct {
		Field string   `json:"field"`
		Tags  []string `json:"tags"`
	}{}
	err := json.Unmarshal(data, raw)
	if err != nil {
		return nil, err
	}
	var child *InfluxQLNode
	switch typ.Type {
	case "top":
		child = chainParent.Top(0, raw.Field, raw.Tags...)
	case "bottom":
		child = chainParent.Bottom(0, raw.Field, raw.Tags...)
	default:
		return nil, fmt.Errorf("expected top or bottom node but found %s", typ.Type)
	}

	err = json.Unmarshal(data, child)
	return child, err
}

func unmarshalUDF(data []byte, parents []Node, typ TypeOf) (Node, error) {
	if len(parents) != 1 {
		return nil, fmt.Errorf("expected one parent for node %d but found %d", typ.ID, len(parents))
	}
	parent := parents[0]
	child := &UDFNode{}
	parent.linkChild(child)
	err := json.Unmarshal(data, child)
	return child, err
}

func isChainNode(node Node) (chainnodeAlias, bool) {
	a, ok := node.(chainnodeAlias)
	if ok {
		r


tyleItem.prototype.kind]=T.StyleItem,s[T.PositionItem.prototype.kind]=T.PositionItem,s[T.CellItem.prototype.kind]=T.CellItem,s[T.MmlItem.prototype.kind]=T.MmlItem,s[T.FnItem.prototype.kind]=T.FnItem,s[T.NotItem.prototype.kind]=T.NotItem,s[T.NonscriptItem.prototype.kind]=T.NonscriptItem,s[T.DotsItem.prototype.kind]=T.DotsItem,s[T.ArrayItem.prototype.kind]=T.ArrayItem,s[T.EqnArrayItem.prototype.kind]=T.EqnArrayItem,s[T.EquationItem.prototype.kind]=T.EquationItem,s),options:{maxMacros:1e3,baseURL:"undefined"==typeof document||0===document.getElementsByTagName("base").length?"":String(document.location).replace(/#.*$/,"")},tags:{base:_},postprocessors:[[function(t){var e,n,r=t.data;try{for(var i=l(r.getList("nonscript")),o=i.next();!o.done;o=i.next()){var s=o.value;if(s.attributes.get("scriptlevel")>0){var a=s.parent;if(a.childNodes.splice(a.childIndex(s),1),r.removeFromList(s.kind,[s]),s.isKind("mrow")){var c=s.childNodes[0];r.removeFromList("mstyle",[c]),r.removeFromList("mspace",c.childNodes[0].childNodes)}}else s.isKind("mrow")&&(s.parent.replaceChild(s.childNodes[0],s),r.removeFromList("mrow",[s]))}}catch(t){e={error:t}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(e)throw e.error}}},-4]]})},554:function(t,e,n,r,i){var o,s=this&&this.__extends||(o=function(t,e){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},o(t,e)},function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),a=this&&this.__read||function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,i,o=n.call(t),s=[];try{for(;(void 0===e||e-- >0)&&!(r=o.next()).done;)s.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return s},l=this&&this.__values||function(t){var e="function"==typeof Symbol&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")},c=this&&this.__spreadArray||function(t,e){for(var n=0,r=e.length,i=t.length;n<r;n++,i++)t[i]=e[n];return t};r();var u=t(555),h=t(552),d=function(){function


    .cspan-16 { grid-column-end: span 16; }
  }
}

/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (min-width: 768px) {
  .db-grid-layout {
    grid-template-columns: repeat(16, minmax(0px, 1fr));
    .cspan-1 { grid-column-end: span 4; }
    .cspan-2 { grid-column-end: span 8; }
    .cspan-3 { grid-column-end: span 12; }
    .cspan-4 { grid-column-end: span 16; }
    .cspan-5 { grid-column-end: span 16; }
    .cspan-6 { grid-column-end: span 16; }
    .cspan-7 { grid-column-end: span 16; }
    .cspan-8 { grid-column-end: span 16; }
    .cspan-9 { grid-column-end: span 16; }
    .cspan-10 { grid-column-end: span 16; }
    .cspan-11 { grid-column-end: span 16; }
    .cspan-12 { grid-column-end: span 16; }
    .cspan-13 { grid-column-end: span 16; }
    .cspan-14 { grid-column-end: span 16; }
    .cspan-15 { grid-column-end: span 16; }
    .cspan-16 { grid-column-end: span 16; }
  }
}

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {
  .db-grid-layout {
    grid-template-columns: repeat(16, minmax(0px, 1fr));
    .cspan-1 { grid-column-end: span 2; }
    .cspan-2 { grid-column-end: span 4; }
    .cspan-3 { grid-column-end: span 6; }
    .cspan-4 { grid-column-end: span 8; }
    .cspan-5 { grid-column-end: span 10; }
    .cspan-6 { grid-column-end: span 12; }
    .cspan-7 { grid-column-end: span 14; }
    .cspan-8 { grid-column-end: span 16; }
    .cspan-9 { grid-column-end: span 16; }
    .cspan-10 { grid-column-end: span 16; }
    .cspan-11 { grid-column-end: span 16; }
    .cspan-12 { grid-column-end: span 16; }
    .cspan-13 { grid-column-end: span 16; }
    .cspan-14 { grid-column-end: span 16; }
    .cspan-15 { grid-column-end: span 16; }
    .cspan-16 { grid-column-end: span 16; }
  }
}

/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {
  .db-grid-layout {
    /* minmax(0px, 1fr) - very important, resizing (making window smaller) on Firefox does not work without it */
    grid-template-columns: repeat(16, minmax(0px, 1fr));
    .cspan-1 { grid-column-end: span 1; }
    .cspan-2 { grid-column-end: span 2; }
    .cspan-3 { grid-column-end: span 3; }
    .cspan-4 { grid-column-end: span 4; }
    .cspan-5 { grid-column-end: span 5; }
    .cspan-6 { grid-column-end: span 6; }
    .cspan-7 { grid-column-end: span 7; }
    .cspan-8 { grid-column-end: span 8; }
    .cspan-9 { grid-column-end: span 9; }
    .cspan-


Wrapper($73.UInt64Value v) {
    setField(205, v);
  }

  @$pb.TagNumber(205)
  $core.bool hasOptionalUint64Wrapper() => $_has(105);
  @$pb.TagNumber(205)
  void clearOptionalUint64Wrapper() => clearField(205);
  @$pb.TagNumber(205)
  $73.UInt64Value ensureOptionalUint64Wrapper() => $_ensure(105);

  @$pb.TagNumber(206)
  $73.FloatValue get optionalFloatWrapper => $_getN(106);
  @$pb.TagNumber(206)
  set optionalFloatWrapper($73.FloatValue v) {
    setField(206, v);
  }

  @$pb.TagNumber(206)
  $core.bool hasOptionalFloatWrapper() => $_has(106);
  @$pb.TagNumber(206)
  void clearOptionalFloatWrapper() => clearField(206);
  @$pb.TagNumber(206)
  $73.FloatValue ensureOptionalFloatWrapper() => $_ensure(106);

  @$pb.TagNumber(207)
  $73.DoubleValue get optionalDoubleWrapper => $_getN(107);
  @$pb.TagNumber(207)
  set optionalDoubleWrapper($73.DoubleValue v) {
    setField(207, v);
  }

  @$pb.TagNumber(207)
  $core.bool hasOptionalDoubleWrapper() => $_has(107);
  @$pb.TagNumber(207)
  void clearOptionalDoubleWrapper() => clearField(207);
  @$pb.TagNumber(207)
  $73.DoubleValue ensureOptionalDoubleWrapper() => $_ensure(107);

  @$pb.TagNumber(208)
  $73.StringValue get optionalStringWrapper => $_getN(108);
  @$pb.TagNumber(208)
  set optionalStringWrapper($73.StringValue v) {
    setField(208, v);
  }

  @$pb.TagNumber(208)
  $core.bool hasOptionalStringWrapper() => $_has(108);
  @$pb.TagNumber(208)
  void clearOptionalStringWrapper() => clearField(208);
  @$pb.TagNumber(208)
  $73.StringValue ensureOptionalStringWrapper() => $_ensure(108);

  @$pb.TagNumber(209)
  $73.BytesValue get optionalBytesWrapper => $_getN(109);
  @$pb.TagNumber(209)
  set optionalBytesWrapper($73.BytesValue v) {
    setField(209, v);
  }

  @$pb.TagNumber(209)
  $core.bool hasOptionalBytesWrapper() => $_has(109);
  @$pb.TagNumber(209)
  void clearOptionalBytesWrapper() => clearField(209);
  @$pb.TagNumber(209)
  $73.BytesValue ensureOptionalBytesWrapper() => $_ensure(109);

  @$pb.TagNumber(211)
  $core.List<$73.BoolValue> get repeatedBoolWrapper => $_getList(110);

  @$pb.TagNumber(212)
  $core.List<$73.Int32Value> get repeatedInt32Wrapper => $_getList(111);

  @$pb.TagNumber(213)
  $core.List<$73.Int64Value> get repeatedInt64Wrapper => $_getList(112);

  @$pb.TagNumber(214)
  $core.List<$73.UInt32Value> get repeatedUint32Wrapper => $_getList(113);

  @$pb.TagNumber(215)
  $core.List<$73.UInt64Value> get repeatedUint64Wrapper => $_getList(114);

  @$pb.TagNumber(216)
  $core.List<$73.FloatValue> get repeatedFloatWrapper => $_getList(115);

  @$pb.TagNumber(217)
  $core.List<$73.DoubleValue> get repeatedDoubleWrapper => $_getList(116);

  @$pb.TagNumber(218)
  $core.List<$73.StringValue> get repeatedStringWrapp


ue) end
	for i,v in ipairs(gm.controller.sounds) do
		v:setParam(t, value)
	end
	gm.controller.song.param[t+1] = _value
end

local uicontents = {
	{"Overdrive", target=0, act=rainparam, kind="slider", min=0, max=1, default=gm.controller.song.param[1], instant=true},
	{"Tempo", target=1, act=rainparam, kind="slider", min=0, max=1, default=gm.controller.song.param[2], instant=true},
	{"Chaos", target=2, act=rainparam, kind="slider", min=0, max=1, default=gm.controller.song.param[3], instant=true},
	{"Harmonic1", target=3, act=rainparam, kind="slider", min=0, max=1, default=gm.controller.song.param[4], instant=true},
	{"Harmonic2", target=4, act=rainparam, kind="slider", min=0, max=1, default=gm.controller.song.param[5], instant=true},
	{"Harmonic3", target=5, act=rainparam, kind="slider", min=0, max=1, default=gm.controller.song.param[6], instant=true},
}

layout = Layout({target=window, contents=uicontents}):insert()

--window:hideWindow()

end