From 09f644a7a969168e519eea31ccc19d44ff2cbab5 Mon Sep 17 00:00:00 2001 From: Denis Arh Date: Tue, 4 Jan 2022 15:27:13 +0100 Subject: [PATCH] Upgraded packages chi-prometheus, goya, exiffix, sqlmw, crypto, ouath2 --- Makefile | 7 + Makefile.inc | 5 + go.mod | 12 +- go.sum | 16 + .../github.com/766b/chi-prometheus/README.md | 43 +- .../766b/chi-prometheus/middleware.go | 53 +- .../dop251/goja/.tc39_test262_checkout.sh | 2 +- vendor/github.com/dop251/goja/README.md | 27 +- vendor/github.com/dop251/goja/array.go | 107 +- vendor/github.com/dop251/goja/array_sparse.go | 90 +- vendor/github.com/dop251/goja/ast/node.go | 75 +- .../github.com/dop251/goja/builtin_array.go | 58 +- vendor/github.com/dop251/goja/builtin_date.go | 2 +- .../github.com/dop251/goja/builtin_error.go | 146 + .../dop251/goja/builtin_function.go | 65 +- vendor/github.com/dop251/goja/builtin_json.go | 64 +- vendor/github.com/dop251/goja/builtin_map.go | 26 +- vendor/github.com/dop251/goja/builtin_math.go | 69 +- .../github.com/dop251/goja/builtin_object.go | 151 +- .../github.com/dop251/goja/builtin_promise.go | 608 + .../github.com/dop251/goja/builtin_reflect.go | 2 +- .../github.com/dop251/goja/builtin_regexp.go | 47 +- vendor/github.com/dop251/goja/builtin_set.go | 24 +- .../github.com/dop251/goja/builtin_string.go | 4 +- .../github.com/dop251/goja/builtin_symbol.go | 27 +- .../dop251/goja/builtin_typedarrays.go | 458 +- .../github.com/dop251/goja/builtin_weakmap.go | 12 +- .../github.com/dop251/goja/builtin_weakset.go | 8 +- vendor/github.com/dop251/goja/compiler.go | 19 +- .../github.com/dop251/goja/compiler_expr.go | 379 +- .../github.com/dop251/goja/compiler_stmt.go | 15 +- vendor/github.com/dop251/goja/date.go | 90 +- vendor/github.com/dop251/goja/date_parser.go | 9 +- vendor/github.com/dop251/goja/destruct.go | 37 +- vendor/github.com/dop251/goja/file/file.go | 22 +- vendor/github.com/dop251/goja/func.go | 96 +- vendor/github.com/dop251/goja/object.go | 163 +- vendor/github.com/dop251/goja/object_args.go | 4 +- .../github.com/dop251/goja/object_dynamic.go | 36 +- vendor/github.com/dop251/goja/object_gomap.go | 6 +- .../dop251/goja/object_gomap_reflect.go | 6 +- .../dop251/goja/object_goreflect.go | 8 +- .../github.com/dop251/goja/object_goslice.go | 19 +- .../dop251/goja/object_goslice_reflect.go | 28 +- vendor/github.com/dop251/goja/object_lazy.go | 28 +- .../dop251/goja/parser/expression.go | 334 +- vendor/github.com/dop251/goja/parser/lexer.go | 459 +- .../github.com/dop251/goja/parser/regexp.go | 39 +- .../dop251/goja/parser/statement.go | 68 +- vendor/github.com/dop251/goja/proxy.go | 102 +- vendor/github.com/dop251/goja/regexp.go | 7 +- vendor/github.com/dop251/goja/runtime.go | 492 +- vendor/github.com/dop251/goja/string.go | 24 +- vendor/github.com/dop251/goja/string_ascii.go | 5 +- .../github.com/dop251/goja/string_unicode.go | 8 + vendor/github.com/dop251/goja/token/token.go | 4 + .../dop251/goja/token/token_const.go | 15 +- vendor/github.com/dop251/goja/typedarrays.go | 47 +- vendor/github.com/dop251/goja/value.go | 37 +- vendor/github.com/dop251/goja/vm.go | 397 +- vendor/github.com/edwvee/exiffix/LICENSE | 21 + vendor/github.com/edwvee/exiffix/decode.go | 4 +- vendor/github.com/ngrok/sqlmw/.golangci.yml | 3 + vendor/github.com/ngrok/sqlmw/README.md | 76 +- vendor/github.com/ngrok/sqlmw/conn.go | 4 +- vendor/github.com/ngrok/sqlmw/conn_go115.go | 19 + vendor/github.com/ngrok/sqlmw/connector.go | 8 - vendor/github.com/ngrok/sqlmw/interceptor.go | 5 + vendor/github.com/ngrok/sqlmw/rows.go | 84 +- vendor/github.com/ngrok/sqlmw/rows_picker.go | 1017 + vendor/github.com/ngrok/sqlmw/stmt.go | 4 +- .../x/crypto/argon2/blamka_amd64.go | 1 + .../golang.org/x/crypto/argon2/blamka_amd64.s | 1 + .../golang.org/x/crypto/argon2/blamka_ref.go | 1 + .../x/crypto/blake2b/blake2bAVX2_amd64.go | 1 + .../x/crypto/blake2b/blake2bAVX2_amd64.s | 95 +- .../x/crypto/blake2b/blake2b_amd64.go | 1 + .../x/crypto/blake2b/blake2b_amd64.s | 56 +- .../x/crypto/blake2b/blake2b_ref.go | 1 + .../golang.org/x/crypto/blake2b/register.go | 1 + .../x/crypto/curve25519/curve25519.go | 52 +- .../x/crypto/curve25519/curve25519_amd64.go | 240 - .../x/crypto/curve25519/curve25519_amd64.s | 1793 -- .../x/crypto/curve25519/curve25519_generic.go | 828 - .../x/crypto/curve25519/curve25519_noasm.go | 11 - .../x/crypto/curve25519/internal/field/README | 7 + .../x/crypto/curve25519/internal/field/fe.go | 416 + .../curve25519/internal/field/fe_amd64.go | 13 + .../curve25519/internal/field/fe_amd64.s | 379 + .../internal/field/fe_amd64_noasm.go | 12 + .../curve25519/internal/field/fe_arm64.go | 16 + .../curve25519/internal/field/fe_arm64.s | 43 + .../internal/field/fe_arm64_noasm.go | 12 + .../curve25519/internal/field/fe_generic.go | 264 + .../curve25519/internal/field/sync.checkpoint | 1 + .../crypto/curve25519/internal/field/sync.sh | 19 + vendor/golang.org/x/crypto/ed25519/ed25519.go | 1 + .../x/crypto/ed25519/ed25519_go113.go | 1 + vendor/golang.org/x/crypto/scrypt/scrypt.go | 23 +- vendor/golang.org/x/net/http2/README | 20 - .../x/net/http2/client_conn_pool.go | 47 +- vendor/golang.org/x/net/http2/errors.go | 12 + vendor/golang.org/x/net/http2/frame.go | 62 +- .../golang.org/x/net/http2/hpack/huffman.go | 38 +- vendor/golang.org/x/net/http2/pipe.go | 11 + vendor/golang.org/x/net/http2/server.go | 112 +- vendor/golang.org/x/net/http2/transport.go | 1469 +- vendor/golang.org/x/net/idna/go118.go | 14 + vendor/golang.org/x/net/idna/idna10.0.0.go | 6 +- vendor/golang.org/x/net/idna/idna9.0.0.go | 4 +- vendor/golang.org/x/net/idna/pre_go118.go | 12 + vendor/golang.org/x/net/idna/punycode.go | 36 +- vendor/golang.org/x/net/publicsuffix/table.go | 20740 ++++++++-------- vendor/golang.org/x/oauth2/google/google.go | 32 +- .../externalaccount/basecredentials.go | 130 +- .../internal/externalaccount/clientauth.go | 3 +- .../internal/externalaccount/impersonate.go | 39 +- .../internal/externalaccount/sts_exchange.go | 3 + .../internal/externalaccount/urlcredsource.go | 3 +- vendor/golang.org/x/sys/cpu/asm_aix_ppc64.s | 1 + vendor/golang.org/x/sys/cpu/cpu.go | 5 +- vendor/golang.org/x/sys/cpu/cpu_aix.go | 1 + vendor/golang.org/x/sys/cpu/cpu_arm64.s | 1 + vendor/golang.org/x/sys/cpu/cpu_gc_x86.go | 4 + vendor/golang.org/x/sys/cpu/cpu_gccgo_x86.go | 6 + vendor/golang.org/x/sys/cpu/cpu_s390x.s | 1 + vendor/golang.org/x/sys/cpu/cpu_x86.go | 10 +- vendor/golang.org/x/sys/cpu/cpu_x86.s | 25 + vendor/golang.org/x/sys/unix/README.md | 6 +- vendor/golang.org/x/sys/unix/asm_aix_ppc64.s | 1 + vendor/golang.org/x/sys/unix/asm_bsd_386.s | 4 +- vendor/golang.org/x/sys/unix/asm_bsd_arm.s | 4 +- vendor/golang.org/x/sys/unix/asm_linux_386.s | 1 + .../golang.org/x/sys/unix/asm_linux_amd64.s | 1 + vendor/golang.org/x/sys/unix/asm_linux_arm.s | 1 + .../golang.org/x/sys/unix/asm_linux_arm64.s | 1 + .../golang.org/x/sys/unix/asm_linux_mips64x.s | 1 + .../golang.org/x/sys/unix/asm_linux_mipsx.s | 1 + .../golang.org/x/sys/unix/asm_linux_ppc64x.s | 1 + .../golang.org/x/sys/unix/asm_linux_riscv64.s | 4 +- .../golang.org/x/sys/unix/asm_linux_s390x.s | 3 +- .../x/sys/unix/asm_openbsd_mips64.s | 1 + .../golang.org/x/sys/unix/asm_solaris_amd64.s | 1 + vendor/golang.org/x/sys/unix/fdset.go | 4 +- vendor/golang.org/x/sys/unix/mkall.sh | 12 - vendor/golang.org/x/sys/unix/mkerrors.sh | 8 + .../x/sys/unix/syscall_darwin.1_13.go | 4 +- .../x/sys/unix/syscall_darwin_386.go | 51 - .../x/sys/unix/syscall_darwin_arm.go | 51 - .../x/sys/unix/syscall_darwin_libSystem.go | 9 +- .../golang.org/x/sys/unix/syscall_illumos.go | 51 +- vendor/golang.org/x/sys/unix/syscall_linux.go | 77 +- .../x/sys/unix/syscall_linux_386.go | 4 + .../x/sys/unix/syscall_linux_amd64.go | 4 + .../x/sys/unix/syscall_linux_arm.go | 4 + .../x/sys/unix/syscall_linux_arm64.go | 4 + .../x/sys/unix/syscall_linux_mips64x.go | 4 + .../x/sys/unix/syscall_linux_mipsx.go | 4 + .../x/sys/unix/syscall_linux_ppc.go | 4 + .../x/sys/unix/syscall_linux_ppc64x.go | 4 + .../x/sys/unix/syscall_linux_riscv64.go | 4 + .../x/sys/unix/syscall_linux_s390x.go | 4 + .../x/sys/unix/syscall_linux_sparc64.go | 4 + .../x/sys/unix/syscall_zos_s390x.go | 52 +- .../x/sys/unix/zerrors_darwin_386.go | 1789 -- .../x/sys/unix/zerrors_darwin_arm.go | 1789 -- vendor/golang.org/x/sys/unix/zerrors_linux.go | 113 +- .../x/sys/unix/zerrors_linux_386.go | 19 + .../x/sys/unix/zerrors_linux_amd64.go | 19 + .../x/sys/unix/zerrors_linux_arm.go | 19 + .../x/sys/unix/zerrors_linux_arm64.go | 19 + .../x/sys/unix/zerrors_linux_mips.go | 19 + .../x/sys/unix/zerrors_linux_mips64.go | 19 + .../x/sys/unix/zerrors_linux_mips64le.go | 19 + .../x/sys/unix/zerrors_linux_mipsle.go | 19 + .../x/sys/unix/zerrors_linux_ppc.go | 19 + .../x/sys/unix/zerrors_linux_ppc64.go | 19 + .../x/sys/unix/zerrors_linux_ppc64le.go | 19 + .../x/sys/unix/zerrors_linux_riscv64.go | 19 + .../x/sys/unix/zerrors_linux_s390x.go | 21 + .../x/sys/unix/zerrors_linux_sparc64.go | 19 + .../x/sys/unix/zerrors_zos_s390x.go | 22 + .../x/sys/unix/zsyscall_darwin_386.1_13.go | 40 - .../x/sys/unix/zsyscall_darwin_386.1_13.s | 12 - .../x/sys/unix/zsyscall_darwin_386.go | 2431 -- .../x/sys/unix/zsyscall_darwin_386.s | 290 - .../x/sys/unix/zsyscall_darwin_amd64.1_13.go | 8 +- .../x/sys/unix/zsyscall_darwin_amd64.1_13.s | 19 +- .../x/sys/unix/zsyscall_darwin_amd64.go | 572 +- .../x/sys/unix/zsyscall_darwin_amd64.s | 853 +- .../x/sys/unix/zsyscall_darwin_arm.1_13.go | 40 - .../x/sys/unix/zsyscall_darwin_arm.1_13.s | 12 - .../x/sys/unix/zsyscall_darwin_arm.go | 2417 -- .../x/sys/unix/zsyscall_darwin_arm.s | 288 - .../x/sys/unix/zsyscall_darwin_arm64.1_13.go | 8 +- .../x/sys/unix/zsyscall_darwin_arm64.1_13.s | 19 +- .../x/sys/unix/zsyscall_darwin_arm64.go | 572 +- .../x/sys/unix/zsyscall_darwin_arm64.s | 853 +- .../x/sys/unix/zsyscall_zos_s390x.go | 42 +- .../x/sys/unix/zsysnum_darwin_386.go | 438 - .../x/sys/unix/zsysnum_darwin_arm.go | 438 - .../x/sys/unix/zsysnum_linux_386.go | 1 + .../x/sys/unix/zsysnum_linux_amd64.go | 1 + .../x/sys/unix/zsysnum_linux_arm.go | 1 + .../x/sys/unix/zsysnum_linux_arm64.go | 1 + .../x/sys/unix/zsysnum_linux_mips.go | 1 + .../x/sys/unix/zsysnum_linux_mips64.go | 1 + .../x/sys/unix/zsysnum_linux_mips64le.go | 1 + .../x/sys/unix/zsysnum_linux_mipsle.go | 1 + .../x/sys/unix/zsysnum_linux_ppc.go | 1 + .../x/sys/unix/zsysnum_linux_ppc64.go | 1 + .../x/sys/unix/zsysnum_linux_ppc64le.go | 1 + .../x/sys/unix/zsysnum_linux_riscv64.go | 1 + .../x/sys/unix/zsysnum_linux_s390x.go | 1 + .../x/sys/unix/zsysnum_linux_sparc64.go | 1 + .../x/sys/unix/ztypes_darwin_386.go | 524 - .../x/sys/unix/ztypes_darwin_arm.go | 524 - .../x/sys/unix/ztypes_dragonfly_amd64.go | 3 + .../x/sys/unix/ztypes_freebsd_386.go | 5 +- .../x/sys/unix/ztypes_freebsd_amd64.go | 5 +- .../x/sys/unix/ztypes_freebsd_arm.go | 5 +- .../x/sys/unix/ztypes_freebsd_arm64.go | 5 +- .../x/sys/unix/ztypes_illumos_amd64.go | 4 +- vendor/golang.org/x/sys/unix/ztypes_linux.go | 178 +- .../golang.org/x/sys/unix/ztypes_linux_386.go | 18 +- .../x/sys/unix/ztypes_linux_amd64.go | 18 +- .../golang.org/x/sys/unix/ztypes_linux_arm.go | 18 +- .../x/sys/unix/ztypes_linux_arm64.go | 18 +- .../x/sys/unix/ztypes_linux_mips.go | 18 +- .../x/sys/unix/ztypes_linux_mips64.go | 18 +- .../x/sys/unix/ztypes_linux_mips64le.go | 18 +- .../x/sys/unix/ztypes_linux_mipsle.go | 18 +- .../golang.org/x/sys/unix/ztypes_linux_ppc.go | 18 +- .../x/sys/unix/ztypes_linux_ppc64.go | 18 +- .../x/sys/unix/ztypes_linux_ppc64le.go | 18 +- .../x/sys/unix/ztypes_linux_riscv64.go | 18 +- .../x/sys/unix/ztypes_linux_s390x.go | 18 +- .../x/sys/unix/ztypes_linux_sparc64.go | 18 +- .../x/sys/unix/ztypes_netbsd_386.go | 4 +- .../x/sys/unix/ztypes_netbsd_amd64.go | 4 +- .../x/sys/unix/ztypes_netbsd_arm.go | 4 +- .../x/sys/unix/ztypes_netbsd_arm64.go | 4 +- .../x/sys/unix/ztypes_openbsd_386.go | 4 +- .../x/sys/unix/ztypes_openbsd_amd64.go | 4 +- .../x/sys/unix/ztypes_openbsd_arm.go | 4 +- .../x/sys/unix/ztypes_openbsd_arm64.go | 4 +- .../x/sys/unix/ztypes_openbsd_mips64.go | 4 +- .../golang.org/x/sys/unix/ztypes_zos_s390x.go | 4 + vendor/golang.org/x/sys/windows/empty.s | 1 + .../golang.org/x/sys/windows/exec_windows.go | 81 +- .../x/sys/windows/syscall_windows.go | 1 + .../golang.org/x/sys/windows/types_windows.go | 17 +- .../x/sys/windows/zsyscall_windows.go | 13 + .../x/text/unicode/rangetable/merge.go | 260 + .../x/text/unicode/rangetable/rangetable.go | 70 + .../x/text/unicode/rangetable/tables10.0.0.go | 6379 +++++ .../x/text/unicode/rangetable/tables11.0.0.go | 7030 ++++++ .../x/text/unicode/rangetable/tables12.0.0.go | 7692 ++++++ .../x/text/unicode/rangetable/tables13.0.0.go | 8364 +++++++ .../x/text/unicode/rangetable/tables9.0.0.go | 5738 +++++ vendor/modules.txt | 18 +- 261 files changed, 56820 insertions(+), 27722 deletions(-) create mode 100644 vendor/github.com/dop251/goja/builtin_promise.go create mode 100644 vendor/github.com/edwvee/exiffix/LICENSE create mode 100644 vendor/github.com/ngrok/sqlmw/.golangci.yml create mode 100644 vendor/github.com/ngrok/sqlmw/conn_go115.go create mode 100644 vendor/github.com/ngrok/sqlmw/rows_picker.go delete mode 100644 vendor/golang.org/x/crypto/curve25519/curve25519_amd64.go delete mode 100644 vendor/golang.org/x/crypto/curve25519/curve25519_amd64.s delete mode 100644 vendor/golang.org/x/crypto/curve25519/curve25519_generic.go delete mode 100644 vendor/golang.org/x/crypto/curve25519/curve25519_noasm.go create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/README create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/fe.go create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64.go create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64.s create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64_noasm.go create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64.go create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64.s create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64_noasm.go create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/fe_generic.go create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/sync.checkpoint create mode 100644 vendor/golang.org/x/crypto/curve25519/internal/field/sync.sh delete mode 100644 vendor/golang.org/x/net/http2/README create mode 100644 vendor/golang.org/x/net/idna/go118.go create mode 100644 vendor/golang.org/x/net/idna/pre_go118.go delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_386.go delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_arm.go delete mode 100644 vendor/golang.org/x/sys/unix/zerrors_darwin_386.go delete mode 100644 vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s delete mode 100644 vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go delete mode 100644 vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go delete mode 100644 vendor/golang.org/x/sys/unix/ztypes_darwin_386.go delete mode 100644 vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go create mode 100644 vendor/golang.org/x/text/unicode/rangetable/merge.go create mode 100644 vendor/golang.org/x/text/unicode/rangetable/rangetable.go create mode 100644 vendor/golang.org/x/text/unicode/rangetable/tables10.0.0.go create mode 100644 vendor/golang.org/x/text/unicode/rangetable/tables11.0.0.go create mode 100644 vendor/golang.org/x/text/unicode/rangetable/tables12.0.0.go create mode 100644 vendor/golang.org/x/text/unicode/rangetable/tables13.0.0.go create mode 100644 vendor/golang.org/x/text/unicode/rangetable/tables9.0.0.go diff --git a/Makefile b/Makefile index 52eaeeddb..8afc92053 100644 --- a/Makefile +++ b/Makefile @@ -152,6 +152,13 @@ locale.update: git add --all vendor/github.com/cortezaproject git commit -m 'Update corteza-locale dep' vendor/github.com/cortezaproject vendor/modules.txt go.mod go.sum + +outdated: $(MODOUTDATED) + $(GO) list -mod=mod -u -m -json all | $(MODOUTDATED) -update -direct + + + + ####################################################################################################################### # Quality Assurance diff --git a/Makefile.inc b/Makefile.inc index 1489de333..1730fa5bf 100644 --- a/Makefile.inc +++ b/Makefile.inc @@ -18,6 +18,7 @@ PROTOGEN = $(GOPATH)/bin/protoc-gen-go PROTOGEN_GRPC = $(GOPATH)/bin/protoc-gen-go-grpc GIN = $(GOPATH)/bin/gin STATIK = $(GOPATH)/bin/statik +MODOUTDATED = $(GOPATH)/bin/go-mod-outdated CODEGEN = build/codegen PROTOC = /usr/local/bin/protoc @@ -53,8 +54,12 @@ $(GOTEST): $(STATIK): $(GOGET) github.com/goware/statik +$(MODOUTDATED): + $(GOGET) github.com/psampaz/go-mod-outdated + $(CODEGEN): $(GO) build -o $@ cmd/codegen/main.go + clean-tools: rm -f $(BINS) diff --git a/go.mod b/go.mod index d38bacbce..2d120adeb 100644 --- a/go.mod +++ b/go.mod @@ -7,7 +7,7 @@ go 1.16 // replace github.com/cortezaproject/corteza-locale => ../locale require ( - github.com/766b/chi-prometheus v0.0.0-20180509160047-46ac2b31aa30 + github.com/766b/chi-prometheus v0.0.0-20211217152057-87afa9aa2ca8 github.com/99designs/basicauth-go v0.0.0-20160802081356-2a93ba0f464d github.com/Masterminds/goutils v1.1.0 // indirect github.com/Masterminds/semver v1.5.0 // indirect @@ -26,8 +26,8 @@ require ( github.com/dgrijalva/jwt-go v3.2.0+incompatible github.com/dgryski/dgoogauth v0.0.0-20190221195224-5a805980a5f3 github.com/disintegration/imaging v1.6.0 - github.com/dop251/goja v0.0.0-20210726224656-a55e4cfac4cf - github.com/edwvee/exiffix v0.0.0-20180602190213-b57537c92a6b + github.com/dop251/goja v0.0.0-20220102113305-2298ace6d09d + github.com/edwvee/exiffix v0.0.0-20210922235313-0f6cbda5e58f github.com/evanw/esbuild v0.12.16 github.com/fastly/go-utils v0.0.0-20180712184237-d95a45783239 // indirect github.com/fsnotify/fsnotify v1.4.9 @@ -62,7 +62,7 @@ require ( github.com/microcosm-cc/bluemonday v1.0.16 github.com/minio/minio-go/v6 v6.0.39 github.com/mitchellh/copystructure v1.0.0 // indirect - github.com/ngrok/sqlmw v0.0.0-20200129213757-d5c93a81bec6 + github.com/ngrok/sqlmw v0.0.0-20211220175533-9d16fdc47b31 github.com/pkg/errors v0.9.1 github.com/pquerna/cachecontrol v0.0.0-20180517163645-1555304b9b35 // indirect github.com/prometheus/client_golang v0.9.3 @@ -78,9 +78,9 @@ require ( github.com/tebeka/strftime v0.1.5 // indirect go.uber.org/atomic v1.7.0 go.uber.org/zap v1.19.0 - golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad + golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3 golang.org/x/image v0.0.0-20190910094157-69e4b8554b2a // indirect - golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914 + golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8 golang.org/x/text v0.3.7 google.golang.org/grpc v1.32.0 google.golang.org/protobuf v1.25.0 diff --git a/go.sum b/go.sum index ba3c98fa9..b89f67a7d 100644 --- a/go.sum +++ b/go.sum @@ -35,6 +35,8 @@ cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9 dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= github.com/766b/chi-prometheus v0.0.0-20180509160047-46ac2b31aa30 h1:bNHbCMKiQxpRNe4Pk2W09N1aXXc4ICOawQFKIDEicqc= github.com/766b/chi-prometheus v0.0.0-20180509160047-46ac2b31aa30/go.mod h1:X/LhbmoBoRu8TxoGIOIraVNhfz3hhikJoaelrOuhdPY= +github.com/766b/chi-prometheus v0.0.0-20211217152057-87afa9aa2ca8 h1:hK1G69lDhhrGqJbRA5i1rmT2KI/W77MSdr7hEGHqWdQ= +github.com/766b/chi-prometheus v0.0.0-20211217152057-87afa9aa2ca8/go.mod h1:X/LhbmoBoRu8TxoGIOIraVNhfz3hhikJoaelrOuhdPY= github.com/99designs/basicauth-go v0.0.0-20160802081356-2a93ba0f464d h1:j6oB/WPCigdOkxtuPl1VSIiLpy7Mdsu6phQffbF19Ng= github.com/99designs/basicauth-go v0.0.0-20160802081356-2a93ba0f464d/go.mod h1:3cARGAK9CfW3HoxCy1a0G4TKrdiKke8ftOMEOHyySYs= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= @@ -125,10 +127,14 @@ github.com/dlclark/regexp2 v1.4.1-0.20201116162257-a2a8dda75c91 h1:Izz0+t1Z5nI16 github.com/dlclark/regexp2 v1.4.1-0.20201116162257-a2a8dda75c91/go.mod h1:2pZnwuY/m+8K6iRw6wQdMtk+rH5tNGR1i55kozfMjCc= github.com/dop251/goja v0.0.0-20210726224656-a55e4cfac4cf h1:eK64KqjIBLpCtzIbzciHtJ3Al9t3PSVYKJiaB6E4bB8= github.com/dop251/goja v0.0.0-20210726224656-a55e4cfac4cf/go.mod h1:R9ET47fwRVRPZnOGvHxxhuZcbrMCuiqOz3Rlrh4KSnk= +github.com/dop251/goja v0.0.0-20220102113305-2298ace6d09d h1:RHB3jZIxEzQHPzoGtvn47BMbD7jzTfHAXpVC3v4aVI8= +github.com/dop251/goja v0.0.0-20220102113305-2298ace6d09d/go.mod h1:R9ET47fwRVRPZnOGvHxxhuZcbrMCuiqOz3Rlrh4KSnk= github.com/dop251/goja_nodejs v0.0.0-20210225215109-d91c329300e7/go.mod h1:hn7BA7c8pLvoGndExHudxTDKZ84Pyvv+90pbBjbTz0Y= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/edwvee/exiffix v0.0.0-20180602190213-b57537c92a6b h1:6CBzNasH8+bKeFwr5Bt5JtALHLFN4iQp7sf4ShlP/ik= github.com/edwvee/exiffix v0.0.0-20180602190213-b57537c92a6b/go.mod h1:KoE3Ti1qbQXCb3s/XGj0yApHnbnNnn1bXTtB5Auq/Vc= +github.com/edwvee/exiffix v0.0.0-20210922235313-0f6cbda5e58f h1:RMnUwTnNR070mFAEIoqMYjNirHj8i0h79VXTYyBCyVA= +github.com/edwvee/exiffix v0.0.0-20210922235313-0f6cbda5e58f/go.mod h1:KoE3Ti1qbQXCb3s/XGj0yApHnbnNnn1bXTtB5Auq/Vc= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= @@ -351,6 +357,8 @@ github.com/mrjones/oauth v0.0.0-20180629183705-f4e24b6d100c/go.mod h1:skjdDftzkF github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/ngrok/sqlmw v0.0.0-20200129213757-d5c93a81bec6 h1:evlcQnJY+v8XRRchV3hXzpHDl6GcEZeLXAhlH9Csdww= github.com/ngrok/sqlmw v0.0.0-20200129213757-d5c93a81bec6/go.mod h1:E26fwEtRNigBfFfHDWsklmo0T7Ixbg0XXgck+Hq4O9k= +github.com/ngrok/sqlmw v0.0.0-20211220175533-9d16fdc47b31 h1:FFHgfAIoAXCCL4xBoAugZVpekfGmZ/fBBueneUKBv7I= +github.com/ngrok/sqlmw v0.0.0-20211220175533-9d16fdc47b31/go.mod h1:E26fwEtRNigBfFfHDWsklmo0T7Ixbg0XXgck+Hq4O9k= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= @@ -495,6 +503,8 @@ golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPh golang.org/x/crypto v0.0.0-20201217014255-9d1352758620/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad h1:DN0cp81fZ3njFcrLCytUHRSUkqBjfTo4Tx9RJTWs0EY= golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= +golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3 h1:0es+/5331RGQPcXlMfP+WrnIIS6dNnNRe0WB02W0F4M= +golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -566,6 +576,8 @@ golang.org/x/net v0.0.0-20210610132358-84b48f89b13b h1:k+E048sYJHyVnsr1GDrRZWQ32 golang.org/x/net v0.0.0-20210610132358-84b48f89b13b/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210614182718-04defd469f4e h1:XpT3nA5TvE525Ne3hInMh6+GETgn27Zfm9dxsThnX2Q= golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 h1:CIJ76btIcR3eFI5EgSo6k1qKw9KJexJuRLI9G7Hp5wE= +golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -574,6 +586,8 @@ golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4Iltr golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914 h1:3B43BWw0xEBsLZ/NO1VALz6fppU3481pik+2Ksv45z8= golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8 h1:RerP+noqYHUQ8CMRcPlC2nvTa4dcBIjegkuWdcUDuqg= +golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -625,6 +639,8 @@ golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da h1:b3NXsE2LusjYGGjL5bxEVZZORm/YEFFrWFjR8eFrw/c= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1 h1:SrN+KX8Art/Sf4HNj6Zcz06G7VEz+7w9tdXTPOZ7+l4= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1 h1:v+OssWQX+hTHEmOBgwxdZxK4zHq3yOs8F9J7mk0PY8E= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= diff --git a/vendor/github.com/766b/chi-prometheus/README.md b/vendor/github.com/766b/chi-prometheus/README.md index 4ffb1a9ff..d51e95fc7 100644 --- a/vendor/github.com/766b/chi-prometheus/README.md +++ b/vendor/github.com/766b/chi-prometheus/README.md @@ -24,19 +24,46 @@ An endpoint with the following information (stripped output): # HELP chi_request_duration_milliseconds How long it took to process the request, partitioned by status code, method and HTTP path. # TYPE chi_request_duration_milliseconds histogram - chi_request_duration_milliseconds_bucke{code="OK",method="GET",path="/metrics",service="serviceName",le="300"} 1 - chi_request_duration_milliseconds_bucke{code="OK",method="GET",path="/metrics",service="serviceName",le="1200"} 1 - chi_request_duration_milliseconds_bucke{code="OK",method="GET",path="/metrics",service="serviceName",le="5000"} 1 - chi_request_duration_milliseconds_bucke{code="OK",method="GET",path="/metrics",service="serviceName",le="+Inf"} 1 + chi_request_duration_milliseconds_bucket{code="OK",method="GET",path="/metrics",service="serviceName",le="300"} 1 + chi_request_duration_milliseconds_bucket{code="OK",method="GET",path="/metrics",service="serviceName",le="1200"} 1 + chi_request_duration_milliseconds_bucket{code="OK",method="GET",path="/metrics",service="serviceName",le="5000"} 1 + chi_request_duration_milliseconds_bucket{code="OK",method="GET",path="/metrics",service="serviceName",le="+Inf"} 1 chi_request_duration_milliseconds_sum{code="OK",method="GET",path="/metrics",service="serviceName"} 2.003123 chi_request_duration_milliseconds_count{code="OK",method="GET",path="/metrics",service="serviceName"} 1 - chi_request_duration_milliseconds_bucke{code="OK",method="GET",path="/ok",service="serviceName",le="300"} 0 - chi_request_duration_milliseconds_bucke{code="OK",method="GET",path="/ok",service="serviceName",le="1200"} 0 - chi_request_duration_milliseconds_bucke{code="OK",method="GET",path="/ok",service="serviceName",le="5000"} 2 - chi_request_duration_milliseconds_bucke{code="OK",method="GET",path="/ok",service="serviceName",le="+Inf"} 2 + chi_request_duration_milliseconds_bucket{code="OK",method="GET",path="/ok",service="serviceName",le="300"} 0 + chi_request_duration_milliseconds_bucket{code="OK",method="GET",path="/ok",service="serviceName",le="1200"} 0 + chi_request_duration_milliseconds_bucket{code="OK",method="GET",path="/ok",service="serviceName",le="5000"} 2 + chi_request_duration_milliseconds_bucket{code="OK",method="GET",path="/ok",service="serviceName",le="+Inf"} 2 chi_request_duration_milliseconds_sum{code="OK",method="GET",path="/ok",service="serviceName"} 4747.529026 chi_request_duration_milliseconds_count{code="OK",method="GET",path="/ok",service="serviceName"} 2 # HELP chi_requests_total How many HTTP requests processed, partitioned by status code, method and HTTP path. # TYPE chi_requests_total counter chi_requests_total{code="OK",method="GET",path="/metrics",service="serviceName"} 1 chi_requests_total{code="OK",method="GET",path="/ok",service="serviceName"} 2 + +## Pattern Middleware Usage + +Take a look at the [example](./pattern_example/main.go). + +## What do you get + +An endpoint with the following information (stripped output): + + # HELP chi_pattern_request_duration_milliseconds How long it took to process the request, partitioned by status code, method and HTTP path (with patterns). + # TYPE chi_pattern_request_duration_milliseconds histogram + chi_pattern_request_duration_milliseconds_bucket{code="OK",method="GET",path="/metrics",service="test_service",le="300"} 1 + chi_pattern_request_duration_milliseconds_bucket{code="OK",method="GET",path="/metrics",service="test_service",le="1200"} 1 + chi_pattern_request_duration_milliseconds_bucket{code="OK",method="GET",path="/metrics",service="test_service",le="5000"} 1 + chi_pattern_request_duration_milliseconds_bucket{code="OK",method="GET",path="/metrics",service="test_service",le="+Inf"} 1 + chi_pattern_request_duration_milliseconds_sum{code="OK",method="GET",path="/metrics",service="test_service"} 0.975926 + chi_pattern_request_duration_milliseconds_count{code="OK",method="GET",path="/metrics",service="test_service"} 1 + chi_pattern_request_duration_milliseconds_bucket{code="OK",method="GET",path="/users/{firstName}",service="test_service",le="300"} 0 + chi_pattern_request_duration_milliseconds_bucket{code="OK",method="GET",path="/users/{firstName}",service="test_service",le="1200"} 0 + chi_pattern_request_duration_milliseconds_bucket{code="OK",method="GET",path="/users/{firstName}",service="test_service",le="5000"} 2 + chi_pattern_request_duration_milliseconds_bucket{code="OK",method="GET",path="/users/{firstName}",service="test_service",le="+Inf"} 2 + chi_pattern_request_duration_milliseconds_sum{code="OK",method="GET",path="/users/{firstName}",service="test_service"} 4755.052755 + chi_pattern_request_duration_milliseconds_count{code="OK",method="GET",path="/users/{firstName}",service="test_service"} 2 + # HELP chi_pattern_requests_total How many HTTP requests processed, partitioned by status code, method and HTTP path (with patterns). + # TYPE chi_pattern_requests_total counter + chi_pattern_requests_total{code="OK",method="GET",path="/metrics",service="test_service"} 1 + chi_pattern_requests_total{code="OK",method="GET",path="/users/{firstName}",service="test_service"} 2 \ No newline at end of file diff --git a/vendor/github.com/766b/chi-prometheus/middleware.go b/vendor/github.com/766b/chi-prometheus/middleware.go index 442e57a8d..a40159c69 100644 --- a/vendor/github.com/766b/chi-prometheus/middleware.go +++ b/vendor/github.com/766b/chi-prometheus/middleware.go @@ -3,8 +3,10 @@ package chiprometheus import ( "net/http" + "strings" "time" + "github.com/go-chi/chi" "github.com/go-chi/chi/middleware" "github.com/prometheus/client_golang/prometheus" ) @@ -14,8 +16,10 @@ var ( ) const ( - reqsName = "chi_requests_total" - latencyName = "chi_request_duration_milliseconds" + reqsName = "chi_requests_total" + latencyName = "chi_request_duration_milliseconds" + patternReqsName = "chi_pattern_requests_total" + patternLatencyName = "chi_pattern_request_duration_milliseconds" ) // Middleware is a handler that exposes prometheus metrics for the number of requests, @@ -63,3 +67,48 @@ func (c Middleware) handler(next http.Handler) http.Handler { } return http.HandlerFunc(fn) } + +// NewPatternMiddleware returns a new prometheus Middleware handler that groups requests by the chi routing pattern. +// EX: /users/{firstName} instead of /users/bob +func NewPatternMiddleware(name string, buckets ...float64) func(next http.Handler) http.Handler { + var m Middleware + m.reqs = prometheus.NewCounterVec( + prometheus.CounterOpts{ + Name: patternReqsName, + Help: "How many HTTP requests processed, partitioned by status code, method and HTTP path (with patterns).", + ConstLabels: prometheus.Labels{"service": name}, + }, + []string{"code", "method", "path"}, + ) + prometheus.MustRegister(m.reqs) + + if len(buckets) == 0 { + buckets = dflBuckets + } + m.latency = prometheus.NewHistogramVec(prometheus.HistogramOpts{ + Name: patternLatencyName, + Help: "How long it took to process the request, partitioned by status code, method and HTTP path (with patterns).", + ConstLabels: prometheus.Labels{"service": name}, + Buckets: buckets, + }, + []string{"code", "method", "path"}, + ) + prometheus.MustRegister(m.latency) + return m.patternHandler +} + +func (c Middleware) patternHandler(next http.Handler) http.Handler { + fn := func(w http.ResponseWriter, r *http.Request) { + start := time.Now() + ww := middleware.NewWrapResponseWriter(w, r.ProtoMajor) + next.ServeHTTP(ww, r) + + rctx := chi.RouteContext(r.Context()) + routePattern := strings.Join(rctx.RoutePatterns, "") + routePattern = strings.Replace(routePattern, "/*/", "/", -1) + + c.reqs.WithLabelValues(http.StatusText(ww.Status()), r.Method, routePattern).Inc() + c.latency.WithLabelValues(http.StatusText(ww.Status()), r.Method, routePattern).Observe(float64(time.Since(start).Nanoseconds()) / 1000000) + } + return http.HandlerFunc(fn) +} diff --git a/vendor/github.com/dop251/goja/.tc39_test262_checkout.sh b/vendor/github.com/dop251/goja/.tc39_test262_checkout.sh index 68f4d1c03..8fd8c4037 100644 --- a/vendor/github.com/dop251/goja/.tc39_test262_checkout.sh +++ b/vendor/github.com/dop251/goja/.tc39_test262_checkout.sh @@ -1,5 +1,5 @@ #!/bin/sh -sha=ddfe24afe3043388827aa220ef623b8540958bbd # this is just the commit it was last tested with +sha=26f1f4567ee7e33163d961c867d689173cbb9065 # this is just the commit it was last tested with mkdir -p testdata/test262 cd testdata/test262 git init diff --git a/vendor/github.com/dop251/goja/README.md b/vendor/github.com/dop251/goja/README.md index f1c59a910..6e27ed50c 100644 --- a/vendor/github.com/dop251/goja/README.md +++ b/vendor/github.com/dop251/goja/README.md @@ -16,12 +16,11 @@ Features -------- * Full ECMAScript 5.1 support (including regex and strict mode). - * Passes nearly all [tc39 tests](https://github.com/tc39/test262) tagged with es5id. The goal is to pass all of them. - Note, the current working commit is https://github.com/tc39/test262/commit/ddfe24afe3043388827aa220ef623b8540958bbd. - The next commit removed most of the es5id tags which made it impossible to distinguish which tests to run. + * Passes nearly all [tc39 tests](https://github.com/tc39/test262) for the features implemented so far. The goal is to + pass all of them. Note, the current working commit is https://github.com/tc39/test262/commit/26f1f4567ee7e33163d961c867d689173cbb9065. * Capable of running Babel, Typescript compiler and pretty much anything written in ES5. * Sourcemaps. - * Some ES6 functionality, still work in progress, see https://github.com/dop251/goja/milestone/1?closed=1 + * Most of ES6 functionality, still work in progress, see https://github.com/dop251/goja/milestone/1?closed=1 Known incompatibilities and caveats ----------------------------------- @@ -53,6 +52,26 @@ above is the only reasonable way I can think of without involving finalizers. Th Note, this does not have any effect on the application logic, but may cause a higher-than-expected memory usage. +### WeakRef and FinalizationRegistry +For the reason mentioned above implementing WeakRef and FinalizationRegistry does not seem to be possible at this stage. + +### JSON +`JSON.parse()` uses the standard Go library which operates in UTF-8. Therefore, it cannot correctly parse broken UTF-16 +surrogate pairs, for example: + +```javascript +JSON.parse(`"\\uD800"`).charCodeAt(0).toString(16) // returns "fffd" instead of "d800" +``` + +### Date +Conversion from calendar date to epoch timestamp uses the standard Go library which uses `int`, rather than `float` as per +ECMAScript specification. This means if you pass arguments that overflow int to the `Date()` constructor or if there is +an integer overflow, the result will be incorrect, for example: + +```javascript +Date.UTC(1970, 0, 1, 80063993375, 29, 1, -288230376151711740) // returns 29256 instead of 29312 +``` + FAQ --- diff --git a/vendor/github.com/dop251/goja/array.go b/vendor/github.com/dop251/goja/array.go index 0a30b3ae3..576420070 100644 --- a/vendor/github.com/dop251/goja/array.go +++ b/vendor/github.com/dop251/goja/array.go @@ -20,6 +20,9 @@ func (ai *arrayIterObject) next() Value { if ai.obj == nil { return ai.val.runtime.createIterResultObject(_undefined, true) } + if ta, ok := ai.obj.self.(*typedArrayObject); ok { + ta.viewedArrayBuf.ensureNotDetached(true) + } l := toLength(ai.obj.self.getStr("length", nil)) index := ai.nextIdx if index >= l { @@ -31,7 +34,7 @@ func (ai *arrayIterObject) next() Value { if ai.kind == iterationKindKey { return ai.val.runtime.createIterResultObject(idxVal, false) } - elementValue := ai.obj.self.getIdx(idxVal, nil) + elementValue := nilSafe(ai.obj.self.getIdx(idxVal, nil)) var result Value if ai.kind == iterationKindValue { result = elementValue @@ -74,49 +77,45 @@ func (a *arrayObject) init() { a._put("length", &a.lengthProp) } -func (a *arrayObject) _setLengthInt(l int64, throw bool) bool { - if l >= 0 && l <= math.MaxUint32 { - l := uint32(l) - ret := true - if l <= a.length { - if a.propValueCount > 0 { - // Slow path - for i := len(a.values) - 1; i >= int(l); i-- { - if prop, ok := a.values[i].(*valueProperty); ok { - if !prop.configurable { - l = uint32(i) + 1 - ret = false - break - } - a.propValueCount-- +func (a *arrayObject) _setLengthInt(l uint32, throw bool) bool { + ret := true + if l <= a.length { + if a.propValueCount > 0 { + // Slow path + for i := len(a.values) - 1; i >= int(l); i-- { + if prop, ok := a.values[i].(*valueProperty); ok { + if !prop.configurable { + l = uint32(i) + 1 + ret = false + break } + a.propValueCount-- } } } - if l <= uint32(len(a.values)) { - if l >= 16 && l < uint32(cap(a.values))>>2 { - ar := make([]Value, l) - copy(ar, a.values) - a.values = ar - } else { - ar := a.values[l:len(a.values)] - for i := range ar { - ar[i] = nil - } - a.values = a.values[:l] - } - } - a.length = l - if !ret { - a.val.runtime.typeErrorResult(throw, "Cannot redefine property: length") - } - return ret } - panic(a.val.runtime.newError(a.val.runtime.global.RangeError, "Invalid array length")) + if l <= uint32(len(a.values)) { + if l >= 16 && l < uint32(cap(a.values))>>2 { + ar := make([]Value, l) + copy(ar, a.values) + a.values = ar + } else { + ar := a.values[l:len(a.values)] + for i := range ar { + ar[i] = nil + } + a.values = a.values[:l] + } + } + a.length = l + if !ret { + a.val.runtime.typeErrorResult(throw, "Cannot redefine property: length") + } + return ret } -func (a *arrayObject) setLengthInt(l int64, throw bool) bool { - if l == int64(a.length) { +func (a *arrayObject) setLengthInt(l uint32, throw bool) bool { + if l == a.length { return true } if !a.lengthProp.writable { @@ -126,19 +125,15 @@ func (a *arrayObject) setLengthInt(l int64, throw bool) bool { return a._setLengthInt(l, throw) } -func (a *arrayObject) setLength(v Value, throw bool) bool { - l, ok := toIntIgnoreNegZero(v) - if ok && l == int64(a.length) { +func (a *arrayObject) setLength(v uint32, throw bool) bool { + if v == a.length { return true } if !a.lengthProp.writable { a.val.runtime.typeErrorResult(throw, "length is not writable") return false } - if ok { - return a._setLengthInt(l, throw) - } - panic(a.val.runtime.newError(a.val.runtime.global.RangeError, "Invalid array length")) + return a._setLengthInt(v, throw) } func (a *arrayObject) getIdx(idx valueInt, receiver Value) Value { @@ -237,7 +232,7 @@ func (a *arrayObject) _setOwnIdx(idx uint32, val Value, throw bool) bool { return false } else { if idx >= a.length { - if !a.setLengthInt(int64(idx)+1, throw) { + if !a.setLengthInt(idx+1, throw) { return false } } @@ -268,7 +263,7 @@ func (a *arrayObject) setOwnStr(name unistring.String, val Value, throw bool) bo return a._setOwnIdx(idx, val, throw) } else { if name == "length" { - return a.setLength(val, throw) + return a.setLength(a.val.runtime.toLengthUint32(val), throw) } else { return a.baseObject.setOwnStr(name, val, throw) } @@ -291,7 +286,7 @@ type arrayPropIter struct { func (i *arrayPropIter) next() (propIterItem, iterNextFunc) { for i.idx < len(i.a.values) && i.idx < i.limit { - name := unistring.String(strconv.Itoa(i.idx)) + name := asciiString(strconv.Itoa(i.idx)) prop := i.a.values[i.idx] i.idx++ if prop != nil { @@ -299,17 +294,17 @@ func (i *arrayPropIter) next() (propIterItem, iterNextFunc) { } } - return i.a.baseObject.enumerateOwnKeys()() + return i.a.baseObject.iterateStringKeys()() } -func (a *arrayObject) enumerateOwnKeys() iterNextFunc { +func (a *arrayObject) iterateStringKeys() iterNextFunc { return (&arrayPropIter{ a: a, limit: len(a.values), }).next } -func (a *arrayObject) ownKeys(all bool, accum []Value) []Value { +func (a *arrayObject) stringKeys(all bool, accum []Value) []Value { for i, prop := range a.values { name := strconv.Itoa(i) if prop != nil { @@ -321,7 +316,7 @@ func (a *arrayObject) ownKeys(all bool, accum []Value) []Value { accum = append(accum, asciiString(name)) } } - return a.baseObject.ownKeys(all, accum) + return a.baseObject.stringKeys(all, accum) } func (a *arrayObject) hasOwnPropertyStr(name unistring.String) bool { @@ -373,15 +368,19 @@ func (a *arrayObject) expand(idx uint32) bool { return true } -func (r *Runtime) defineArrayLength(prop *valueProperty, descr PropertyDescriptor, setter func(Value, bool) bool, throw bool) bool { +func (r *Runtime) defineArrayLength(prop *valueProperty, descr PropertyDescriptor, setter func(uint32, bool) bool, throw bool) bool { + var newLen uint32 ret := true + if descr.Value != nil { + newLen = r.toLengthUint32(descr.Value) + } if descr.Configurable == FLAG_TRUE || descr.Enumerable == FLAG_TRUE || descr.Getter != nil || descr.Setter != nil { ret = false goto Reject } - if newLen := descr.Value; newLen != nil { + if descr.Value != nil { ret = setter(newLen, false) } else { ret = true @@ -415,7 +414,7 @@ func (a *arrayObject) _defineIdxProperty(idx uint32, desc PropertyDescriptor, th prop, ok := a.baseObject._defineOwnProperty(unistring.String(strconv.FormatUint(uint64(idx), 10)), existing, desc, throw) if ok { if idx >= a.length { - if !a.setLengthInt(int64(idx)+1, throw) { + if !a.setLengthInt(idx+1, throw) { return false } } diff --git a/vendor/github.com/dop251/goja/array_sparse.go b/vendor/github.com/dop251/goja/array_sparse.go index dfb24d01d..3c111b266 100644 --- a/vendor/github.com/dop251/goja/array_sparse.go +++ b/vendor/github.com/dop251/goja/array_sparse.go @@ -29,48 +29,44 @@ func (a *sparseArrayObject) findIdx(idx uint32) int { }) } -func (a *sparseArrayObject) _setLengthInt(l int64, throw bool) bool { - if l >= 0 && l <= math.MaxUint32 { - ret := true - l := uint32(l) - if l <= a.length { - if a.propValueCount > 0 { - // Slow path - for i := len(a.items) - 1; i >= 0; i-- { - item := a.items[i] - if item.idx <= l { +func (a *sparseArrayObject) _setLengthInt(l uint32, throw bool) bool { + ret := true + if l <= a.length { + if a.propValueCount > 0 { + // Slow path + for i := len(a.items) - 1; i >= 0; i-- { + item := a.items[i] + if item.idx <= l { + break + } + if prop, ok := item.value.(*valueProperty); ok { + if !prop.configurable { + l = item.idx + 1 + ret = false break } - if prop, ok := item.value.(*valueProperty); ok { - if !prop.configurable { - l = item.idx + 1 - ret = false - break - } - a.propValueCount-- - } + a.propValueCount-- } } } - - idx := a.findIdx(l) - - aa := a.items[idx:] - for i := range aa { - aa[i].value = nil - } - a.items = a.items[:idx] - a.length = l - if !ret { - a.val.runtime.typeErrorResult(throw, "Cannot redefine property: length") - } - return ret } - panic(a.val.runtime.newError(a.val.runtime.global.RangeError, "Invalid array length")) + + idx := a.findIdx(l) + + aa := a.items[idx:] + for i := range aa { + aa[i].value = nil + } + a.items = a.items[:idx] + a.length = l + if !ret { + a.val.runtime.typeErrorResult(throw, "Cannot redefine property: length") + } + return ret } -func (a *sparseArrayObject) setLengthInt(l int64, throw bool) bool { - if l == int64(a.length) { +func (a *sparseArrayObject) setLengthInt(l uint32, throw bool) bool { + if l == a.length { return true } if !a.lengthProp.writable { @@ -80,19 +76,15 @@ func (a *sparseArrayObject) setLengthInt(l int64, throw bool) bool { return a._setLengthInt(l, throw) } -func (a *sparseArrayObject) setLength(v Value, throw bool) bool { - l, ok := toIntIgnoreNegZero(v) - if ok && l == int64(a.length) { +func (a *sparseArrayObject) setLength(v uint32, throw bool) bool { + if v == a.length { return true } if !a.lengthProp.writable { a.val.runtime.typeErrorResult(throw, "length is not writable") return false } - if ok { - return a._setLengthInt(l, throw) - } - panic(a.val.runtime.newError(a.val.runtime.global.RangeError, "Invalid array length")) + return a._setLengthInt(v, throw) } func (a *sparseArrayObject) _getIdx(idx uint32) Value { @@ -181,7 +173,7 @@ func (a *sparseArrayObject) _setOwnIdx(idx uint32, val Value, throw bool) bool { } if idx >= a.length { - if !a.setLengthInt(int64(idx)+1, throw) { + if !a.setLengthInt(idx+1, throw) { return false } } @@ -218,7 +210,7 @@ func (a *sparseArrayObject) setOwnStr(name unistring.String, val Value, throw bo return a._setOwnIdx(idx, val, throw) } else { if name == "length" { - return a.setLength(val, throw) + return a.setLength(a.val.runtime.toLengthUint32(val), throw) } else { return a.baseObject.setOwnStr(name, val, throw) } @@ -248,7 +240,7 @@ type sparseArrayPropIter struct { func (i *sparseArrayPropIter) next() (propIterItem, iterNextFunc) { for i.idx < len(i.a.items) { - name := unistring.String(strconv.Itoa(int(i.a.items[i.idx].idx))) + name := asciiString(strconv.Itoa(int(i.a.items[i.idx].idx))) prop := i.a.items[i.idx].value i.idx++ if prop != nil { @@ -256,16 +248,16 @@ func (i *sparseArrayPropIter) next() (propIterItem, iterNextFunc) { } } - return i.a.baseObject.enumerateOwnKeys()() + return i.a.baseObject.iterateStringKeys()() } -func (a *sparseArrayObject) enumerateOwnKeys() iterNextFunc { +func (a *sparseArrayObject) iterateStringKeys() iterNextFunc { return (&sparseArrayPropIter{ a: a, }).next } -func (a *sparseArrayObject) ownKeys(all bool, accum []Value) []Value { +func (a *sparseArrayObject) stringKeys(all bool, accum []Value) []Value { if all { for _, item := range a.items { accum = append(accum, asciiString(strconv.FormatUint(uint64(item.idx), 10))) @@ -279,7 +271,7 @@ func (a *sparseArrayObject) ownKeys(all bool, accum []Value) []Value { } } - return a.baseObject.ownKeys(all, accum) + return a.baseObject.stringKeys(all, accum) } func (a *sparseArrayObject) setValues(values []Value, objCount int) { @@ -343,7 +335,7 @@ func (a *sparseArrayObject) _defineIdxProperty(idx uint32, desc PropertyDescript prop, ok := a.baseObject._defineOwnProperty(unistring.String(strconv.FormatUint(uint64(idx), 10)), existing, desc, throw) if ok { if idx >= a.length { - if !a.setLengthInt(int64(idx)+1, throw) { + if !a.setLengthInt(idx+1, throw) { return false } } diff --git a/vendor/github.com/dop251/goja/ast/node.go b/vendor/github.com/dop251/goja/ast/node.go index 9ae2836cc..e9a5389a8 100644 --- a/vendor/github.com/dop251/goja/ast/node.go +++ b/vendor/github.com/dop251/goja/ast/node.go @@ -128,6 +128,23 @@ type ( DeclarationList []*VariableDeclaration } + ConciseBody interface { + Node + _conciseBody() + } + + ExpressionBody struct { + Expression Expression + } + + ArrowFunctionLiteral struct { + Start file.Idx + ParameterList *ParameterList + Body ConciseBody + Source string + DeclarationList []*VariableDeclaration + } + Identifier struct { Name unistring.String Idx file.Idx @@ -183,9 +200,10 @@ type ( } PropertyKeyed struct { - Key Expression - Kind PropertyKind - Value Expression + Key Expression + Kind PropertyKind + Value Expression + Computed bool } SpreadElement struct { @@ -209,6 +227,21 @@ type ( Value unistring.String } + TemplateElement struct { + Idx file.Idx + Literal string + Parsed unistring.String + Valid bool + } + + TemplateLiteral struct { + OpenQuote file.Idx + CloseQuote file.Idx + Tag Expression + Elements []*TemplateElement + Expressions []Expression + } + ThisExpression struct { Idx file.Idx } @@ -238,6 +271,7 @@ func (*CallExpression) _expressionNode() {} func (*ConditionalExpression) _expressionNode() {} func (*DotExpression) _expressionNode() {} func (*FunctionLiteral) _expressionNode() {} +func (*ArrowFunctionLiteral) _expressionNode() {} func (*Identifier) _expressionNode() {} func (*NewExpression) _expressionNode() {} func (*NullLiteral) _expressionNode() {} @@ -246,6 +280,7 @@ func (*ObjectLiteral) _expressionNode() {} func (*RegExpLiteral) _expressionNode() {} func (*SequenceExpression) _expressionNode() {} func (*StringLiteral) _expressionNode() {} +func (*TemplateLiteral) _expressionNode() {} func (*ThisExpression) _expressionNode() {} func (*UnaryExpression) _expressionNode() {} func (*MetaProperty) _expressionNode() {} @@ -497,6 +532,9 @@ func (*SpreadElement) _property() {} func (*Identifier) _bindingTarget() {} +func (*BlockStatement) _conciseBody() {} +func (*ExpressionBody) _conciseBody() {} + // ==== // // Node // // ==== // @@ -525,6 +563,7 @@ func (self *CallExpression) Idx0() file.Idx { return self.Callee.Idx0() } func (self *ConditionalExpression) Idx0() file.Idx { return self.Test.Idx0() } func (self *DotExpression) Idx0() file.Idx { return self.Left.Idx0() } func (self *FunctionLiteral) Idx0() file.Idx { return self.Function } +func (self *ArrowFunctionLiteral) Idx0() file.Idx { return self.Start } func (self *Identifier) Idx0() file.Idx { return self.Idx } func (self *NewExpression) Idx0() file.Idx { return self.New } func (self *NullLiteral) Idx0() file.Idx { return self.Idx } @@ -533,6 +572,7 @@ func (self *ObjectLiteral) Idx0() file.Idx { return self.LeftBrace } func (self *RegExpLiteral) Idx0() file.Idx { return self.Idx } func (self *SequenceExpression) Idx0() file.Idx { return self.Sequence[0].Idx0() } func (self *StringLiteral) Idx0() file.Idx { return self.Idx } +func (self *TemplateLiteral) Idx0() file.Idx { return self.OpenQuote } func (self *ThisExpression) Idx0() file.Idx { return self.Idx } func (self *UnaryExpression) Idx0() file.Idx { return self.Idx } func (self *MetaProperty) Idx0() file.Idx { return self.Idx } @@ -566,6 +606,7 @@ func (self *Binding) Idx0() file.Idx { return self.Target.Idx0() } func (self *ForLoopInitializerVarDeclList) Idx0() file.Idx { return self.List[0].Idx0() } func (self *PropertyShort) Idx0() file.Idx { return self.Name.Idx } func (self *PropertyKeyed) Idx0() file.Idx { return self.Key.Idx0() } +func (self *ExpressionBody) Idx0() file.Idx { return self.Expression.Idx0() } // ==== // // Idx1 // @@ -582,16 +623,24 @@ func (self *CallExpression) Idx1() file.Idx { return self.RightParenthesi func (self *ConditionalExpression) Idx1() file.Idx { return self.Test.Idx1() } func (self *DotExpression) Idx1() file.Idx { return self.Identifier.Idx1() } func (self *FunctionLiteral) Idx1() file.Idx { return self.Body.Idx1() } +func (self *ArrowFunctionLiteral) Idx1() file.Idx { return self.Body.Idx1() } func (self *Identifier) Idx1() file.Idx { return file.Idx(int(self.Idx) + len(self.Name)) } -func (self *NewExpression) Idx1() file.Idx { return self.RightParenthesis + 1 } -func (self *NullLiteral) Idx1() file.Idx { return file.Idx(int(self.Idx) + 4) } // "null" -func (self *NumberLiteral) Idx1() file.Idx { return file.Idx(int(self.Idx) + len(self.Literal)) } -func (self *ObjectLiteral) Idx1() file.Idx { return self.RightBrace + 1 } -func (self *ObjectPattern) Idx1() file.Idx { return self.RightBrace + 1 } -func (self *RegExpLiteral) Idx1() file.Idx { return file.Idx(int(self.Idx) + len(self.Literal)) } -func (self *SequenceExpression) Idx1() file.Idx { return self.Sequence[len(self.Sequence)-1].Idx1() } -func (self *StringLiteral) Idx1() file.Idx { return file.Idx(int(self.Idx) + len(self.Literal)) } -func (self *ThisExpression) Idx1() file.Idx { return self.Idx + 4 } +func (self *NewExpression) Idx1() file.Idx { + if self.ArgumentList != nil { + return self.RightParenthesis + 1 + } else { + return self.Callee.Idx1() + } +} +func (self *NullLiteral) Idx1() file.Idx { return file.Idx(int(self.Idx) + 4) } // "null" +func (self *NumberLiteral) Idx1() file.Idx { return file.Idx(int(self.Idx) + len(self.Literal)) } +func (self *ObjectLiteral) Idx1() file.Idx { return self.RightBrace + 1 } +func (self *ObjectPattern) Idx1() file.Idx { return self.RightBrace + 1 } +func (self *RegExpLiteral) Idx1() file.Idx { return file.Idx(int(self.Idx) + len(self.Literal)) } +func (self *SequenceExpression) Idx1() file.Idx { return self.Sequence[len(self.Sequence)-1].Idx1() } +func (self *StringLiteral) Idx1() file.Idx { return file.Idx(int(self.Idx) + len(self.Literal)) } +func (self *TemplateLiteral) Idx1() file.Idx { return self.CloseQuote + 1 } +func (self *ThisExpression) Idx1() file.Idx { return self.Idx + 4 } func (self *UnaryExpression) Idx1() file.Idx { if self.Postfix { return self.Operand.Idx1() + 2 // ++ -- @@ -656,3 +705,5 @@ func (self *PropertyShort) Idx1() file.Idx { } func (self *PropertyKeyed) Idx1() file.Idx { return self.Value.Idx1() } + +func (self *ExpressionBody) Idx1() file.Idx { return self.Expression.Idx1() } diff --git a/vendor/github.com/dop251/goja/builtin_array.go b/vendor/github.com/dop251/goja/builtin_array.go index a90aabd40..5003f2558 100644 --- a/vendor/github.com/dop251/goja/builtin_array.go +++ b/vendor/github.com/dop251/goja/builtin_array.go @@ -347,12 +347,36 @@ func (r *Runtime) arrayproto_sort(call FunctionCall) Value { } } - ctx := arraySortCtx{ - obj: o.self, - compare: compareFn, - } + if r.checkStdArrayObj(o) != nil { + ctx := arraySortCtx{ + obj: o.self, + compare: compareFn, + } - sort.Stable(&ctx) + sort.Stable(&ctx) + } else { + length := toLength(o.self.getStr("length", nil)) + a := make([]Value, 0, length) + for i := int64(0); i < length; i++ { + idx := valueInt(i) + if o.self.hasPropertyIdx(idx) { + a = append(a, nilSafe(o.self.getIdx(idx, nil))) + } + } + ar := r.newArrayValues(a) + ctx := arraySortCtx{ + obj: ar.self, + compare: compareFn, + } + + sort.Stable(&ctx) + for i := 0; i < len(a); i++ { + o.self.setOwnIdx(valueInt(i), a[i], true) + } + for i := int64(len(a)); i < length; i++ { + o.self.deleteIdx(valueInt(i), true) + } + } return o } @@ -412,7 +436,7 @@ func (r *Runtime) arrayproto_splice(call FunctionCall) Value { for k := int64(0); k < actualDeleteCount; k++ { from := valueInt(k + actualStart) if o.self.hasPropertyIdx(from) { - createDataPropertyOrThrow(a, valueInt(k), o.self.getIdx(from, nil)) + createDataPropertyOrThrow(a, valueInt(k), nilSafe(o.self.getIdx(from, nil))) } } @@ -421,7 +445,7 @@ func (r *Runtime) arrayproto_splice(call FunctionCall) Value { from := valueInt(k + actualDeleteCount) to := valueInt(k + itemCount) if o.self.hasPropertyIdx(from) { - o.self.setOwnIdx(to, o.self.getIdx(from, nil), true) + o.self.setOwnIdx(to, nilSafe(o.self.getIdx(from, nil)), true) } else { o.self.deleteIdx(to, true) } @@ -435,7 +459,7 @@ func (r *Runtime) arrayproto_splice(call FunctionCall) Value { from := valueInt(k + actualDeleteCount - 1) to := valueInt(k + itemCount - 1) if o.self.hasPropertyIdx(from) { - o.self.setOwnIdx(to, o.self.getIdx(from, nil), true) + o.self.setOwnIdx(to, nilSafe(o.self.getIdx(from, nil)), true) } else { o.self.deleteIdx(to, true) } @@ -476,7 +500,7 @@ func (r *Runtime) arrayproto_unshift(call FunctionCall) Value { from := valueInt(k) to := valueInt(k + argCount) if o.self.hasPropertyIdx(from) { - o.self.setOwnIdx(to, o.self.getIdx(from, nil), true) + o.self.setOwnIdx(to, nilSafe(o.self.getIdx(from, nil)), true) } else { o.self.deleteIdx(to, true) } @@ -963,7 +987,7 @@ func (r *Runtime) arrayproto_copyWithin(call FunctionCall) Value { } for count > 0 { if o.self.hasPropertyIdx(valueInt(from)) { - o.self.setOwnIdx(valueInt(to), o.self.getIdx(valueInt(from), nil), true) + o.self.setOwnIdx(valueInt(to), nilSafe(o.self.getIdx(valueInt(from), nil)), true) } else { o.self.deleteIdx(valueInt(to), true) } @@ -1060,7 +1084,7 @@ func (r *Runtime) flattenIntoArray(target, source *Object, sourceLen, start, dep for sourceIndex < sourceLen { p := intToValue(sourceIndex) if source.hasProperty(p.toString()) { - element := source.get(p, source) + element := nilSafe(source.get(p, source)) if mapperFunction != nil { element = mapperFunction(FunctionCall{ This: thisArg, @@ -1173,7 +1197,7 @@ func (r *Runtime) array_from(call FunctionCall) Value { if mapFn == nil { if a := r.checkStdArrayObj(arr); a != nil { var values []Value - r.iterate(iter, func(val Value) { + iter.iterate(func(val Value) { values = append(values, val) }) setArrayValues(a, values) @@ -1181,7 +1205,7 @@ func (r *Runtime) array_from(call FunctionCall) Value { } } k := int64(0) - r.iterate(iter, func(val Value) { + iter.iterate(func(val Value) { if mapFn != nil { val = mapFn(FunctionCall{This: t, Arguments: []Value{val, intToValue(k)}}) } @@ -1260,7 +1284,7 @@ func (r *Runtime) arrayIterProto_next(call FunctionCall) Value { if iter, ok := thisObj.self.(*arrayIterObject); ok { return iter.next() } - panic(r.NewTypeError("Method Array Iterator.prototype.next called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Array Iterator.prototype.next called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } func (r *Runtime) createArrayProto(val *Object) objectImpl { @@ -1330,11 +1354,7 @@ func (r *Runtime) createArray(val *Object) objectImpl { o._putProp("from", r.newNativeFunc(r.array_from, nil, "from", nil, 1), true, false, true) o._putProp("isArray", r.newNativeFunc(r.array_isArray, nil, "isArray", nil, 1), true, false, true) o._putProp("of", r.newNativeFunc(r.array_of, nil, "of", nil, 0), true, false, true) - o._putSym(SymSpecies, &valueProperty{ - getterFunc: r.newNativeFunc(r.returnThis, nil, "get [Symbol.species]", nil, 0), - accessor: true, - configurable: true, - }) + r.putSpeciesReturnThis(o) return o } diff --git a/vendor/github.com/dop251/goja/builtin_date.go b/vendor/github.com/dop251/goja/builtin_date.go index 61ff1d64f..97ffa6795 100644 --- a/vendor/github.com/dop251/goja/builtin_date.go +++ b/vendor/github.com/dop251/goja/builtin_date.go @@ -997,7 +997,7 @@ func (r *Runtime) createDateProto(val *Object) objectImpl { } func (r *Runtime) createDate(val *Object) objectImpl { - o := r.newNativeFuncObj(val, r.builtin_date, r.builtin_newDate, "Date", r.global.DatePrototype, 7) + o := r.newNativeFuncObj(val, r.builtin_date, r.builtin_newDate, "Date", r.global.DatePrototype, intToValue(7)) o._putProp("parse", r.newNativeFunc(r.date_parse, nil, "parse", nil, 1), true, false, true) o._putProp("UTC", r.newNativeFunc(r.date_UTC, nil, "UTC", nil, 7), true, false, true) diff --git a/vendor/github.com/dop251/goja/builtin_error.go b/vendor/github.com/dop251/goja/builtin_error.go index 5880b88dd..f657890a4 100644 --- a/vendor/github.com/dop251/goja/builtin_error.go +++ b/vendor/github.com/dop251/goja/builtin_error.go @@ -1,5 +1,147 @@ package goja +import "github.com/dop251/goja/unistring" + +const propNameStack = "stack" + +type errorObject struct { + baseObject + stack []StackFrame + stackPropAdded bool +} + +func (e *errorObject) formatStack() valueString { + var b valueStringBuilder + if name := e.getStr("name", nil); name != nil { + b.WriteString(name.toString()) + b.WriteRune('\n') + } else { + b.WriteASCII("Error\n") + } + + for _, frame := range e.stack { + b.WriteASCII("\tat ") + frame.WriteToValueBuilder(&b) + b.WriteRune('\n') + } + return b.String() +} + +func (e *errorObject) addStackProp() Value { + if !e.stackPropAdded { + res := e._putProp(propNameStack, e.formatStack(), true, false, true) + if len(e.propNames) > 1 { + // reorder property names to ensure 'stack' is the first one + copy(e.propNames[1:], e.propNames) + e.propNames[0] = propNameStack + } + e.stackPropAdded = true + return res + } + return nil +} + +func (e *errorObject) getStr(p unistring.String, receiver Value) Value { + return e.getStrWithOwnProp(e.getOwnPropStr(p), p, receiver) +} + +func (e *errorObject) getOwnPropStr(name unistring.String) Value { + res := e.baseObject.getOwnPropStr(name) + if res == nil && name == propNameStack { + return e.addStackProp() + } + + return res +} + +func (e *errorObject) setOwnStr(name unistring.String, val Value, throw bool) bool { + if name == propNameStack { + e.addStackProp() + } + return e.baseObject.setOwnStr(name, val, throw) +} + +func (e *errorObject) setForeignStr(name unistring.String, val, receiver Value, throw bool) (bool, bool) { + return e._setForeignStr(name, e.getOwnPropStr(name), val, receiver, throw) +} + +func (e *errorObject) deleteStr(name unistring.String, throw bool) bool { + if name == propNameStack { + e.addStackProp() + } + return e.baseObject.deleteStr(name, throw) +} + +func (e *errorObject) defineOwnPropertyStr(name unistring.String, desc PropertyDescriptor, throw bool) bool { + if name == propNameStack { + e.addStackProp() + } + return e.baseObject.defineOwnPropertyStr(name, desc, throw) +} + +func (e *errorObject) hasOwnPropertyStr(name unistring.String) bool { + if e.baseObject.hasOwnPropertyStr(name) { + return true + } + + return name == propNameStack && !e.stackPropAdded +} + +func (e *errorObject) stringKeys(all bool, accum []Value) []Value { + if all && !e.stackPropAdded { + accum = append(accum, asciiString(propNameStack)) + } + return e.baseObject.stringKeys(all, accum) +} + +func (e *errorObject) iterateStringKeys() iterNextFunc { + e.addStackProp() + return e.baseObject.iterateStringKeys() +} + +func (e *errorObject) init() { + e.baseObject.init() + vm := e.val.runtime.vm + e.stack = vm.captureStack(make([]StackFrame, 0, len(vm.callStack)+1), 0) +} + +func (r *Runtime) newErrorObject(proto *Object, class string) *errorObject { + obj := &Object{runtime: r} + o := &errorObject{ + baseObject: baseObject{ + class: class, + val: obj, + extensible: true, + prototype: proto, + }, + } + obj.self = o + o.init() + return o +} + +func (r *Runtime) builtin_Error(args []Value, proto *Object) *Object { + obj := r.newErrorObject(proto, classError) + if len(args) > 0 && args[0] != _undefined { + obj._putProp("message", args[0], true, false, true) + } + return obj.val +} + +func (r *Runtime) builtin_AggregateError(args []Value, proto *Object) *Object { + obj := r.newErrorObject(proto, classAggError) + if len(args) > 1 && args[1] != nil && args[1] != _undefined { + obj._putProp("message", args[1].toString(), true, false, true) + } + var errors []Value + if len(args) > 0 { + errors = r.iterableToList(args[0], nil) + } + obj._putProp("errors", r.newArrayValues(errors), true, false, true) + + return obj.val +} + func (r *Runtime) createErrorPrototype(name valueString) *Object { o := r.newBaseObject(r.global.ErrorPrototype, classObject) o._putProp("message", stringEmpty, true, false, true) @@ -17,6 +159,10 @@ func (r *Runtime) initErrors() { r.global.Error = r.newNativeFuncConstruct(r.builtin_Error, "Error", r.global.ErrorPrototype, 1) r.addToGlobal("Error", r.global.Error) + r.global.AggregateErrorPrototype = r.createErrorPrototype(stringAggregateError) + r.global.AggregateError = r.newNativeFuncConstructProto(r.builtin_AggregateError, "AggregateError", r.global.AggregateErrorPrototype, r.global.Error, 2) + r.addToGlobal("AggregateError", r.global.AggregateError) + r.global.TypeErrorPrototype = r.createErrorPrototype(stringTypeError) r.global.TypeError = r.newNativeFuncConstructProto(r.builtin_Error, "TypeError", r.global.TypeErrorPrototype, r.global.Error, 1) diff --git a/vendor/github.com/dop251/goja/builtin_function.go b/vendor/github.com/dop251/goja/builtin_function.go index 968993d94..2dabb3077 100644 --- a/vendor/github.com/dop251/goja/builtin_function.go +++ b/vendor/github.com/dop251/goja/builtin_function.go @@ -2,6 +2,7 @@ package goja import ( "fmt" + "math" ) func (r *Runtime) builtin_Function(args []Value, proto *Object) *Object { @@ -16,11 +17,11 @@ func (r *Runtime) builtin_Function(args []Value, proto *Object) *Object { } } } - sb.WriteString(asciiString("){")) + sb.WriteString(asciiString("\n) {\n")) if len(args) > 0 { sb.WriteString(args[len(args)-1].toString()) } - sb.WriteString(asciiString("})")) + sb.WriteString(asciiString("\n})")) ret := r.toObject(r.eval(sb.String(), false, false, _undefined)) ret.self.setProto(proto, true) @@ -31,8 +32,12 @@ func (r *Runtime) functionproto_toString(call FunctionCall) Value { obj := r.toObject(call.This) repeat: switch f := obj.self.(type) { + case *methodFuncObject: + return newStringValue(f.src) case *funcObject: return newStringValue(f.src) + case *arrowFuncObject: + return newStringValue(f.src) case *nativeFuncObject: return newStringValue(fmt.Sprintf("function %s() { [native code] }", nilSafe(f.getStr("name", nil)).toString())) case *boundFuncObject: @@ -41,26 +46,16 @@ repeat: obj.self = f.create(obj) goto repeat case *proxyObject: - var name string repeat2: switch c := f.target.self.(type) { - case *funcObject: - name = c.src - case *nativeFuncObject: - name = nilSafe(f.getStr("name", nil)).toString().String() - case *boundFuncObject: - name = nilSafe(f.getStr("name", nil)).toString().String() + case *methodFuncObject, *funcObject, *arrowFuncObject, *nativeFuncObject, *boundFuncObject: + return asciiString("function () { [native code] }") case *lazyObject: f.target.self = c.create(obj) goto repeat2 - default: - name = f.target.String() } - return newStringValue(fmt.Sprintf("function proxy() { [%s] }", name)) } - - r.typeErrorResult(true, "Object is not a function") - return nil + panic(r.NewTypeError("Function.prototype.toString requires that 'this' be a Function")) } func (r *Runtime) functionproto_hasInstance(call FunctionCall) Value { @@ -81,7 +76,7 @@ func (r *Runtime) createListFromArrayLike(a Value) []Value { l := toLength(o.self.getStr("length", nil)) res := make([]Value, 0, l) for k := int64(0); k < l; k++ { - res = append(res, o.self.getIdx(valueInt(k), nil)) + res = append(res, nilSafe(o.self.getIdx(valueInt(k), nil))) } return res } @@ -153,12 +148,36 @@ func (r *Runtime) functionproto_bind(call FunctionCall) Value { fcall := r.toCallable(call.This) construct := obj.self.assertConstructor() - l := int(toUint32(obj.self.getStr("length", nil))) - l -= len(call.Arguments) - 1 - if l < 0 { - l = 0 + var l = _positiveZero + if obj.self.hasOwnPropertyStr("length") { + var li int64 + switch lenProp := nilSafe(obj.self.getStr("length", nil)).(type) { + case valueInt: + li = lenProp.ToInteger() + case valueFloat: + switch lenProp { + case _positiveInf: + l = lenProp + goto lenNotInt + case _negativeInf: + goto lenNotInt + case _negativeZero: + // no-op, li == 0 + default: + if !math.IsNaN(float64(lenProp)) { + li = int64(math.Abs(float64(lenProp))) + } // else li = 0 + } + } + if len(call.Arguments) > 1 { + li -= int64(len(call.Arguments)) - 1 + } + if li < 0 { + li = 0 + } + l = intToValue(li) } - +lenNotInt: name := obj.self.getStr("name", nil) nameStr := stringBound_ if s, ok := name.(valueString); ok { @@ -173,10 +192,6 @@ func (r *Runtime) functionproto_bind(call FunctionCall) Value { wrapped: obj, } - //ret := r.newNativeFunc(r.boundCallable(f, call.Arguments), nil, "", nil, l) - //o := ret.self - //o.putStr("caller", r.global.throwerProperty, false) - //o.putStr("arguments", r.global.throwerProperty, false) return v } diff --git a/vendor/github.com/dop251/goja/builtin_json.go b/vendor/github.com/dop251/goja/builtin_json.go index dcdb6cc91..b9e74dc66 100644 --- a/vendor/github.com/dop251/goja/builtin_json.go +++ b/vendor/github.com/dop251/goja/builtin_json.go @@ -6,6 +6,7 @@ import ( "fmt" "io" "math" + "strconv" "strings" "unicode/utf16" @@ -34,7 +35,7 @@ func (r *Runtime) builtinJSON_parse(call FunctionCall) Value { if reviver != nil { root := r.NewObject() - root.self.setOwnStr("", value, false) + createDataPropertyOrThrow(root, stringEmpty, value) return r.builtinJSON_reviveWalk(reviver, root, stringEmpty) } @@ -132,33 +133,27 @@ func (r *Runtime) builtinJSON_decodeArray(d *json.Decoder) (*Object, error) { } func (r *Runtime) builtinJSON_reviveWalk(reviver func(FunctionCall) Value, holder *Object, name Value) Value { - value := holder.get(name, nil) - if value == nil { - value = _undefined - } + value := nilSafe(holder.get(name, nil)) if object, ok := value.(*Object); ok { if isArray(object) { - length := object.self.getStr("length", nil).ToInteger() + length := toLength(object.self.getStr("length", nil)) for index := int64(0); index < length; index++ { - name := intToValue(index) + name := asciiString(strconv.FormatInt(index, 10)) value := r.builtinJSON_reviveWalk(reviver, object, name) if value == _undefined { object.delete(name, false) } else { - object.setOwn(name, value, false) + createDataProperty(object, name, value) } } } else { - iter := &enumerableIter{ - wrapped: object.self.enumerateOwnKeys(), - } - for item, next := iter.next(); next != nil; item, next = next() { - value := r.builtinJSON_reviveWalk(reviver, object, stringValueFromRaw(item.name)) + for _, name := range object.self.stringKeys(false, nil) { + value := r.builtinJSON_reviveWalk(reviver, object, name) if value == _undefined { - object.self.deleteStr(item.name, false) + object.self.deleteStr(name.string(), false) } else { - object.self.setOwnStr(item.name, value, false) + createDataProperty(object, name, value) } } } @@ -186,7 +181,7 @@ func (r *Runtime) builtinJSON_stringify(call FunctionCall) Value { replacer, _ := call.Argument(1).(*Object) if replacer != nil { if isArray(replacer) { - length := replacer.self.getStr("length", nil).ToInteger() + length := toLength(replacer.self.getStr("length", nil)) seen := map[string]bool{} propertyList := make([]Value, length) length = 0 @@ -200,14 +195,18 @@ func (r *Runtime) builtinJSON_stringify(call FunctionCall) Value { switch v.self.className() { case classNumber, classString: name = value.String() + default: + continue } + default: + continue } if seen[name] { continue } seen[name] = true + propertyList[length] = newStringValue(name) length += 1 - propertyList[index] = newStringValue(name) } ctx.propertyList = propertyList[0:length] } else if c, ok := replacer.self.assertCallable(); ok { @@ -216,11 +215,14 @@ func (r *Runtime) builtinJSON_stringify(call FunctionCall) Value { } if spaceValue := call.Argument(2); spaceValue != _undefined { if o, ok := spaceValue.(*Object); ok { - switch o := o.self.(type) { + switch oImpl := o.self.(type) { case *primitiveValueObject: - spaceValue = o.pValue + switch oImpl.pValue.(type) { + case valueInt, valueFloat: + spaceValue = o.ToNumber() + } case *stringObject: - spaceValue = o.value + spaceValue = o.ToString() } } isNum := false @@ -259,15 +261,12 @@ func (r *Runtime) builtinJSON_stringify(call FunctionCall) Value { func (ctx *_builtinJSON_stringifyContext) do(v Value) bool { holder := ctx.r.NewObject() - holder.self.setOwnStr("", v, false) + createDataPropertyOrThrow(holder, stringEmpty, v) return ctx.str(stringEmpty, holder) } func (ctx *_builtinJSON_stringifyContext) str(key Value, holder *Object) bool { - value := holder.get(key, nil) - if value == nil { - value = _undefined - } + value := nilSafe(holder.get(key, nil)) if object, ok := value.(*Object); ok { if toJSON, ok := object.self.getStr("toJSON", nil).(*Object); ok { @@ -290,9 +289,14 @@ func (ctx *_builtinJSON_stringifyContext) str(key Value, holder *Object) bool { if o, ok := value.(*Object); ok { switch o1 := o.self.(type) { case *primitiveValueObject: - value = o1.pValue + switch pValue := o1.pValue.(type) { + case valueInt, valueFloat: + value = o.ToNumber() + default: + value = pValue + } case *stringObject: - value = o1.value + value = o.toString() case *objectGoReflect: if o1.toJson != nil { value = ctx.r.ToValue(o1.toJson()) @@ -368,7 +372,7 @@ func (ctx *_builtinJSON_stringifyContext) ja(array *Object) { stepback = ctx.indent ctx.indent += ctx.gap } - length := array.self.getStr("length", nil).ToInteger() + length := toLength(array.self.getStr("length", nil)) if length == 0 { ctx.buf.WriteString("[]") return @@ -385,7 +389,7 @@ func (ctx *_builtinJSON_stringifyContext) ja(array *Object) { } for i := int64(0); i < length; i++ { - if !ctx.str(intToValue(i), array) { + if !ctx.str(asciiString(strconv.FormatInt(i, 10)), array) { ctx.buf.WriteString("null") } if i < length-1 { @@ -420,7 +424,7 @@ func (ctx *_builtinJSON_stringifyContext) jo(object *Object) { var props []Value if ctx.propertyList == nil { - props = object.self.ownKeys(false, nil) + props = object.self.stringKeys(false, nil) } else { props = ctx.propertyList } diff --git a/vendor/github.com/dop251/goja/builtin_map.go b/vendor/github.com/dop251/goja/builtin_map.go index 097dbff6b..a472746b0 100644 --- a/vendor/github.com/dop251/goja/builtin_map.go +++ b/vendor/github.com/dop251/goja/builtin_map.go @@ -44,7 +44,7 @@ func (r *Runtime) mapProto_clear(call FunctionCall) Value { thisObj := r.toObject(call.This) mo, ok := thisObj.self.(*mapObject) if !ok { - panic(r.NewTypeError("Method Map.prototype.clear called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Map.prototype.clear called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } mo.m.clear() @@ -56,7 +56,7 @@ func (r *Runtime) mapProto_delete(call FunctionCall) Value { thisObj := r.toObject(call.This) mo, ok := thisObj.self.(*mapObject) if !ok { - panic(r.NewTypeError("Method Map.prototype.delete called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Map.prototype.delete called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } return r.toBoolean(mo.m.remove(call.Argument(0))) @@ -66,7 +66,7 @@ func (r *Runtime) mapProto_get(call FunctionCall) Value { thisObj := r.toObject(call.This) mo, ok := thisObj.self.(*mapObject) if !ok { - panic(r.NewTypeError("Method Map.prototype.get called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Map.prototype.get called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } return nilSafe(mo.m.get(call.Argument(0))) @@ -76,7 +76,7 @@ func (r *Runtime) mapProto_has(call FunctionCall) Value { thisObj := r.toObject(call.This) mo, ok := thisObj.self.(*mapObject) if !ok { - panic(r.NewTypeError("Method Map.prototype.has called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Map.prototype.has called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } if mo.m.has(call.Argument(0)) { return valueTrue @@ -88,7 +88,7 @@ func (r *Runtime) mapProto_set(call FunctionCall) Value { thisObj := r.toObject(call.This) mo, ok := thisObj.self.(*mapObject) if !ok { - panic(r.NewTypeError("Method Map.prototype.set called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Map.prototype.set called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } mo.m.set(call.Argument(0), call.Argument(1)) return call.This @@ -102,7 +102,7 @@ func (r *Runtime) mapProto_forEach(call FunctionCall) Value { thisObj := r.toObject(call.This) mo, ok := thisObj.self.(*mapObject) if !ok { - panic(r.NewTypeError("Method Map.prototype.forEach called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Map.prototype.forEach called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } callbackFn, ok := r.toObject(call.Argument(0)).self.assertCallable() if !ok { @@ -133,7 +133,7 @@ func (r *Runtime) mapProto_getSize(call FunctionCall) Value { thisObj := r.toObject(call.This) mo, ok := thisObj.self.(*mapObject) if !ok { - panic(r.NewTypeError("Method get Map.prototype.size called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method get Map.prototype.size called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } return intToValue(int64(mo.m.size)) } @@ -159,7 +159,7 @@ func (r *Runtime) builtin_newMap(args []Value, newTarget *Object) *Object { i0 := valueInt(0) i1 := valueInt(1) if adder == r.global.mapAdder { - r.iterate(iter, func(item Value) { + iter.iterate(func(item Value) { itemObj := r.toObject(item) k := nilSafe(itemObj.self.getIdx(i0, nil)) v := nilSafe(itemObj.self.getIdx(i1, nil)) @@ -170,7 +170,7 @@ func (r *Runtime) builtin_newMap(args []Value, newTarget *Object) *Object { if adderFn == nil { panic(r.NewTypeError("Map.set in missing")) } - r.iterate(iter, func(item Value) { + iter.iterate(func(item Value) { itemObj := r.toObject(item) k := itemObj.self.getIdx(i0, nil) v := itemObj.self.getIdx(i1, nil) @@ -210,7 +210,7 @@ func (r *Runtime) mapIterProto_next(call FunctionCall) Value { if iter, ok := thisObj.self.(*mapIterObject); ok { return iter.next() } - panic(r.NewTypeError("Method Map Iterator.prototype.next called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Map Iterator.prototype.next called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } func (r *Runtime) createMapProto(val *Object) objectImpl { @@ -243,11 +243,7 @@ func (r *Runtime) createMapProto(val *Object) objectImpl { func (r *Runtime) createMap(val *Object) objectImpl { o := r.newNativeConstructOnly(val, r.builtin_newMap, r.global.MapPrototype, "Map", 0) - o._putSym(SymSpecies, &valueProperty{ - getterFunc: r.newNativeFunc(r.returnThis, nil, "get [Symbol.species]", nil, 0), - accessor: true, - configurable: true, - }) + r.putSpeciesReturnThis(o) return o } diff --git a/vendor/github.com/dop251/goja/builtin_math.go b/vendor/github.com/dop251/goja/builtin_math.go index 11439c0f0..fa4c742ca 100644 --- a/vendor/github.com/dop251/goja/builtin_math.go +++ b/vendor/github.com/dop251/goja/builtin_math.go @@ -138,41 +138,47 @@ func (r *Runtime) math_log2(call FunctionCall) Value { } func (r *Runtime) math_max(call FunctionCall) Value { - if len(call.Arguments) == 0 { - return _negativeInf + result := math.Inf(-1) + args := call.Arguments + for i, arg := range args { + n := nilSafe(arg).ToFloat() + if math.IsNaN(n) { + args = args[i+1:] + goto NaNLoop + } + result = math.Max(result, n) } - result := call.Arguments[0].ToFloat() - if math.IsNaN(result) { - return _NaN - } - for _, arg := range call.Arguments[1:] { - f := arg.ToFloat() - if math.IsNaN(f) { - return _NaN - } - result = math.Max(result, f) - } return floatToValue(result) + +NaNLoop: + // All arguments still need to be coerced to number according to the specs. + for _, arg := range args { + nilSafe(arg).ToFloat() + } + return _NaN } func (r *Runtime) math_min(call FunctionCall) Value { - if len(call.Arguments) == 0 { - return _positiveInf + result := math.Inf(1) + args := call.Arguments + for i, arg := range args { + n := nilSafe(arg).ToFloat() + if math.IsNaN(n) { + args = args[i+1:] + goto NaNLoop + } + result = math.Min(result, n) } - result := call.Arguments[0].ToFloat() - if math.IsNaN(result) { - return _NaN - } - for _, arg := range call.Arguments[1:] { - f := arg.ToFloat() - if math.IsNaN(f) { - return _NaN - } - result = math.Min(result, f) - } return floatToValue(result) + +NaNLoop: + // All arguments still need to be coerced to number according to the specs. + for _, arg := range args { + nilSafe(arg).ToFloat() + } + return _NaN } func (r *Runtime) math_pow(call FunctionCall) Value { @@ -192,8 +198,15 @@ func (r *Runtime) math_pow(call FunctionCall) Value { } } } - - return floatToValue(math.Pow(x.ToFloat(), y.ToFloat())) + xf := x.ToFloat() + yf := y.ToFloat() + if math.Abs(xf) == 1 && math.IsInf(yf, 0) { + return _NaN + } + if xf == 1 && math.IsNaN(yf) { + return _NaN + } + return floatToValue(math.Pow(xf, yf)) } func (r *Runtime) math_random(call FunctionCall) Value { diff --git a/vendor/github.com/dop251/goja/builtin_object.go b/vendor/github.com/dop251/goja/builtin_object.go index b7070faac..99c7724f5 100644 --- a/vendor/github.com/dop251/goja/builtin_object.go +++ b/vendor/github.com/dop251/goja/builtin_object.go @@ -76,12 +76,20 @@ func (r *Runtime) object_getOwnPropertyDescriptor(call FunctionCall) Value { func (r *Runtime) object_getOwnPropertyDescriptors(call FunctionCall) Value { o := call.Argument(0).ToObject(r) - ownKeys := o.self.ownPropertyKeys(true, nil) result := r.newBaseObject(r.global.ObjectPrototype, classObject).val - for _, key := range ownKeys { - descriptor := r.valuePropToDescriptorObject(o.getOwnProp(key)) + for item, next := o.self.iterateKeys()(); next != nil; item, next = next() { + var prop Value + if item.value == nil { + prop = o.getOwnProp(item.name) + if prop == nil { + continue + } + } else { + prop = item.value + } + descriptor := r.valuePropToDescriptorObject(prop) if descriptor != _undefined { - createDataPropertyOrThrow(result, key, descriptor) + createDataPropertyOrThrow(result, item.name, descriptor) } } return result @@ -90,12 +98,12 @@ func (r *Runtime) object_getOwnPropertyDescriptors(call FunctionCall) Value { func (r *Runtime) object_getOwnPropertyNames(call FunctionCall) Value { obj := call.Argument(0).ToObject(r) - return r.newArrayValues(obj.self.ownKeys(true, nil)) + return r.newArrayValues(obj.self.stringKeys(true, nil)) } func (r *Runtime) object_getOwnPropertySymbols(call FunctionCall) Value { obj := call.Argument(0).ToObject(r) - return r.newArrayValues(obj.self.ownSymbols(true, nil)) + return r.newArrayValues(obj.self.symbols(true, nil)) } func (r *Runtime) toValueProp(v Value) *valueProperty { @@ -132,7 +140,7 @@ func (r *Runtime) toValueProp(v Value) *valueProperty { } if setter != nil && setter != _undefined { - o := r.toObject(v) + o := r.toObject(setter) if _, ok := o.self.assertCallable(); !ok { r.typeErrorResult(true, "setter must be a function") } @@ -196,12 +204,11 @@ func (r *Runtime) _defineProperties(o *Object, p Value) { prop PropertyDescriptor } props := p.ToObject(r) - names := props.self.ownPropertyKeys(false, nil) - list := make([]propItem, 0, len(names)) - for _, itemName := range names { + var list []propItem + for item, next := iterateEnumerableProperties(props)(); next != nil; item, next = next() { list = append(list, propItem{ - name: itemName, - prop: r.toPropertyDescriptor(props.get(itemName, nil)), + name: item.name, + prop: r.toPropertyDescriptor(item.value), }) } for _, prop := range list { @@ -248,24 +255,19 @@ func (r *Runtime) object_seal(call FunctionCall) Value { // ES6 arg := call.Argument(0) if obj, ok := arg.(*Object); ok { + obj.self.preventExtensions(true) descr := PropertyDescriptor{ - Writable: FLAG_TRUE, - Enumerable: FLAG_TRUE, Configurable: FLAG_FALSE, } - for _, key := range obj.self.ownPropertyKeys(true, nil) { - v := obj.getOwnProp(key) - if prop, ok := v.(*valueProperty); ok { - if !prop.configurable { - continue - } + + for item, next := obj.self.iterateKeys()(); next != nil; item, next = next() { + if prop, ok := item.value.(*valueProperty); ok { prop.configurable = false } else { - descr.Value = v - obj.defineOwnProperty(key, descr, true) + obj.defineOwnProperty(item.name, descr, true) } } - obj.self.preventExtensions(false) + return obj } return arg @@ -274,24 +276,27 @@ func (r *Runtime) object_seal(call FunctionCall) Value { func (r *Runtime) object_freeze(call FunctionCall) Value { arg := call.Argument(0) if obj, ok := arg.(*Object); ok { - descr := PropertyDescriptor{ - Writable: FLAG_FALSE, - Enumerable: FLAG_TRUE, - Configurable: FLAG_FALSE, - } - for _, key := range obj.self.ownPropertyKeys(true, nil) { - v := obj.getOwnProp(key) - if prop, ok := v.(*valueProperty); ok { + obj.self.preventExtensions(true) + + for item, next := obj.self.iterateKeys()(); next != nil; item, next = next() { + if prop, ok := item.value.(*valueProperty); ok { prop.configurable = false - if prop.value != nil { + if !prop.accessor { prop.writable = false } } else { - descr.Value = v - obj.defineOwnProperty(key, descr, true) + prop := obj.getOwnProp(item.name) + descr := PropertyDescriptor{ + Configurable: FLAG_FALSE, + } + if prop, ok := prop.(*valueProperty); ok && prop.accessor { + // no-op + } else { + descr.Writable = FLAG_FALSE + } + obj.defineOwnProperty(item.name, descr, true) } } - obj.self.preventExtensions(false) return obj } else { // ES6 behavior @@ -302,12 +307,8 @@ func (r *Runtime) object_freeze(call FunctionCall) Value { func (r *Runtime) object_preventExtensions(call FunctionCall) (ret Value) { arg := call.Argument(0) if obj, ok := arg.(*Object); ok { - obj.self.preventExtensions(false) - return obj + obj.self.preventExtensions(true) } - // ES6 - //r.typeErrorResult(true, "Object.preventExtensions called on non-object") - //panic("Unreachable") return arg } @@ -316,8 +317,16 @@ func (r *Runtime) object_isSealed(call FunctionCall) Value { if obj.self.isExtensible() { return valueFalse } - for _, key := range obj.self.ownPropertyKeys(true, nil) { - prop := obj.getOwnProp(key) + for item, next := obj.self.iterateKeys()(); next != nil; item, next = next() { + var prop Value + if item.value == nil { + prop = obj.getOwnProp(item.name) + if prop == nil { + continue + } + } else { + prop = item.value + } if prop, ok := prop.(*valueProperty); ok { if prop.configurable { return valueFalse @@ -335,8 +344,16 @@ func (r *Runtime) object_isFrozen(call FunctionCall) Value { if obj.self.isExtensible() { return valueFalse } - for _, key := range obj.self.ownPropertyKeys(true, nil) { - prop := obj.getOwnProp(key) + for item, next := obj.self.iterateKeys()(); next != nil; item, next = next() { + var prop Value + if item.value == nil { + prop = obj.getOwnProp(item.name) + if prop == nil { + continue + } + } else { + prop = item.value + } if prop, ok := prop.(*valueProperty); ok { if prop.configurable || prop.value != nil && prop.writable { return valueFalse @@ -365,20 +382,16 @@ func (r *Runtime) object_isExtensible(call FunctionCall) Value { func (r *Runtime) object_keys(call FunctionCall) Value { obj := call.Argument(0).ToObject(r) - return r.newArrayValues(obj.self.ownKeys(false, nil)) + return r.newArrayValues(obj.self.stringKeys(false, nil)) } func (r *Runtime) object_entries(call FunctionCall) Value { obj := call.Argument(0).ToObject(r) var values []Value - iter := &enumerableIter{ - wrapped: obj.self.enumerateOwnKeys(), - } - for item, next := iter.next(); next != nil; item, next = next() { - v := obj.self.getStr(item.name, nil) - values = append(values, r.newArrayValues([]Value{stringValueFromRaw(item.name), v})) + for item, next := iterateEnumerableStringProperties(obj)(); next != nil; item, next = next() { + values = append(values, r.newArrayValues([]Value{item.name, item.value})) } return r.newArrayValues(values) @@ -388,12 +401,9 @@ func (r *Runtime) object_values(call FunctionCall) Value { obj := call.Argument(0).ToObject(r) var values []Value - iter := &enumerableIter{ - wrapped: obj.self.enumerateOwnKeys(), - } - for item, next := iter.next(); next != nil; item, next = next() { - values = append(values, obj.self.getStr(item.name, nil)) + for item, next := iterateEnumerableStringProperties(obj)(); next != nil; item, next = next() { + values = append(values, item.value) } return r.newArrayValues(values) @@ -476,14 +486,23 @@ func (r *Runtime) objectproto_getProto(call FunctionCall) Value { return _null } -func (r *Runtime) objectproto_setProto(call FunctionCall) Value { - o := call.This +func (r *Runtime) setObjectProto(o, arg Value) { r.checkObjectCoercible(o) - proto := r.toProto(call.Argument(0)) + var proto *Object + if arg != _null { + if obj, ok := arg.(*Object); ok { + proto = obj + } else { + return + } + } if o, ok := o.(*Object); ok { o.self.setProto(proto, true) } +} +func (r *Runtime) objectproto_setProto(call FunctionCall) Value { + r.setObjectProto(call.This, call.Argument(0)) return _undefined } @@ -497,18 +516,8 @@ func (r *Runtime) object_assign(call FunctionCall) Value { for _, arg := range call.Arguments[1:] { if arg != _undefined && arg != _null { source := arg.ToObject(r) - for _, key := range source.self.ownPropertyKeys(true, nil) { - p := source.getOwnProp(key) - if p == nil { - continue - } - if v, ok := p.(*valueProperty); ok { - if !v.enumerable { - continue - } - p = v.get(source) - } - to.setOwn(key, p, true) + for item, next := iterateEnumerableProperties(source)(); next != nil; item, next = next() { + to.setOwn(item.name, item.value, true) } } } diff --git a/vendor/github.com/dop251/goja/builtin_promise.go b/vendor/github.com/dop251/goja/builtin_promise.go new file mode 100644 index 000000000..2f775e6ed --- /dev/null +++ b/vendor/github.com/dop251/goja/builtin_promise.go @@ -0,0 +1,608 @@ +package goja + +import ( + "github.com/dop251/goja/unistring" + "reflect" +) + +type PromiseState int +type PromiseRejectionOperation int + +type promiseReactionType int + +const ( + PromiseStatePending PromiseState = iota + PromiseStateFulfilled + PromiseStateRejected +) + +const ( + PromiseRejectionReject PromiseRejectionOperation = iota + PromiseRejectionHandle +) + +const ( + promiseReactionFulfill promiseReactionType = iota + promiseReactionReject +) + +type PromiseRejectionTracker func(p *Promise, operation PromiseRejectionOperation) + +type jobCallback struct { + callback func(FunctionCall) Value +} + +type promiseCapability struct { + promise *Object + resolveObj, rejectObj *Object +} + +type promiseReaction struct { + capability *promiseCapability + typ promiseReactionType + handler *jobCallback +} + +var typePromise = reflect.TypeOf((*Promise)(nil)) + +// Promise is a Go wrapper around ECMAScript Promise. Calling Runtime.ToValue() on it +// returns the underlying Object. Calling Export() on a Promise Object returns a Promise. +// +// Use Runtime.NewPromise() to create one. Calling Runtime.ToValue() on a zero object or nil returns null Value. +// +// WARNING: Instances of Promise are not goroutine-safe. See Runtime.NewPromise() for more details. +type Promise struct { + baseObject + state PromiseState + result Value + fulfillReactions []*promiseReaction + rejectReactions []*promiseReaction + handled bool +} + +func (p *Promise) State() PromiseState { + return p.state +} + +func (p *Promise) Result() Value { + return p.result +} + +func (p *Promise) toValue(r *Runtime) Value { + if p == nil || p.val == nil { + return _null + } + promise := p.val + if promise.runtime != r { + panic(r.NewTypeError("Illegal runtime transition of a Promise")) + } + return promise +} + +func (p *Promise) createResolvingFunctions() (resolve, reject *Object) { + r := p.val.runtime + alreadyResolved := false + return p.val.runtime.newNativeFunc(func(call FunctionCall) Value { + if alreadyResolved { + return _undefined + } + alreadyResolved = true + resolution := call.Argument(0) + if resolution.SameAs(p.val) { + return p.reject(r.NewTypeError("Promise self-resolution")) + } + if obj, ok := resolution.(*Object); ok { + var thenAction Value + ex := r.vm.try(func() { + thenAction = obj.self.getStr("then", nil) + }) + if ex != nil { + return p.reject(ex.val) + } + if call, ok := assertCallable(thenAction); ok { + job := r.newPromiseResolveThenableJob(p, resolution, &jobCallback{callback: call}) + r.enqueuePromiseJob(job) + return _undefined + } + } + return p.fulfill(resolution) + }, nil, "", nil, 1), + p.val.runtime.newNativeFunc(func(call FunctionCall) Value { + if alreadyResolved { + return _undefined + } + alreadyResolved = true + reason := call.Argument(0) + return p.reject(reason) + }, nil, "", nil, 1) +} + +func (p *Promise) reject(reason Value) Value { + reactions := p.rejectReactions + p.result = reason + p.fulfillReactions, p.rejectReactions = nil, nil + p.state = PromiseStateRejected + r := p.val.runtime + if !p.handled { + r.trackPromiseRejection(p, PromiseRejectionReject) + } + r.triggerPromiseReactions(reactions, reason) + return _undefined +} + +func (p *Promise) fulfill(value Value) Value { + reactions := p.fulfillReactions + p.result = value + p.fulfillReactions, p.rejectReactions = nil, nil + p.state = PromiseStateFulfilled + p.val.runtime.triggerPromiseReactions(reactions, value) + return _undefined +} + +func (p *Promise) exportType() reflect.Type { + return typePromise +} + +func (p *Promise) export(*objectExportCtx) interface{} { + return p +} + +func (r *Runtime) newPromiseResolveThenableJob(p *Promise, thenable Value, then *jobCallback) func() { + return func() { + resolve, reject := p.createResolvingFunctions() + ex := r.vm.try(func() { + r.callJobCallback(then, thenable, resolve, reject) + }) + if ex != nil { + if fn, ok := reject.self.assertCallable(); ok { + fn(FunctionCall{Arguments: []Value{ex.val}}) + } + } + } +} + +func (r *Runtime) enqueuePromiseJob(job func()) { + r.jobQueue = append(r.jobQueue, job) +} + +func (r *Runtime) triggerPromiseReactions(reactions []*promiseReaction, argument Value) { + for _, reaction := range reactions { + r.enqueuePromiseJob(r.newPromiseReactionJob(reaction, argument)) + } +} + +func (r *Runtime) newPromiseReactionJob(reaction *promiseReaction, argument Value) func() { + return func() { + var handlerResult Value + fulfill := false + if reaction.handler == nil { + handlerResult = argument + if reaction.typ == promiseReactionFulfill { + fulfill = true + } + } else { + ex := r.vm.try(func() { + handlerResult = r.callJobCallback(reaction.handler, _undefined, argument) + fulfill = true + }) + if ex != nil { + handlerResult = ex.val + } + } + if reaction.capability != nil { + if fulfill { + reaction.capability.resolve(handlerResult) + } else { + reaction.capability.reject(handlerResult) + } + } + } +} + +func (r *Runtime) newPromise(proto *Object) *Promise { + o := &Object{runtime: r} + + po := &Promise{} + po.class = classPromise + po.val = o + po.extensible = true + o.self = po + po.prototype = proto + po.init() + return po +} + +func (r *Runtime) builtin_newPromise(args []Value, newTarget *Object) *Object { + if newTarget == nil { + panic(r.needNew("Promise")) + } + var arg0 Value + if len(args) > 0 { + arg0 = args[0] + } + executor := r.toCallable(arg0) + + proto := r.getPrototypeFromCtor(newTarget, r.global.Promise, r.global.PromisePrototype) + po := r.newPromise(proto) + + resolve, reject := po.createResolvingFunctions() + ex := r.vm.try(func() { + executor(FunctionCall{Arguments: []Value{resolve, reject}}) + }) + if ex != nil { + if fn, ok := reject.self.assertCallable(); ok { + fn(FunctionCall{Arguments: []Value{ex.val}}) + } + } + return po.val +} + +func (r *Runtime) promiseProto_then(call FunctionCall) Value { + thisObj := r.toObject(call.This) + if p, ok := thisObj.self.(*Promise); ok { + c := r.speciesConstructorObj(thisObj, r.global.Promise) + resultCapability := r.newPromiseCapability(c) + return r.performPromiseThen(p, call.Argument(0), call.Argument(1), resultCapability) + } + panic(r.NewTypeError("Method Promise.prototype.then called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) +} + +func (r *Runtime) newPromiseCapability(c *Object) *promiseCapability { + pcap := new(promiseCapability) + if c == r.global.Promise { + p := r.newPromise(r.global.PromisePrototype) + pcap.resolveObj, pcap.rejectObj = p.createResolvingFunctions() + pcap.promise = p.val + } else { + var resolve, reject Value + executor := r.newNativeFunc(func(call FunctionCall) Value { + if resolve != nil { + panic(r.NewTypeError("resolve is already set")) + } + if reject != nil { + panic(r.NewTypeError("reject is already set")) + } + if arg := call.Argument(0); arg != _undefined { + resolve = arg + } + if arg := call.Argument(1); arg != _undefined { + reject = arg + } + return nil + }, nil, "", nil, 2) + pcap.promise = r.toConstructor(c)([]Value{executor}, c) + pcap.resolveObj = r.toObject(resolve) + r.toCallable(pcap.resolveObj) // make sure it's callable + pcap.rejectObj = r.toObject(reject) + r.toCallable(pcap.rejectObj) + } + return pcap +} + +func (r *Runtime) performPromiseThen(p *Promise, onFulfilled, onRejected Value, resultCapability *promiseCapability) Value { + var onFulfilledJobCallback, onRejectedJobCallback *jobCallback + if f, ok := assertCallable(onFulfilled); ok { + onFulfilledJobCallback = &jobCallback{callback: f} + } + if f, ok := assertCallable(onRejected); ok { + onRejectedJobCallback = &jobCallback{callback: f} + } + fulfillReaction := &promiseReaction{ + capability: resultCapability, + typ: promiseReactionFulfill, + handler: onFulfilledJobCallback, + } + rejectReaction := &promiseReaction{ + capability: resultCapability, + typ: promiseReactionReject, + handler: onRejectedJobCallback, + } + switch p.state { + case PromiseStatePending: + p.fulfillReactions = append(p.fulfillReactions, fulfillReaction) + p.rejectReactions = append(p.rejectReactions, rejectReaction) + case PromiseStateFulfilled: + r.enqueuePromiseJob(r.newPromiseReactionJob(fulfillReaction, p.result)) + default: + reason := p.result + if !p.handled { + r.trackPromiseRejection(p, PromiseRejectionHandle) + } + r.enqueuePromiseJob(r.newPromiseReactionJob(rejectReaction, reason)) + } + p.handled = true + if resultCapability == nil { + return _undefined + } + return resultCapability.promise +} + +func (r *Runtime) promiseProto_catch(call FunctionCall) Value { + return r.invoke(call.This, "then", _undefined, call.Argument(0)) +} + +func (r *Runtime) promiseResolve(c *Object, x Value) *Object { + if obj, ok := x.(*Object); ok { + xConstructor := nilSafe(obj.self.getStr("constructor", nil)) + if xConstructor.SameAs(c) { + return obj + } + } + pcap := r.newPromiseCapability(c) + pcap.resolve(x) + return pcap.promise +} + +func (r *Runtime) promiseProto_finally(call FunctionCall) Value { + promise := r.toObject(call.This) + c := r.speciesConstructorObj(promise, r.global.Promise) + onFinally := call.Argument(0) + var thenFinally, catchFinally Value + if onFinallyFn, ok := assertCallable(onFinally); !ok { + thenFinally, catchFinally = onFinally, onFinally + } else { + thenFinally = r.newNativeFunc(func(call FunctionCall) Value { + value := call.Argument(0) + result := onFinallyFn(FunctionCall{}) + promise := r.promiseResolve(c, result) + valueThunk := r.newNativeFunc(func(call FunctionCall) Value { + return value + }, nil, "", nil, 0) + return r.invoke(promise, "then", valueThunk) + }, nil, "", nil, 1) + + catchFinally = r.newNativeFunc(func(call FunctionCall) Value { + reason := call.Argument(0) + result := onFinallyFn(FunctionCall{}) + promise := r.promiseResolve(c, result) + thrower := r.newNativeFunc(func(call FunctionCall) Value { + panic(reason) + }, nil, "", nil, 0) + return r.invoke(promise, "then", thrower) + }, nil, "", nil, 1) + } + return r.invoke(promise, "then", thenFinally, catchFinally) +} + +func (pcap *promiseCapability) resolve(result Value) { + pcap.promise.runtime.toCallable(pcap.resolveObj)(FunctionCall{Arguments: []Value{result}}) +} + +func (pcap *promiseCapability) reject(reason Value) { + pcap.promise.runtime.toCallable(pcap.rejectObj)(FunctionCall{Arguments: []Value{reason}}) +} + +func (pcap *promiseCapability) try(f func()) bool { + ex := pcap.promise.runtime.vm.try(f) + if ex != nil { + pcap.reject(ex.val) + return false + } + return true +} + +func (r *Runtime) promise_all(call FunctionCall) Value { + c := r.toObject(call.This) + pcap := r.newPromiseCapability(c) + + pcap.try(func() { + promiseResolve := r.toCallable(c.self.getStr("resolve", nil)) + iter := r.getIterator(call.Argument(0), nil) + var values []Value + remainingElementsCount := 1 + iter.iterate(func(nextValue Value) { + index := len(values) + values = append(values, _undefined) + nextPromise := promiseResolve(FunctionCall{This: c, Arguments: []Value{nextValue}}) + alreadyCalled := false + onFulfilled := r.newNativeFunc(func(call FunctionCall) Value { + if alreadyCalled { + return _undefined + } + alreadyCalled = true + values[index] = call.Argument(0) + remainingElementsCount-- + if remainingElementsCount == 0 { + pcap.resolve(r.newArrayValues(values)) + } + return _undefined + }, nil, "", nil, 1) + remainingElementsCount++ + r.invoke(nextPromise, "then", onFulfilled, pcap.rejectObj) + }) + remainingElementsCount-- + if remainingElementsCount == 0 { + pcap.resolve(r.newArrayValues(values)) + } + }) + return pcap.promise +} + +func (r *Runtime) promise_allSettled(call FunctionCall) Value { + c := r.toObject(call.This) + pcap := r.newPromiseCapability(c) + + pcap.try(func() { + promiseResolve := r.toCallable(c.self.getStr("resolve", nil)) + iter := r.getIterator(call.Argument(0), nil) + var values []Value + remainingElementsCount := 1 + iter.iterate(func(nextValue Value) { + index := len(values) + values = append(values, _undefined) + nextPromise := promiseResolve(FunctionCall{This: c, Arguments: []Value{nextValue}}) + alreadyCalled := false + reaction := func(status Value, valueKey unistring.String) *Object { + return r.newNativeFunc(func(call FunctionCall) Value { + if alreadyCalled { + return _undefined + } + alreadyCalled = true + obj := r.NewObject() + obj.self._putProp("status", status, true, true, true) + obj.self._putProp(valueKey, call.Argument(0), true, true, true) + values[index] = obj + remainingElementsCount-- + if remainingElementsCount == 0 { + pcap.resolve(r.newArrayValues(values)) + } + return _undefined + }, nil, "", nil, 1) + } + onFulfilled := reaction(asciiString("fulfilled"), "value") + onRejected := reaction(asciiString("rejected"), "reason") + remainingElementsCount++ + r.invoke(nextPromise, "then", onFulfilled, onRejected) + }) + remainingElementsCount-- + if remainingElementsCount == 0 { + pcap.resolve(r.newArrayValues(values)) + } + }) + return pcap.promise +} + +func (r *Runtime) promise_any(call FunctionCall) Value { + c := r.toObject(call.This) + pcap := r.newPromiseCapability(c) + + pcap.try(func() { + promiseResolve := r.toCallable(c.self.getStr("resolve", nil)) + iter := r.getIterator(call.Argument(0), nil) + var errors []Value + remainingElementsCount := 1 + iter.iterate(func(nextValue Value) { + index := len(errors) + errors = append(errors, _undefined) + nextPromise := promiseResolve(FunctionCall{This: c, Arguments: []Value{nextValue}}) + alreadyCalled := false + onRejected := r.newNativeFunc(func(call FunctionCall) Value { + if alreadyCalled { + return _undefined + } + alreadyCalled = true + errors[index] = call.Argument(0) + remainingElementsCount-- + if remainingElementsCount == 0 { + _error := r.builtin_new(r.global.AggregateError, nil) + _error.self._putProp("errors", r.newArrayValues(errors), true, false, true) + pcap.reject(_error) + } + return _undefined + }, nil, "", nil, 1) + + remainingElementsCount++ + r.invoke(nextPromise, "then", pcap.resolveObj, onRejected) + }) + remainingElementsCount-- + if remainingElementsCount == 0 { + _error := r.builtin_new(r.global.AggregateError, nil) + _error.self._putProp("errors", r.newArrayValues(errors), true, false, true) + pcap.reject(_error) + } + }) + return pcap.promise +} + +func (r *Runtime) promise_race(call FunctionCall) Value { + c := r.toObject(call.This) + pcap := r.newPromiseCapability(c) + + pcap.try(func() { + promiseResolve := r.toCallable(c.self.getStr("resolve", nil)) + iter := r.getIterator(call.Argument(0), nil) + iter.iterate(func(nextValue Value) { + nextPromise := promiseResolve(FunctionCall{This: c, Arguments: []Value{nextValue}}) + r.invoke(nextPromise, "then", pcap.resolveObj, pcap.rejectObj) + }) + }) + return pcap.promise +} + +func (r *Runtime) promise_reject(call FunctionCall) Value { + pcap := r.newPromiseCapability(r.toObject(call.This)) + pcap.reject(call.Argument(0)) + return pcap.promise +} + +func (r *Runtime) promise_resolve(call FunctionCall) Value { + return r.promiseResolve(r.toObject(call.This), call.Argument(0)) +} + +func (r *Runtime) createPromiseProto(val *Object) objectImpl { + o := newBaseObjectObj(val, r.global.ObjectPrototype, classObject) + o._putProp("constructor", r.global.Promise, true, false, true) + + o._putProp("catch", r.newNativeFunc(r.promiseProto_catch, nil, "catch", nil, 1), true, false, true) + o._putProp("finally", r.newNativeFunc(r.promiseProto_finally, nil, "finally", nil, 1), true, false, true) + o._putProp("then", r.newNativeFunc(r.promiseProto_then, nil, "then", nil, 2), true, false, true) + + o._putSym(SymToStringTag, valueProp(asciiString(classPromise), false, false, true)) + + return o +} + +func (r *Runtime) createPromise(val *Object) objectImpl { + o := r.newNativeConstructOnly(val, r.builtin_newPromise, r.global.PromisePrototype, "Promise", 1) + + o._putProp("all", r.newNativeFunc(r.promise_all, nil, "all", nil, 1), true, false, true) + o._putProp("allSettled", r.newNativeFunc(r.promise_allSettled, nil, "allSettled", nil, 1), true, false, true) + o._putProp("any", r.newNativeFunc(r.promise_any, nil, "any", nil, 1), true, false, true) + o._putProp("race", r.newNativeFunc(r.promise_race, nil, "race", nil, 1), true, false, true) + o._putProp("reject", r.newNativeFunc(r.promise_reject, nil, "reject", nil, 1), true, false, true) + o._putProp("resolve", r.newNativeFunc(r.promise_resolve, nil, "resolve", nil, 1), true, false, true) + + r.putSpeciesReturnThis(o) + + return o +} + +func (r *Runtime) initPromise() { + r.global.PromisePrototype = r.newLazyObject(r.createPromiseProto) + r.global.Promise = r.newLazyObject(r.createPromise) + + r.addToGlobal("Promise", r.global.Promise) +} + +func (r *Runtime) wrapPromiseReaction(fObj *Object) func(interface{}) { + f, _ := AssertFunction(fObj) + return func(x interface{}) { + _, _ = f(nil, r.ToValue(x)) + } +} + +// NewPromise creates and returns a Promise and resolving functions for it. +// +// WARNING: The returned values are not goroutine-safe and must not be called in parallel with VM running. +// In order to make use of this method you need an event loop such as the one in goja_nodejs (https://github.com/dop251/goja_nodejs) +// where it can be used like this: +// +// loop := NewEventLoop() +// loop.Start() +// defer loop.Stop() +// loop.RunOnLoop(func(vm *goja.Runtime) { +// p, resolve, _ := vm.NewPromise() +// vm.Set("p", p) +// go func() { +// time.Sleep(500 * time.Millisecond) // or perform any other blocking operation +// loop.RunOnLoop(func(*goja.Runtime) { // resolve() must be called on the loop, cannot call it here +// resolve(result) +// }) +// }() +// } +func (r *Runtime) NewPromise() (promise *Promise, resolve func(result interface{}), reject func(reason interface{})) { + p := r.newPromise(r.global.PromisePrototype) + resolveF, rejectF := p.createResolvingFunctions() + return p, r.wrapPromiseReaction(resolveF), r.wrapPromiseReaction(rejectF) +} + +// SetPromiseRejectionTracker registers a function that will be called in two scenarios: when a promise is rejected +// without any handlers (with operation argument set to PromiseRejectionReject), and when a handler is added to a +// rejected promise for the first time (with operation argument set to PromiseRejectionHandle). +// +// Setting a tracker replaces any existing one. Setting it to nil disables the functionality. +// +// See https://tc39.es/ecma262/#sec-host-promise-rejection-tracker for more details. +func (r *Runtime) SetPromiseRejectionTracker(tracker PromiseRejectionTracker) { + r.promiseRejectionTracker = tracker +} diff --git a/vendor/github.com/dop251/goja/builtin_reflect.go b/vendor/github.com/dop251/goja/builtin_reflect.go index d8e784718..1df456188 100644 --- a/vendor/github.com/dop251/goja/builtin_reflect.go +++ b/vendor/github.com/dop251/goja/builtin_reflect.go @@ -79,7 +79,7 @@ func (r *Runtime) builtin_reflect_isExtensible(call FunctionCall) Value { func (r *Runtime) builtin_reflect_ownKeys(call FunctionCall) Value { target := r.toObject(call.Argument(0)) - return r.newArrayValues(target.self.ownPropertyKeys(true, nil)) + return r.newArrayValues(target.self.keys(true, nil)) } func (r *Runtime) builtin_reflect_preventExtensions(call FunctionCall) Value { diff --git a/vendor/github.com/dop251/goja/builtin_regexp.go b/vendor/github.com/dop251/goja/builtin_regexp.go index 451b87d24..a81002f32 100644 --- a/vendor/github.com/dop251/goja/builtin_regexp.go +++ b/vendor/github.com/dop251/goja/builtin_regexp.go @@ -386,14 +386,14 @@ func (r *Runtime) regexpproto_compile(call FunctionCall) Value { return call.This } - panic(r.NewTypeError("Method RegExp.prototype.compile called on incompatible receiver %s", call.This.toString())) + panic(r.NewTypeError("Method RegExp.prototype.compile called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) regexpproto_exec(call FunctionCall) Value { if this, ok := r.toObject(call.This).self.(*regexpObject); ok { return this.exec(call.Argument(0).toString()) } else { - r.typeErrorResult(true, "Method RegExp.prototype.exec called on incompatible receiver %s", call.This.toString()) + r.typeErrorResult(true, "Method RegExp.prototype.exec called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This})) return nil } } @@ -406,8 +406,7 @@ func (r *Runtime) regexpproto_test(call FunctionCall) Value { return valueFalse } } else { - r.typeErrorResult(true, "Method RegExp.prototype.test called on incompatible receiver %s", call.This.toString()) - return nil + panic(r.NewTypeError("Method RegExp.prototype.test called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } } @@ -501,9 +500,10 @@ func (r *Runtime) regexpproto_getSource(call FunctionCall) Value { return sb.String() } return this.source + } else if call.This == r.global.RegExpPrototype { + return asciiString("(?:)") } else { - r.typeErrorResult(true, "Method RegExp.prototype.source getter called on incompatible receiver") - return nil + panic(r.NewTypeError("Method RegExp.prototype.source getter called on incompatible receiver")) } } @@ -514,9 +514,10 @@ func (r *Runtime) regexpproto_getGlobal(call FunctionCall) Value { } else { return valueFalse } + } else if call.This == r.global.RegExpPrototype { + return _undefined } else { - r.typeErrorResult(true, "Method RegExp.prototype.global getter called on incompatible receiver %s", call.This.toString()) - return nil + panic(r.NewTypeError("Method RegExp.prototype.global getter called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } } @@ -527,9 +528,10 @@ func (r *Runtime) regexpproto_getMultiline(call FunctionCall) Value { } else { return valueFalse } + } else if call.This == r.global.RegExpPrototype { + return _undefined } else { - r.typeErrorResult(true, "Method RegExp.prototype.multiline getter called on incompatible receiver %s", call.This.toString()) - return nil + panic(r.NewTypeError("Method RegExp.prototype.multiline getter called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } } @@ -540,9 +542,10 @@ func (r *Runtime) regexpproto_getIgnoreCase(call FunctionCall) Value { } else { return valueFalse } + } else if call.This == r.global.RegExpPrototype { + return _undefined } else { - r.typeErrorResult(true, "Method RegExp.prototype.ignoreCase getter called on incompatible receiver %s", call.This.toString()) - return nil + panic(r.NewTypeError("Method RegExp.prototype.ignoreCase getter called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } } @@ -553,9 +556,10 @@ func (r *Runtime) regexpproto_getUnicode(call FunctionCall) Value { } else { return valueFalse } + } else if call.This == r.global.RegExpPrototype { + return _undefined } else { - r.typeErrorResult(true, "Method RegExp.prototype.unicode getter called on incompatible receiver %s", call.This.toString()) - return nil + panic(r.NewTypeError("Method RegExp.prototype.unicode getter called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } } @@ -566,9 +570,10 @@ func (r *Runtime) regexpproto_getSticky(call FunctionCall) Value { } else { return valueFalse } + } else if call.This == r.global.RegExpPrototype { + return _undefined } else { - r.typeErrorResult(true, "Method RegExp.prototype.sticky getter called on incompatible receiver %s", call.This.toString()) - return nil + panic(r.NewTypeError("Method RegExp.prototype.sticky getter called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } } @@ -900,7 +905,7 @@ func (r *Runtime) regexpproto_stdSplitterGeneric(splitter *Object, s valueString } numberOfCaptures := max(toLength(z.self.getStr("length", nil))-1, 0) for i := int64(1); i <= numberOfCaptures; i++ { - a = append(a, z.self.getIdx(valueInt(i), nil)) + a = append(a, nilSafe(z.self.getIdx(valueInt(i), nil))) if int64(len(a)) == lim { return r.newArrayValues(a) } @@ -1200,7 +1205,7 @@ func (r *Runtime) regExpStringIteratorProto_next(call FunctionCall) Value { if iter, ok := thisObj.self.(*regExpStringIterObject); ok { return iter.next() } - panic(r.NewTypeError("Method RegExp String Iterator.prototype.next called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method RegExp String Iterator.prototype.next called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } func (r *Runtime) createRegExpStringIteratorPrototype(val *Object) objectImpl { @@ -1267,10 +1272,6 @@ func (r *Runtime) initRegExp() { r.global.RegExp = r.newNativeFunc(r.builtin_RegExp, r.builtin_newRegExp, "RegExp", r.global.RegExpPrototype, 2) rx := r.global.RegExp.self - rx._putSym(SymSpecies, &valueProperty{ - getterFunc: r.newNativeFunc(r.returnThis, nil, "get [Symbol.species]", nil, 0), - accessor: true, - configurable: true, - }) + r.putSpeciesReturnThis(rx) r.addToGlobal("RegExp", r.global.RegExp) } diff --git a/vendor/github.com/dop251/goja/builtin_set.go b/vendor/github.com/dop251/goja/builtin_set.go index 4a2654058..ef602e843 100644 --- a/vendor/github.com/dop251/goja/builtin_set.go +++ b/vendor/github.com/dop251/goja/builtin_set.go @@ -42,7 +42,7 @@ func (r *Runtime) setProto_add(call FunctionCall) Value { thisObj := r.toObject(call.This) so, ok := thisObj.self.(*setObject) if !ok { - panic(r.NewTypeError("Method Set.prototype.add called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Set.prototype.add called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } so.m.set(call.Argument(0), nil) @@ -53,7 +53,7 @@ func (r *Runtime) setProto_clear(call FunctionCall) Value { thisObj := r.toObject(call.This) so, ok := thisObj.self.(*setObject) if !ok { - panic(r.NewTypeError("Method Set.prototype.clear called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Set.prototype.clear called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } so.m.clear() @@ -64,7 +64,7 @@ func (r *Runtime) setProto_delete(call FunctionCall) Value { thisObj := r.toObject(call.This) so, ok := thisObj.self.(*setObject) if !ok { - panic(r.NewTypeError("Method Set.prototype.delete called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Set.prototype.delete called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } return r.toBoolean(so.m.remove(call.Argument(0))) @@ -78,7 +78,7 @@ func (r *Runtime) setProto_forEach(call FunctionCall) Value { thisObj := r.toObject(call.This) so, ok := thisObj.self.(*setObject) if !ok { - panic(r.NewTypeError("Method Set.prototype.forEach called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Set.prototype.forEach called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } callbackFn, ok := r.toObject(call.Argument(0)).self.assertCallable() if !ok { @@ -101,7 +101,7 @@ func (r *Runtime) setProto_has(call FunctionCall) Value { thisObj := r.toObject(call.This) so, ok := thisObj.self.(*setObject) if !ok { - panic(r.NewTypeError("Method Set.prototype.has called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Set.prototype.has called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } return r.toBoolean(so.m.has(call.Argument(0))) @@ -111,7 +111,7 @@ func (r *Runtime) setProto_getSize(call FunctionCall) Value { thisObj := r.toObject(call.This) so, ok := thisObj.self.(*setObject) if !ok { - panic(r.NewTypeError("Method get Set.prototype.size called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method get Set.prototype.size called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } return intToValue(int64(so.m.size)) @@ -140,7 +140,7 @@ func (r *Runtime) builtin_newSet(args []Value, newTarget *Object) *Object { adder := so.getStr("add", nil) iter := r.getIterator(arg, nil) if adder == r.global.setAdder { - r.iterate(iter, func(item Value) { + iter.iterate(func(item Value) { so.m.set(item, nil) }) } else { @@ -148,7 +148,7 @@ func (r *Runtime) builtin_newSet(args []Value, newTarget *Object) *Object { if adderFn == nil { panic(r.NewTypeError("Set.add in missing")) } - r.iterate(iter, func(item Value) { + iter.iterate(func(item Value) { adderFn(FunctionCall{This: o, Arguments: []Value{item}}) }) } @@ -185,7 +185,7 @@ func (r *Runtime) setIterProto_next(call FunctionCall) Value { if iter, ok := thisObj.self.(*setIterObject); ok { return iter.next() } - panic(r.NewTypeError("Method Set Iterator.prototype.next called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method Set Iterator.prototype.next called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } func (r *Runtime) createSetProto(val *Object) objectImpl { @@ -218,11 +218,7 @@ func (r *Runtime) createSetProto(val *Object) objectImpl { func (r *Runtime) createSet(val *Object) objectImpl { o := r.newNativeConstructOnly(val, r.builtin_newSet, r.global.SetPrototype, "Set", 0) - o._putSym(SymSpecies, &valueProperty{ - getterFunc: r.newNativeFunc(r.returnThis, nil, "get [Symbol.species]", nil, 0), - accessor: true, - configurable: true, - }) + r.putSpeciesReturnThis(o) return o } diff --git a/vendor/github.com/dop251/goja/builtin_string.go b/vendor/github.com/dop251/goja/builtin_string.go index 63554ff36..76463be83 100644 --- a/vendor/github.com/dop251/goja/builtin_string.go +++ b/vendor/github.com/dop251/goja/builtin_string.go @@ -377,7 +377,7 @@ func (r *Runtime) stringproto_matchAll(call FunctionCall) Value { if regexp != _undefined && regexp != _null { if isRegexp(regexp) { if o, ok := regexp.(*Object); ok { - flags := o.self.getStr("flags", nil) + flags := nilSafe(o.self.getStr("flags", nil)) r.checkObjectCoercible(flags) if !strings.Contains(flags.toString().String(), "g") { panic(r.NewTypeError("RegExp doesn't have global flag set")) @@ -930,7 +930,7 @@ func (r *Runtime) stringIterProto_next(call FunctionCall) Value { if iter, ok := thisObj.self.(*stringIterObject); ok { return iter.next() } - panic(r.NewTypeError("Method String Iterator.prototype.next called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method String Iterator.prototype.next called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } func (r *Runtime) createStringIterProto(val *Object) objectImpl { diff --git a/vendor/github.com/dop251/goja/builtin_symbol.go b/vendor/github.com/dop251/goja/builtin_symbol.go index 9aa5e771e..02147a1fa 100644 --- a/vendor/github.com/dop251/goja/builtin_symbol.go +++ b/vendor/github.com/dop251/goja/builtin_symbol.go @@ -21,8 +21,6 @@ func (r *Runtime) builtin_symbol(call FunctionCall) Value { var desc valueString if arg := call.Argument(0); !IsUndefined(arg) { desc = arg.toString() - } else { - desc = stringEmpty } return newSymbol(desc) } @@ -89,6 +87,20 @@ func (r *Runtime) symbol_keyfor(call FunctionCall) Value { return _undefined } +func (r *Runtime) thisSymbolValue(v Value) *Symbol { + if sym, ok := v.(*Symbol); ok { + return sym + } + if obj, ok := v.(*Object); ok { + if pVal, ok := obj.self.(*primitiveValueObject); ok { + if sym, ok := pVal.pValue.(*Symbol); ok { + return sym + } + } + } + panic(r.NewTypeError("Value is not a Symbol")) +} + func (r *Runtime) createSymbolProto(val *Object) objectImpl { o := &baseObject{ class: classObject, @@ -99,6 +111,13 @@ func (r *Runtime) createSymbolProto(val *Object) objectImpl { o.init() o._putProp("constructor", r.global.Symbol, true, false, true) + o.setOwnStr("description", &valueProperty{ + configurable: true, + getterFunc: r.newNativeFunc(func(call FunctionCall) Value { + return r.thisSymbolValue(call.This).desc + }, nil, "get description", nil, 0), + accessor: true, + }, false) o._putProp("toString", r.newNativeFunc(r.symbolproto_tostring, nil, "toString", nil, 0), true, false, true) o._putProp("valueOf", r.newNativeFunc(r.symbolproto_valueOf, nil, "valueOf", nil, 0), true, false, true) o._putSym(SymToPrimitive, valueProp(r.newNativeFunc(r.symbolproto_valueOf, nil, "[Symbol.toPrimitive]", nil, 1), false, false, true)) @@ -108,7 +127,9 @@ func (r *Runtime) createSymbolProto(val *Object) objectImpl { } func (r *Runtime) createSymbol(val *Object) objectImpl { - o := r.newNativeFuncObj(val, r.builtin_symbol, nil, "Symbol", r.global.SymbolPrototype, 0) + o := r.newNativeFuncObj(val, r.builtin_symbol, func(args []Value, proto *Object) *Object { + panic(r.NewTypeError("Symbol is not a constructor")) + }, "Symbol", r.global.SymbolPrototype, _positiveZero) o._putProp("for", r.newNativeFunc(r.symbol_for, nil, "for", nil, 1), true, false, true) o._putProp("keyFor", r.newNativeFunc(r.symbol_keyfor, nil, "keyFor", nil, 1), true, false, true) diff --git a/vendor/github.com/dop251/goja/builtin_typedarrays.go b/vendor/github.com/dop251/goja/builtin_typedarrays.go index 0df95418e..cbfa08e51 100644 --- a/vendor/github.com/dop251/goja/builtin_typedarrays.go +++ b/vendor/github.com/dop251/goja/builtin_typedarrays.go @@ -197,7 +197,7 @@ func (r *Runtime) dataViewProto_getBuffer(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { return dv.viewedArrayBuf.val } - panic(r.NewTypeError("Method get DataView.prototype.buffer called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method get DataView.prototype.buffer called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_getByteLen(call FunctionCall) Value { @@ -205,7 +205,7 @@ func (r *Runtime) dataViewProto_getByteLen(call FunctionCall) Value { dv.viewedArrayBuf.ensureNotDetached(true) return intToValue(int64(dv.byteLen)) } - panic(r.NewTypeError("Method get DataView.prototype.byteLength called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method get DataView.prototype.byteLength called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_getByteOffset(call FunctionCall) Value { @@ -213,152 +213,160 @@ func (r *Runtime) dataViewProto_getByteOffset(call FunctionCall) Value { dv.viewedArrayBuf.ensureNotDetached(true) return intToValue(int64(dv.byteOffset)) } - panic(r.NewTypeError("Method get DataView.prototype.byteOffset called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method get DataView.prototype.byteOffset called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_getFloat32(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { - return floatToValue(float64(dv.viewedArrayBuf.getFloat32(dv.getIdxAndByteOrder(call.Argument(0), call.Argument(1), 4)))) + return floatToValue(float64(dv.viewedArrayBuf.getFloat32(dv.getIdxAndByteOrder(r.toIndex(call.Argument(0)), call.Argument(1), 4)))) } - panic(r.NewTypeError("Method DataView.prototype.getFloat32 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.getFloat32 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_getFloat64(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { - return floatToValue(dv.viewedArrayBuf.getFloat64(dv.getIdxAndByteOrder(call.Argument(0), call.Argument(1), 8))) + return floatToValue(dv.viewedArrayBuf.getFloat64(dv.getIdxAndByteOrder(r.toIndex(call.Argument(0)), call.Argument(1), 8))) } - panic(r.NewTypeError("Method DataView.prototype.getFloat64 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.getFloat64 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_getInt8(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { - idx, _ := dv.getIdxAndByteOrder(call.Argument(0), call.Argument(1), 1) + idx, _ := dv.getIdxAndByteOrder(r.toIndex(call.Argument(0)), call.Argument(1), 1) return intToValue(int64(dv.viewedArrayBuf.getInt8(idx))) } - panic(r.NewTypeError("Method DataView.prototype.getInt8 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.getInt8 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_getInt16(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { - return intToValue(int64(dv.viewedArrayBuf.getInt16(dv.getIdxAndByteOrder(call.Argument(0), call.Argument(1), 2)))) + return intToValue(int64(dv.viewedArrayBuf.getInt16(dv.getIdxAndByteOrder(r.toIndex(call.Argument(0)), call.Argument(1), 2)))) } - panic(r.NewTypeError("Method DataView.prototype.getInt16 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.getInt16 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_getInt32(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { - return intToValue(int64(dv.viewedArrayBuf.getInt32(dv.getIdxAndByteOrder(call.Argument(0), call.Argument(1), 4)))) + return intToValue(int64(dv.viewedArrayBuf.getInt32(dv.getIdxAndByteOrder(r.toIndex(call.Argument(0)), call.Argument(1), 4)))) } - panic(r.NewTypeError("Method DataView.prototype.getInt32 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.getInt32 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_getUint8(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { - idx, _ := dv.getIdxAndByteOrder(call.Argument(0), call.Argument(1), 1) + idx, _ := dv.getIdxAndByteOrder(r.toIndex(call.Argument(0)), call.Argument(1), 1) return intToValue(int64(dv.viewedArrayBuf.getUint8(idx))) } - panic(r.NewTypeError("Method DataView.prototype.getUint8 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.getUint8 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_getUint16(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { - return intToValue(int64(dv.viewedArrayBuf.getUint16(dv.getIdxAndByteOrder(call.Argument(0), call.Argument(1), 2)))) + return intToValue(int64(dv.viewedArrayBuf.getUint16(dv.getIdxAndByteOrder(r.toIndex(call.Argument(0)), call.Argument(1), 2)))) } - panic(r.NewTypeError("Method DataView.prototype.getUint16 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.getUint16 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_getUint32(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { - return intToValue(int64(dv.viewedArrayBuf.getUint32(dv.getIdxAndByteOrder(call.Argument(0), call.Argument(1), 4)))) + return intToValue(int64(dv.viewedArrayBuf.getUint32(dv.getIdxAndByteOrder(r.toIndex(call.Argument(0)), call.Argument(1), 4)))) } - panic(r.NewTypeError("Method DataView.prototype.getUint32 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.getUint32 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_setFloat32(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { + idxVal := r.toIndex(call.Argument(0)) val := toFloat32(call.Argument(1)) - idx, bo := dv.getIdxAndByteOrder(call.Argument(0), call.Argument(2), 4) + idx, bo := dv.getIdxAndByteOrder(idxVal, call.Argument(2), 4) dv.viewedArrayBuf.setFloat32(idx, val, bo) return _undefined } - panic(r.NewTypeError("Method DataView.prototype.setFloat32 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.setFloat32 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_setFloat64(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { + idxVal := r.toIndex(call.Argument(0)) val := call.Argument(1).ToFloat() - idx, bo := dv.getIdxAndByteOrder(call.Argument(0), call.Argument(2), 8) + idx, bo := dv.getIdxAndByteOrder(idxVal, call.Argument(2), 8) dv.viewedArrayBuf.setFloat64(idx, val, bo) return _undefined } - panic(r.NewTypeError("Method DataView.prototype.setFloat64 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.setFloat64 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_setInt8(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { + idxVal := r.toIndex(call.Argument(0)) val := toInt8(call.Argument(1)) - idx, _ := dv.getIdxAndByteOrder(call.Argument(0), call.Argument(2), 1) + idx, _ := dv.getIdxAndByteOrder(idxVal, call.Argument(2), 1) dv.viewedArrayBuf.setInt8(idx, val) return _undefined } - panic(r.NewTypeError("Method DataView.prototype.setInt8 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.setInt8 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_setInt16(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { + idxVal := r.toIndex(call.Argument(0)) val := toInt16(call.Argument(1)) - idx, bo := dv.getIdxAndByteOrder(call.Argument(0), call.Argument(2), 2) + idx, bo := dv.getIdxAndByteOrder(idxVal, call.Argument(2), 2) dv.viewedArrayBuf.setInt16(idx, val, bo) return _undefined } - panic(r.NewTypeError("Method DataView.prototype.setInt16 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.setInt16 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_setInt32(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { + idxVal := r.toIndex(call.Argument(0)) val := toInt32(call.Argument(1)) - idx, bo := dv.getIdxAndByteOrder(call.Argument(0), call.Argument(2), 4) + idx, bo := dv.getIdxAndByteOrder(idxVal, call.Argument(2), 4) dv.viewedArrayBuf.setInt32(idx, val, bo) return _undefined } - panic(r.NewTypeError("Method DataView.prototype.setInt32 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.setInt32 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_setUint8(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { + idxVal := r.toIndex(call.Argument(0)) val := toUint8(call.Argument(1)) - idx, _ := dv.getIdxAndByteOrder(call.Argument(0), call.Argument(2), 1) + idx, _ := dv.getIdxAndByteOrder(idxVal, call.Argument(2), 1) dv.viewedArrayBuf.setUint8(idx, val) return _undefined } - panic(r.NewTypeError("Method DataView.prototype.setUint8 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.setUint8 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_setUint16(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { + idxVal := r.toIndex(call.Argument(0)) val := toUint16(call.Argument(1)) - idx, bo := dv.getIdxAndByteOrder(call.Argument(0), call.Argument(2), 2) + idx, bo := dv.getIdxAndByteOrder(idxVal, call.Argument(2), 2) dv.viewedArrayBuf.setUint16(idx, val, bo) return _undefined } - panic(r.NewTypeError("Method DataView.prototype.setUint16 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.setUint16 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) dataViewProto_setUint32(call FunctionCall) Value { if dv, ok := r.toObject(call.This).self.(*dataViewObject); ok { + idxVal := r.toIndex(call.Argument(0)) val := toUint32(call.Argument(1)) - idx, bo := dv.getIdxAndByteOrder(call.Argument(0), call.Argument(2), 4) + idx, bo := dv.getIdxAndByteOrder(idxVal, call.Argument(2), 4) dv.viewedArrayBuf.setUint32(idx, val, bo) return _undefined } - panic(r.NewTypeError("Method DataView.prototype.setUint32 called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method DataView.prototype.setUint32 called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_getBuffer(call FunctionCall) Value { if ta, ok := r.toObject(call.This).self.(*typedArrayObject); ok { return ta.viewedArrayBuf.val } - panic(r.NewTypeError("Method get TypedArray.prototype.buffer called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method get TypedArray.prototype.buffer called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_getByteLen(call FunctionCall) Value { @@ -368,7 +376,7 @@ func (r *Runtime) typedArrayProto_getByteLen(call FunctionCall) Value { } return intToValue(int64(ta.length) * int64(ta.elemSize)) } - panic(r.NewTypeError("Method get TypedArray.prototype.byteLength called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method get TypedArray.prototype.byteLength called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_getLength(call FunctionCall) Value { @@ -378,7 +386,7 @@ func (r *Runtime) typedArrayProto_getLength(call FunctionCall) Value { } return intToValue(int64(ta.length)) } - panic(r.NewTypeError("Method get TypedArray.prototype.length called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method get TypedArray.prototype.length called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_getByteOffset(call FunctionCall) Value { @@ -388,7 +396,7 @@ func (r *Runtime) typedArrayProto_getByteOffset(call FunctionCall) Value { } return intToValue(int64(ta.offset) * int64(ta.elemSize)) } - panic(r.NewTypeError("Method get TypedArray.prototype.byteOffset called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method get TypedArray.prototype.byteOffset called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_copyWithin(call FunctionCall) Value { @@ -413,7 +421,7 @@ func (r *Runtime) typedArrayProto_copyWithin(call FunctionCall) Value { } return call.This } - panic(r.NewTypeError("Method TypedArray.prototype.copyWithin called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.copyWithin called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_entries(call FunctionCall) Value { @@ -421,7 +429,7 @@ func (r *Runtime) typedArrayProto_entries(call FunctionCall) Value { ta.viewedArrayBuf.ensureNotDetached(true) return r.createArrayIterator(ta.val, iterationKindKeyValue) } - panic(r.NewTypeError("Method TypedArray.prototype.entries called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.entries called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_every(call FunctionCall) Value { @@ -433,8 +441,11 @@ func (r *Runtime) typedArrayProto_every(call FunctionCall) Value { Arguments: []Value{nil, nil, call.This}, } for k := 0; k < ta.length; k++ { - ta.viewedArrayBuf.ensureNotDetached(true) - fc.Arguments[0] = ta.typedArray.get(ta.offset + k) + if ta.isValidIntegerIndex(k) { + fc.Arguments[0] = ta.typedArray.get(ta.offset + k) + } else { + fc.Arguments[0] = _undefined + } fc.Arguments[1] = intToValue(int64(k)) if !callbackFn(fc).ToBoolean() { return valueFalse @@ -443,7 +454,7 @@ func (r *Runtime) typedArrayProto_every(call FunctionCall) Value { return valueTrue } - panic(r.NewTypeError("Method TypedArray.prototype.every called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.every called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_fill(call FunctionCall) Value { @@ -465,7 +476,7 @@ func (r *Runtime) typedArrayProto_fill(call FunctionCall) Value { } return call.This } - panic(r.NewTypeError("Method TypedArray.prototype.fill called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.fill called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_filter(call FunctionCall) Value { @@ -479,13 +490,21 @@ func (r *Runtime) typedArrayProto_filter(call FunctionCall) Value { } buf := make([]byte, 0, ta.length*ta.elemSize) captured := 0 + rawVal := make([]byte, ta.elemSize) for k := 0; k < ta.length; k++ { - ta.viewedArrayBuf.ensureNotDetached(true) - fc.Arguments[0] = ta.typedArray.get(k) + if ta.isValidIntegerIndex(k) { + fc.Arguments[0] = ta.typedArray.get(ta.offset + k) + i := (ta.offset + k) * ta.elemSize + copy(rawVal, ta.viewedArrayBuf.data[i:]) + } else { + fc.Arguments[0] = _undefined + for i := range rawVal { + rawVal[i] = 0 + } + } fc.Arguments[1] = intToValue(int64(k)) if callbackFn(fc).ToBoolean() { - i := (ta.offset + k) * ta.elemSize - buf = append(buf, ta.viewedArrayBuf.data[i:i+ta.elemSize]...) + buf = append(buf, rawVal...) captured++ } } @@ -496,15 +515,15 @@ func (r *Runtime) typedArrayProto_filter(call FunctionCall) Value { if c == ta.defaultCtor { return kept } else { - ret := r.typedArrayCreate(c, []Value{intToValue(int64(captured))}) + ret := r.typedArrayCreate(c, intToValue(int64(captured))) keptTa := kept.self.(*typedArrayObject) for i := 0; i < captured; i++ { - ret.typedArray.set(i, keptTa.typedArray.get(i)) + ret.typedArray.set(i, keptTa.typedArray.get(keptTa.offset+i)) } return ret.val } } - panic(r.NewTypeError("Method TypedArray.prototype.filter called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.filter called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_find(call FunctionCall) Value { @@ -516,8 +535,10 @@ func (r *Runtime) typedArrayProto_find(call FunctionCall) Value { Arguments: []Value{nil, nil, call.This}, } for k := 0; k < ta.length; k++ { - ta.viewedArrayBuf.ensureNotDetached(true) - val := ta.typedArray.get(ta.offset + k) + var val Value + if ta.isValidIntegerIndex(k) { + val = ta.typedArray.get(ta.offset + k) + } fc.Arguments[0] = val fc.Arguments[1] = intToValue(int64(k)) if predicate(fc).ToBoolean() { @@ -526,7 +547,7 @@ func (r *Runtime) typedArrayProto_find(call FunctionCall) Value { } return _undefined } - panic(r.NewTypeError("Method TypedArray.prototype.find called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.find called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_findIndex(call FunctionCall) Value { @@ -538,8 +559,11 @@ func (r *Runtime) typedArrayProto_findIndex(call FunctionCall) Value { Arguments: []Value{nil, nil, call.This}, } for k := 0; k < ta.length; k++ { - ta.viewedArrayBuf.ensureNotDetached(true) - fc.Arguments[0] = ta.typedArray.get(ta.offset + k) + if ta.isValidIntegerIndex(k) { + fc.Arguments[0] = ta.typedArray.get(ta.offset + k) + } else { + fc.Arguments[0] = _undefined + } fc.Arguments[1] = intToValue(int64(k)) if predicate(fc).ToBoolean() { return fc.Arguments[1] @@ -547,7 +571,7 @@ func (r *Runtime) typedArrayProto_findIndex(call FunctionCall) Value { } return intToValue(-1) } - panic(r.NewTypeError("Method TypedArray.prototype.findIndex called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.findIndex called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_forEach(call FunctionCall) Value { @@ -559,16 +583,17 @@ func (r *Runtime) typedArrayProto_forEach(call FunctionCall) Value { Arguments: []Value{nil, nil, call.This}, } for k := 0; k < ta.length; k++ { - ta.viewedArrayBuf.ensureNotDetached(true) - if val := ta.typedArray.get(k); val != nil { - fc.Arguments[0] = val - fc.Arguments[1] = intToValue(int64(k)) - callbackFn(fc) + var val Value + if ta.isValidIntegerIndex(k) { + val = ta.typedArray.get(ta.offset + k) } + fc.Arguments[0] = val + fc.Arguments[1] = intToValue(int64(k)) + callbackFn(fc) } return _undefined } - panic(r.NewTypeError("Method TypedArray.prototype.forEach called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.forEach called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_includes(call FunctionCall) Value { @@ -588,14 +613,20 @@ func (r *Runtime) typedArrayProto_includes(call FunctionCall) Value { n = max(length+n, 0) } - ta.viewedArrayBuf.ensureNotDetached(true) searchElement := call.Argument(0) if searchElement == _negativeZero { searchElement = _positiveZero } + startIdx := toIntStrict(n) + if !ta.viewedArrayBuf.ensureNotDetached(false) { + if searchElement == _undefined && startIdx < ta.length { + return valueTrue + } + return valueFalse + } if ta.typedArray.typeMatch(searchElement) { se := ta.typedArray.toRaw(searchElement) - for k := toIntStrict(n); k < ta.length; k++ { + for k := startIdx; k < ta.length; k++ { if ta.typedArray.getRaw(ta.offset+k) == se { return valueTrue } @@ -603,7 +634,7 @@ func (r *Runtime) typedArrayProto_includes(call FunctionCall) Value { } return valueFalse } - panic(r.NewTypeError("Method TypedArray.prototype.includes called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.includes called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_indexOf(call FunctionCall) Value { @@ -623,22 +654,23 @@ func (r *Runtime) typedArrayProto_indexOf(call FunctionCall) Value { n = max(length+n, 0) } - ta.viewedArrayBuf.ensureNotDetached(true) - searchElement := call.Argument(0) - if searchElement == _negativeZero { - searchElement = _positiveZero - } - if !IsNaN(searchElement) && ta.typedArray.typeMatch(searchElement) { - se := ta.typedArray.toRaw(searchElement) - for k := toIntStrict(n); k < ta.length; k++ { - if ta.typedArray.getRaw(ta.offset+k) == se { - return intToValue(int64(k)) + if ta.viewedArrayBuf.ensureNotDetached(false) { + searchElement := call.Argument(0) + if searchElement == _negativeZero { + searchElement = _positiveZero + } + if !IsNaN(searchElement) && ta.typedArray.typeMatch(searchElement) { + se := ta.typedArray.toRaw(searchElement) + for k := toIntStrict(n); k < ta.length; k++ { + if ta.typedArray.getRaw(ta.offset+k) == se { + return intToValue(int64(k)) + } } } } return intToValue(-1) } - panic(r.NewTypeError("Method TypedArray.prototype.indexOf called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.indexOf called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_join(call FunctionCall) Value { @@ -658,18 +690,21 @@ func (r *Runtime) typedArrayProto_join(call FunctionCall) Value { var buf valueStringBuilder - ta.viewedArrayBuf.ensureNotDetached(true) - element0 := ta.typedArray.get(0) + var element0 Value + if ta.isValidIntegerIndex(0) { + element0 = ta.typedArray.get(ta.offset + 0) + } if element0 != nil && element0 != _undefined && element0 != _null { buf.WriteString(element0.toString()) } for i := 1; i < l; i++ { - ta.viewedArrayBuf.ensureNotDetached(true) buf.WriteString(sep) - element := ta.typedArray.get(i) - if element != nil && element != _undefined && element != _null { - buf.WriteString(element.toString()) + if ta.isValidIntegerIndex(i) { + element := ta.typedArray.get(ta.offset + i) + if element != nil && element != _undefined && element != _null { + buf.WriteString(element.toString()) + } } } @@ -683,7 +718,7 @@ func (r *Runtime) typedArrayProto_keys(call FunctionCall) Value { ta.viewedArrayBuf.ensureNotDetached(true) return r.createArrayIterator(ta.val, iterationKindKey) } - panic(r.NewTypeError("Method TypedArray.prototype.keys called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.keys called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_lastIndexOf(call FunctionCall) Value { @@ -710,23 +745,24 @@ func (r *Runtime) typedArrayProto_lastIndexOf(call FunctionCall) Value { } } - ta.viewedArrayBuf.ensureNotDetached(true) - searchElement := call.Argument(0) - if searchElement == _negativeZero { - searchElement = _positiveZero - } - if !IsNaN(searchElement) && ta.typedArray.typeMatch(searchElement) { - se := ta.typedArray.toRaw(searchElement) - for k := toIntStrict(fromIndex); k >= 0; k-- { - if ta.typedArray.getRaw(ta.offset+k) == se { - return intToValue(int64(k)) + if ta.viewedArrayBuf.ensureNotDetached(false) { + searchElement := call.Argument(0) + if searchElement == _negativeZero { + searchElement = _positiveZero + } + if !IsNaN(searchElement) && ta.typedArray.typeMatch(searchElement) { + se := ta.typedArray.toRaw(searchElement) + for k := toIntStrict(fromIndex); k >= 0; k-- { + if ta.typedArray.getRaw(ta.offset+k) == se { + return intToValue(int64(k)) + } } } } return intToValue(-1) } - panic(r.NewTypeError("Method TypedArray.prototype.lastIndexOf called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.lastIndexOf called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_map(call FunctionCall) Value { @@ -739,14 +775,17 @@ func (r *Runtime) typedArrayProto_map(call FunctionCall) Value { } dst := r.typedArraySpeciesCreate(ta, []Value{intToValue(int64(ta.length))}) for i := 0; i < ta.length; i++ { - ta.viewedArrayBuf.ensureNotDetached(true) - fc.Arguments[0] = ta.typedArray.get(ta.offset + i) + if ta.isValidIntegerIndex(i) { + fc.Arguments[0] = ta.typedArray.get(ta.offset + i) + } else { + fc.Arguments[0] = _undefined + } fc.Arguments[1] = intToValue(int64(i)) dst.typedArray.set(i, callbackFn(fc)) } return dst.val } - panic(r.NewTypeError("Method TypedArray.prototype.map called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.map called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_reduce(call FunctionCall) Value { @@ -770,15 +809,18 @@ func (r *Runtime) typedArrayProto_reduce(call FunctionCall) Value { panic(r.NewTypeError("Reduce of empty array with no initial value")) } for ; k < ta.length; k++ { - ta.viewedArrayBuf.ensureNotDetached(true) + if ta.isValidIntegerIndex(k) { + fc.Arguments[1] = ta.typedArray.get(ta.offset + k) + } else { + fc.Arguments[1] = _undefined + } idx := valueInt(k) - fc.Arguments[1] = ta.typedArray.get(ta.offset + k) fc.Arguments[2] = idx fc.Arguments[0] = callbackFn(fc) } return fc.Arguments[0] } - panic(r.NewTypeError("Method TypedArray.prototype.reduce called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.reduce called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_reduceRight(call FunctionCall) Value { @@ -802,15 +844,18 @@ func (r *Runtime) typedArrayProto_reduceRight(call FunctionCall) Value { panic(r.NewTypeError("Reduce of empty array with no initial value")) } for ; k >= 0; k-- { - ta.viewedArrayBuf.ensureNotDetached(true) + if ta.isValidIntegerIndex(k) { + fc.Arguments[1] = ta.typedArray.get(ta.offset + k) + } else { + fc.Arguments[1] = _undefined + } idx := valueInt(k) - fc.Arguments[1] = ta.typedArray.get(ta.offset + k) fc.Arguments[2] = idx fc.Arguments[0] = callbackFn(fc) } return fc.Arguments[0] } - panic(r.NewTypeError("Method TypedArray.prototype.reduceRight called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.reduceRight called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_reverse(call FunctionCall) Value { @@ -825,7 +870,7 @@ func (r *Runtime) typedArrayProto_reverse(call FunctionCall) Value { return call.This } - panic(r.NewTypeError("Method TypedArray.prototype.reverse called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.reverse called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_set(call FunctionCall) Value { @@ -895,12 +940,14 @@ func (r *Runtime) typedArrayProto_set(call FunctionCall) Value { for i := 0; i < srcLen; i++ { val := nilSafe(srcObj.self.getIdx(valueInt(i), nil)) ta.viewedArrayBuf.ensureNotDetached(true) - ta.typedArray.set(targetOffset+i, val) + if ta.isValidIntegerIndex(i) { + ta.typedArray.set(targetOffset+i, val) + } } } return _undefined } - panic(r.NewTypeError("Method TypedArray.prototype.set called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.set called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_slice(call FunctionCall) Value { @@ -936,7 +983,7 @@ func (r *Runtime) typedArrayProto_slice(call FunctionCall) Value { } return dst.val } - panic(r.NewTypeError("Method TypedArray.prototype.slice called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.slice called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_some(call FunctionCall) Value { @@ -948,8 +995,11 @@ func (r *Runtime) typedArrayProto_some(call FunctionCall) Value { Arguments: []Value{nil, nil, call.This}, } for k := 0; k < ta.length; k++ { - ta.viewedArrayBuf.ensureNotDetached(true) - fc.Arguments[0] = ta.typedArray.get(ta.offset + k) + if ta.isValidIntegerIndex(k) { + fc.Arguments[0] = ta.typedArray.get(ta.offset + k) + } else { + fc.Arguments[0] = _undefined + } fc.Arguments[1] = intToValue(int64(k)) if callbackFn(fc).ToBoolean() { return valueTrue @@ -957,7 +1007,7 @@ func (r *Runtime) typedArrayProto_some(call FunctionCall) Value { } return valueFalse } - panic(r.NewTypeError("Method TypedArray.prototype.some called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.some called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_sort(call FunctionCall) Value { @@ -977,7 +1027,7 @@ func (r *Runtime) typedArrayProto_sort(call FunctionCall) Value { sort.Stable(&ctx) return call.This } - panic(r.NewTypeError("Method TypedArray.prototype.sort called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.sort called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_subarray(call FunctionCall) Value { @@ -997,7 +1047,7 @@ func (r *Runtime) typedArrayProto_subarray(call FunctionCall) Value { intToValue(newLen), }).val } - panic(r.NewTypeError("Method TypedArray.prototype.subarray called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.subarray called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_toLocaleString(call FunctionCall) Value { @@ -1009,12 +1059,12 @@ func (r *Runtime) typedArrayProto_toLocaleString(call FunctionCall) Value { if i > 0 { buf.WriteRune(',') } - item := ta.typedArray.get(i) + item := ta.typedArray.get(ta.offset + i) r.writeItemLocaleString(item, &buf) } return buf.String() } - panic(r.NewTypeError("Method TypedArray.prototype.toLocaleString called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.toLocaleString called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_values(call FunctionCall) Value { @@ -1022,13 +1072,13 @@ func (r *Runtime) typedArrayProto_values(call FunctionCall) Value { ta.viewedArrayBuf.ensureNotDetached(true) return r.createArrayIterator(ta.val, iterationKindValue) } - panic(r.NewTypeError("Method TypedArray.prototype.values called on incompatible receiver %s", call.This.String())) + panic(r.NewTypeError("Method TypedArray.prototype.values called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: call.This}))) } func (r *Runtime) typedArrayProto_toStringTag(call FunctionCall) Value { if obj, ok := call.This.(*Object); ok { if ta, ok := obj.self.(*typedArrayObject); ok { - return ta.defaultCtor.self.getStr("name", nil) + return nilSafe(ta.defaultCtor.self.getStr("name", nil)) } } @@ -1040,35 +1090,76 @@ func (r *Runtime) newTypedArray([]Value, *Object) *Object { } func (r *Runtime) typedArray_from(call FunctionCall) Value { - mapFn := call.Argument(1) - if mapFn == _undefined { - mapFn = nil + c := r.toObject(call.This) + var mapFc func(call FunctionCall) Value + thisValue := call.Argument(2) + if mapFn := call.Argument(1); mapFn != _undefined { + mapFc = r.toCallable(mapFn) } - return r.typedArrayFrom(r.toObject(call.This), call.Argument(0).ToObject(r), mapFn, call.Argument(2)) + source := r.toObject(call.Argument(0)) + usingIter := toMethod(source.self.getSym(SymIterator, nil)) + if usingIter != nil { + values := r.iterableToList(source, usingIter) + ta := r.typedArrayCreate(c, intToValue(int64(len(values)))) + if mapFc == nil { + for idx, val := range values { + ta.typedArray.set(idx, val) + } + } else { + fc := FunctionCall{ + This: thisValue, + Arguments: []Value{nil, nil}, + } + for idx, val := range values { + fc.Arguments[0], fc.Arguments[1] = val, intToValue(int64(idx)) + val = mapFc(fc) + ta.typedArray.set(idx, val) + } + } + return ta.val + } + length := toIntStrict(toLength(source.self.getStr("length", nil))) + ta := r.typedArrayCreate(c, intToValue(int64(length))) + if mapFc == nil { + for i := 0; i < length; i++ { + ta.typedArray.set(i, nilSafe(source.self.getIdx(valueInt(i), nil))) + } + } else { + fc := FunctionCall{ + This: thisValue, + Arguments: []Value{nil, nil}, + } + for i := 0; i < length; i++ { + idx := valueInt(i) + fc.Arguments[0], fc.Arguments[1] = source.self.getIdx(idx, nil), idx + ta.typedArray.set(i, mapFc(fc)) + } + } + return ta.val } func (r *Runtime) typedArray_of(call FunctionCall) Value { - ta := r.typedArrayCreate(r.toObject(call.This), []Value{intToValue(int64(len(call.Arguments)))}) + ta := r.typedArrayCreate(r.toObject(call.This), intToValue(int64(len(call.Arguments)))) for i, val := range call.Arguments { ta.typedArray.set(i, val) } return ta.val } -func (r *Runtime) allocateTypedArray(newTarget *Object, length int, taCtor typedArrayObjectCtor) *Object { +func (r *Runtime) allocateTypedArray(newTarget *Object, length int, taCtor typedArrayObjectCtor, proto *Object) *typedArrayObject { buf := r._newArrayBuffer(r.global.ArrayBufferPrototype, nil) - ta := taCtor(buf, 0, length, r.getPrototypeFromCtor(newTarget, nil, r.global.TypedArrayPrototype)) + ta := taCtor(buf, 0, length, r.getPrototypeFromCtor(newTarget, nil, proto)) if length > 0 { buf.data = allocByteSlice(length * ta.elemSize) } - return ta.val + return ta } func (r *Runtime) typedArraySpeciesCreate(ta *typedArrayObject, args []Value) *typedArrayObject { - return r.typedArrayCreate(r.speciesConstructorObj(ta.val, ta.defaultCtor), args) + return r.typedArrayCreate(r.speciesConstructorObj(ta.val, ta.defaultCtor), args...) } -func (r *Runtime) typedArrayCreate(ctor *Object, args []Value) *typedArrayObject { +func (r *Runtime) typedArrayCreate(ctor *Object, args ...Value) *typedArrayObject { o := r.toConstructor(ctor)(args, ctor) if ta, ok := o.self.(*typedArrayObject); ok { ta.viewedArrayBuf.ensureNotDetached(true) @@ -1084,7 +1175,7 @@ func (r *Runtime) typedArrayCreate(ctor *Object, args []Value) *typedArrayObject panic(r.NewTypeError("Invalid TypedArray: %s", o)) } -func (r *Runtime) typedArrayFrom(ctor, items *Object, mapFn, thisValue Value) *Object { +func (r *Runtime) typedArrayFrom(ctor, items *Object, mapFn, thisValue Value, taCtor typedArrayObjectCtor, proto *Object) *Object { var mapFc func(call FunctionCall) Value if mapFn != nil { mapFc = r.toCallable(mapFn) @@ -1094,12 +1185,8 @@ func (r *Runtime) typedArrayFrom(ctor, items *Object, mapFn, thisValue Value) *O } usingIter := toMethod(items.self.getSym(SymIterator, nil)) if usingIter != nil { - iter := r.getIterator(items, usingIter) - var values []Value - r.iterate(iter, func(item Value) { - values = append(values, item) - }) - ta := r.typedArrayCreate(ctor, []Value{intToValue(int64(len(values)))}) + values := r.iterableToList(items, usingIter) + ta := r.allocateTypedArray(ctor, len(values), taCtor, proto) if mapFc == nil { for idx, val := range values { ta.typedArray.set(idx, val) @@ -1118,7 +1205,7 @@ func (r *Runtime) typedArrayFrom(ctor, items *Object, mapFn, thisValue Value) *O return ta.val } length := toIntStrict(toLength(items.self.getStr("length", nil))) - ta := r.typedArrayCreate(ctor, []Value{intToValue(int64(length))}) + ta := r.allocateTypedArray(ctor, length, taCtor, proto) if mapFc == nil { for i := 0; i < length; i++ { ta.typedArray.set(i, nilSafe(items.self.getIdx(valueInt(i), nil))) @@ -1137,8 +1224,8 @@ func (r *Runtime) typedArrayFrom(ctor, items *Object, mapFn, thisValue Value) *O return ta.val } -func (r *Runtime) _newTypedArrayFromArrayBuffer(ab *arrayBufferObject, args []Value, newTarget *Object, taCtor typedArrayObjectCtor) *Object { - ta := taCtor(ab, 0, 0, r.getPrototypeFromCtor(newTarget, nil, r.global.TypedArrayPrototype)) +func (r *Runtime) _newTypedArrayFromArrayBuffer(ab *arrayBufferObject, args []Value, newTarget *Object, taCtor typedArrayObjectCtor, proto *Object) *Object { + ta := taCtor(ab, 0, 0, r.getPrototypeFromCtor(newTarget, nil, proto)) var byteOffset int if len(args) > 1 && args[1] != nil && args[1] != _undefined { byteOffset = r.toIndex(args[1]) @@ -1146,30 +1233,36 @@ func (r *Runtime) _newTypedArrayFromArrayBuffer(ab *arrayBufferObject, args []Va panic(r.newError(r.global.RangeError, "Start offset of %s should be a multiple of %d", newTarget.self.getStr("name", nil), ta.elemSize)) } } - ab.ensureNotDetached(true) var length int if len(args) > 2 && args[2] != nil && args[2] != _undefined { length = r.toIndex(args[2]) + ab.ensureNotDetached(true) if byteOffset+length*ta.elemSize > len(ab.data) { panic(r.newError(r.global.RangeError, "Invalid typed array length: %d", length)) } } else { + ab.ensureNotDetached(true) if len(ab.data)%ta.elemSize != 0 { panic(r.newError(r.global.RangeError, "Byte length of %s should be a multiple of %d", newTarget.self.getStr("name", nil), ta.elemSize)) } length = (len(ab.data) - byteOffset) / ta.elemSize + if length < 0 { + panic(r.newError(r.global.RangeError, "Start offset %d is outside the bounds of the buffer", byteOffset)) + } } ta.offset = byteOffset / ta.elemSize ta.length = length return ta.val } -func (r *Runtime) _newTypedArrayFromTypedArray(src *typedArrayObject, newTarget *Object) *Object { - dst := r.typedArrayCreate(newTarget, []Value{_positiveZero}) +func (r *Runtime) _newTypedArrayFromTypedArray(src *typedArrayObject, newTarget *Object, taCtor typedArrayObjectCtor, proto *Object) *Object { + dst := r.allocateTypedArray(newTarget, 0, taCtor, proto) src.viewedArrayBuf.ensureNotDetached(true) l := src.length - dst.viewedArrayBuf.prototype = r.getPrototypeFromCtor(r.toObject(src.viewedArrayBuf.getStr("constructor", nil)), r.global.ArrayBuffer, r.global.ArrayBufferPrototype) + + dst.viewedArrayBuf.prototype = r.getPrototypeFromCtor(r.speciesConstructorObj(src.viewedArrayBuf.val, r.global.ArrayBuffer), r.global.ArrayBuffer, r.global.ArrayBufferPrototype) dst.viewedArrayBuf.data = allocByteSlice(toIntStrict(int64(l) * int64(dst.elemSize))) + src.viewedArrayBuf.ensureNotDetached(true) if src.defaultCtor == dst.defaultCtor { copy(dst.viewedArrayBuf.data, src.viewedArrayBuf.data[src.offset*src.elemSize:]) dst.length = src.length @@ -1182,7 +1275,7 @@ func (r *Runtime) _newTypedArrayFromTypedArray(src *typedArrayObject, newTarget return dst.val } -func (r *Runtime) _newTypedArray(args []Value, newTarget *Object, taCtor typedArrayObjectCtor) *Object { +func (r *Runtime) _newTypedArray(args []Value, newTarget *Object, taCtor typedArrayObjectCtor, proto *Object) *Object { if newTarget == nil { panic(r.needNew("TypedArray")) } @@ -1190,11 +1283,11 @@ func (r *Runtime) _newTypedArray(args []Value, newTarget *Object, taCtor typedAr if obj, ok := args[0].(*Object); ok { switch o := obj.self.(type) { case *arrayBufferObject: - return r._newTypedArrayFromArrayBuffer(o, args, newTarget, taCtor) + return r._newTypedArrayFromArrayBuffer(o, args, newTarget, taCtor, proto) case *typedArrayObject: - return r._newTypedArrayFromTypedArray(o, newTarget) + return r._newTypedArrayFromTypedArray(o, newTarget, taCtor, proto) default: - return r.typedArrayFrom(newTarget, obj, nil, nil) + return r.typedArrayFrom(newTarget, obj, nil, nil, taCtor, proto) } } } @@ -1204,43 +1297,43 @@ func (r *Runtime) _newTypedArray(args []Value, newTarget *Object, taCtor typedAr l = r.toIndex(arg0) } } - return r.allocateTypedArray(newTarget, l, taCtor) + return r.allocateTypedArray(newTarget, l, taCtor, proto).val } -func (r *Runtime) newUint8Array(args []Value, newTarget *Object) *Object { - return r._newTypedArray(args, newTarget, r.newUint8ArrayObject) +func (r *Runtime) newUint8Array(args []Value, newTarget, proto *Object) *Object { + return r._newTypedArray(args, newTarget, r.newUint8ArrayObject, proto) } -func (r *Runtime) newUint8ClampedArray(args []Value, newTarget *Object) *Object { - return r._newTypedArray(args, newTarget, r.newUint8ClampedArrayObject) +func (r *Runtime) newUint8ClampedArray(args []Value, newTarget, proto *Object) *Object { + return r._newTypedArray(args, newTarget, r.newUint8ClampedArrayObject, proto) } -func (r *Runtime) newInt8Array(args []Value, newTarget *Object) *Object { - return r._newTypedArray(args, newTarget, r.newInt8ArrayObject) +func (r *Runtime) newInt8Array(args []Value, newTarget, proto *Object) *Object { + return r._newTypedArray(args, newTarget, r.newInt8ArrayObject, proto) } -func (r *Runtime) newUint16Array(args []Value, newTarget *Object) *Object { - return r._newTypedArray(args, newTarget, r.newUint16ArrayObject) +func (r *Runtime) newUint16Array(args []Value, newTarget, proto *Object) *Object { + return r._newTypedArray(args, newTarget, r.newUint16ArrayObject, proto) } -func (r *Runtime) newInt16Array(args []Value, newTarget *Object) *Object { - return r._newTypedArray(args, newTarget, r.newInt16ArrayObject) +func (r *Runtime) newInt16Array(args []Value, newTarget, proto *Object) *Object { + return r._newTypedArray(args, newTarget, r.newInt16ArrayObject, proto) } -func (r *Runtime) newUint32Array(args []Value, newTarget *Object) *Object { - return r._newTypedArray(args, newTarget, r.newUint32ArrayObject) +func (r *Runtime) newUint32Array(args []Value, newTarget, proto *Object) *Object { + return r._newTypedArray(args, newTarget, r.newUint32ArrayObject, proto) } -func (r *Runtime) newInt32Array(args []Value, newTarget *Object) *Object { - return r._newTypedArray(args, newTarget, r.newInt32ArrayObject) +func (r *Runtime) newInt32Array(args []Value, newTarget, proto *Object) *Object { + return r._newTypedArray(args, newTarget, r.newInt32ArrayObject, proto) } -func (r *Runtime) newFloat32Array(args []Value, newTarget *Object) *Object { - return r._newTypedArray(args, newTarget, r.newFloat32ArrayObject) +func (r *Runtime) newFloat32Array(args []Value, newTarget, proto *Object) *Object { + return r._newTypedArray(args, newTarget, r.newFloat32ArrayObject, proto) } -func (r *Runtime) newFloat64Array(args []Value, newTarget *Object) *Object { - return r._newTypedArray(args, newTarget, r.newFloat64ArrayObject) +func (r *Runtime) newFloat64Array(args []Value, newTarget, proto *Object) *Object { + return r._newTypedArray(args, newTarget, r.newFloat64ArrayObject, proto) } func (r *Runtime) createArrayBufferProto(val *Object) objectImpl { @@ -1260,11 +1353,8 @@ func (r *Runtime) createArrayBufferProto(val *Object) objectImpl { func (r *Runtime) createArrayBuffer(val *Object) objectImpl { o := r.newNativeConstructOnly(val, r.builtin_newArrayBuffer, r.global.ArrayBufferPrototype, "ArrayBuffer", 1) o._putProp("isView", r.newNativeFunc(r.arrayBuffer_isView, nil, "isView", nil, 1), true, false, true) - o._putSym(SymSpecies, &valueProperty{ - getterFunc: r.newNativeFunc(r.returnThis, nil, "get [Symbol.species]", nil, 0), - accessor: true, - configurable: true, - }) + r.putSpeciesReturnThis(o) + return o } @@ -1308,7 +1398,7 @@ func (r *Runtime) createDataViewProto(val *Object) objectImpl { } func (r *Runtime) createDataView(val *Object) objectImpl { - o := r.newNativeConstructOnly(val, r.newDataView, r.global.DataViewPrototype, "DataView", 3) + o := r.newNativeConstructOnly(val, r.newDataView, r.global.DataViewPrototype, "DataView", 1) return o } @@ -1375,30 +1465,24 @@ func (r *Runtime) createTypedArray(val *Object) objectImpl { o := r.newNativeConstructOnly(val, r.newTypedArray, r.global.TypedArrayPrototype, "TypedArray", 0) o._putProp("from", r.newNativeFunc(r.typedArray_from, nil, "from", nil, 1), true, false, true) o._putProp("of", r.newNativeFunc(r.typedArray_of, nil, "of", nil, 0), true, false, true) - o._putSym(SymSpecies, &valueProperty{ - getterFunc: r.newNativeFunc(r.returnThis, nil, "get [Symbol.species]", nil, 0), - accessor: true, - configurable: true, - }) + r.putSpeciesReturnThis(o) return o } -func (r *Runtime) addPrototype(ctor *Object, proto *Object) *baseObject { - p := r.newBaseObject(proto, classObject) - p._putProp("constructor", ctor, true, false, true) - ctor.self._putProp("prototype", p.val, false, false, false) - return p -} - -func (r *Runtime) typedArrayCreator(ctor func(args []Value, newTarget *Object) *Object, name unistring.String, bytesPerElement int) func(val *Object) objectImpl { +func (r *Runtime) typedArrayCreator(ctor func(args []Value, newTarget, proto *Object) *Object, name unistring.String, bytesPerElement int) func(val *Object) objectImpl { return func(val *Object) objectImpl { - o := r.newNativeConstructOnly(val, ctor, nil, name, 3) + p := r.newBaseObject(r.global.TypedArrayPrototype, classObject) + o := r.newNativeConstructOnly(val, func(args []Value, newTarget *Object) *Object { + return ctor(args, newTarget, p.val) + }, p.val, name, 3) + + p._putProp("constructor", o.val, true, false, true) + o.prototype = r.global.TypedArray - proto := r.addPrototype(o.val, r.global.TypedArrayPrototype) bpe := intToValue(int64(bytesPerElement)) o._putProp("BYTES_PER_ELEMENT", bpe, false, false, false) - proto._putProp("BYTES_PER_ELEMENT", bpe, false, false, false) + p._putProp("BYTES_PER_ELEMENT", bpe, false, false, false) return o } } diff --git a/vendor/github.com/dop251/goja/builtin_weakmap.go b/vendor/github.com/dop251/goja/builtin_weakmap.go index a32c5c88b..754b620ac 100644 --- a/vendor/github.com/dop251/goja/builtin_weakmap.go +++ b/vendor/github.com/dop251/goja/builtin_weakmap.go @@ -37,7 +37,7 @@ func (r *Runtime) weakMapProto_delete(call FunctionCall) Value { thisObj := r.toObject(call.This) wmo, ok := thisObj.self.(*weakMapObject) if !ok { - panic(r.NewTypeError("Method WeakMap.prototype.delete called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method WeakMap.prototype.delete called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } key, ok := call.Argument(0).(*Object) if ok && wmo.m.remove(key) { @@ -50,7 +50,7 @@ func (r *Runtime) weakMapProto_get(call FunctionCall) Value { thisObj := r.toObject(call.This) wmo, ok := thisObj.self.(*weakMapObject) if !ok { - panic(r.NewTypeError("Method WeakMap.prototype.get called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method WeakMap.prototype.get called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } var res Value if key, ok := call.Argument(0).(*Object); ok { @@ -66,7 +66,7 @@ func (r *Runtime) weakMapProto_has(call FunctionCall) Value { thisObj := r.toObject(call.This) wmo, ok := thisObj.self.(*weakMapObject) if !ok { - panic(r.NewTypeError("Method WeakMap.prototype.has called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method WeakMap.prototype.has called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } key, ok := call.Argument(0).(*Object) if ok && wmo.m.has(key) { @@ -79,7 +79,7 @@ func (r *Runtime) weakMapProto_set(call FunctionCall) Value { thisObj := r.toObject(call.This) wmo, ok := thisObj.self.(*weakMapObject) if !ok { - panic(r.NewTypeError("Method WeakMap.prototype.set called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method WeakMap.prototype.set called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } key := r.toObject(call.Argument(0)) wmo.m.set(key, call.Argument(1)) @@ -122,7 +122,7 @@ func (r *Runtime) builtin_newWeakMap(args []Value, newTarget *Object) *Object { i0 := valueInt(0) i1 := valueInt(1) if adder == r.global.weakMapAdder { - r.iterate(iter, func(item Value) { + iter.iterate(func(item Value) { itemObj := r.toObject(item) k := itemObj.self.getIdx(i0, nil) v := nilSafe(itemObj.self.getIdx(i1, nil)) @@ -133,7 +133,7 @@ func (r *Runtime) builtin_newWeakMap(args []Value, newTarget *Object) *Object { if adderFn == nil { panic(r.NewTypeError("WeakMap.set in missing")) } - r.iterate(iter, func(item Value) { + iter.iterate(func(item Value) { itemObj := r.toObject(item) k := itemObj.self.getIdx(i0, nil) v := itemObj.self.getIdx(i1, nil) diff --git a/vendor/github.com/dop251/goja/builtin_weakset.go b/vendor/github.com/dop251/goja/builtin_weakset.go index 25c99e771..245dad1ac 100644 --- a/vendor/github.com/dop251/goja/builtin_weakset.go +++ b/vendor/github.com/dop251/goja/builtin_weakset.go @@ -14,7 +14,7 @@ func (r *Runtime) weakSetProto_add(call FunctionCall) Value { thisObj := r.toObject(call.This) wso, ok := thisObj.self.(*weakSetObject) if !ok { - panic(r.NewTypeError("Method WeakSet.prototype.add called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method WeakSet.prototype.add called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } wso.s.set(r.toObject(call.Argument(0)), nil) return call.This @@ -24,7 +24,7 @@ func (r *Runtime) weakSetProto_delete(call FunctionCall) Value { thisObj := r.toObject(call.This) wso, ok := thisObj.self.(*weakSetObject) if !ok { - panic(r.NewTypeError("Method WeakSet.prototype.delete called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method WeakSet.prototype.delete called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } obj, ok := call.Argument(0).(*Object) if ok && wso.s.remove(obj) { @@ -37,7 +37,7 @@ func (r *Runtime) weakSetProto_has(call FunctionCall) Value { thisObj := r.toObject(call.This) wso, ok := thisObj.self.(*weakSetObject) if !ok { - panic(r.NewTypeError("Method WeakSet.prototype.has called on incompatible receiver %s", thisObj.String())) + panic(r.NewTypeError("Method WeakSet.prototype.has called on incompatible receiver %s", r.objectproto_toString(FunctionCall{This: thisObj}))) } obj, ok := call.Argument(0).(*Object) if ok && wso.s.has(obj) { @@ -52,7 +52,7 @@ func (r *Runtime) populateWeakSetGeneric(s *Object, adderValue Value, iterable V panic(r.NewTypeError("WeakSet.add is not set")) } iter := r.getIterator(iterable, nil) - r.iterate(iter, func(val Value) { + iter.iterate(func(val Value) { adder(FunctionCall{This: s, Arguments: []Value{val}}) }) } diff --git a/vendor/github.com/dop251/goja/compiler.go b/vendor/github.com/dop251/goja/compiler.go index aa1b7f7ba..136f67cb6 100644 --- a/vendor/github.com/dop251/goja/compiler.go +++ b/vendor/github.com/dop251/goja/compiler.go @@ -248,6 +248,8 @@ type scope struct { // is a function or a top-level lexical environment function bool + // is an arrow function's top-level lexical environment (functions only) + arrow bool // is a variable environment, i.e. the target for dynamically created var bindings variable bool // a function scope that has at least one direct eval() and non-strict, so the variables can be added dynamically @@ -365,6 +367,8 @@ func (p *Program) _dumpCode(indent string, logger func(format string, args ...in logger("%s %d: %T(%v)", indent, pc, ins, ins) if f, ok := ins.(*newFunc); ok { f.prg._dumpCode(indent+">", logger) + } else if f, ok := ins.(*newArrowFunc); ok { + f.prg._dumpCode(indent+">", logger) } } } @@ -380,6 +384,13 @@ func (p *Program) sourceOffset(pc int) int { return 0 } +func (p *Program) addSrcMap(srcPos int) { + if len(p.srcMap) > 0 && p.srcMap[len(p.srcMap)-1].srcPos == srcPos { + return + } + p.srcMap = append(p.srcMap, srcMapItem{pc: len(p.code), srcPos: srcPos}) +} + func (s *scope) lookupName(name unistring.String) (binding *binding, noDynamics bool) { noDynamics = true toStash := false @@ -395,7 +406,7 @@ func (s *scope) lookupName(name unistring.String) (binding *binding, noDynamics return } } - if name == "arguments" && curScope.function { + if name == "arguments" && curScope.function && !curScope.arrow { curScope.argsNeeded = true binding, _ = curScope.bindName(name) return @@ -819,9 +830,13 @@ func (c *compiler) compileFunctionsGlobal(list []*ast.FunctionDeclaration) { m[name] = i } } + idx := 0 for i, decl := range list { - if m[decl.Function.Name.Name] == i { + name := decl.Function.Name.Name + if m[name] == i { c.compileFunctionLiteral(decl.Function, false).emitGetter(true) + c.scope.bindings[idx] = c.scope.boundNames[name] + idx++ } else { leave := c.enterDummyMode() c.compileFunctionLiteral(decl.Function, false).emitGetter(false) diff --git a/vendor/github.com/dop251/goja/compiler_expr.go b/vendor/github.com/dop251/goja/compiler_expr.go index 248622c89..40821746c 100644 --- a/vendor/github.com/dop251/goja/compiler_expr.go +++ b/vendor/github.com/dop251/goja/compiler_expr.go @@ -2,18 +2,12 @@ package goja import ( "fmt" - "regexp" - "github.com/dop251/goja/ast" "github.com/dop251/goja/file" "github.com/dop251/goja/token" "github.com/dop251/goja/unistring" ) -var ( - octalRegexp = regexp.MustCompile(`^0[0-7]`) -) - type compiledExpr interface { emitGetter(putOnStack bool) emitSetter(valueExpr compiledExpr, putOnStack bool) @@ -61,6 +55,13 @@ type compiledLiteral struct { val Value } +type compiledTemplateLiteral struct { + baseCompiledExpr + tag compiledExpr + elements []*ast.TemplateElement + expressions []compiledExpr +} + type compiledAssignExpr struct { baseCompiledExpr left, right compiledExpr @@ -115,10 +116,16 @@ type compiledIdentifierExpr struct { type compiledFunctionLiteral struct { baseCompiledExpr - expr *ast.FunctionLiteral - lhsName unistring.String - strict *ast.StringLiteral - isExpr bool + name *ast.Identifier + parameterList *ast.ParameterList + body []ast.Statement + source string + declarationList []*ast.VariableDeclaration + lhsName unistring.String + strict *ast.StringLiteral + isExpr bool + isArrow bool + isMethod bool } type compiledBracketExpr struct { @@ -199,6 +206,8 @@ func (c *compiler) compileExpression(v ast.Expression) compiledExpr { return c.compileNumberLiteral(v) case *ast.StringLiteral: return c.compileStringLiteral(v) + case *ast.TemplateLiteral: + return c.compileTemplateLiteral(v) case *ast.BooleanLiteral: return c.compileBooleanLiteral(v) case *ast.NullLiteral: @@ -225,6 +234,8 @@ func (c *compiler) compileExpression(v ast.Expression) compiledExpr { return c.compileConditionalExpression(v) case *ast.FunctionLiteral: return c.compileFunctionLiteral(v, true) + case *ast.ArrowFunctionLiteral: + return c.compileArrowFunctionLiteral(v) case *ast.DotExpression: r := &compiledDotExpr{ left: c.compileExpression(v.Left), @@ -288,8 +299,8 @@ func (e *baseCompiledExpr) emitUnary(func(), func(), bool, bool) { } func (e *baseCompiledExpr) addSrcMap() { - if e.offset > 0 { - e.c.p.srcMap = append(e.c.p.srcMap, srcMapItem{pc: len(e.c.p.code), srcPos: e.offset}) + if e.offset >= 0 { + e.c.p.addSrcMap(e.offset) } } @@ -359,12 +370,14 @@ func (e *compiledIdentifierExpr) emitGetterAndCallee() { } } -func (c *compiler) emitVarSetter1(name unistring.String, offset int, putOnStack bool, emitRight func(isRef bool)) { +func (e *compiledIdentifierExpr) emitVarSetter1(putOnStack bool, emitRight func(isRef bool)) { + e.addSrcMap() + c := e.c if c.scope.strict { - c.checkIdentifierLName(name, offset) + c.checkIdentifierLName(e.name, e.offset) } - if b, noDynamics := c.scope.lookupName(name); noDynamics { + if b, noDynamics := c.scope.lookupName(e.name); noDynamics { emitRight(false) if b != nil { if putOnStack { @@ -374,9 +387,9 @@ func (c *compiler) emitVarSetter1(name unistring.String, offset int, putOnStack } } else { if c.scope.strict { - c.emit(setGlobalStrict(name)) + c.emit(setGlobalStrict(e.name)) } else { - c.emit(setGlobal(name)) + c.emit(setGlobal(e.name)) } if !putOnStack { c.emit(pop) @@ -387,9 +400,9 @@ func (c *compiler) emitVarSetter1(name unistring.String, offset int, putOnStack b.emitResolveVar(c.scope.strict) } else { if c.scope.strict { - c.emit(resolveVar1Strict(name)) + c.emit(resolveVar1Strict(e.name)) } else { - c.emit(resolveVar1(name)) + c.emit(resolveVar1(e.name)) } } emitRight(true) @@ -401,9 +414,9 @@ func (c *compiler) emitVarSetter1(name unistring.String, offset int, putOnStack } } -func (c *compiler) emitVarSetter(name unistring.String, offset int, valueExpr compiledExpr, putOnStack bool) { - c.emitVarSetter1(name, offset, putOnStack, func(bool) { - c.emitExpr(valueExpr, true) +func (e *compiledIdentifierExpr) emitVarSetter(valueExpr compiledExpr, putOnStack bool) { + e.emitVarSetter1(putOnStack, func(bool) { + e.c.emitExpr(valueExpr, true) }) } @@ -429,12 +442,12 @@ func (e *compiledIdentifierExpr) emitRef() { } func (e *compiledIdentifierExpr) emitSetter(valueExpr compiledExpr, putOnStack bool) { - e.c.emitVarSetter(e.name, e.offset, valueExpr, putOnStack) + e.emitVarSetter(valueExpr, putOnStack) } func (e *compiledIdentifierExpr) emitUnary(prepare, body func(), postfix, putOnStack bool) { if putOnStack { - e.c.emitVarSetter1(e.name, e.offset, true, func(isRef bool) { + e.emitVarSetter1(true, func(isRef bool) { e.c.emit(loadUndef) if isRef { e.c.emit(getValue) @@ -454,7 +467,7 @@ func (e *compiledIdentifierExpr) emitUnary(prepare, body func(), postfix, putOnS }) e.c.emit(pop) } else { - e.c.emitVarSetter1(e.name, e.offset, false, func(isRef bool) { + e.emitVarSetter1(false, func(isRef bool) { if isRef { e.c.emit(getValue) } else { @@ -736,11 +749,10 @@ func (e *deleteGlobalExpr) emitGetter(putOnStack bool) { } func (e *compiledAssignExpr) emitGetter(putOnStack bool) { - e.addSrcMap() switch e.operator { case token.ASSIGN: if fn, ok := e.right.(*compiledFunctionLiteral); ok { - if fn.expr.Name == nil { + if fn.name == nil { if id, ok := e.left.(*compiledIdentifierExpr); ok { fn.lhsName = id.name } @@ -809,7 +821,6 @@ func (e *compiledAssignExpr) emitGetter(putOnStack bool) { func (e *compiledLiteral) emitGetter(putOnStack bool) { if putOnStack { - e.addSrcMap() e.c.emit(loadVal(e.c.p.defineLiteralValue(e.val))) } } @@ -818,17 +829,79 @@ func (e *compiledLiteral) constant() bool { return true } +func (e *compiledTemplateLiteral) emitGetter(putOnStack bool) { + if e.tag == nil { + if len(e.elements) == 0 { + e.c.emit(loadVal(e.c.p.defineLiteralValue(stringEmpty))) + } else { + tail := e.elements[len(e.elements)-1].Parsed + if len(e.elements) == 1 { + e.c.emit(loadVal(e.c.p.defineLiteralValue(stringValueFromRaw(tail)))) + } else { + stringCount := 0 + if head := e.elements[0].Parsed; head != "" { + e.c.emit(loadVal(e.c.p.defineLiteralValue(stringValueFromRaw(head)))) + stringCount++ + } + e.expressions[0].emitGetter(true) + e.c.emit(_toString{}) + stringCount++ + for i := 1; i < len(e.elements)-1; i++ { + if elt := e.elements[i].Parsed; elt != "" { + e.c.emit(loadVal(e.c.p.defineLiteralValue(stringValueFromRaw(elt)))) + stringCount++ + } + e.expressions[i].emitGetter(true) + e.c.emit(_toString{}) + stringCount++ + } + if tail != "" { + e.c.emit(loadVal(e.c.p.defineLiteralValue(stringValueFromRaw(tail)))) + stringCount++ + } + e.c.emit(concatStrings(stringCount)) + } + } + } else { + cooked := make([]Value, len(e.elements)) + raw := make([]Value, len(e.elements)) + for i, elt := range e.elements { + raw[i] = &valueProperty{ + enumerable: true, + value: newStringValue(elt.Literal), + } + var cookedVal Value + if elt.Valid { + cookedVal = stringValueFromRaw(elt.Parsed) + } else { + cookedVal = _undefined + } + cooked[i] = &valueProperty{ + enumerable: true, + value: cookedVal, + } + } + e.c.emitCallee(e.tag) + e.c.emit(&getTaggedTmplObject{ + raw: raw, + cooked: cooked, + }) + for _, expr := range e.expressions { + expr.emitGetter(true) + } + e.c.emit(call(len(e.expressions) + 1)) + } + if !putOnStack { + e.c.emit(pop) + } +} + func (c *compiler) compileParameterBindingIdentifier(name unistring.String, offset int) (*binding, bool) { if c.scope.strict { c.checkIdentifierName(name, offset) c.checkIdentifierLName(name, offset) } - b, unique := c.scope.bindNameShadow(name) - if !unique && c.scope.strict { - c.throwSyntaxError(offset, "Strict mode function may not have duplicate parameter names (%s)", name) - return nil, false - } - return b, unique + return c.scope.bindNameShadow(name) } func (c *compiler) compileParameterPatternIdBinding(name unistring.String, offset int) { @@ -847,11 +920,13 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { src: e.c.p.src, } e.c.newScope() - e.c.scope.function = true + s := e.c.scope + s.function = true + s.arrow = e.isArrow var name unistring.String - if e.expr.Name != nil { - name = e.expr.Name.Name + if e.name != nil { + name = e.name.Name } else { name = e.lhsName } @@ -868,8 +943,8 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { typ: blockScope, } - if !e.c.scope.strict { - e.c.scope.strict = e.strict != nil + if !s.strict { + s.strict = e.strict != nil } hasPatterns := false @@ -877,12 +952,12 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { firstDupIdx := -1 length := 0 - if e.expr.ParameterList.Rest != nil { + if e.parameterList.Rest != nil { hasPatterns = true // strictly speaking not, but we need to activate all the checks } // First, make sure that the first bindings correspond to the formal parameters - for _, item := range e.expr.ParameterList.List { + for _, item := range e.parameterList.List { switch tgt := item.Target.(type) { case *ast.Identifier: offset := int(tgt.Idx) - 1 @@ -892,7 +967,7 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { } b.isArg = true case ast.Pattern: - b := e.c.scope.addBinding(int(item.Idx0()) - 1) + b := s.addBinding(int(item.Idx0()) - 1) b.isArg = true hasPatterns = true default: @@ -902,16 +977,17 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { if item.Initializer != nil { hasInits = true } - if hasPatterns || hasInits { - if firstDupIdx >= 0 { - e.c.throwSyntaxError(firstDupIdx, "Duplicate parameter name not allowed in this context") - return - } - if e.strict != nil { - e.c.throwSyntaxError(int(e.strict.Idx)-1, "Illegal 'use strict' directive in function with non-simple parameter list") - return - } + + if firstDupIdx >= 0 && (hasPatterns || hasInits || s.strict || e.isArrow || e.isMethod) { + e.c.throwSyntaxError(firstDupIdx, "Duplicate parameter name not allowed in this context") + return } + + if (hasPatterns || hasInits) && e.strict != nil { + e.c.throwSyntaxError(int(e.strict.Idx)-1, "Illegal 'use strict' directive in function with non-simple parameter list") + return + } + if !hasInits { length++ } @@ -919,7 +995,7 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { // create pattern bindings if hasPatterns { - for _, item := range e.expr.ParameterList.List { + for _, item := range e.parameterList.List { switch tgt := item.Target.(type) { case *ast.Identifier: // we already created those in the previous loop, skipping @@ -927,17 +1003,16 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { e.c.compileParameterPatternBinding(tgt) } } - if rest := e.expr.ParameterList.Rest; rest != nil { + if rest := e.parameterList.Rest; rest != nil { e.c.compileParameterPatternBinding(rest) } } - paramsCount := len(e.expr.ParameterList.List) + paramsCount := len(e.parameterList.List) - e.c.scope.numArgs = paramsCount - body := e.expr.Body.List + s.numArgs = paramsCount + body := e.body funcs := e.c.extractFunctions(body) - s := e.c.scope var calleeBinding *binding preambleLen := 4 // enter, boxThis, createArgs, set e.c.p.code = make([]instruction, preambleLen, 8) @@ -947,8 +1022,8 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { enterFunc2Mark := -1 if hasPatterns || hasInits { - if e.isExpr && e.expr.Name != nil { - if b, created := s.bindNameLexical(e.expr.Name.Name, false, 0); created { + if e.isExpr && e.name != nil { + if b, created := s.bindNameLexical(e.name.Name, false, 0); created { b.isConst = true calleeBinding = b } @@ -957,7 +1032,7 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { e.c.emit(loadCallee) calleeBinding.emitInit() } - for i, item := range e.expr.ParameterList.List { + for i, item := range e.parameterList.List { if pattern, ok := item.Target.(ast.Pattern); ok { i := i e.c.compilePatternInitExpr(func() { @@ -996,7 +1071,7 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { } } } - if rest := e.expr.ParameterList.Rest; rest != nil { + if rest := e.parameterList.Rest; rest != nil { e.c.emitAssign(rest, e.c.compileEmitterExpr( func() { emitArgsRestMark = len(e.c.p.code) @@ -1019,7 +1094,7 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { varScope.variable = true enterFunc2Mark = len(e.c.p.code) e.c.emit(nil) - e.c.compileDeclList(e.expr.DeclarationList, true) + e.c.compileDeclList(e.declarationList, false) e.c.createFunctionBindings(funcs) e.c.compileLexicalDeclarationsFuncBody(body, calleeBinding) for _, b := range varScope.bindings { @@ -1036,11 +1111,11 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { for _, b := range s.bindings[:paramsCount] { b.isVar = true } - e.c.compileDeclList(e.expr.DeclarationList, true) + e.c.compileDeclList(e.declarationList, true) e.c.createFunctionBindings(funcs) e.c.compileLexicalDeclarations(body, true) - if e.isExpr && e.expr.Name != nil { - if b, created := s.bindNameLexical(e.expr.Name.Name, false, 0); created { + if e.isExpr && e.name != nil { + if b, created := s.bindNameLexical(e.name.Name, false, 0); created { b.isConst = true calleeBinding = b } @@ -1082,7 +1157,7 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { if s.strict { b.isConst = true } else { - b.isVar = true + b.isVar = e.c.scope.function } pos := preambleLen - 2 delta += 2 @@ -1146,7 +1221,7 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { e.c.p.code[enterFunc2Mark] = ef2 } } - if emitArgsRestMark != -1 { + if emitArgsRestMark != -1 && s.argsInStash { e.c.p.code[emitArgsRestMark] = createArgsRestStash } } else { @@ -1179,7 +1254,15 @@ func (e *compiledFunctionLiteral) emitGetter(putOnStack bool) { } e.c.popScope() e.c.p = savedPrg - e.c.emit(&newFunc{prg: p, length: uint32(length), name: name, srcStart: uint32(e.expr.Idx0() - 1), srcEnd: uint32(e.expr.Idx1() - 1), strict: strict}) + if e.isArrow { + e.c.emit(&newArrowFunc{newFunc: newFunc{prg: p, length: length, name: name, source: e.source, strict: strict}}) + } else { + if e.isMethod { + e.c.emit(&newMethod{prg: p, length: length, name: name, source: e.source, strict: strict}) + } else { + e.c.emit(&newFunc{prg: p, length: length, name: name, source: e.source, strict: strict}) + } + } if !putOnStack { e.c.emit(pop) } @@ -1191,9 +1274,42 @@ func (c *compiler) compileFunctionLiteral(v *ast.FunctionLiteral, isExpr bool) * c.checkIdentifierLName(v.Name.Name, int(v.Name.Idx)-1) } r := &compiledFunctionLiteral{ - expr: v, - isExpr: isExpr, - strict: strictBody, + name: v.Name, + parameterList: v.ParameterList, + body: v.Body.List, + source: v.Source, + declarationList: v.DeclarationList, + isExpr: isExpr, + strict: strictBody, + } + r.init(c, v.Idx0()) + return r +} + +func (c *compiler) compileArrowFunctionLiteral(v *ast.ArrowFunctionLiteral) *compiledFunctionLiteral { + var strictBody *ast.StringLiteral + var body []ast.Statement + switch b := v.Body.(type) { + case *ast.BlockStatement: + strictBody = c.isStrictStatement(b) + body = b.List + case *ast.ExpressionBody: + body = []ast.Statement{ + &ast.ReturnStatement{ + Argument: b.Expression, + }, + } + default: + c.throwSyntaxError(int(b.Idx0())-1, "Unsupported ConciseBody type: %T", b) + } + r := &compiledFunctionLiteral{ + parameterList: v.ParameterList, + body: body, + source: v.Source, + declarationList: v.DeclarationList, + isExpr: true, + isArrow: true, + strict: strictBody, } r.init(c, v.Idx0()) return r @@ -1203,7 +1319,7 @@ func (e *compiledThisExpr) emitGetter(putOnStack bool) { if putOnStack { e.addSrcMap() scope := e.c.scope - for ; scope != nil && !scope.function && !scope.eval; scope = scope.outer { + for ; scope != nil && (scope.arrow || !scope.function && !scope.eval); scope = scope.outer { } if scope != nil { @@ -1383,6 +1499,7 @@ func (e *compiledUnaryExpr) emitGetter(putOnStack bool) { var prepare, body func() toNumber := func() { + e.addSrcMap() e.c.emit(toNumber) } @@ -1659,6 +1776,7 @@ func (c *compiler) compileLogicalAnd(left, right ast.Expression, idx file.Idx) c func (e *compiledObjectLiteral) emitGetter(putOnStack bool) { e.addSrcMap() e.c.emit(newObject) + hasProto := false for _, prop := range e.expr.Value { switch prop := prop.(type) { case *ast.PropertyKeyed: @@ -1671,14 +1789,16 @@ func (e *compiledObjectLiteral) emitGetter(putOnStack bool) { default: keyExpr.emitGetter(true) computed = true - //e.c.throwSyntaxError(e.offset, "non-literal properties in object literal are not supported yet") } valueExpr := e.c.compileExpression(prop.Value) var anonFn *compiledFunctionLiteral if fn, ok := valueExpr.(*compiledFunctionLiteral); ok { - if fn.expr.Name == nil { + if fn.name == nil { anonFn = fn - fn.lhsName = key + } + switch prop.Kind { + case ast.PropertyKindMethod, ast.PropertyKindGet, ast.PropertyKindSet: + fn.isMethod = true } } if computed { @@ -1699,13 +1819,21 @@ func (e *compiledObjectLiteral) emitGetter(putOnStack bool) { panic(fmt.Errorf("unknown property kind: %s", prop.Kind)) } } else { - if anonFn != nil { + isProto := key == __proto__ && !prop.Computed + if isProto { + if hasProto { + e.c.throwSyntaxError(int(prop.Idx0())-1, "Duplicate __proto__ fields are not allowed in object literals") + } else { + hasProto = true + } + } + if anonFn != nil && !isProto { anonFn.lhsName = key } valueExpr.emitGetter(true) switch prop.Kind { case ast.PropertyKindValue: - if key == __proto__ { + if isProto { e.c.emit(setProto) } else { e.c.emit(setProp1(key)) @@ -1806,28 +1934,32 @@ func (c *compiler) compileRegexpLiteral(v *ast.RegExpLiteral) compiledExpr { return r } -func (e *compiledCallExpr) emitGetter(putOnStack bool) { - var calleeName unistring.String - if e.isVariadic { - e.c.emit(startVariadic) - } - switch callee := e.callee.(type) { +func (c *compiler) emitCallee(callee compiledExpr) (calleeName unistring.String) { + switch callee := callee.(type) { case *compiledDotExpr: callee.left.emitGetter(true) - e.c.emit(dup) - e.c.emit(getPropCallee(callee.name)) + c.emit(dup) + c.emit(getPropCallee(callee.name)) case *compiledBracketExpr: callee.left.emitGetter(true) - e.c.emit(dup) + c.emit(dup) callee.member.emitGetter(true) - e.c.emit(getElemCallee) + c.emit(getElemCallee) case *compiledIdentifierExpr: calleeName = callee.name callee.emitGetterAndCallee() default: - e.c.emit(loadUndef) + c.emit(loadUndef) callee.emitGetter(true) } + return +} + +func (e *compiledCallExpr) emitGetter(putOnStack bool) { + if e.isVariadic { + e.c.emit(startVariadic) + } + calleeName := e.c.emitCallee(e.callee) for _, expr := range e.args { expr.emitGetter(true) @@ -1837,7 +1969,7 @@ func (e *compiledCallExpr) emitGetter(putOnStack bool) { if calleeName == "eval" { foundFunc, foundVar := false, false for sc := e.c.scope; sc != nil; sc = sc.outer { - if !foundFunc && sc.function { + if !foundFunc && sc.function && !sc.arrow { foundFunc = true sc.thisNeeded, sc.argsNeeded = true, true } @@ -1930,7 +2062,7 @@ func (c *compiler) compileIdentifierExpression(v *ast.Identifier) compiledExpr { } func (c *compiler) compileNumberLiteral(v *ast.NumberLiteral) compiledExpr { - if c.scope.strict && octalRegexp.MatchString(v.Literal) { + if c.scope.strict && len(v.Literal) > 1 && v.Literal[0] == '0' && v.Literal[1] <= '7' && v.Literal[1] >= '0' { c.throwSyntaxError(int(v.Idx)-1, "Octal literals are not allowed in strict mode") panic("Unreachable") } @@ -1958,6 +2090,21 @@ func (c *compiler) compileStringLiteral(v *ast.StringLiteral) compiledExpr { return r } +func (c *compiler) compileTemplateLiteral(v *ast.TemplateLiteral) compiledExpr { + r := &compiledTemplateLiteral{} + if v.Tag != nil { + r.tag = c.compileExpression(v.Tag) + } + ce := make([]compiledExpr, len(v.Expressions)) + for i, expr := range v.Expressions { + ce[i] = c.compileExpression(expr) + } + r.expressions = ce + r.elements = v.Elements + r.init(c, v.Idx0()) + return r +} + func (c *compiler) compileBooleanLiteral(v *ast.BooleanLiteral) compiledExpr { var val Value if v.Value { @@ -2100,22 +2247,18 @@ func (c *compiler) emitObjectPattern(pattern *ast.ObjectPattern, emitAssign func } func (c *compiler) emitArrayPattern(pattern *ast.ArrayPattern, emitAssign func(target, init compiledExpr), putOnStack bool) { - var marks []int c.emit(iterate) for _, elt := range pattern.Elements { switch elt := elt.(type) { case nil: - marks = append(marks, len(c.p.code)) - c.emit(nil) + c.emit(iterGetNextOrUndef{}, pop) case *ast.AssignExpression: c.emitAssign(elt.Left, c.compilePatternInitExpr(func() { - marks = append(marks, len(c.p.code)) - c.emit(nil, enumGet) + c.emit(iterGetNextOrUndef{}) }, elt.Right, elt.Idx0()), emitAssign) default: c.emitAssign(elt, c.compileEmitterExpr(func() { - marks = append(marks, len(c.p.code)) - c.emit(nil, enumGet) + c.emit(iterGetNextOrUndef{}) }, elt.Idx0()), emitAssign) } } @@ -2126,40 +2269,6 @@ func (c *compiler) emitArrayPattern(pattern *ast.ArrayPattern, emitAssign func(t } else { c.emit(enumPopClose) } - mark1 := len(c.p.code) - c.emit(nil) - - for i, elt := range pattern.Elements { - switch elt := elt.(type) { - case nil: - c.p.code[marks[i]] = iterNext(len(c.p.code) - marks[i]) - case *ast.Identifier: - emitAssign(c.compileIdentifierExpression(elt), c.compileEmitterExpr(func() { - c.p.code[marks[i]] = iterNext(len(c.p.code) - marks[i]) - c.emit(loadUndef) - }, elt.Idx0())) - case *ast.AssignExpression: - c.emitAssign(elt.Left, c.compileNamedEmitterExpr(func(name unistring.String) { - c.p.code[marks[i]] = iterNext(len(c.p.code) - marks[i]) - c.emitNamed(c.compileExpression(elt.Right), name) - }, elt.Idx0()), emitAssign) - default: - c.emitAssign(elt, c.compileEmitterExpr( - func() { - c.p.code[marks[i]] = iterNext(len(c.p.code) - marks[i]) - c.emit(loadUndef) - }, elt.Idx0()), emitAssign) - } - } - c.emit(enumPop) - if pattern.Rest != nil { - c.emitAssign(pattern.Rest, c.compileExpression( - &ast.ArrayLiteral{ - LeftBracket: pattern.Rest.Idx0(), - RightBracket: pattern.Rest.Idx0(), - }), emitAssign) - } - c.p.code[mark1] = jump(len(c.p.code) - mark1) if !putOnStack { c.emit(pop) @@ -2247,14 +2356,6 @@ func (c *compiler) compileEmitterExpr(emitter func(), idx file.Idx) *compiledEmi return r } -func (c *compiler) compileNamedEmitterExpr(namedEmitter func(unistring.String), idx file.Idx) *compiledEmitterExpr { - r := &compiledEmitterExpr{ - namedEmitter: namedEmitter, - } - r.init(c, idx) - return r -} - func (e *compiledSpreadCallArgument) emitGetter(putOnStack bool) { e.expr.emitGetter(putOnStack) if putOnStack { diff --git a/vendor/github.com/dop251/goja/compiler_stmt.go b/vendor/github.com/dop251/goja/compiler_stmt.go index dfc4bc9ad..e658997d7 100644 --- a/vendor/github.com/dop251/goja/compiler_stmt.go +++ b/vendor/github.com/dop251/goja/compiler_stmt.go @@ -189,6 +189,9 @@ func (c *compiler) compileTryStatement(v *ast.TryStatement, needResult bool) { lbl1 := len(c.p.code) c.emit(nil) finallyOffset = len(c.p.code) - lbl + if bodyNeedResult && finallyBreaking != nil && lp == -1 { + c.emit(clearResult) + } c.compileBlockStatement(v.Finally, false) c.emit(halt, retFinally) @@ -199,9 +202,13 @@ func (c *compiler) compileTryStatement(v *ast.TryStatement, needResult bool) { c.leaveBlock() } +func (c *compiler) addSrcMap(node ast.Node) { + c.p.addSrcMap(int(node.Idx0()) - 1) +} + func (c *compiler) compileThrowStatement(v *ast.ThrowStatement) { - //c.p.srcMap = append(c.p.srcMap, srcMapItem{pc: len(c.p.code), srcPos: int(v.Throw) - 1}) c.compileExpression(v.Argument).emitGetter(true) + c.addSrcMap(v) c.emit(throw) } @@ -749,7 +756,8 @@ func (c *compiler) emitVarAssign(name unistring.String, offset int, init compile if init != nil { c.emitVarRef(name, offset) c.emitNamed(init, name) - c.emit(putValueP) + c.p.addSrcMap(offset) + c.emit(initValueP) } } @@ -772,6 +780,7 @@ func (c *compiler) emitLexicalAssign(name unistring.String, offset int, init com } if init != nil { c.emitNamed(init, name) + c.p.addSrcMap(offset) } else { if isConst { c.throwSyntaxError(offset, "Missing initializer in const declaration") @@ -802,7 +811,7 @@ func (c *compiler) emitPatternAssign(target, init compiledExpr) { } else { init.emitGetter(true) } - c.emit(putValueP) + c.emit(initValueP) } func (c *compiler) compileLexicalBinding(expr *ast.Binding, isConst bool) { diff --git a/vendor/github.com/dop251/goja/date.go b/vendor/github.com/dop251/goja/date.go index 66ac80b51..79d50b2de 100644 --- a/vendor/github.com/dop251/goja/date.go +++ b/vendor/github.com/dop251/goja/date.go @@ -2,6 +2,7 @@ package goja import ( "math" + "reflect" "time" ) @@ -24,51 +25,80 @@ type dateObject struct { msec int64 } +type dateLayoutDesc struct { + layout string + dateOnly bool +} + var ( - dateLayoutList = []string{ - "2006-01-02T15:04:05Z0700", - "2006-01-02T15:04:05", - "2006-01-02", - "2006-01-02 15:04:05", - time.RFC1123, - time.RFC1123Z, - dateTimeLayout, - time.UnixDate, - time.ANSIC, - time.RubyDate, - "Mon, 02 Jan 2006 15:04:05 GMT-0700 (MST)", - "Mon, 02 Jan 2006 15:04:05 -0700 (MST)", + dateLayoutsNumeric = []dateLayoutDesc{ + {layout: "2006-01-02T15:04:05Z0700"}, + {layout: "2006-01-02T15:04:05"}, + {layout: "2006-01-02", dateOnly: true}, + {layout: "2006-01-02 15:04:05"}, - "2006", - "2006-01", + {layout: "2006", dateOnly: true}, + {layout: "2006-01", dateOnly: true}, - "2006T15:04", - "2006-01T15:04", - "2006-01-02T15:04", + {layout: "2006T15:04"}, + {layout: "2006-01T15:04"}, + {layout: "2006-01-02T15:04"}, - "2006T15:04:05", - "2006-01T15:04:05", + {layout: "2006T15:04:05"}, + {layout: "2006-01T15:04:05"}, - "2006T15:04Z0700", - "2006-01T15:04Z0700", - "2006-01-02T15:04Z0700", + {layout: "2006T15:04Z0700"}, + {layout: "2006-01T15:04Z0700"}, + {layout: "2006-01-02T15:04Z0700"}, - "2006T15:04:05Z0700", - "2006-01T15:04:05Z0700", + {layout: "2006T15:04:05Z0700"}, + {layout: "2006-01T15:04:05Z0700"}, + } + + dateLayoutsAlpha = []dateLayoutDesc{ + {layout: time.RFC1123}, + {layout: time.RFC1123Z}, + {layout: dateTimeLayout}, + {layout: time.UnixDate}, + {layout: time.ANSIC}, + {layout: time.RubyDate}, + {layout: "Mon, _2 Jan 2006 15:04:05 GMT-0700 (MST)"}, + {layout: "Mon, _2 Jan 2006 15:04:05 -0700 (MST)"}, + {layout: "Jan _2, 2006", dateOnly: true}, } ) func dateParse(date string) (time.Time, bool) { var t time.Time var err error - for _, layout := range dateLayoutList { - t, err = parseDate(layout, date, time.UTC) + var layouts []dateLayoutDesc + if len(date) > 0 { + first := date[0] + if first <= '9' && (first >= '0' || first == '-' || first == '+') { + layouts = dateLayoutsNumeric + } else { + layouts = dateLayoutsAlpha + } + } else { + return time.Time{}, false + } + for _, desc := range layouts { + var defLoc *time.Location + if desc.dateOnly { + defLoc = time.UTC + } else { + defLoc = time.Local + } + t, err = parseDate(desc.layout, date, defLoc) if err == nil { break } } + if err != nil { + return time.Time{}, false + } unix := timeToMsec(t) - return t, err == nil && unix >= -maxTime && unix <= maxTime + return t, unix >= -maxTime && unix <= maxTime } func (r *Runtime) newDateObject(t time.Time, isSet bool, proto *Object) *Object { @@ -106,6 +136,10 @@ func (d *dateObject) toPrimitive() Value { return d.toPrimitiveString() } +func (d *dateObject) exportType() reflect.Type { + return typeTime +} + func (d *dateObject) export(*objectExportCtx) interface{} { if d.isSet() { return d.time() diff --git a/vendor/github.com/dop251/goja/date_parser.go b/vendor/github.com/dop251/goja/date_parser.go index 0841cf40e..f83605329 100644 --- a/vendor/github.com/dop251/goja/date_parser.go +++ b/vendor/github.com/dop251/goja/date_parser.go @@ -5,6 +5,8 @@ package goja // - 6-digit extended years are supported in place of long year (2006) in the form of +123456 // - Timezone formats tolerate colons, e.g. -0700 will parse -07:00 // - Short week day will also parse long week day +// - Short month ("Jan") will also parse long month ("January") +// - Long day ("02") will also parse short day ("2"). // - Timezone in brackets, "(MST)", will match any string in brackets (e.g. "(GMT Standard Time)") // - If offset is not set and timezone name is unknown, an error is returned // - If offset and timezone name are both set the offset takes precedence and the resulting Location will be FixedZone("", offset) @@ -133,7 +135,10 @@ func parseDate(layout, value string, defaultLocation *time.Location) (time.Time, } case stdMonth: - month, value, err = lookup(shortMonthNames, value) + month, value, err = lookup(longMonthNames, value) + if err != nil { + month, value, err = lookup(shortMonthNames, value) + } month++ case stdLongMonth: month, value, err = lookup(longMonthNames, value) @@ -155,7 +160,7 @@ func parseDate(layout, value string, defaultLocation *time.Location) (time.Time, if std == stdUnderDay && len(value) > 0 && value[0] == ' ' { value = value[1:] } - day, value, err = getnum(value, std == stdZeroDay) + day, value, err = getnum(value, false) if day < 0 { // Note that we allow any one- or two-digit day here. rangeErrString = "day" diff --git a/vendor/github.com/dop251/goja/destruct.go b/vendor/github.com/dop251/goja/destruct.go index 54b99b750..a34e3a760 100644 --- a/vendor/github.com/dop251/goja/destruct.go +++ b/vendor/github.com/dop251/goja/destruct.go @@ -206,16 +206,30 @@ func (i *destructKeyedSourceIter) next() (propIterItem, iterNextFunc) { return item, nil } i.wrapped = next - if _, exists := i.d.usedKeys[stringValueFromRaw(item.name)]; !exists { + if _, exists := i.d.usedKeys[item.name]; !exists { return item, i.next } } } -func (d *destructKeyedSource) enumerateOwnKeys() iterNextFunc { +func (d *destructKeyedSource) iterateStringKeys() iterNextFunc { return (&destructKeyedSourceIter{ d: d, - wrapped: d.w().enumerateOwnKeys(), + wrapped: d.w().iterateStringKeys(), + }).next +} + +func (d *destructKeyedSource) iterateSymbols() iterNextFunc { + return (&destructKeyedSourceIter{ + d: d, + wrapped: d.w().iterateSymbols(), + }).next +} + +func (d *destructKeyedSource) iterateKeys() iterNextFunc { + return (&destructKeyedSourceIter{ + d: d, + wrapped: d.w().iterateKeys(), }).next } @@ -231,17 +245,18 @@ func (d *destructKeyedSource) equal(impl objectImpl) bool { return d.w().equal(impl) } -func (d *destructKeyedSource) ownKeys(all bool, accum []Value) []Value { +func (d *destructKeyedSource) stringKeys(all bool, accum []Value) []Value { var next iterNextFunc if all { - next = d.enumerateOwnKeys() + next = d.iterateStringKeys() } else { next = (&enumerableIter{ - wrapped: d.enumerateOwnKeys(), + o: d.wrapped.ToObject(d.r), + wrapped: d.iterateStringKeys(), }).next } for item, next := next(); next != nil; item, next = next() { - accum = append(accum, stringValueFromRaw(item.name)) + accum = append(accum, item.name) } return accum } @@ -260,12 +275,12 @@ func (d *destructKeyedSource) filterUsedKeys(keys []Value) []Value { return keys[:k] } -func (d *destructKeyedSource) ownSymbols(all bool, accum []Value) []Value { - return d.filterUsedKeys(d.w().ownSymbols(all, accum)) +func (d *destructKeyedSource) symbols(all bool, accum []Value) []Value { + return d.filterUsedKeys(d.w().symbols(all, accum)) } -func (d *destructKeyedSource) ownPropertyKeys(all bool, accum []Value) []Value { - return d.filterUsedKeys(d.w().ownPropertyKeys(all, accum)) +func (d *destructKeyedSource) keys(all bool, accum []Value) []Value { + return d.filterUsedKeys(d.w().keys(all, accum)) } func (d *destructKeyedSource) _putProp(name unistring.String, value Value, writable, enumerable, configurable bool) Value { diff --git a/vendor/github.com/dop251/goja/file/file.go b/vendor/github.com/dop251/goja/file/file.go index 78ae1ad90..84cedb9d9 100644 --- a/vendor/github.com/dop251/goja/file/file.go +++ b/vendor/github.com/dop251/goja/file/file.go @@ -4,6 +4,7 @@ package file import ( "fmt" + "net/url" "path" "sort" "sync" @@ -159,11 +160,8 @@ func (fl *File) Position(offset int) Position { if fl.sourceMap != nil { if source, _, row, col, ok := fl.sourceMap.Source(row, col); ok { - if !path.IsAbs(source) { - source = path.Join(path.Dir(fl.name), source) - } return Position{ - Filename: source, + Filename: ResolveSourcemapURL(fl.Name(), source).String(), Line: row, Column: col, } @@ -177,6 +175,22 @@ func (fl *File) Position(offset int) Position { } } +func ResolveSourcemapURL(basename, source string) *url.URL { + // if the url is absolute(has scheme) there is nothing to do + smURL, err := url.Parse(source) + if err == nil && !smURL.IsAbs() { + baseURL, err1 := url.Parse(basename) + if err1 == nil && path.IsAbs(baseURL.Path) { + smURL = baseURL.ResolveReference(smURL) + } else { + // pathological case where both are not absolute paths and using Resolve as above will produce an absolute + // one + smURL, _ = url.Parse(path.Join(path.Dir(basename), smURL.Path)) + } + } + return smURL +} + func findNextLineStart(s string) int { for pos, ch := range s { switch ch { diff --git a/vendor/github.com/dop251/goja/func.go b/vendor/github.com/dop251/goja/func.go index 1599d702d..45c834f5f 100644 --- a/vendor/github.com/dop251/goja/func.go +++ b/vendor/github.com/dop251/goja/func.go @@ -12,12 +12,27 @@ type baseFuncObject struct { lenProp valueProperty } -type funcObject struct { +type baseJsFuncObject struct { baseFuncObject - stash *stash - prg *Program - src string + stash *stash + prg *Program + src string + strict bool +} + +type funcObject struct { + baseJsFuncObject +} + +type methodFuncObject struct { + baseJsFuncObject +} + +type arrowFuncObject struct { + baseJsFuncObject + this Value + newTarget Value } type nativeFuncObject struct { @@ -70,6 +85,11 @@ func (f *funcObject) setForeignStr(name unistring.String, val, receiver Value, t return f._setForeignStr(name, f.getOwnPropStr(name), val, receiver, throw) } +func (f *funcObject) defineOwnPropertyStr(name unistring.String, descr PropertyDescriptor, throw bool) bool { + f._addProto(name) + return f.baseObject.defineOwnPropertyStr(name, descr, throw) +} + func (f *funcObject) deleteStr(name unistring.String, throw bool) bool { f._addProto(name) return f.baseObject.deleteStr(name, throw) @@ -82,7 +102,7 @@ func (f *funcObject) addPrototype() Value { } func (f *funcObject) hasOwnPropertyStr(name unistring.String) bool { - if r := f.baseObject.hasOwnPropertyStr(name); r { + if f.baseObject.hasOwnPropertyStr(name) { return true } @@ -92,13 +112,20 @@ func (f *funcObject) hasOwnPropertyStr(name unistring.String) bool { return false } -func (f *funcObject) ownKeys(all bool, accum []Value) []Value { +func (f *funcObject) stringKeys(all bool, accum []Value) []Value { if all { if _, exists := f.values["prototype"]; !exists { accum = append(accum, asciiString("prototype")) } } - return f.baseFuncObject.ownKeys(all, accum) + return f.baseFuncObject.stringKeys(all, accum) +} + +func (f *funcObject) iterateStringKeys() iterNextFunc { + if _, exists := f.values["prototype"]; !exists { + f.addPrototype() + } + return f.baseFuncObject.iterateStringKeys() } func (f *funcObject) construct(args []Value, newTarget *Object) *Object { @@ -125,22 +152,21 @@ func (f *funcObject) construct(args []Value, newTarget *Object) *Object { return obj } -func (f *funcObject) Call(call FunctionCall) Value { +func (f *baseJsFuncObject) Call(call FunctionCall) Value { return f.call(call, nil) } -func (f *funcObject) call(call FunctionCall, newTarget Value) Value { +func (f *arrowFuncObject) Call(call FunctionCall) Value { + return f._call(call, f.newTarget, f.this) +} + +func (f *baseJsFuncObject) _call(call FunctionCall, newTarget, this Value) Value { vm := f.val.runtime.vm - pc := vm.pc vm.stack.expand(vm.sp + len(call.Arguments) + 1) vm.stack[vm.sp] = f.val vm.sp++ - if call.This != nil { - vm.stack[vm.sp] = call.This - } else { - vm.stack[vm.sp] = _undefined - } + vm.stack[vm.sp] = this vm.sp++ for _, arg := range call.Arguments { if arg != nil { @@ -151,19 +177,32 @@ func (f *funcObject) call(call FunctionCall, newTarget Value) Value { vm.sp++ } - vm.pc = -1 - vm.pushCtx() + pc := vm.pc + if pc != -1 { + vm.pc++ // fake "return address" so that captureStack() records the correct call location + vm.pushCtx() + vm.callStack = append(vm.callStack, context{pc: -1}) // extra frame so that run() halts after ret + } else { + vm.pushCtx() + } vm.args = len(call.Arguments) vm.prg = f.prg vm.stash = f.stash vm.newTarget = newTarget vm.pc = 0 vm.run() + if pc != -1 { + vm.popCtx() + } vm.pc = pc vm.halt = false return vm.pop() } +func (f *baseJsFuncObject) call(call FunctionCall, newTarget Value) Value { + return f._call(call, newTarget, nilSafe(call.This)) +} + func (f *funcObject) export(*objectExportCtx) interface{} { return f.Call } @@ -172,7 +211,7 @@ func (f *funcObject) exportType() reflect.Type { return reflect.TypeOf(f.Call) } -func (f *funcObject) assertCallable() (func(FunctionCall) Value, bool) { +func (f *baseJsFuncObject) assertCallable() (func(FunctionCall) Value, bool) { return f.Call, true } @@ -180,16 +219,22 @@ func (f *funcObject) assertConstructor() func(args []Value, newTarget *Object) * return f.construct } -func (f *baseFuncObject) init(name unistring.String, length int) { +func (f *arrowFuncObject) exportType() reflect.Type { + return reflect.TypeOf(f.Call) +} + +func (f *arrowFuncObject) assertCallable() (func(FunctionCall) Value, bool) { + return f.Call, true +} + +func (f *baseFuncObject) init(name unistring.String, length Value) { f.baseObject.init() - if name != "" { - f._putProp("name", stringValueFromRaw(name), false, false, true) - } - f.lenProp.configurable = true - f.lenProp.value = valueInt(length) + f.lenProp.value = length f._put("length", &f.lenProp) + + f._putProp("name", stringValueFromRaw(name), false, false, true) } func (f *baseFuncObject) hasInstance(v Value) bool { @@ -245,7 +290,7 @@ func (f *nativeFuncObject) assertConstructor() func(args []Value, newTarget *Obj return f.construct } -func (f *boundFuncObject) getStr(p unistring.String, receiver Value) Value { +/*func (f *boundFuncObject) getStr(p unistring.String, receiver Value) Value { return f.getStrWithOwnProp(f.getOwnPropStr(p), p, receiver) } @@ -274,6 +319,7 @@ func (f *boundFuncObject) setOwnStr(name unistring.String, val Value, throw bool func (f *boundFuncObject) setForeignStr(name unistring.String, val, receiver Value, throw bool) (bool, bool) { return f._setForeignStr(name, f.getOwnPropStr(name), val, receiver, throw) } +*/ func (f *boundFuncObject) hasInstance(v Value) bool { return instanceOfOperator(v, f.wrapped) diff --git a/vendor/github.com/dop251/goja/object.go b/vendor/github.com/dop251/goja/object.go index 812dac44c..204205387 100644 --- a/vendor/github.com/dop251/goja/object.go +++ b/vendor/github.com/dop251/goja/object.go @@ -22,10 +22,12 @@ const ( classString = "String" classBoolean = "Boolean" classError = "Error" + classAggError = "AggregateError" classRegExp = "RegExp" classDate = "Date" classJSON = "JSON" classGlobal = "global" + classPromise = "Promise" classArrayIterator = "Array Iterator" classMapIterator = "Map Iterator" @@ -188,13 +190,18 @@ type objectImpl interface { hasInstance(v Value) bool isExtensible() bool preventExtensions(throw bool) bool - enumerateOwnKeys() iterNextFunc + export(ctx *objectExportCtx) interface{} exportType() reflect.Type equal(objectImpl) bool - ownKeys(all bool, accum []Value) []Value - ownSymbols(all bool, accum []Value) []Value - ownPropertyKeys(all bool, accum []Value) []Value + + iterateStringKeys() iterNextFunc + iterateSymbols() iterNextFunc + iterateKeys() iterNextFunc + + stringKeys(all bool, accum []Value) []Value + symbols(all bool, accum []Value) []Value + keys(all bool, accum []Value) []Value _putProp(name unistring.String, value Value, writable, enumerable, configurable bool) Value _putSym(s *Symbol, prop Value) @@ -365,7 +372,10 @@ func (o *baseObject) getOwnPropStr(name unistring.String) Value { func (o *baseObject) checkDeleteProp(name unistring.String, prop *valueProperty, throw bool) bool { if !prop.configurable { - o.val.runtime.typeErrorResult(throw, "Cannot delete property '%s' of %s", name, o.val.toString()) + if throw { + r := o.val.runtime + panic(r.NewTypeError("Cannot delete property '%s' of %s", name, r.objectproto_toString(FunctionCall{This: o.val}))) + } return false } return true @@ -411,7 +421,7 @@ func (o *baseObject) deleteIdx(idx valueInt, throw bool) bool { func (o *baseObject) deleteSym(s *Symbol, throw bool) bool { if o.symValues != nil { if val := o.symValues.get(s); val != nil { - if !o.checkDelete(s.desc.string(), val, throw) { + if !o.checkDelete(s.descriptiveString().string(), val, throw) { return false } o.symValues.remove(s) @@ -756,7 +766,7 @@ func (o *baseObject) defineOwnPropertySym(s *Symbol, descr PropertyDescriptor, t if o.symValues != nil { existingVal = o.symValues.get(s) } - if v, ok := o._defineOwnProperty(s.desc.string(), existingVal, descr, throw); ok { + if v, ok := o._defineOwnProperty(s.descriptiveString().string(), existingVal, descr, throw); ok { if o.symValues == nil { o.symValues = newOrderedMap(nil) } @@ -936,7 +946,7 @@ func (o *baseObject) export(ctx *objectExportCtx) interface{} { if v, exists := ctx.get(o); exists { return v } - keys := o.ownKeys(false, nil) + keys := o.stringKeys(false, nil) m := make(map[string]interface{}, len(keys)) ctx.put(o, m) for _, itemName := range keys { @@ -965,8 +975,8 @@ const ( ) type propIterItem struct { - name unistring.String - value Value // set only when enumerable == _ENUM_UNKNOWN + name Value + value Value enumerable enumerableFlag } @@ -983,6 +993,7 @@ type recursivePropIter struct { } type enumerableIter struct { + o *Object wrapped iterNextFunc } @@ -997,7 +1008,16 @@ func (i *enumerableIter) next() (propIterItem, iterNextFunc) { continue } if item.enumerable == _ENUM_UNKNOWN { - if prop, ok := item.value.(*valueProperty); ok { + var prop Value + if item.value == nil { + prop = i.o.getOwnProp(item.name) + } else { + prop = item.value + } + if prop == nil { + continue + } + if prop, ok := prop.(*valueProperty); ok { if !prop.enumerable { continue } @@ -1013,14 +1033,15 @@ func (i *recursivePropIter) next() (propIterItem, iterNextFunc) { item, i.cur = i.cur() if i.cur == nil { if proto := i.o.proto(); proto != nil { - i.cur = proto.self.enumerateOwnKeys() + i.cur = proto.self.iterateStringKeys() i.o = proto.self continue } return propIterItem{}, nil } - if _, exists := i.seen[item.name]; !exists { - i.seen[item.name] = struct{}{} + name := item.name.string() + if _, exists := i.seen[name]; !exists { + i.seen[name] = struct{}{} return item, i.next } } @@ -1028,9 +1049,10 @@ func (i *recursivePropIter) next() (propIterItem, iterNextFunc) { func enumerateRecursive(o *Object) iterNextFunc { return (&enumerableIter{ + o: o, wrapped: (&recursivePropIter{ o: o.self, - cur: o.self.enumerateOwnKeys(), + cur: o.self.iterateStringKeys(), seen: make(map[unistring.String]struct{}), }).next, }).next @@ -1042,7 +1064,7 @@ func (i *objectPropIter) next() (propIterItem, iterNextFunc) { i.idx++ prop := i.o.values[name] if prop != nil { - return propIterItem{name: name, value: prop}, i.next + return propIterItem{name: stringValueFromRaw(name), value: prop}, i.next } } clearNamesCopyMarker(i.propNames) @@ -1105,7 +1127,7 @@ func copyNamesIfNeeded(names []unistring.String, extraCap int) []unistring.Strin return names } -func (o *baseObject) enumerateOwnKeys() iterNextFunc { +func (o *baseObject) iterateStringKeys() iterNextFunc { if len(o.propNames) > o.lastSortedPropLen { o.fixPropOrder() } @@ -1117,6 +1139,53 @@ func (o *baseObject) enumerateOwnKeys() iterNextFunc { }).next } +type objectSymbolIter struct { + iter *orderedMapIter +} + +func (i *objectSymbolIter) next() (propIterItem, iterNextFunc) { + entry := i.iter.next() + if entry != nil { + return propIterItem{ + name: entry.key, + value: entry.value, + }, i.next + } + return propIterItem{}, nil +} + +func (o *baseObject) iterateSymbols() iterNextFunc { + if o.symValues != nil { + return (&objectSymbolIter{ + iter: o.symValues.newIter(), + }).next + } + return func() (propIterItem, iterNextFunc) { + return propIterItem{}, nil + } +} + +type objectAllPropIter struct { + o *Object + curStr iterNextFunc +} + +func (i *objectAllPropIter) next() (propIterItem, iterNextFunc) { + item, next := i.curStr() + if next != nil { + i.curStr = next + return item, i.next + } + return i.o.self.iterateSymbols()() +} + +func (o *baseObject) iterateKeys() iterNextFunc { + return (&objectAllPropIter{ + o: o.val, + curStr: o.val.self.iterateStringKeys(), + }).next +} + func (o *baseObject) equal(objectImpl) bool { // Rely on parent reference comparison return false @@ -1156,7 +1225,7 @@ func (o *baseObject) fixPropOrder() { o.lastSortedPropLen = len(names) } -func (o *baseObject) ownKeys(all bool, keys []Value) []Value { +func (o *baseObject) stringKeys(all bool, keys []Value) []Value { if len(o.propNames) > o.lastSortedPropLen { o.fixPropOrder() } @@ -1176,7 +1245,7 @@ func (o *baseObject) ownKeys(all bool, keys []Value) []Value { return keys } -func (o *baseObject) ownSymbols(all bool, accum []Value) []Value { +func (o *baseObject) symbols(all bool, accum []Value) []Value { if o.symValues != nil { iter := o.symValues.newIter() if all { @@ -1206,8 +1275,8 @@ func (o *baseObject) ownSymbols(all bool, accum []Value) []Value { return accum } -func (o *baseObject) ownPropertyKeys(all bool, accum []Value) []Value { - return o.ownSymbols(all, o.val.self.ownKeys(all, accum)) +func (o *baseObject) keys(all bool, accum []Value) []Value { + return o.symbols(all, o.val.self.stringKeys(all, accum)) } func (o *baseObject) hasInstance(Value) bool { @@ -1298,9 +1367,9 @@ func (o *Object) setStr(name unistring.String, val, receiver Value, throw bool) return false } } - robj.self.defineOwnPropertyStr(name, PropertyDescriptor{Value: val}, throw) + return robj.self.defineOwnPropertyStr(name, PropertyDescriptor{Value: val}, throw) } else { - robj.self.defineOwnPropertyStr(name, PropertyDescriptor{ + return robj.self.defineOwnPropertyStr(name, PropertyDescriptor{ Value: val, Writable: FLAG_TRUE, Configurable: FLAG_TRUE, @@ -1315,7 +1384,6 @@ func (o *Object) setStr(name unistring.String, val, receiver Value, throw bool) return res } } - return true } func (o *Object) set(name Value, val, receiver Value, throw bool) bool { @@ -1550,3 +1618,50 @@ func (ctx *objectExportCtx) putTyped(key objectImpl, typ reflect.Type, value int ctx.cache[key] = m } } + +type enumPropertiesIter struct { + o *Object + wrapped iterNextFunc +} + +func (i *enumPropertiesIter) next() (propIterItem, iterNextFunc) { + for i.wrapped != nil { + item, next := i.wrapped() + i.wrapped = next + if next == nil { + break + } + if item.value == nil { + item.value = i.o.get(item.name, nil) + if item.value == nil { + continue + } + } else { + if prop, ok := item.value.(*valueProperty); ok { + item.value = prop.get(i.o) + } + } + return item, i.next + } + return propIterItem{}, nil +} + +func iterateEnumerableProperties(o *Object) iterNextFunc { + return (&enumPropertiesIter{ + o: o, + wrapped: (&enumerableIter{ + o: o, + wrapped: o.self.iterateKeys(), + }).next, + }).next +} + +func iterateEnumerableStringProperties(o *Object) iterNextFunc { + return (&enumPropertiesIter{ + o: o, + wrapped: (&enumerableIter{ + o: o, + wrapped: o.self.iterateStringKeys(), + }).next, + }).next +} diff --git a/vendor/github.com/dop251/goja/object_args.go b/vendor/github.com/dop251/goja/object_args.go index 3cc705853..fd65bc6e7 100644 --- a/vendor/github.com/dop251/goja/object_args.go +++ b/vendor/github.com/dop251/goja/object_args.go @@ -81,9 +81,9 @@ func (i *argumentsPropIter) next() (propIterItem, iterNextFunc) { return item, i.next } -func (a *argumentsObject) enumerateOwnKeys() iterNextFunc { +func (a *argumentsObject) iterateStringKeys() iterNextFunc { return (&argumentsPropIter{ - wrapped: a.baseObject.enumerateOwnKeys(), + wrapped: a.baseObject.iterateStringKeys(), }).next } diff --git a/vendor/github.com/dop251/goja/object_dynamic.go b/vendor/github.com/dop251/goja/object_dynamic.go index 6cf97d67f..2414579f2 100644 --- a/vendor/github.com/dop251/goja/object_dynamic.go +++ b/vendor/github.com/dop251/goja/object_dynamic.go @@ -451,13 +451,13 @@ func (i *dynamicObjectPropIter) next() (propIterItem, iterNextFunc) { name := i.propNames[i.idx] i.idx++ if i.o.d.Has(name) { - return propIterItem{name: unistring.NewFromString(name), enumerable: _ENUM_TRUE}, i.next + return propIterItem{name: newStringValue(name), enumerable: _ENUM_TRUE}, i.next } } return propIterItem{}, nil } -func (o *dynamicObject) enumerateOwnKeys() iterNextFunc { +func (o *dynamicObject) iterateStringKeys() iterNextFunc { keys := o.d.Keys() return (&dynamicObjectPropIter{ o: o, @@ -465,6 +465,16 @@ func (o *dynamicObject) enumerateOwnKeys() iterNextFunc { }).next } +func (o *baseDynamicObject) iterateSymbols() iterNextFunc { + return func() (propIterItem, iterNextFunc) { + return propIterItem{}, nil + } +} + +func (o *dynamicObject) iterateKeys() iterNextFunc { + return o.iterateStringKeys() +} + func (o *dynamicObject) export(ctx *objectExportCtx) interface{} { return o.d } @@ -480,7 +490,7 @@ func (o *dynamicObject) equal(impl objectImpl) bool { return false } -func (o *dynamicObject) ownKeys(all bool, accum []Value) []Value { +func (o *dynamicObject) stringKeys(all bool, accum []Value) []Value { keys := o.d.Keys() if l := len(accum) + len(keys); l > cap(accum) { oldAccum := accum @@ -493,12 +503,12 @@ func (o *dynamicObject) ownKeys(all bool, accum []Value) []Value { return accum } -func (*baseDynamicObject) ownSymbols(all bool, accum []Value) []Value { +func (*baseDynamicObject) symbols(all bool, accum []Value) []Value { return accum } -func (o *dynamicObject) ownPropertyKeys(all bool, accum []Value) []Value { - return o.ownKeys(all, accum) +func (o *dynamicObject) keys(all bool, accum []Value) []Value { + return o.stringKeys(all, accum) } func (*baseDynamicObject) _putProp(name unistring.String, value Value, writable, enumerable, configurable bool) Value { @@ -686,19 +696,23 @@ func (i *dynArrayPropIter) next() (propIterItem, iterNextFunc) { if i.idx < i.limit && i.idx < i.a.Len() { name := strconv.Itoa(i.idx) i.idx++ - return propIterItem{name: unistring.String(name), enumerable: _ENUM_TRUE}, i.next + return propIterItem{name: asciiString(name), enumerable: _ENUM_TRUE}, i.next } return propIterItem{}, nil } -func (a *dynamicArray) enumerateOwnKeys() iterNextFunc { +func (a *dynamicArray) iterateStringKeys() iterNextFunc { return (&dynArrayPropIter{ a: a.a, limit: a.a.Len(), }).next } +func (a *dynamicArray) iterateKeys() iterNextFunc { + return a.iterateStringKeys() +} + func (a *dynamicArray) export(ctx *objectExportCtx) interface{} { return a.a } @@ -714,7 +728,7 @@ func (a *dynamicArray) equal(impl objectImpl) bool { return false } -func (a *dynamicArray) ownKeys(all bool, accum []Value) []Value { +func (a *dynamicArray) stringKeys(all bool, accum []Value) []Value { al := a.a.Len() l := len(accum) + al if all { @@ -734,6 +748,6 @@ func (a *dynamicArray) ownKeys(all bool, accum []Value) []Value { return accum } -func (a *dynamicArray) ownPropertyKeys(all bool, accum []Value) []Value { - return a.ownKeys(all, accum) +func (a *dynamicArray) keys(all bool, accum []Value) []Value { + return a.stringKeys(all, accum) } diff --git a/vendor/github.com/dop251/goja/object_gomap.go b/vendor/github.com/dop251/goja/object_gomap.go index b578b768b..cc27ee903 100644 --- a/vendor/github.com/dop251/goja/object_gomap.go +++ b/vendor/github.com/dop251/goja/object_gomap.go @@ -131,14 +131,14 @@ func (i *gomapPropIter) next() (propIterItem, iterNextFunc) { name := i.propNames[i.idx] i.idx++ if _, exists := i.o.data[name]; exists { - return propIterItem{name: unistring.NewFromString(name), enumerable: _ENUM_TRUE}, i.next + return propIterItem{name: newStringValue(name), enumerable: _ENUM_TRUE}, i.next } } return propIterItem{}, nil } -func (o *objectGoMapSimple) enumerateOwnKeys() iterNextFunc { +func (o *objectGoMapSimple) iterateStringKeys() iterNextFunc { propNames := make([]string, len(o.data)) i := 0 for key := range o.data { @@ -152,7 +152,7 @@ func (o *objectGoMapSimple) enumerateOwnKeys() iterNextFunc { }).next } -func (o *objectGoMapSimple) ownKeys(_ bool, accum []Value) []Value { +func (o *objectGoMapSimple) stringKeys(_ bool, accum []Value) []Value { // all own keys are enumerable for key := range o.data { accum = append(accum, newStringValue(key)) diff --git a/vendor/github.com/dop251/goja/object_gomap_reflect.go b/vendor/github.com/dop251/goja/object_gomap_reflect.go index 29f9dfb92..2734acfb4 100644 --- a/vendor/github.com/dop251/goja/object_gomap_reflect.go +++ b/vendor/github.com/dop251/goja/object_gomap_reflect.go @@ -242,21 +242,21 @@ func (i *gomapReflectPropIter) next() (propIterItem, iterNextFunc) { v := i.o.value.MapIndex(key) i.idx++ if v.IsValid() { - return propIterItem{name: unistring.NewFromString(key.String()), enumerable: _ENUM_TRUE}, i.next + return propIterItem{name: newStringValue(key.String()), enumerable: _ENUM_TRUE}, i.next } } return propIterItem{}, nil } -func (o *objectGoMapReflect) enumerateOwnKeys() iterNextFunc { +func (o *objectGoMapReflect) iterateStringKeys() iterNextFunc { return (&gomapReflectPropIter{ o: o, keys: o.value.MapKeys(), }).next } -func (o *objectGoMapReflect) ownKeys(_ bool, accum []Value) []Value { +func (o *objectGoMapReflect) stringKeys(_ bool, accum []Value) []Value { // all own keys are enumerable for _, key := range o.value.MapKeys() { accum = append(accum, newStringValue(key.String())) diff --git a/vendor/github.com/dop251/goja/object_goreflect.go b/vendor/github.com/dop251/goja/object_goreflect.go index 6ac9b86ba..7d06b2c6d 100644 --- a/vendor/github.com/dop251/goja/object_goreflect.go +++ b/vendor/github.com/dop251/goja/object_goreflect.go @@ -362,7 +362,7 @@ func (i *goreflectPropIter) nextField() (propIterItem, iterNextFunc) { if i.idx < len(names) { name := names[i.idx] i.idx++ - return propIterItem{name: unistring.NewFromString(name), enumerable: _ENUM_TRUE}, i.nextField + return propIterItem{name: newStringValue(name), enumerable: _ENUM_TRUE}, i.nextField } i.idx = 0 @@ -374,13 +374,13 @@ func (i *goreflectPropIter) nextMethod() (propIterItem, iterNextFunc) { if i.idx < len(names) { name := names[i.idx] i.idx++ - return propIterItem{name: unistring.NewFromString(name), enumerable: _ENUM_TRUE}, i.nextMethod + return propIterItem{name: newStringValue(name), enumerable: _ENUM_TRUE}, i.nextMethod } return propIterItem{}, nil } -func (o *objectGoReflect) enumerateOwnKeys() iterNextFunc { +func (o *objectGoReflect) iterateStringKeys() iterNextFunc { r := &goreflectPropIter{ o: o, } @@ -391,7 +391,7 @@ func (o *objectGoReflect) enumerateOwnKeys() iterNextFunc { return r.nextMethod } -func (o *objectGoReflect) ownKeys(_ bool, accum []Value) []Value { +func (o *objectGoReflect) stringKeys(_ bool, accum []Value) []Value { // all own keys are enumerable for _, name := range o.valueTypeInfo.FieldNames { accum = append(accum, newStringValue(name)) diff --git a/vendor/github.com/dop251/goja/object_goslice.go b/vendor/github.com/dop251/goja/object_goslice.go index 0c2b2322b..4c7a711ea 100644 --- a/vendor/github.com/dop251/goja/object_goslice.go +++ b/vendor/github.com/dop251/goja/object_goslice.go @@ -1,6 +1,8 @@ package goja import ( + "math" + "math/bits" "reflect" "strconv" @@ -115,8 +117,11 @@ func (o *objectGoSlice) putIdx(idx int, v Value, throw bool) { (*o.data)[idx] = v.Export() } -func (o *objectGoSlice) putLength(v Value, throw bool) bool { - newLen := toIntStrict(toLength(v)) +func (o *objectGoSlice) putLength(v uint32, throw bool) bool { + if bits.UintSize == 32 && v > math.MaxInt32 { + panic(rangeError("Integer value overflows 32-bit int")) + } + newLen := int(v) curLen := len(*o.data) if newLen > curLen { o.grow(newLen) @@ -156,7 +161,7 @@ func (o *objectGoSlice) setOwnStr(name unistring.String, val Value, throw bool) o.putIdx(idx, val, throw) } else { if name == "length" { - return o.putLength(val, throw) + return o.putLength(o.val.runtime.toLengthUint32(val), throw) } if res, ok := o._setForeignStr(name, nil, val, o.val, throw); !ok { o.val.runtime.typeErrorResult(throw, "Can't set property '%s' on Go slice", name) @@ -187,7 +192,7 @@ func (o *objectGoSlice) hasOwnPropertyStr(name unistring.String) bool { if idx := strToIdx64(name); idx >= 0 { return idx < int64(len(*o.data)) } - return false + return name == "length" } func (o *objectGoSlice) defineOwnPropertyIdx(idx valueInt, descr PropertyDescriptor, throw bool) bool { @@ -270,20 +275,20 @@ func (i *goslicePropIter) next() (propIterItem, iterNextFunc) { if i.idx < i.limit && i.idx < len(*i.o.data) { name := strconv.Itoa(i.idx) i.idx++ - return propIterItem{name: unistring.String(name), enumerable: _ENUM_TRUE}, i.next + return propIterItem{name: newStringValue(name), enumerable: _ENUM_TRUE}, i.next } return propIterItem{}, nil } -func (o *objectGoSlice) enumerateOwnKeys() iterNextFunc { +func (o *objectGoSlice) iterateStringKeys() iterNextFunc { return (&goslicePropIter{ o: o, limit: len(*o.data), }).next } -func (o *objectGoSlice) ownKeys(_ bool, accum []Value) []Value { +func (o *objectGoSlice) stringKeys(_ bool, accum []Value) []Value { for i := range *o.data { accum = append(accum, asciiString(strconv.Itoa(i))) } diff --git a/vendor/github.com/dop251/goja/object_goslice_reflect.go b/vendor/github.com/dop251/goja/object_goslice_reflect.go index 658c65f9b..94284806f 100644 --- a/vendor/github.com/dop251/goja/object_goslice_reflect.go +++ b/vendor/github.com/dop251/goja/object_goslice_reflect.go @@ -1,6 +1,8 @@ package goja import ( + "math" + "math/bits" "reflect" "strconv" @@ -138,8 +140,11 @@ func (o *objectGoSliceReflect) shrink(size int) { o.updateLen() } -func (o *objectGoSliceReflect) putLength(v Value, throw bool) bool { - newLen := toIntStrict(toLength(v)) +func (o *objectGoSliceReflect) putLength(v uint32, throw bool) bool { + if bits.UintSize == 32 && v > math.MaxInt32 { + panic(rangeError("Integer value overflows 32-bit int")) + } + newLen := int(v) curLen := o.value.Len() if newLen > curLen { o.grow(newLen) @@ -179,7 +184,7 @@ func (o *objectGoSliceReflect) setOwnStr(name unistring.String, val Value, throw o.putIdx(idx, val, throw) } else { if name == "length" { - return o.putLength(val, throw) + return o.putLength(o.val.runtime.toLengthUint32(val), throw) } if res, ok := o._setForeignStr(name, nil, val, o.val, throw); !ok { o.val.runtime.typeErrorResult(throw, "Can't set property '%s' on Go slice", name) @@ -196,7 +201,7 @@ func (o *objectGoSliceReflect) setForeignIdx(idx valueInt, val, receiver Value, } func (o *objectGoSliceReflect) setForeignStr(name unistring.String, val, receiver Value, throw bool) (bool, bool) { - return o._setForeignStr(name, trueValIfPresent(o._hasStr(name)), val, receiver, throw) + return o._setForeignStr(name, trueValIfPresent(o.hasOwnPropertyStr(name)), val, receiver, throw) } func (o *objectGoSliceReflect) hasOwnPropertyIdx(idx valueInt) bool { @@ -204,7 +209,7 @@ func (o *objectGoSliceReflect) hasOwnPropertyIdx(idx valueInt) bool { } func (o *objectGoSliceReflect) hasOwnPropertyStr(name unistring.String) bool { - if o._hasStr(name) { + if o._hasStr(name) || name == "length" { return true } return o.objectGoReflect._has(name.String()) @@ -238,6 +243,9 @@ func (o *objectGoSliceReflect) defineOwnPropertyStr(name unistring.String, descr o.putIdx(idx, val, throw) return true } + if name == "length" { + return o.val.runtime.defineArrayLength(&o.lengthProp, descr, o.putLength, throw) + } o.val.runtime.typeErrorResult(throw, "Cannot define property '%s' on a Go slice", name) return false } @@ -288,21 +296,21 @@ func (i *gosliceReflectPropIter) next() (propIterItem, iterNextFunc) { if i.idx < i.limit && i.idx < i.o.value.Len() { name := strconv.Itoa(i.idx) i.idx++ - return propIterItem{name: unistring.String(name), enumerable: _ENUM_TRUE}, i.next + return propIterItem{name: asciiString(name), enumerable: _ENUM_TRUE}, i.next } - return i.o.objectGoReflect.enumerateOwnKeys()() + return i.o.objectGoReflect.iterateStringKeys()() } -func (o *objectGoSliceReflect) ownKeys(all bool, accum []Value) []Value { +func (o *objectGoSliceReflect) stringKeys(all bool, accum []Value) []Value { for i := 0; i < o.value.Len(); i++ { accum = append(accum, asciiString(strconv.Itoa(i))) } - return o.objectGoReflect.ownKeys(all, accum) + return o.objectGoReflect.stringKeys(all, accum) } -func (o *objectGoSliceReflect) enumerateOwnKeys() iterNextFunc { +func (o *objectGoSliceReflect) iterateStringKeys() iterNextFunc { return (&gosliceReflectPropIter{ o: o, limit: o.value.Len(), diff --git a/vendor/github.com/dop251/goja/object_lazy.go b/vendor/github.com/dop251/goja/object_lazy.go index 71ec77ffb..6c0cf51ce 100644 --- a/vendor/github.com/dop251/goja/object_lazy.go +++ b/vendor/github.com/dop251/goja/object_lazy.go @@ -223,10 +223,22 @@ func (o *lazyObject) preventExtensions(throw bool) bool { return obj.preventExtensions(throw) } -func (o *lazyObject) enumerateOwnKeys() iterNextFunc { +func (o *lazyObject) iterateStringKeys() iterNextFunc { obj := o.create(o.val) o.val.self = obj - return obj.enumerateOwnKeys() + return obj.iterateStringKeys() +} + +func (o *lazyObject) iterateSymbols() iterNextFunc { + obj := o.create(o.val) + o.val.self = obj + return obj.iterateSymbols() +} + +func (o *lazyObject) iterateKeys() iterNextFunc { + obj := o.create(o.val) + o.val.self = obj + return obj.iterateKeys() } func (o *lazyObject) export(ctx *objectExportCtx) interface{} { @@ -247,22 +259,22 @@ func (o *lazyObject) equal(other objectImpl) bool { return obj.equal(other) } -func (o *lazyObject) ownKeys(all bool, accum []Value) []Value { +func (o *lazyObject) stringKeys(all bool, accum []Value) []Value { obj := o.create(o.val) o.val.self = obj - return obj.ownKeys(all, accum) + return obj.stringKeys(all, accum) } -func (o *lazyObject) ownSymbols(all bool, accum []Value) []Value { +func (o *lazyObject) symbols(all bool, accum []Value) []Value { obj := o.create(o.val) o.val.self = obj - return obj.ownSymbols(all, accum) + return obj.symbols(all, accum) } -func (o *lazyObject) ownPropertyKeys(all bool, accum []Value) []Value { +func (o *lazyObject) keys(all bool, accum []Value) []Value { obj := o.create(o.val) o.val.self = obj - return obj.ownPropertyKeys(all, accum) + return obj.keys(all, accum) } func (o *lazyObject) setProto(proto *Object, throw bool) bool { diff --git a/vendor/github.com/dop251/goja/parser/expression.go b/vendor/github.com/dop251/goja/parser/expression.go index 21ac15d8d..7491e25c3 100644 --- a/vendor/github.com/dop251/goja/parser/expression.go +++ b/vendor/github.com/dop251/goja/parser/expression.go @@ -85,10 +85,9 @@ func (self *_parser) parsePrimaryExpression() ast.Expression { case token.LEFT_BRACKET: return self.parseArrayLiteral() case token.LEFT_PARENTHESIS: - self.expect(token.LEFT_PARENTHESIS) - expression := self.parseExpression() - self.expect(token.RIGHT_PARENTHESIS) - return expression + return self.parseParenthesisedExpression() + case token.BACKTICK: + return self.parseTemplateLiteral(false) case token.THIS: self.next() return &ast.ThisExpression{ @@ -103,6 +102,76 @@ func (self *_parser) parsePrimaryExpression() ast.Expression { return &ast.BadExpression{From: idx, To: self.idx} } +func (self *_parser) reinterpretSequenceAsArrowFuncParams(seq *ast.SequenceExpression) *ast.ParameterList { + firstRestIdx := -1 + params := make([]*ast.Binding, 0, len(seq.Sequence)) + for i, item := range seq.Sequence { + if _, ok := item.(*ast.SpreadElement); ok { + if firstRestIdx == -1 { + firstRestIdx = i + continue + } + } + if firstRestIdx != -1 { + self.error(seq.Sequence[firstRestIdx].Idx0(), "Rest parameter must be last formal parameter") + return &ast.ParameterList{} + } + params = append(params, self.reinterpretAsBinding(item)) + } + var rest ast.Expression + if firstRestIdx != -1 { + rest = self.reinterpretAsBindingRestElement(seq.Sequence[firstRestIdx]) + } + return &ast.ParameterList{ + List: params, + Rest: rest, + } +} + +func (self *_parser) parseParenthesisedExpression() ast.Expression { + opening := self.idx + self.expect(token.LEFT_PARENTHESIS) + var list []ast.Expression + if self.token != token.RIGHT_PARENTHESIS { + for { + if self.token == token.ELLIPSIS { + start := self.idx + self.errorUnexpectedToken(token.ELLIPSIS) + self.next() + expr := self.parseAssignmentExpression() + list = append(list, &ast.BadExpression{ + From: start, + To: expr.Idx1(), + }) + } else { + list = append(list, self.parseAssignmentExpression()) + } + if self.token != token.COMMA { + break + } + self.next() + if self.token == token.RIGHT_PARENTHESIS { + self.errorUnexpectedToken(token.RIGHT_PARENTHESIS) + break + } + } + } + self.expect(token.RIGHT_PARENTHESIS) + if len(list) == 1 && len(self.errors) == 0 { + return list[0] + } + if len(list) == 0 { + self.errorUnexpectedToken(token.RIGHT_PARENTHESIS) + return &ast.BadExpression{ + From: opening, + To: self.idx, + } + } + return &ast.SequenceExpression{ + Sequence: list, + } +} + func (self *_parser) parseRegExpLiteral() *ast.RegExpLiteral { offset := self.chrOffset - 1 // Opening slash already gotten @@ -114,7 +183,7 @@ func (self *_parser) parseRegExpLiteral() *ast.RegExpLiteral { pattern, _, err := self.scanString(offset, false) endOffset := self.chrOffset - if err == nil { + if err == "" { pattern = pattern[1 : len(pattern)-1] } @@ -205,12 +274,12 @@ func (self *_parser) parseVarDeclarationList(var_ file.Idx) []*ast.Binding { return declarationList } -func (self *_parser) parseObjectPropertyKey() (unistring.String, ast.Expression, token.Token) { +func (self *_parser) parseObjectPropertyKey() (string, unistring.String, ast.Expression, token.Token) { if self.token == token.LEFT_BRACKET { self.next() expr := self.parseAssignmentExpression() self.expect(token.RIGHT_BRACKET) - return "", expr, token.ILLEGAL + return "", "", expr, token.ILLEGAL } idx, tkn, literal, parsedLiteral := self.idx, self.token, self.literal, self.parsedLiteral var value ast.Expression @@ -220,7 +289,7 @@ func (self *_parser) parseObjectPropertyKey() (unistring.String, ast.Expression, value = &ast.StringLiteral{ Idx: idx, Literal: literal, - Value: unistring.String(literal), + Value: parsedLiteral, } case token.NUMBER: num, err := parseNumberLiteral(literal) @@ -233,7 +302,7 @@ func (self *_parser) parseObjectPropertyKey() (unistring.String, ast.Expression, Value: num, } } - case token.STRING: + case token.STRING, token.KEYWORD: value = &ast.StringLiteral{ Idx: idx, Literal: literal, @@ -241,16 +310,18 @@ func (self *_parser) parseObjectPropertyKey() (unistring.String, ast.Expression, } default: // null, false, class, etc. - if isId(tkn) { + if token.IsId(tkn) { value = &ast.StringLiteral{ Idx: idx, Literal: literal, Value: unistring.String(literal), } tkn = token.KEYWORD + } else { + self.errorUnexpectedToken(tkn) } } - return parsedLiteral, value, tkn + return literal, parsedLiteral, value, tkn } func (self *_parser) parseObjectProperty() ast.Property { @@ -260,18 +331,19 @@ func (self *_parser) parseObjectProperty() ast.Property { Expression: self.parseAssignmentExpression(), } } - literal, value, tkn := self.parseObjectPropertyKey() + keyStartIdx := self.idx + literal, parsedLiteral, value, tkn := self.parseObjectPropertyKey() if tkn == token.IDENTIFIER || tkn == token.STRING || tkn == token.KEYWORD || tkn == token.ILLEGAL { switch { case self.token == token.LEFT_PARENTHESIS: - idx := self.idx parameterList := self.parseFunctionParameterList() node := &ast.FunctionLiteral{ - Function: idx, + Function: keyStartIdx, ParameterList: parameterList, } - self.parseFunctionBlock(node) + node.Body, node.DeclarationList = self.parseFunctionBlock() + node.Source = self.slice(keyStartIdx, node.Body.Idx1()) return &ast.PropertyKeyed{ Key: value, @@ -289,44 +361,44 @@ func (self *_parser) parseObjectProperty() ast.Property { } return &ast.PropertyShort{ Name: ast.Identifier{ - Name: literal, + Name: parsedLiteral, Idx: value.Idx0(), }, Initializer: initializer, } } case literal == "get" && self.token != token.COLON: - idx := self.idx - _, value, _ := self.parseObjectPropertyKey() + _, _, keyValue, _ := self.parseObjectPropertyKey() idx1 := self.idx parameterList := self.parseFunctionParameterList() if len(parameterList.List) > 0 || parameterList.Rest != nil { self.error(idx1, "Getter must not have any formal parameters.") } node := &ast.FunctionLiteral{ - Function: idx, + Function: keyStartIdx, ParameterList: parameterList, } - self.parseFunctionBlock(node) + node.Body, node.DeclarationList = self.parseFunctionBlock() + node.Source = self.slice(keyStartIdx, node.Body.Idx1()) return &ast.PropertyKeyed{ - Key: value, + Key: keyValue, Kind: ast.PropertyKindGet, Value: node, } case literal == "set" && self.token != token.COLON: - idx := self.idx - _, value, _ := self.parseObjectPropertyKey() + _, _, keyValue, _ := self.parseObjectPropertyKey() parameterList := self.parseFunctionParameterList() node := &ast.FunctionLiteral{ - Function: idx, + Function: keyStartIdx, ParameterList: parameterList, } - self.parseFunctionBlock(node) + node.Body, node.DeclarationList = self.parseFunctionBlock() + node.Source = self.slice(keyStartIdx, node.Body.Idx1()) return &ast.PropertyKeyed{ - Key: value, + Key: keyValue, Kind: ast.PropertyKindSet, Value: node, } @@ -334,12 +406,15 @@ func (self *_parser) parseObjectProperty() ast.Property { } self.expect(token.COLON) - - return &ast.PropertyKeyed{ - Key: value, - Kind: ast.PropertyKindValue, - Value: self.parseAssignmentExpression(), + if value != nil { + return &ast.PropertyKeyed{ + Key: value, + Kind: ast.PropertyKindValue, + Value: self.parseAssignmentExpression(), + Computed: tkn == token.ILLEGAL, + } } + return nil } func (self *_parser) parseObjectLiteral() *ast.ObjectLiteral { @@ -347,7 +422,9 @@ func (self *_parser) parseObjectLiteral() *ast.ObjectLiteral { idx0 := self.expect(token.LEFT_BRACE) for self.token != token.RIGHT_BRACE && self.token != token.EOF { property := self.parseObjectProperty() - value = append(value, property) + if property != nil { + value = append(value, property) + } if self.token != token.RIGHT_BRACE { self.expect(token.COMMA) } else { @@ -394,25 +471,63 @@ func (self *_parser) parseArrayLiteral() *ast.ArrayLiteral { } } +func (self *_parser) parseTemplateLiteral(tagged bool) *ast.TemplateLiteral { + res := &ast.TemplateLiteral{ + OpenQuote: self.idx, + } + for { + start := self.offset + literal, parsed, finished, parseErr, err := self.parseTemplateCharacters() + if err != "" { + self.error(self.offset, err) + } + res.Elements = append(res.Elements, &ast.TemplateElement{ + Idx: self.idxOf(start), + Literal: literal, + Parsed: parsed, + Valid: parseErr == "", + }) + if !tagged && parseErr != "" { + self.error(self.offset, parseErr) + } + end := self.chrOffset - 1 + self.next() + if finished { + res.CloseQuote = self.idxOf(end) + break + } + expr := self.parseExpression() + res.Expressions = append(res.Expressions, expr) + if self.token != token.RIGHT_BRACE { + self.errorUnexpectedToken(self.token) + } + } + return res +} + +func (self *_parser) parseTaggedTemplateLiteral(tag ast.Expression) *ast.TemplateLiteral { + l := self.parseTemplateLiteral(true) + l.Tag = tag + return l +} + func (self *_parser) parseArgumentList() (argumentList []ast.Expression, idx0, idx1 file.Idx) { idx0 = self.expect(token.LEFT_PARENTHESIS) - if self.token != token.RIGHT_PARENTHESIS { - for { - var item ast.Expression - if self.token == token.ELLIPSIS { - self.next() - item = &ast.SpreadElement{ - Expression: self.parseAssignmentExpression(), - } - } else { - item = self.parseAssignmentExpression() - } - argumentList = append(argumentList, item) - if self.token != token.COMMA { - break - } + for self.token != token.RIGHT_PARENTHESIS { + var item ast.Expression + if self.token == token.ELLIPSIS { self.next() + item = &ast.SpreadElement{ + Expression: self.parseAssignmentExpression(), + } + } else { + item = self.parseAssignmentExpression() } + argumentList = append(argumentList, item) + if self.token != token.COMMA { + break + } + self.next() } idx1 = self.expect(token.RIGHT_PARENTHESIS) return @@ -434,12 +549,17 @@ func (self *_parser) parseDotMember(left ast.Expression) ast.Expression { literal := self.parsedLiteral idx := self.idx - if self.token != token.IDENTIFIER && !isId(self.token) { + if !token.IsId(self.token) { self.expect(token.IDENTIFIER) self.nextStatement() return &ast.BadExpression{From: period, To: self.idx} } + if leftStr, ok := left.(*ast.StringLiteral); ok && leftStr.Value == "new" { + self.error(left.Idx0(), "Keyword must not contain escaped characters") + return &ast.BadExpression{From: period, To: self.idx} + } + self.next() return &ast.DotExpression{ @@ -467,8 +587,7 @@ func (self *_parser) parseNewExpression() ast.Expression { idx := self.expect(token.NEW) if self.token == token.PERIOD { self.next() - prop := self.parseIdentifier() - if prop.Name == "target" { + if self.literal == "target" { if !self.scope.inFunction { self.error(idx, "new.target expression is not allowed here") } @@ -477,12 +596,16 @@ func (self *_parser) parseNewExpression() ast.Expression { Name: unistring.String(token.NEW.String()), Idx: idx, }, - Property: prop, + Property: self.parseIdentifier(), } } self.errorUnexpectedToken(token.IDENTIFIER) } callee := self.parseLeftHandSideExpression() + if bad, ok := callee.(*ast.BadExpression); ok { + bad.From = idx + return bad + } node := &ast.NewExpression{ New: idx, Callee: callee, @@ -504,14 +627,17 @@ func (self *_parser) parseLeftHandSideExpression() ast.Expression { } else { left = self.parsePrimaryExpression() } - +L: for { - if self.token == token.PERIOD { + switch self.token { + case token.PERIOD: left = self.parseDotMember(left) - } else if self.token == token.LEFT_BRACKET { + case token.LEFT_BRACKET: left = self.parseBracketMember(left) - } else { - break + case token.BACKTICK: + left = self.parseTaggedTemplateLiteral(left) + default: + break L } } @@ -532,16 +658,19 @@ func (self *_parser) parseLeftHandSideExpressionAllowCall() ast.Expression { } else { left = self.parsePrimaryExpression() } - +L: for { - if self.token == token.PERIOD { + switch self.token { + case token.PERIOD: left = self.parseDotMember(left) - } else if self.token == token.LEFT_BRACKET { + case token.LEFT_BRACKET: left = self.parseBracketMember(left) - } else if self.token == token.LEFT_PARENTHESIS { + case token.LEFT_PARENTHESIS: left = self.parseCallExpression(left) - } else { - break + case token.BACKTICK: + left = self.parseTaggedTemplateLiteral(left) + default: + break L } } @@ -815,7 +944,7 @@ func (self *_parser) parseLogicalOrExpression() ast.Expression { return left } -func (self *_parser) parseConditionlExpression() ast.Expression { +func (self *_parser) parseConditionalExpression() ast.Expression { left := self.parseLogicalOrExpression() if self.token == token.QUESTION_MARK { @@ -833,13 +962,16 @@ func (self *_parser) parseConditionlExpression() ast.Expression { } func (self *_parser) parseAssignmentExpression() ast.Expression { + start := self.idx parenthesis := false + var state parserState if self.token == token.LET { self.token = token.IDENTIFIER } else if self.token == token.LEFT_PARENTHESIS { + self.mark(&state) parenthesis = true } - left := self.parseConditionlExpression() + left := self.parseConditionalExpression() var operator token.Token switch self.token { case token.ASSIGN: @@ -866,6 +998,35 @@ func (self *_parser) parseAssignmentExpression() ast.Expression { operator = token.SHIFT_RIGHT case token.UNSIGNED_SHIFT_RIGHT_ASSIGN: operator = token.UNSIGNED_SHIFT_RIGHT + case token.ARROW: + var paramList *ast.ParameterList + if id, ok := left.(*ast.Identifier); ok { + paramList = &ast.ParameterList{ + Opening: id.Idx, + Closing: id.Idx1(), + List: []*ast.Binding{{ + Target: id, + }}, + } + } else if parenthesis { + if seq, ok := left.(*ast.SequenceExpression); ok && len(self.errors) == 0 { + paramList = self.reinterpretSequenceAsArrowFuncParams(seq) + } else { + self.restore(&state) + paramList = self.parseFunctionParameterList() + } + } else { + self.error(left.Idx0(), "Malformed arrow function parameter list") + return &ast.BadExpression{From: left.Idx0(), To: left.Idx1()} + } + self.expect(token.ARROW) + node := &ast.ArrowFunctionLiteral{ + Start: start, + ParameterList: paramList, + } + node.Body, node.DeclarationList = self.parseArrowFunctionBody() + node.Source = self.slice(node.Start, node.Body.Idx1()) + return node } if operator != 0 { @@ -931,14 +1092,14 @@ func (self *_parser) checkComma(from, to file.Idx) { } } -func (self *_parser) reinterpretAsArrayAssignmentPattern(left *ast.ArrayLiteral) *ast.ArrayPattern { +func (self *_parser) reinterpretAsArrayAssignmentPattern(left *ast.ArrayLiteral) ast.Expression { value := left.Value var rest ast.Expression for i, item := range value { if spread, ok := item.(*ast.SpreadElement); ok { if i != len(value)-1 { self.error(item.Idx0(), "Rest element must be last element") - return nil + return &ast.BadExpression{From: left.Idx0(), To: left.Idx1()} } self.checkComma(spread.Expression.Idx1(), left.RightBracket) rest = self.reinterpretAsDestructAssignTarget(spread.Expression) @@ -965,14 +1126,14 @@ func (self *_parser) reinterpretArrayAssignPatternAsBinding(pattern *ast.ArrayPa return pattern } -func (self *_parser) reinterpretAsArrayBindingPattern(left *ast.ArrayLiteral) *ast.ArrayPattern { +func (self *_parser) reinterpretAsArrayBindingPattern(left *ast.ArrayLiteral) ast.BindingTarget { value := left.Value var rest ast.Expression for i, item := range value { if spread, ok := item.(*ast.SpreadElement); ok { if i != len(value)-1 { self.error(item.Idx0(), "Rest element must be last element") - return nil + return &ast.BadExpression{From: left.Idx0(), To: left.Idx1()} } self.checkComma(spread.Expression.Idx1(), left.RightBracket) rest = self.reinterpretAsDestructBindingTarget(spread.Expression) @@ -989,11 +1150,11 @@ func (self *_parser) reinterpretAsArrayBindingPattern(left *ast.ArrayLiteral) *a } } -func (self *_parser) parseArrayBindingPattern() *ast.ArrayPattern { +func (self *_parser) parseArrayBindingPattern() ast.BindingTarget { return self.reinterpretAsArrayBindingPattern(self.parseArrayLiteral()) } -func (self *_parser) parseObjectBindingPattern() *ast.ObjectPattern { +func (self *_parser) parseObjectBindingPattern() ast.BindingTarget { return self.reinterpretAsObjectBindingPattern(self.parseObjectLiteral()) } @@ -1009,7 +1170,7 @@ func (self *_parser) reinterpretArrayObjectPatternAsBinding(pattern *ast.ObjectP return pattern } -func (self *_parser) reinterpretAsObjectBindingPattern(expr *ast.ObjectLiteral) *ast.ObjectPattern { +func (self *_parser) reinterpretAsObjectBindingPattern(expr *ast.ObjectLiteral) ast.BindingTarget { var rest ast.Expression value := expr.Value for i, prop := range value { @@ -1025,7 +1186,7 @@ func (self *_parser) reinterpretAsObjectBindingPattern(expr *ast.ObjectLiteral) case *ast.SpreadElement: if i != len(expr.Value)-1 { self.error(prop.Idx0(), "Rest element must be last element") - return nil + return &ast.BadExpression{From: expr.Idx0(), To: expr.Idx1()} } // TODO make sure there is no trailing comma rest = self.reinterpretAsBindingRestElement(prop.Expression) @@ -1034,7 +1195,7 @@ func (self *_parser) reinterpretAsObjectBindingPattern(expr *ast.ObjectLiteral) } if !ok { self.error(prop.Idx0(), "Invalid destructuring binding target") - return nil + return &ast.BadExpression{From: expr.Idx0(), To: expr.Idx1()} } } return &ast.ObjectPattern{ @@ -1045,7 +1206,7 @@ func (self *_parser) reinterpretAsObjectBindingPattern(expr *ast.ObjectLiteral) } } -func (self *_parser) reinterpretAsObjectAssignmentPattern(l *ast.ObjectLiteral) *ast.ObjectPattern { +func (self *_parser) reinterpretAsObjectAssignmentPattern(l *ast.ObjectLiteral) ast.Expression { var rest ast.Expression value := l.Value for i, prop := range value { @@ -1061,7 +1222,7 @@ func (self *_parser) reinterpretAsObjectAssignmentPattern(l *ast.ObjectLiteral) case *ast.SpreadElement: if i != len(l.Value)-1 { self.error(prop.Idx0(), "Rest element must be last element") - return nil + return &ast.BadExpression{From: l.Idx0(), To: l.Idx1()} } // TODO make sure there is no trailing comma rest = prop.Expression @@ -1070,7 +1231,7 @@ func (self *_parser) reinterpretAsObjectAssignmentPattern(l *ast.ObjectLiteral) } if !ok { self.error(prop.Idx0(), "Invalid destructuring assignment target") - return nil + return &ast.BadExpression{From: l.Idx0(), To: l.Idx1()} } } return &ast.ObjectPattern{ @@ -1111,6 +1272,27 @@ func (self *_parser) reinterpretAsBindingElement(expr ast.Expression) ast.Expres } } +func (self *_parser) reinterpretAsBinding(expr ast.Expression) *ast.Binding { + switch expr := expr.(type) { + case *ast.AssignExpression: + if expr.Operator == token.ASSIGN { + return &ast.Binding{ + Target: self.reinterpretAsDestructBindingTarget(expr.Left), + Initializer: expr.Right, + } + } else { + self.error(expr.Idx0(), "Invalid destructuring assignment target") + return &ast.Binding{ + Target: &ast.BadExpression{From: expr.Idx0(), To: expr.Idx1()}, + } + } + default: + return &ast.Binding{ + Target: self.reinterpretAsDestructBindingTarget(expr), + } + } +} + func (self *_parser) reinterpretAsDestructAssignTarget(item ast.Expression) ast.Expression { switch item := item.(type) { case nil: diff --git a/vendor/github.com/dop251/goja/parser/lexer.go b/vendor/github.com/dop251/goja/parser/lexer.go index ab6fed7f4..37e1aacb2 100644 --- a/vendor/github.com/dop251/goja/parser/lexer.go +++ b/vendor/github.com/dop251/goja/parser/lexer.go @@ -3,26 +3,43 @@ package parser import ( "errors" "fmt" - "regexp" "strconv" "strings" "unicode" "unicode/utf16" "unicode/utf8" + "golang.org/x/text/unicode/rangetable" + "github.com/dop251/goja/file" "github.com/dop251/goja/token" "github.com/dop251/goja/unistring" ) -var matchIdentifier = regexp.MustCompile(`^[$_\p{L}][$_\p{L}\d}]*$`) +var ( + unicodeRangeIdNeg = rangetable.Merge(unicode.Pattern_Syntax, unicode.Pattern_White_Space) + unicodeRangeIdStartPos = rangetable.Merge(unicode.Letter, unicode.Nl, unicode.Other_ID_Start) + unicodeRangeIdContPos = rangetable.Merge(unicodeRangeIdStartPos, unicode.Mn, unicode.Mc, unicode.Nd, unicode.Pc, unicode.Other_ID_Continue) +) func isDecimalDigit(chr rune) bool { return '0' <= chr && chr <= '9' } func IsIdentifier(s string) bool { - return matchIdentifier.MatchString(s) + if s == "" { + return false + } + r, size := utf8.DecodeRuneInString(s) + if !isIdentifierStart(r) { + return false + } + for _, r := range s[size:] { + if !isIdentifierPart(r) { + return false + } + } + return true } func digitValue(chr rune) int { @@ -41,20 +58,28 @@ func isDigit(chr rune, base int) bool { return digitValue(chr) < base } +func isIdStartUnicode(r rune) bool { + return unicode.Is(unicodeRangeIdStartPos, r) && !unicode.Is(unicodeRangeIdNeg, r) +} + +func isIdPartUnicode(r rune) bool { + return unicode.Is(unicodeRangeIdContPos, r) && !unicode.Is(unicodeRangeIdNeg, r) || r == '\u200C' || r == '\u200D' +} + func isIdentifierStart(chr rune) bool { return chr == '$' || chr == '_' || chr == '\\' || 'a' <= chr && chr <= 'z' || 'A' <= chr && chr <= 'Z' || - chr >= utf8.RuneSelf && unicode.IsLetter(chr) + chr >= utf8.RuneSelf && isIdStartUnicode(chr) } func isIdentifierPart(chr rune) bool { return chr == '$' || chr == '_' || chr == '\\' || 'a' <= chr && chr <= 'z' || 'A' <= chr && chr <= 'Z' || '0' <= chr && chr <= '9' || - chr >= utf8.RuneSelf && (unicode.IsLetter(chr) || unicode.IsDigit(chr)) + chr >= utf8.RuneSelf && isIdPartUnicode(chr) } -func (self *_parser) scanIdentifier() (string, unistring.String, bool, error) { +func (self *_parser) scanIdentifier() (string, unistring.String, bool, string) { offset := self.chrOffset hasEscape := false isUnicode := false @@ -67,26 +92,49 @@ func (self *_parser) scanIdentifier() (string, unistring.String, bool, error) { distance := self.chrOffset - offset self.read() if self.chr != 'u' { - return "", "", false, fmt.Errorf("Invalid identifier escape character: %c (%s)", self.chr, string(self.chr)) + return "", "", false, fmt.Sprintf("Invalid identifier escape character: %c (%s)", self.chr, string(self.chr)) } var value rune - for j := 0; j < 4; j++ { + if self._peek() == '{' { self.read() - decimal, ok := hex2decimal(byte(self.chr)) - if !ok { - return "", "", false, fmt.Errorf("Invalid identifier escape character: %c (%s)", self.chr, string(self.chr)) + value = -1 + for value <= utf8.MaxRune { + self.read() + if self.chr == '}' { + break + } + decimal, ok := hex2decimal(byte(self.chr)) + if !ok { + return "", "", false, "Invalid Unicode escape sequence" + } + if value == -1 { + value = decimal + } else { + value = value<<4 | decimal + } + } + if value == -1 { + return "", "", false, "Invalid Unicode escape sequence" + } + } else { + for j := 0; j < 4; j++ { + self.read() + decimal, ok := hex2decimal(byte(self.chr)) + if !ok { + return "", "", false, fmt.Sprintf("Invalid identifier escape character: %c (%s)", self.chr, string(self.chr)) + } + value = value<<4 | decimal } - value = value<<4 | decimal } if value == '\\' { - return "", "", false, fmt.Errorf("Invalid identifier escape value: %c (%s)", value, string(value)) + return "", "", false, fmt.Sprintf("Invalid identifier escape value: %c (%s)", value, string(value)) } else if distance == 0 { if !isIdentifierStart(value) { - return "", "", false, fmt.Errorf("Invalid identifier escape value: %c (%s)", value, string(value)) + return "", "", false, fmt.Sprintf("Invalid identifier escape value: %c (%s)", value, string(value)) } } else if distance > 0 { if !isIdentifierPart(value) { - return "", "", false, fmt.Errorf("Invalid identifier escape value: %c (%s)", value, string(value)) + return "", "", false, fmt.Sprintf("Invalid identifier escape value: %c (%s)", value, string(value)) } } r = value @@ -103,16 +151,17 @@ func (self *_parser) scanIdentifier() (string, unistring.String, bool, error) { literal := self.str[offset:self.chrOffset] var parsed unistring.String if hasEscape || isUnicode { - var err error - parsed, err = parseStringLiteral1(literal, length, isUnicode) - if err != nil { + var err string + // TODO strict + parsed, err = parseStringLiteral(literal, length, isUnicode, false) + if err != "" { return "", "", false, err } } else { parsed = unistring.String(literal) } - return literal, parsed, hasEscape, nil + return literal, parsed, hasEscape, "" } // 7.2 @@ -137,51 +186,31 @@ func isLineTerminator(chr rune) bool { return false } -func isId(tkn token.Token) bool { - switch tkn { - case token.KEYWORD, - token.BOOLEAN, - token.NULL, - token.THIS, - token.IF, - token.IN, - token.OF, - token.DO, +type parserState struct { + tok token.Token + literal string + parsedLiteral unistring.String + implicitSemicolon, insertSemicolon bool + chr rune + chrOffset, offset int + errorCount int +} - token.VAR, - token.LET, - token.FOR, - token.NEW, - token.TRY, - - token.ELSE, - token.CASE, - token.VOID, - token.WITH, - - token.CONST, - token.WHILE, - token.BREAK, - token.CATCH, - token.THROW, - - token.RETURN, - token.TYPEOF, - token.DELETE, - token.SWITCH, - - token.DEFAULT, - token.FINALLY, - - token.FUNCTION, - token.CONTINUE, - token.DEBUGGER, - - token.INSTANCEOF: - - return true +func (self *_parser) mark(state *parserState) *parserState { + if state == nil { + state = &parserState{} } - return false + state.tok, state.literal, state.parsedLiteral, state.implicitSemicolon, state.insertSemicolon, state.chr, state.chrOffset, state.offset = + self.token, self.literal, self.parsedLiteral, self.implicitSemicolon, self.insertSemicolon, self.chr, self.chrOffset, self.offset + + state.errorCount = len(self.errors) + return state +} + +func (self *_parser) restore(state *parserState) { + self.token, self.literal, self.parsedLiteral, self.implicitSemicolon, self.insertSemicolon, self.chr, self.chrOffset, self.offset = + state.tok, state.literal, state.parsedLiteral, state.implicitSemicolon, state.insertSemicolon, state.chr, state.chrOffset, state.offset + self.errors = self.errors[:state.errorCount] } func (self *_parser) peek() token.Token { @@ -203,10 +232,10 @@ func (self *_parser) scan() (tkn token.Token, literal string, parsedLiteral unis switch chr := self.chr; { case isIdentifierStart(chr): - var err error + var err string var hasEscape bool literal, parsedLiteral, hasEscape, err = self.scanIdentifier() - if err != nil { + if err != "" { tkn = token.ILLEGAL break } @@ -214,34 +243,29 @@ func (self *_parser) scan() (tkn token.Token, literal string, parsedLiteral unis // Keywords are longer than 1 character, avoid lookup otherwise var strict bool tkn, strict = token.IsKeyword(string(parsedLiteral)) - + if hasEscape { + self.insertSemicolon = true + if tkn != 0 && tkn != token.LET || parsedLiteral == "true" || parsedLiteral == "false" || parsedLiteral == "null" { + tkn = token.KEYWORD + } else { + tkn = token.IDENTIFIER + } + return + } switch tkn { case 0: // Not a keyword if parsedLiteral == "true" || parsedLiteral == "false" { - if hasEscape { - tkn = token.STRING - return - } self.insertSemicolon = true tkn = token.BOOLEAN return } else if parsedLiteral == "null" { - if hasEscape { - tkn = token.STRING - return - } self.insertSemicolon = true tkn = token.NULL return } case token.KEYWORD: - if hasEscape { - tkn = token.STRING - return - } - tkn = token.KEYWORD if strict { // TODO If strict and in strict mode, then this is not a break break @@ -255,17 +279,10 @@ func (self *_parser) scan() (tkn token.Token, literal string, parsedLiteral unis token.RETURN, token.CONTINUE, token.DEBUGGER: - if hasEscape { - tkn = token.STRING - return - } self.insertSemicolon = true return default: - if hasEscape { - tkn = token.STRING - } return } @@ -363,7 +380,11 @@ func (self *_parser) scan() (tkn token.Token, literal string, parsedLiteral unis case '=': if self.chr == '>' { self.read() - tkn = token.ARROW + if self.implicitSemicolon { + tkn = token.ILLEGAL + } else { + tkn = token.ARROW + } } else { tkn = self.switch2(token.ASSIGN, token.EQUAL) if tkn == token.EQUAL && self.chr == '=' { @@ -388,11 +409,13 @@ func (self *_parser) scan() (tkn token.Token, literal string, parsedLiteral unis case '"', '\'': insertSemicolon = true tkn = token.STRING - var err error + var err string literal, parsedLiteral, err = self.scanString(self.chrOffset-1, true) - if err != nil { + if err != "" { tkn = token.ILLEGAL } + case '`': + tkn = token.BACKTICK default: self.errorUnexpected(idx, chr) tkn = token.ILLEGAL @@ -580,20 +603,40 @@ func (self *_parser) scanEscape(quote rune) (int, bool) { length, base = 2, 16 case 'u': self.read() - length, base = 4, 16 + if self.chr == '{' { + self.read() + length, base = 0, 16 + } else { + length, base = 4, 16 + } default: self.read() // Always make progress } - if length > 0 { + if base > 0 { var value uint32 - for ; length > 0 && self.chr != quote && self.chr >= 0; length-- { - digit := uint32(digitValue(self.chr)) - if digit >= base { - break + if length > 0 { + for ; length > 0 && self.chr != quote && self.chr >= 0; length-- { + digit := uint32(digitValue(self.chr)) + if digit >= base { + break + } + value = value*base + digit + self.read() + } + } else { + for self.chr != quote && self.chr >= 0 && value < utf8.MaxRune { + if self.chr == '}' { + self.read() + break + } + digit := uint32(digitValue(self.chr)) + if digit >= base { + break + } + value = value*base + digit + self.read() } - value = value*base + digit - self.read() } chr = rune(value) } @@ -606,7 +649,7 @@ func (self *_parser) scanEscape(quote rune) (int, bool) { return 1, false } -func (self *_parser) scanString(offset int, parse bool) (literal string, parsed unistring.String, err error) { +func (self *_parser) scanString(offset int, parse bool) (literal string, parsed unistring.String, err string) { // " ' / quote := rune(self.str[offset]) length := 0 @@ -651,7 +694,8 @@ func (self *_parser) scanString(offset int, parse bool) (literal string, parsed self.read() literal = self.str[offset:self.chrOffset] if parse { - parsed, err = parseStringLiteral1(literal[1:len(literal)-1], length, isUnicode) + // TODO strict + parsed, err = parseStringLiteral(literal[1:len(literal)-1], length, isUnicode, false) } return @@ -662,7 +706,7 @@ newline: errStr = "Invalid regular expression: missing /" self.error(self.idxOf(offset), errStr) } - return "", "", errors.New(errStr) + return "", "", errStr } func (self *_parser) scanNewline() { @@ -675,6 +719,92 @@ func (self *_parser) scanNewline() { self.read() } +func (self *_parser) parseTemplateCharacters() (literal string, parsed unistring.String, finished bool, parseErr, err string) { + offset := self.chrOffset + var end int + length := 0 + isUnicode := false + hasCR := false + for { + chr := self.chr + if chr < 0 { + goto unterminated + } + self.read() + if chr == '`' { + finished = true + end = self.chrOffset - 1 + break + } + if chr == '\\' { + if self.chr == '\n' || self.chr == '\r' || self.chr == '\u2028' || self.chr == '\u2029' || self.chr < 0 { + if self.chr == '\r' { + hasCR = true + } + self.scanNewline() + } else { + if self.chr == '8' || self.chr == '9' { + if parseErr == "" { + parseErr = "\\8 and \\9 are not allowed in template strings." + } + } + l, u := self.scanEscape('`') + length += l + if u { + isUnicode = true + } + } + continue + } + if chr == '$' && self.chr == '{' { + self.read() + end = self.chrOffset - 2 + break + } + if chr >= utf8.RuneSelf { + isUnicode = true + if chr > 0xFFFF { + length++ + } + } else if chr == '\r' { + hasCR = true + if self.chr == '\n' { + length-- + } + } + length++ + } + literal = self.str[offset:end] + if hasCR { + literal = normaliseCRLF(literal) + } + if parseErr == "" { + parsed, parseErr = parseStringLiteral(literal, length, isUnicode, true) + } + self.insertSemicolon = true + return +unterminated: + err = err_UnexpectedEndOfInput + finished = true + return +} + +func normaliseCRLF(s string) string { + var buf strings.Builder + buf.Grow(len(s)) + for i := 0; i < len(s); i++ { + if s[i] == '\r' { + buf.WriteByte('\n') + if i < len(s)-1 && s[i+1] == '\n' { + i++ + } + } else { + buf.WriteByte(s[i]) + } + } + return buf.String() +} + func hex2decimal(chr byte) (value rune, ok bool) { { chr := rune(chr) @@ -729,7 +859,7 @@ error: return nil, errors.New("Illegal numeric literal") } -func parseStringLiteral1(literal string, length int, unicode bool) (unistring.String, error) { +func parseStringLiteral(literal string, length int, unicode, strict bool) (unistring.String, string) { var sb strings.Builder var chars []uint16 if unicode { @@ -798,17 +928,46 @@ func parseStringLiteral1(literal string, length int, unicode bool) (unistring.St case 'x': size = 2 case 'u': - size = 4 + if str == "" || str[0] != '{' { + size = 4 + } } - if len(str) < size { - return "", fmt.Errorf("invalid escape: \\%s: len(%q) != %d", string(chr), str, size) - } - for j := 0; j < size; j++ { - decimal, ok := hex2decimal(str[j]) - if !ok { - return "", fmt.Errorf("invalid escape: \\%s: %q", string(chr), str[:size]) + if size > 0 { + if len(str) < size { + return "", fmt.Sprintf("invalid escape: \\%s: len(%q) != %d", string(chr), str, size) + } + for j := 0; j < size; j++ { + decimal, ok := hex2decimal(str[j]) + if !ok { + return "", fmt.Sprintf("invalid escape: \\%s: %q", string(chr), str[:size]) + } + value = value<<4 | decimal + } + } else { + str = str[1:] + var val rune + value = -1 + for ; size < len(str); size++ { + if str[size] == '}' { + if size == 0 { + return "", fmt.Sprintf("invalid escape: \\%s", string(chr)) + } + size++ + value = val + break + } + decimal, ok := hex2decimal(str[size]) + if !ok { + return "", fmt.Sprintf("invalid escape: \\%s: %q", string(chr), str[:size+1]) + } + val = val<<4 | decimal + if val > utf8.MaxRune { + return "", fmt.Sprintf("undefined Unicode code-point: %q", str[:size+1]) + } + } + if value == -1 { + return "", fmt.Sprintf("unterminated \\u{: %q", str) } - value = value<<4 | decimal } str = str[size:] if chr == 'x' { @@ -824,7 +983,9 @@ func parseStringLiteral1(literal string, length int, unicode bool) (unistring.St } fallthrough case '1', '2', '3', '4', '5', '6', '7': - // TODO strict + if strict { + return "", "Octal escape sequences are not allowed in this context" + } value = rune(chr) - '0' j := 0 for ; j < 2; j++ { @@ -865,7 +1026,7 @@ func parseStringLiteral1(literal string, length int, unicode bool) (unistring.St } } else { if value >= utf8.RuneSelf { - return "", fmt.Errorf("Unexpected unicode character") + return "", "Unexpected unicode character" } sb.WriteByte(byte(value)) } @@ -875,12 +1036,12 @@ func parseStringLiteral1(literal string, length int, unicode bool) (unistring.St if len(chars) != length+1 { panic(fmt.Errorf("unexpected unicode length while parsing '%s'", literal)) } - return unistring.FromUtf16(chars), nil + return unistring.FromUtf16(chars), "" } if sb.Len() != length { panic(fmt.Errorf("unexpected length while parsing '%s'", literal)) } - return unistring.String(sb.String()), nil + return unistring.String(sb.String()), "" } func (self *_parser) scanNumericLiteral(decimalPoint bool) (token.Token, string) { @@ -891,53 +1052,41 @@ func (self *_parser) scanNumericLiteral(decimalPoint bool) (token.Token, string) if decimalPoint { offset-- self.scanMantissa(10) - goto exponent - } - - if self.chr == '0' { - offset := self.chrOffset - self.read() - if self.chr == 'x' || self.chr == 'X' { - // Hexadecimal + } else { + if self.chr == '0' { self.read() - if isDigit(self.chr, 16) { + base := 0 + switch self.chr { + case 'x', 'X': + base = 16 + case 'o', 'O': + base = 8 + case 'b', 'B': + base = 2 + case '.', 'e', 'E': + // no-op + default: + // legacy octal + self.scanMantissa(8) + goto end + } + if base > 0 { self.read() - } else { - return token.ILLEGAL, self.str[offset:self.chrOffset] + if !isDigit(self.chr, base) { + return token.ILLEGAL, self.str[offset:self.chrOffset] + } + self.scanMantissa(base) + goto end } - self.scanMantissa(16) - - if self.chrOffset-offset <= 2 { - // Only "0x" or "0X" - self.error(0, "Illegal hexadecimal number") - } - - goto hexadecimal - } else if self.chr == '.' { - // Float - goto float } else { - // Octal, Float - if self.chr == 'e' || self.chr == 'E' { - goto exponent - } - self.scanMantissa(8) - if self.chr == '8' || self.chr == '9' { - return token.ILLEGAL, self.str[offset:self.chrOffset] - } - goto octal + self.scanMantissa(10) + } + if self.chr == '.' { + self.read() + self.scanMantissa(10) } } - self.scanMantissa(10) - -float: - if self.chr == '.' { - self.read() - self.scanMantissa(10) - } - -exponent: if self.chr == 'e' || self.chr == 'E' { self.read() if self.chr == '-' || self.chr == '+' { @@ -950,9 +1099,7 @@ exponent: return token.ILLEGAL, self.str[offset:self.chrOffset] } } - -hexadecimal: -octal: +end: if isIdentifierStart(self.chr) || isDecimalDigit(self.chr) { return token.ILLEGAL, self.str[offset:self.chrOffset] } diff --git a/vendor/github.com/dop251/goja/parser/regexp.go b/vendor/github.com/dop251/goja/parser/regexp.go index 12f0cb8b3..2dbd0e191 100644 --- a/vendor/github.com/dop251/goja/parser/regexp.go +++ b/vendor/github.com/dop251/goja/parser/regexp.go @@ -9,6 +9,7 @@ import ( const ( WhitespaceChars = " \f\n\r\t\v\u00a0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff" + Re2Dot = "[^\r\n\u2028\u2029]" ) type regexpParseError struct { @@ -146,7 +147,7 @@ func (self *_RegExp_parser) scan() { self.error(true, "Unmatched ')'") return case '.': - self.writeString("[^\\r\\n]") + self.writeString(Re2Dot) self.read() default: self.pass() @@ -184,7 +185,7 @@ func (self *_RegExp_parser) scanGroup() { case '[': self.scanBracket() case '.': - self.writeString("[^\\r\\n]") + self.writeString(Re2Dot) self.read() default: self.pass() @@ -284,7 +285,12 @@ func (self *_RegExp_parser) scanEscape(inClass bool) { case 'u': self.read() - length, base = 4, 16 + if self.chr == '{' { + self.read() + length, base = 0, 16 + } else { + length, base = 4, 16 + } case 'b': if inClass { @@ -365,31 +371,36 @@ func (self *_RegExp_parser) scanEscape(inClass bool) { // Otherwise, we're a \u.... or \x... valueOffset := self.chrOffset - var value uint32 - { - length := length - for ; length > 0; length-- { + if length > 0 { + for length := length; length > 0; length-- { + digit := uint32(digitValue(self.chr)) + if digit >= base { + // Not a valid digit + goto skip + } + self.read() + } + } else { + for self.chr != '}' && self.chr != -1 { digit := uint32(digitValue(self.chr)) if digit >= base { // Not a valid digit goto skip } - value = value*base + digit self.read() } } - if length == 4 { + if length == 4 || length == 0 { self.write([]byte{ '\\', 'x', '{', - self.str[valueOffset+0], - self.str[valueOffset+1], - self.str[valueOffset+2], - self.str[valueOffset+3], - '}', }) + self.passString(valueOffset, self.chrOffset) + if length != 0 { + self.writeByte('}') + } } else if length == 2 { self.passString(offset-1, valueOffset+2) } else { diff --git a/vendor/github.com/dop251/goja/parser/statement.go b/vendor/github.com/dop251/goja/parser/statement.go index cc3cb0ce2..8c5320c59 100644 --- a/vendor/github.com/dop251/goja/parser/statement.go +++ b/vendor/github.com/dop251/goja/parser/statement.go @@ -3,14 +3,13 @@ package parser import ( "encoding/base64" "fmt" + "io/ioutil" + "strings" + "github.com/dop251/goja/ast" "github.com/dop251/goja/file" "github.com/dop251/goja/token" "github.com/go-sourcemap/sourcemap" - "io/ioutil" - "net/url" - "path" - "strings" ) func (self *_parser) parseBlockStatement() *ast.BlockStatement { @@ -194,24 +193,32 @@ func (self *_parser) parseFunction(declaration bool) *ast.FunctionLiteral { } node.Name = name node.ParameterList = self.parseFunctionParameterList() - self.parseFunctionBlock(node) + node.Body, node.DeclarationList = self.parseFunctionBlock() node.Source = self.slice(node.Idx0(), node.Idx1()) return node } -func (self *_parser) parseFunctionBlock(node *ast.FunctionLiteral) { - { - self.openScope() - inFunction := self.scope.inFunction - self.scope.inFunction = true - defer func() { - self.scope.inFunction = inFunction - self.closeScope() - }() - node.Body = self.parseBlockStatement() - node.DeclarationList = self.scope.declarationList +func (self *_parser) parseFunctionBlock() (body *ast.BlockStatement, declarationList []*ast.VariableDeclaration) { + self.openScope() + inFunction := self.scope.inFunction + self.scope.inFunction = true + defer func() { + self.scope.inFunction = inFunction + self.closeScope() + }() + body = self.parseBlockStatement() + declarationList = self.scope.declarationList + return +} + +func (self *_parser) parseArrowFunctionBody() (ast.ConciseBody, []*ast.VariableDeclaration) { + if self.token == token.LEFT_BRACE { + return self.parseFunctionBlock() } + return &ast.ExpressionBody{ + Expression: self.parseAssignmentExpression(), + }, nil } func (self *_parser) parseDebuggerStatement() ast.Statement { @@ -262,6 +269,7 @@ func (self *_parser) parseThrowStatement() ast.Statement { } node := &ast.ThrowStatement{ + Throw: idx, Argument: self.parseExpression(), } @@ -451,14 +459,14 @@ func (self *_parser) parseForOrForInStatement() ast.Statement { } } if forIn || forOf { + if list[0].Initializer != nil { + self.error(list[0].Initializer.Idx0(), "for-in loop variable declaration may not have an initializer") + } if tok == token.VAR { into = &ast.ForIntoVar{ Binding: list[0], } } else { - if list[0].Initializer != nil { - self.error(list[0].Initializer.Idx0(), "for-in loop variable declaration may not have an initializer") - } into = &ast.ForDeclaration{ Idx: idx, IsConst: tok == token.CONST, @@ -686,26 +694,14 @@ func (self *_parser) parseSourceMap() *sourcemap.Consumer { b64 := urlStr[b64Index+1:] data, err = base64.StdEncoding.DecodeString(b64) } else { - var smUrl *url.URL - if smUrl, err = url.Parse(urlStr); err == nil { - p := smUrl.Path - if !path.IsAbs(p) { - baseName := self.file.Name() - baseUrl, err1 := url.Parse(baseName) - if err1 == nil && baseUrl.Scheme != "" { - baseUrl.Path = path.Join(path.Dir(baseUrl.Path), p) - p = baseUrl.String() - } else { - p = path.Join(path.Dir(baseName), p) - } - } + if sourceURL := file.ResolveSourcemapURL(self.file.Name(), urlStr); sourceURL != nil { if self.opts.sourceMapLoader != nil { - data, err = self.opts.sourceMapLoader(p) + data, err = self.opts.sourceMapLoader(sourceURL.String()) } else { - if smUrl.Scheme == "" || smUrl.Scheme == "file" { - data, err = ioutil.ReadFile(p) + if sourceURL.Scheme == "" || sourceURL.Scheme == "file" { + data, err = ioutil.ReadFile(sourceURL.Path) } else { - err = fmt.Errorf("unsupported source map URL scheme: %s", smUrl.Scheme) + err = fmt.Errorf("unsupported source map URL scheme: %s", sourceURL.Scheme) } } } diff --git a/vendor/github.com/dop251/goja/proxy.go b/vendor/github.com/dop251/goja/proxy.go index de4901315..4007fd399 100644 --- a/vendor/github.com/dop251/goja/proxy.go +++ b/vendor/github.com/dop251/goja/proxy.go @@ -28,24 +28,12 @@ func (i *proxyPropIter) next() (propIterItem, iterNextFunc) { for i.idx < len(i.names) { name := i.names[i.idx] i.idx++ - if prop := i.p.val.getOwnProp(name); prop != nil { - return propIterItem{name: name.string(), value: prop}, i.next - } + return propIterItem{name: name}, i.next } return propIterItem{}, nil } func (r *Runtime) newProxyObject(target, handler, proto *Object) *proxyObject { - if p, ok := target.self.(*proxyObject); ok { - if p.handler == nil { - panic(r.NewTypeError("Cannot create proxy with a revoked proxy as target")) - } - } - if p, ok := handler.self.(*proxyObject); ok { - if p.handler == nil { - panic(r.NewTypeError("Cannot create proxy with a revoked proxy as handler")) - } - } return r._newProxyObject(target, &jsProxyHandler{handler: handler}, proto) } @@ -726,7 +714,7 @@ func (p *proxyObject) setForeignSym(s *Symbol, v, receiver Value, throw bool) (b return p.proxySetSym(s, v, receiver, throw), true } -func (p *proxyObject) proxyDeleteCheck(trapResult bool, targetProp Value, name fmt.Stringer, target *Object) { +func (p *proxyObject) proxyDeleteCheck(trapResult bool, targetProp Value, name fmt.Stringer, target *Object, throw bool) { if trapResult { if targetProp == nil { return @@ -739,13 +727,15 @@ func (p *proxyObject) proxyDeleteCheck(trapResult bool, targetProp Value, name f if !target.self.isExtensible() { panic(p.val.runtime.NewTypeError("'deleteProperty' on proxy: trap returned truish for property '%s' but the proxy target is non-extensible", name.String())) } + } else { + p.val.runtime.typeErrorResult(throw, "'deleteProperty' on proxy: trap returned falsish for property '%s'", name.String()) } } func (p *proxyObject) deleteStr(name unistring.String, throw bool) bool { target := p.target if v, ok := p.checkHandler().deleteStr(target, name); ok { - p.proxyDeleteCheck(v, target.self.getOwnPropStr(name), name, target) + p.proxyDeleteCheck(v, target.self.getOwnPropStr(name), name, target, throw) return v } @@ -755,7 +745,7 @@ func (p *proxyObject) deleteStr(name unistring.String, throw bool) bool { func (p *proxyObject) deleteIdx(idx valueInt, throw bool) bool { target := p.target if v, ok := p.checkHandler().deleteIdx(target, idx); ok { - p.proxyDeleteCheck(v, target.self.getOwnPropIdx(idx), idx, target) + p.proxyDeleteCheck(v, target.self.getOwnPropIdx(idx), idx, target, throw) return v } @@ -765,20 +755,20 @@ func (p *proxyObject) deleteIdx(idx valueInt, throw bool) bool { func (p *proxyObject) deleteSym(s *Symbol, throw bool) bool { target := p.target if v, ok := p.checkHandler().deleteSym(target, s); ok { - p.proxyDeleteCheck(v, target.self.getOwnPropSym(s), s, target) + p.proxyDeleteCheck(v, target.self.getOwnPropSym(s), s, target, throw) return v } return target.self.deleteSym(s, throw) } -func (p *proxyObject) ownPropertyKeys(all bool, _ []Value) []Value { +func (p *proxyObject) keys(all bool, _ []Value) []Value { if v, ok := p.proxyOwnKeys(); ok { if !all { k := 0 for i, key := range v { prop := p.val.getOwnProp(key) - if prop == nil { + if prop == nil || prop == _undefined { continue } if prop, ok := prop.(*valueProperty); ok && !prop.enumerable { @@ -793,7 +783,7 @@ func (p *proxyObject) ownPropertyKeys(all bool, _ []Value) []Value { } return v } - return p.target.self.ownPropertyKeys(all, nil) + return p.target.self.keys(all, nil) } func (p *proxyObject) proxyOwnKeys() ([]Value, bool) { @@ -817,16 +807,21 @@ func (p *proxyObject) proxyOwnKeys() ([]Value, bool) { keySet[item] = struct{}{} } ext := target.self.isExtensible() - for _, itemName := range target.self.ownPropertyKeys(true, nil) { - if _, exists := keySet[itemName]; exists { - delete(keySet, itemName) + for item, next := target.self.iterateKeys()(); next != nil; item, next = next() { + if _, exists := keySet[item.name]; exists { + delete(keySet, item.name) } else { if !ext { - panic(p.val.runtime.NewTypeError("'ownKeys' on proxy: trap result did not include '%s'", itemName.String())) + panic(p.val.runtime.NewTypeError("'ownKeys' on proxy: trap result did not include '%s'", item.name.String())) + } + var prop Value + if item.value == nil { + prop = target.getOwnProp(item.name) + } else { + prop = item.value } - prop := target.getOwnProp(itemName) if prop, ok := prop.(*valueProperty); ok && !prop.configurable { - panic(p.val.runtime.NewTypeError("'ownKeys' on proxy: trap result did not include non-configurable '%s'", itemName.String())) + panic(p.val.runtime.NewTypeError("'ownKeys' on proxy: trap result did not include non-configurable '%s'", item.name.String())) } } } @@ -840,10 +835,24 @@ func (p *proxyObject) proxyOwnKeys() ([]Value, bool) { return nil, false } -func (p *proxyObject) enumerateOwnKeys() iterNextFunc { +func (p *proxyObject) iterateStringKeys() iterNextFunc { return (&proxyPropIter{ p: p, - names: p.ownKeys(true, nil), + names: p.stringKeys(true, nil), + }).next +} + +func (p *proxyObject) iterateSymbols() iterNextFunc { + return (&proxyPropIter{ + p: p, + names: p.symbols(true, nil), + }).next +} + +func (p *proxyObject) iterateKeys() iterNextFunc { + return (&proxyPropIter{ + p: p, + names: p.keys(true, nil), }).next } @@ -891,14 +900,6 @@ func (p *proxyObject) __isCompatibleDescriptor(extensible bool, desc *PropertyDe return extensible } - /*if desc.Empty() { - return true - }*/ - - /*if p.__isEquivalentDescriptor(desc, current) { - return true - }*/ - if !current.configurable { if desc.Configurable == FLAG_TRUE { return false @@ -999,25 +1000,30 @@ func (p *proxyObject) filterKeys(vals []Value, all, symbols bool) []Value { return vals } -func (p *proxyObject) ownKeys(all bool, _ []Value) []Value { // we can assume accum is empty +func (p *proxyObject) stringKeys(all bool, _ []Value) []Value { // we can assume accum is empty + var keys []Value if vals, ok := p.proxyOwnKeys(); ok { - return p.filterKeys(vals, all, false) + keys = vals + } else { + keys = p.target.self.stringKeys(true, nil) } - return p.target.self.ownKeys(all, nil) + return p.filterKeys(keys, all, false) } -func (p *proxyObject) ownSymbols(all bool, accum []Value) []Value { +func (p *proxyObject) symbols(all bool, accum []Value) []Value { + var symbols []Value if vals, ok := p.proxyOwnKeys(); ok { - res := p.filterKeys(vals, all, true) - if accum == nil { - return res - } - accum = append(accum, res...) - return accum + symbols = vals + } else { + symbols = p.target.self.symbols(true, nil) } - - return p.target.self.ownSymbols(all, accum) + symbols = p.filterKeys(symbols, all, true) + if accum == nil { + return symbols + } + accum = append(accum, symbols...) + return accum } func (p *proxyObject) className() string { diff --git a/vendor/github.com/dop251/goja/regexp.go b/vendor/github.com/dop251/goja/regexp.go index e98cd28a7..97603ff61 100644 --- a/vendor/github.com/dop251/goja/regexp.go +++ b/vendor/github.com/dop251/goja/regexp.go @@ -511,10 +511,11 @@ func (r *regexpObject) execResultToArray(target valueString, result []int) Value captureCount := len(result) >> 1 valueArray := make([]Value, captureCount) matchIndex := result[0] - lowerBound := matchIndex - for index := 0; index < captureCount; index++ { + valueArray[0] = target.substring(result[0], result[1]) + lowerBound := 0 + for index := 1; index < captureCount; index++ { offset := index << 1 - if result[offset] >= lowerBound { + if result[offset] >= 0 && result[offset+1] >= lowerBound { valueArray[index] = target.substring(result[offset], result[offset+1]) lowerBound = result[offset] } else { diff --git a/vendor/github.com/dop251/goja/runtime.go b/vendor/github.com/dop251/goja/runtime.go index 03ace1eb2..dd1736d49 100644 --- a/vendor/github.com/dop251/goja/runtime.go +++ b/vendor/github.com/dop251/goja/runtime.go @@ -33,6 +33,7 @@ var ( typeValue = reflect.TypeOf((*Value)(nil)).Elem() typeObject = reflect.TypeOf((*Object)(nil)) typeTime = reflect.TypeOf(time.Time{}) + typeBytes = reflect.TypeOf(([]byte)(nil)) ) type iterationKind int @@ -57,6 +58,7 @@ type global struct { Date *Object Symbol *Object Proxy *Object + Promise *Object ArrayBuffer *Object DataView *Object @@ -77,6 +79,7 @@ type global struct { Set *Object Error *Object + AggregateError *Object TypeError *Object ReferenceError *Object SyntaxError *Object @@ -103,6 +106,7 @@ type global struct { WeakMapPrototype *Object MapPrototype *Object SetPrototype *Object + PromisePrototype *Object IteratorPrototype *Object ArrayIteratorPrototype *Object @@ -112,6 +116,7 @@ type global struct { RegExpStringIteratorPrototype *Object ErrorPrototype *Object + AggregateErrorPrototype *Object TypeErrorPrototype *Object SyntaxErrorPrototype *Object RangeErrorPrototype *Object @@ -176,6 +181,10 @@ type Runtime struct { vm *vm hash *maphash.Hash idSeq uint64 + + jobQueue []func() + + promiseRejectionTracker PromiseRejectionTracker } type StackFrame struct { @@ -208,6 +217,40 @@ func (f *StackFrame) Position() file.Position { return f.prg.src.Position(f.prg.sourceOffset(f.pc)) } +func (f *StackFrame) WriteToValueBuilder(b *valueStringBuilder) { + if f.prg != nil { + if n := f.prg.funcName; n != "" { + b.WriteString(stringValueFromRaw(n)) + b.WriteASCII(" (") + } + p := f.Position() + if p.Filename != "" { + b.WriteASCII(p.Filename) + } else { + b.WriteASCII("") + } + b.WriteRune(':') + b.WriteASCII(strconv.Itoa(p.Line)) + b.WriteRune(':') + b.WriteASCII(strconv.Itoa(p.Column)) + b.WriteRune('(') + b.WriteASCII(strconv.Itoa(f.pc)) + b.WriteRune(')') + if f.prg.funcName != "" { + b.WriteRune(')') + } + } else { + if f.funcName != "" { + b.WriteString(stringValueFromRaw(f.funcName)) + b.WriteASCII(" (") + } + b.WriteASCII("native") + if f.funcName != "" { + b.WriteRune(')') + } + } +} + func (f *StackFrame) Write(b *bytes.Buffer) { if f.prg != nil { if n := f.prg.funcName; n != "" { @@ -248,8 +291,11 @@ type Exception struct { } type uncatchableException struct { - stack *[]StackFrame - err error + err error +} + +func (ue *uncatchableException) Unwrap() error { + return ue.err } type InterruptedError struct { @@ -257,6 +303,13 @@ type InterruptedError struct { iface interface{} } +func (ue *InterruptedError) Unwrap() error { + if err, ok := ue.iface.(error); ok { + return err + } + return nil +} + type StackOverflowError struct { Exception } @@ -352,9 +405,11 @@ func (r *Runtime) init() { } r.vm.init() - r.global.FunctionPrototype = r.newNativeFunc(func(FunctionCall) Value { + funcProto := r.newNativeFunc(func(FunctionCall) Value { return _undefined }, nil, " ", nil, 0) + r.global.FunctionPrototype = funcProto + funcProtoObj := funcProto.self.(*nativeFuncObject) r.global.IteratorPrototype = r.newLazyObject(r.createIterProto) @@ -384,13 +439,28 @@ func (r *Runtime) init() { r.initWeakMap() r.initMap() r.initSet() + r.initPromise() - r.global.thrower = r.newNativeFunc(r.builtin_thrower, nil, "thrower", nil, 0) + r.global.thrower = r.newNativeFunc(r.builtin_thrower, nil, "", nil, 0) r.global.throwerProperty = &valueProperty{ getterFunc: r.global.thrower, setterFunc: r.global.thrower, accessor: true, } + r.object_freeze(FunctionCall{Arguments: []Value{r.global.thrower}}) + + funcProtoObj._put("caller", &valueProperty{ + getterFunc: r.global.thrower, + setterFunc: r.global.thrower, + accessor: true, + configurable: true, + }) + funcProtoObj._put("arguments", &valueProperty{ + getterFunc: r.global.thrower, + setterFunc: r.global.thrower, + accessor: true, + configurable: true, + }) } func (r *Runtime) typeErrorResult(throw bool, args ...interface{}) { @@ -480,24 +550,60 @@ func (r *Runtime) NewGoError(err error) *Object { return e } -func (r *Runtime) newFunc(name unistring.String, len int, strict bool) (f *funcObject) { +func (r *Runtime) newFunc(name unistring.String, length int, strict bool) (f *funcObject) { v := &Object{runtime: r} f = &funcObject{} f.class = classFunction f.val = v f.extensible = true + f.strict = strict v.self = f f.prototype = r.global.FunctionPrototype - f.init(name, len) - if strict { - f._put("caller", r.global.throwerProperty) - f._put("arguments", r.global.throwerProperty) - } + f.init(name, intToValue(int64(length))) return } -func (r *Runtime) newNativeFuncObj(v *Object, call func(FunctionCall) Value, construct func(args []Value, proto *Object) *Object, name unistring.String, proto *Object, length int) *nativeFuncObject { +func (r *Runtime) newMethod(name unistring.String, length int, strict bool) (f *methodFuncObject) { + v := &Object{runtime: r} + + f = &methodFuncObject{} + f.class = classFunction + f.val = v + f.extensible = true + f.strict = strict + v.self = f + f.prototype = r.global.FunctionPrototype + f.init(name, intToValue(int64(length))) + return +} + +func (r *Runtime) newArrowFunc(name unistring.String, length int, strict bool) (f *arrowFuncObject) { + v := &Object{runtime: r} + + f = &arrowFuncObject{} + f.class = classFunction + f.val = v + f.extensible = true + f.strict = strict + + vm := r.vm + var this Value + if vm.sb >= 0 { + this = vm.stack[vm.sb] + } else { + this = vm.r.globalObject + } + + f.this = this + f.newTarget = vm.newTarget + v.self = f + f.prototype = r.global.FunctionPrototype + f.init(name, intToValue(int64(length))) + return +} + +func (r *Runtime) newNativeFuncObj(v *Object, call func(FunctionCall) Value, construct func(args []Value, proto *Object) *Object, name unistring.String, proto *Object, length Value) *nativeFuncObject { f := &nativeFuncObject{ baseFuncObject: baseFuncObject{ baseObject: baseObject{ @@ -518,7 +624,7 @@ func (r *Runtime) newNativeFuncObj(v *Object, call func(FunctionCall) Value, con return f } -func (r *Runtime) newNativeConstructor(call func(ConstructorCall) *Object, name unistring.String, length int) *Object { +func (r *Runtime) newNativeConstructor(call func(ConstructorCall) *Object, name unistring.String, length int64) *Object { v := &Object{runtime: r} f := &nativeFuncObject{ @@ -552,7 +658,7 @@ func (r *Runtime) newNativeConstructor(call func(ConstructorCall) *Object, name } v.self = f - f.init(name, length) + f.init(name, intToValue(length)) proto := r.NewObject() proto.self._putProp("constructor", v, true, false, true) @@ -561,7 +667,7 @@ func (r *Runtime) newNativeConstructor(call func(ConstructorCall) *Object, name return v } -func (r *Runtime) newNativeConstructOnly(v *Object, ctor func(args []Value, newTarget *Object) *Object, defaultProto *Object, name unistring.String, length int) *nativeFuncObject { +func (r *Runtime) newNativeConstructOnly(v *Object, ctor func(args []Value, newTarget *Object) *Object, defaultProto *Object, name unistring.String, length int64) *nativeFuncObject { if v == nil { v = &Object{runtime: r} } @@ -586,7 +692,7 @@ func (r *Runtime) newNativeConstructOnly(v *Object, ctor func(args []Value, newT }, } v.self = f - f.init(name, length) + f.init(name, intToValue(length)) if defaultProto != nil { f._putProp("prototype", defaultProto, false, false, false) } @@ -610,7 +716,7 @@ func (r *Runtime) newNativeFunc(call func(FunctionCall) Value, construct func(ar construct: r.wrapNativeConstruct(construct, proto), } v.self = f - f.init(name, length) + f.init(name, intToValue(int64(length))) if proto != nil { f._putProp("prototype", proto, false, false, false) proto.self._putProp("constructor", v, true, false, true) @@ -632,18 +738,18 @@ func (r *Runtime) newNativeFuncConstructObj(v *Object, construct func(args []Val construct: r.wrapNativeConstruct(construct, proto), } - f.init(name, length) + f.init(name, intToValue(int64(length))) if proto != nil { f._putProp("prototype", proto, false, false, false) } return f } -func (r *Runtime) newNativeFuncConstruct(construct func(args []Value, proto *Object) *Object, name unistring.String, prototype *Object, length int) *Object { +func (r *Runtime) newNativeFuncConstruct(construct func(args []Value, proto *Object) *Object, name unistring.String, prototype *Object, length int64) *Object { return r.newNativeFuncConstructProto(construct, name, prototype, r.global.FunctionPrototype, length) } -func (r *Runtime) newNativeFuncConstructProto(construct func(args []Value, proto *Object) *Object, name unistring.String, prototype, proto *Object, length int) *Object { +func (r *Runtime) newNativeFuncConstructProto(construct func(args []Value, proto *Object) *Object, name unistring.String, prototype, proto *Object, length int64) *Object { v := &Object{runtime: r} f := &nativeFuncObject{} @@ -654,7 +760,7 @@ func (r *Runtime) newNativeFuncConstructProto(construct func(args []Value, proto f.prototype = proto f.f = r.constructToCall(construct, prototype) f.construct = r.wrapNativeConstruct(construct, prototype) - f.init(name, length) + f.init(name, intToValue(length)) if prototype != nil { f._putProp("prototype", prototype, false, false, false) prototype.self._putProp("constructor", v, true, false, true) @@ -722,14 +828,14 @@ func (r *Runtime) builtin_newBoolean(args []Value, proto *Object) *Object { func (r *Runtime) error_toString(call FunctionCall) Value { var nameStr, msgStr valueString - obj := call.This.ToObject(r).self - name := obj.getStr("name", nil) + obj := r.toObject(call.This) + name := obj.self.getStr("name", nil) if name == nil || name == _undefined { nameStr = asciiString("Error") } else { nameStr = name.toString() } - msg := obj.getStr("message", nil) + msg := obj.self.getStr("message", nil) if msg == nil || msg == _undefined { msgStr = stringEmpty } else { @@ -748,24 +854,18 @@ func (r *Runtime) error_toString(call FunctionCall) Value { return sb.String() } -func (r *Runtime) builtin_Error(args []Value, proto *Object) *Object { - obj := r.newBaseObject(proto, classError) - if len(args) > 0 && args[0] != _undefined { - obj._putProp("message", args[0], true, false, true) - } - return obj.val -} - func (r *Runtime) builtin_new(construct *Object, args []Value) *Object { return r.toConstructor(construct)(args, nil) } -func (r *Runtime) throw(e Value) { - panic(e) -} - -func (r *Runtime) builtin_thrower(FunctionCall) Value { - r.typeErrorResult(true, "'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them") +func (r *Runtime) builtin_thrower(call FunctionCall) Value { + obj := r.toObject(call.This) + strict := true + switch fn := obj.self.(type) { + case *funcObject: + strict = fn.strict + } + r.typeErrorResult(strict, "'caller', 'callee', and 'arguments' properties may not be accessed on strict mode functions or the arguments objects for calls to them") return nil } @@ -1060,6 +1160,45 @@ func toLength(v Value) int64 { return i } +func (r *Runtime) toLengthUint32(v Value) uint32 { + var intVal int64 +repeat: + switch num := v.(type) { + case valueInt: + intVal = int64(num) + case valueFloat: + if v != _negativeZero { + if i, ok := floatToInt(float64(num)); ok { + intVal = i + } else { + goto fail + } + } + case valueString: + v = num.ToNumber() + goto repeat + default: + // Legacy behaviour as specified in https://tc39.es/ecma262/#sec-arraysetlength (see the note) + n2 := toUint32(v) + n1 := v.ToNumber() + if f, ok := n1.(valueFloat); ok { + f := float64(f) + if f != 0 || !math.Signbit(f) { + goto fail + } + } + if n1.ToInteger() != int64(n2) { + goto fail + } + return n2 + } + if intVal >= 0 && intVal <= math.MaxUint32 { + return uint32(intVal) + } +fail: + panic(r.newError(r.global.RangeError, "Invalid array length")) +} + func toIntStrict(i int64) int { if bits.UintSize == 32 { if i > math.MaxInt32 || i < math.MinInt32 { @@ -1082,12 +1221,12 @@ func toIntClamp(i int64) int { } func (r *Runtime) toIndex(v Value) int { - intIdx := v.ToInteger() - if intIdx >= 0 && intIdx < maxInt { - if bits.UintSize == 32 && intIdx >= math.MaxInt32 { + num := v.ToInteger() + if num >= 0 && num < maxInt { + if bits.UintSize == 32 && num >= math.MaxInt32 { panic(r.newError(r.global.RangeError, "Index %s overflows int", v.String())) } - return int(intIdx) + return int(num) } panic(r.newError(r.global.RangeError, "Invalid index %s", v.String())) } @@ -1252,6 +1391,7 @@ func (r *Runtime) RunProgram(p *Program) (result Value, err error) { } else { vm.stack = nil vm.prg = nil + vm.funcName = "" r.leave() } return @@ -1362,7 +1502,12 @@ operator: // If return value is a non-nil *Object, it will be used instead of call.This // This way it is possible to return a Go struct or a map converted // into goja.Value using ToValue(), however in this case - // instanceof will not work as expected. + // instanceof will not work as expected, unless you set the prototype: + // + // instance := &myCustomStruct{} + // instanceValue := vm.ToValue(instance).(*Object) + // instanceValue.SetPrototype(call.This.Prototype()) + // return instanceValue return nil } @@ -1755,7 +1900,76 @@ func (r *Runtime) wrapReflectFunc(value reflect.Value) func(FunctionCall) Value func (r *Runtime) toReflectValue(v Value, dst reflect.Value, ctx *objectExportCtx) error { typ := dst.Type() - switch typ.Kind() { + + if typ == typeValue { + dst.Set(reflect.ValueOf(v)) + return nil + } + + if typ == typeObject { + if obj, ok := v.(*Object); ok { + dst.Set(reflect.ValueOf(obj)) + return nil + } + } + + if typ == typeCallable { + if fn, ok := AssertFunction(v); ok { + dst.Set(reflect.ValueOf(fn)) + return nil + } + } + + et := v.ExportType() + if et == nil || et == reflectTypeNil { + dst.Set(reflect.Zero(typ)) + return nil + } + + kind := typ.Kind() + for i := 0; ; i++ { + if et.AssignableTo(typ) { + ev := reflect.ValueOf(exportValue(v, ctx)) + for ; i > 0; i-- { + ev = ev.Elem() + } + dst.Set(ev) + return nil + } + expKind := et.Kind() + if expKind == kind && et.ConvertibleTo(typ) || expKind == reflect.String && typ == typeBytes { + ev := reflect.ValueOf(exportValue(v, ctx)) + for ; i > 0; i-- { + ev = ev.Elem() + } + dst.Set(ev.Convert(typ)) + return nil + } + if expKind == reflect.Ptr { + et = et.Elem() + } else { + break + } + } + + if typ == typeTime { + if obj, ok := v.(*Object); ok { + if d, ok := obj.self.(*dateObject); ok { + dst.Set(reflect.ValueOf(d.time())) + return nil + } + } + if et.Kind() == reflect.String { + tme, ok := dateParse(v.String()) + if !ok { + return fmt.Errorf("could not convert string %v to %v", v, typ) + } + dst.Set(reflect.ValueOf(tme)) + return nil + } + } + + switch kind { case reflect.String: dst.Set(reflect.ValueOf(v.String()).Convert(typ)) return nil @@ -1798,69 +2012,6 @@ func (r *Runtime) toReflectValue(v Value, dst reflect.Value, ctx *objectExportCt case reflect.Float32: dst.Set(reflect.ValueOf(toFloat32(v)).Convert(typ)) return nil - } - - if typ == typeCallable { - if fn, ok := AssertFunction(v); ok { - dst.Set(reflect.ValueOf(fn)) - return nil - } - } - - if typ == typeValue { - dst.Set(reflect.ValueOf(v)) - return nil - } - - if typ == typeObject { - if obj, ok := v.(*Object); ok { - dst.Set(reflect.ValueOf(obj)) - return nil - } - } - - { - et := v.ExportType() - if et == nil || et == reflectTypeNil { - dst.Set(reflect.Zero(typ)) - return nil - } - - for i := 0; ; i++ { - if et.ConvertibleTo(typ) { - ev := reflect.ValueOf(exportValue(v, ctx)) - for ; i > 0; i-- { - ev = ev.Elem() - } - dst.Set(ev.Convert(typ)) - return nil - } - if et.Kind() == reflect.Ptr { - et = et.Elem() - } else { - break - } - } - - if typ == typeTime { - if obj, ok := v.(*Object); ok { - if d, ok := obj.self.(*dateObject); ok { - dst.Set(reflect.ValueOf(d.time())) - return nil - } - } - if et.Kind() == reflect.String { - tme, ok := dateParse(v.String()) - if !ok { - return fmt.Errorf("could not convert string %v to %v", v, typ) - } - dst.Set(reflect.ValueOf(tme)) - return nil - } - } - } - - switch typ.Kind() { case reflect.Slice: if o, ok := v.(*Object); ok { if o.self.className() == classArray { @@ -1899,14 +2050,15 @@ func (r *Runtime) toReflectValue(v Value, dst reflect.Value, ctx *objectExportCt elemTyp := typ.Elem() needConvertKeys := !reflect.ValueOf("").Type().AssignableTo(keyTyp) iter := &enumerableIter{ - wrapped: o.self.enumerateOwnKeys(), + o: o, + wrapped: o.self.iterateStringKeys(), } for item, next := iter.next(); next != nil; item, next = next() { var kv reflect.Value var err error if needConvertKeys { kv = reflect.New(keyTyp).Elem() - err = r.toReflectValue(stringValueFromRaw(item.name), kv, ctx) + err = r.toReflectValue(item.name, kv, ctx) if err != nil { return fmt.Errorf("could not convert map key %s to %v", item.name.String(), typ) } @@ -1914,7 +2066,7 @@ func (r *Runtime) toReflectValue(v Value, dst reflect.Value, ctx *objectExportCt kv = reflect.ValueOf(item.name.String()) } - ival := o.self.getStr(item.name, nil) + ival := o.self.getStr(item.name.string(), nil) if ival != nil { vv := reflect.New(elemTyp).Elem() err := r.toReflectValue(ival, vv, ctx) @@ -2260,13 +2412,26 @@ func (r *Runtime) speciesConstructorObj(o, defaultConstructor *Object) *Object { if c == nil || c == _undefined || c == _null { return defaultConstructor } - return r.toObject(c) + obj := r.toObject(c) + if obj.self.assertConstructor() == nil { + panic(r.NewTypeError("Value is not a constructor")) + } + return obj } func (r *Runtime) returnThis(call FunctionCall) Value { return call.This } +func createDataProperty(o *Object, p Value, v Value) { + o.defineOwnProperty(p, PropertyDescriptor{ + Writable: FLAG_TRUE, + Enumerable: FLAG_TRUE, + Configurable: FLAG_TRUE, + Value: v, + }, false) +} + func createDataPropertyOrThrow(o *Object, p Value, v Value) { o.defineOwnProperty(p, PropertyDescriptor{ Writable: FLAG_TRUE, @@ -2290,7 +2455,12 @@ func (r *Runtime) getV(v Value, p Value) Value { return o.get(p, v) } -func (r *Runtime) getIterator(obj Value, method func(FunctionCall) Value) *Object { +type iteratorRecord struct { + iterator *Object + next func(FunctionCall) Value +} + +func (r *Runtime) getIterator(obj Value, method func(FunctionCall) Value) *iteratorRecord { if method == nil { method = toMethod(r.getV(obj, SymIterator)) if method == nil { @@ -2298,21 +2468,20 @@ func (r *Runtime) getIterator(obj Value, method func(FunctionCall) Value) *Objec } } - return r.toObject(method(FunctionCall{ + iter := r.toObject(method(FunctionCall{ This: obj, })) -} - -func returnIter(iter *Object) { - retMethod := toMethod(iter.self.getStr("return", nil)) - if retMethod != nil { - iter.runtime.toObject(retMethod(FunctionCall{This: iter})) + next := toMethod(iter.self.getStr("next", nil)) + return &iteratorRecord{ + iterator: iter, + next: next, } } -func (r *Runtime) iterate(iter *Object, step func(Value)) { +func (ir *iteratorRecord) iterate(step func(Value)) { + r := ir.iterator.runtime for { - res := r.toObject(toMethod(iter.self.getStr("next", nil))(FunctionCall{This: iter})) + res := r.toObject(ir.next(FunctionCall{This: ir.iterator})) if nilSafe(res.self.getStr("done", nil)).ToBoolean() { break } @@ -2322,13 +2491,44 @@ func (r *Runtime) iterate(iter *Object, step func(Value)) { }) if ret != nil { _ = tryFunc(func() { - returnIter(iter) + ir.returnIter() }) panic(ret) } } } +func (ir *iteratorRecord) step() (value Value, ex *Exception) { + r := ir.iterator.runtime + ex = r.vm.try(func() { + res := r.toObject(ir.next(FunctionCall{This: ir.iterator})) + done := nilSafe(res.self.getStr("done", nil)).ToBoolean() + if !done { + value = nilSafe(res.self.getStr("value", nil)) + } else { + ir.close() + } + }) + return +} + +func (ir *iteratorRecord) returnIter() { + if ir.iterator == nil { + return + } + retMethod := toMethod(ir.iterator.self.getStr("return", nil)) + if retMethod != nil { + ir.iterator.runtime.toObject(retMethod(FunctionCall{This: ir.iterator})) + } + ir.iterator = nil + ir.next = nil +} + +func (ir *iteratorRecord) close() { + ir.iterator = nil + ir.next = nil +} + func (r *Runtime) createIterResultObject(value Value, done bool) Value { o := r.NewObject() o.self.setOwnStr("value", value, false) @@ -2355,7 +2555,16 @@ func (r *Runtime) getHash() *maphash.Hash { // called when the top level function returns (i.e. control is passed outside the Runtime). func (r *Runtime) leave() { - // run jobs, etc... + for { + jobs := r.jobQueue + r.jobQueue = nil + if len(jobs) == 0 { + break + } + for _, job := range jobs { + job() + } + } } func nilSafe(v Value) Value { @@ -2465,6 +2674,38 @@ func (r *Runtime) setGlobal(name unistring.String, v Value, strict bool) { } } +func (r *Runtime) trackPromiseRejection(p *Promise, operation PromiseRejectionOperation) { + if r.promiseRejectionTracker != nil { + r.promiseRejectionTracker(p, operation) + } +} + +func (r *Runtime) callJobCallback(job *jobCallback, this Value, args ...Value) Value { + return job.callback(FunctionCall{This: this, Arguments: args}) +} + +func (r *Runtime) invoke(v Value, p unistring.String, args ...Value) Value { + o := v.ToObject(r) + return r.toCallable(o.self.getStr(p, nil))(FunctionCall{This: v, Arguments: args}) +} + +func (r *Runtime) iterableToList(items Value, method func(FunctionCall) Value) []Value { + iter := r.getIterator(items, method) + var values []Value + iter.iterate(func(item Value) { + values = append(values, item) + }) + return values +} + +func (r *Runtime) putSpeciesReturnThis(o objectImpl) { + o._putSym(SymSpecies, &valueProperty{ + getterFunc: r.newNativeFunc(r.returnThis, nil, "get [Symbol.species]", nil, 0), + accessor: true, + configurable: true, + }) +} + func strToArrayIdx(s unistring.String) uint32 { if s == "" { return math.MaxUint32 @@ -2676,3 +2917,10 @@ func strToIdx64(s unistring.String) int64 { } return -1 } + +func assertCallable(v Value) (func(FunctionCall) Value, bool) { + if obj, ok := v.(*Object); ok { + return obj.self.assertCallable() + } + return nil, false +} diff --git a/vendor/github.com/dop251/goja/string.go b/vendor/github.com/dop251/goja/string.go index 8df5e53f5..c2aaf814b 100644 --- a/vendor/github.com/dop251/goja/string.go +++ b/vendor/github.com/dop251/goja/string.go @@ -33,6 +33,7 @@ var ( stringEmpty valueString = asciiString("") stringError valueString = asciiString("Error") + stringAggregateError valueString = asciiString("AggregateError") stringTypeError valueString = asciiString("TypeError") stringReferenceError valueString = asciiString("ReferenceError") stringSyntaxError valueString = asciiString("SyntaxError") @@ -189,12 +190,9 @@ func (s *stringObject) getStr(name unistring.String, receiver Value) Value { } func (s *stringObject) getIdx(idx valueInt, receiver Value) Value { - i := int64(idx) - if i >= 0 { - if i < int64(s.length) { - return s._getIdx(int(i)) - } - return nil + i := int(idx) + if i >= 0 && i < s.length { + return s._getIdx(i) } return s.baseObject.getStr(idx.string(), receiver) } @@ -260,8 +258,8 @@ func (s *stringObject) setForeignIdx(idx valueInt, val, receiver Value, throw bo func (s *stringObject) defineOwnPropertyStr(name unistring.String, descr PropertyDescriptor, throw bool) bool { if i := strToGoIdx(name); i >= 0 && i < s.length { - s.val.runtime.typeErrorResult(throw, "Cannot redefine property: %d", i) - return false + _, ok := s._defineOwnProperty(name, &valueProperty{enumerable: true}, descr, throw) + return ok } return s.baseObject.defineOwnPropertyStr(name, descr, throw) @@ -287,13 +285,13 @@ func (i *stringPropIter) next() (propIterItem, iterNextFunc) { if i.idx < i.length { name := strconv.Itoa(i.idx) i.idx++ - return propIterItem{name: unistring.String(name), enumerable: _ENUM_TRUE}, i.next + return propIterItem{name: asciiString(name), enumerable: _ENUM_TRUE}, i.next } - return i.obj.baseObject.enumerateOwnKeys()() + return i.obj.baseObject.iterateStringKeys()() } -func (s *stringObject) enumerateOwnKeys() iterNextFunc { +func (s *stringObject) iterateStringKeys() iterNextFunc { return (&stringPropIter{ str: s.value, obj: s, @@ -301,12 +299,12 @@ func (s *stringObject) enumerateOwnKeys() iterNextFunc { }).next } -func (s *stringObject) ownKeys(all bool, accum []Value) []Value { +func (s *stringObject) stringKeys(all bool, accum []Value) []Value { for i := 0; i < s.length; i++ { accum = append(accum, asciiString(strconv.Itoa(i))) } - return s.baseObject.ownKeys(all, accum) + return s.baseObject.stringKeys(all, accum) } func (s *stringObject) deleteStr(name unistring.String, throw bool) bool { diff --git a/vendor/github.com/dop251/goja/string_ascii.go b/vendor/github.com/dop251/goja/string_ascii.go index 26231f579..31e151b98 100644 --- a/vendor/github.com/dop251/goja/string_ascii.go +++ b/vendor/github.com/dop251/goja/string_ascii.go @@ -247,10 +247,7 @@ func (s asciiString) length() int { func (s asciiString) concat(other valueString) valueString { switch other := other.(type) { case asciiString: - b := make([]byte, len(s)+len(other)) - copy(b, s) - copy(b[len(s):], other) - return asciiString(b) + return asciiString(s + other) case unicodeString: b := make([]uint16, len(s)+len(other)) b[0] = unistring.BOM diff --git a/vendor/github.com/dop251/goja/string_unicode.go b/vendor/github.com/dop251/goja/string_unicode.go index 71e387bc2..45b8c4fc4 100644 --- a/vendor/github.com/dop251/goja/string_unicode.go +++ b/vendor/github.com/dop251/goja/string_unicode.go @@ -206,6 +206,14 @@ func (b *valueStringBuilder) WriteString(s valueString) { } } +func (b *valueStringBuilder) WriteASCII(s string) { + if b.ascii() { + b.asciiBuilder.WriteString(s) + } else { + b.unicodeBuilder.writeASCIIString(s) + } +} + func (b *valueStringBuilder) WriteRune(r rune) { if r < utf8.RuneSelf { if b.ascii() { diff --git a/vendor/github.com/dop251/goja/token/token.go b/vendor/github.com/dop251/goja/token/token.go index c49794934..9aab84c20 100644 --- a/vendor/github.com/dop251/goja/token/token.go +++ b/vendor/github.com/dop251/goja/token/token.go @@ -114,3 +114,7 @@ func IsKeyword(literal string) (Token, bool) { } return 0, false } + +func IsId(tkn Token) bool { + return tkn >= IDENTIFIER +} diff --git a/vendor/github.com/dop251/goja/token/token_const.go b/vendor/github.com/dop251/goja/token/token_const.go index e90636aa4..f3b8a404c 100644 --- a/vendor/github.com/dop251/goja/token/token_const.go +++ b/vendor/github.com/dop251/goja/token/token_const.go @@ -6,13 +6,9 @@ const ( ILLEGAL EOF COMMENT - KEYWORD STRING - BOOLEAN - NULL NUMBER - IDENTIFIER PLUS // + MINUS // - @@ -73,8 +69,15 @@ const ( QUESTION_MARK // ? ARROW // => ELLIPSIS // ... + BACKTICK // ` + + // tokens below (and only them) are syntactically valid identifiers + + IDENTIFIER + KEYWORD + BOOLEAN + NULL - firstKeyword IF IN OF @@ -111,7 +114,6 @@ const ( DEBUGGER INSTANCEOF - lastKeyword ) var token2string = [...]string{ @@ -174,6 +176,7 @@ var token2string = [...]string{ QUESTION_MARK: "?", ARROW: "=>", ELLIPSIS: "...", + BACKTICK: "`", IF: "if", IN: "in", OF: "of", diff --git a/vendor/github.com/dop251/goja/typedarrays.go b/vendor/github.com/dop251/goja/typedarrays.go index 632607268..c34c7676e 100644 --- a/vendor/github.com/dop251/goja/typedarrays.go +++ b/vendor/github.com/dop251/goja/typedarrays.go @@ -505,25 +505,24 @@ func (a *typedArrayObject) getIdx(idx valueInt, receiver Value) Value { return a._getIdx(toIntClamp(int64(idx))) } -func (a *typedArrayObject) isValidIntegerIndex(idx int, throw bool) bool { - if a.viewedArrayBuf.ensureNotDetached(throw) { +func (a *typedArrayObject) isValidIntegerIndex(idx int) bool { + if a.viewedArrayBuf.ensureNotDetached(false) { if idx >= 0 && idx < a.length { return true } - a.val.runtime.typeErrorResult(throw, "Invalid typed array index") } return false } func (a *typedArrayObject) _putIdx(idx int, v Value) { v = v.ToNumber() - if a.isValidIntegerIndex(idx, false) { + if a.isValidIntegerIndex(idx) { a.typedArray.set(idx+a.offset, v) } } func (a *typedArrayObject) _hasIdx(idx int) bool { - return a.isValidIntegerIndex(idx, false) + return a.isValidIntegerIndex(idx) } func (a *typedArrayObject) setOwnStr(p unistring.String, v Value, throw bool) bool { @@ -534,7 +533,7 @@ func (a *typedArrayObject) setOwnStr(p unistring.String, v Value, throw bool) bo } if idx == 0 { v.ToNumber() // make sure it throws - return false + return true } return a.baseObject.setOwnStr(p, v, throw) } @@ -567,6 +566,21 @@ func (a *typedArrayObject) hasOwnPropertyIdx(idx valueInt) bool { return a._hasIdx(toIntClamp(int64(idx))) } +func (a *typedArrayObject) hasPropertyStr(name unistring.String) bool { + idx, ok := strToIntNum(name) + if ok { + return a._hasIdx(idx) + } + if idx == 0 { + return false + } + return a.baseObject.hasPropertyStr(name) +} + +func (a *typedArrayObject) hasPropertyIdx(idx valueInt) bool { + return a.hasOwnPropertyIdx(idx) +} + func (a *typedArrayObject) _defineIdxProperty(idx int, desc PropertyDescriptor, throw bool) bool { if desc.Configurable == FLAG_FALSE || desc.Enumerable == FLAG_FALSE || desc.IsAccessor() || desc.Writable == FLAG_FALSE { a.val.runtime.typeErrorResult(throw, "Cannot redefine property: %d", idx) @@ -574,7 +588,8 @@ func (a *typedArrayObject) _defineIdxProperty(idx int, desc PropertyDescriptor, } _, ok := a._defineOwnProperty(unistring.String(strconv.Itoa(idx)), a.getOwnPropIdx(valueInt(idx)), desc, throw) if ok { - if !a.isValidIntegerIndex(idx, throw) { + if !a.isValidIntegerIndex(idx) { + a.val.runtime.typeErrorResult(throw, "Invalid typed array index") return false } a._putIdx(idx, desc.Value) @@ -603,7 +618,7 @@ func (a *typedArrayObject) defineOwnPropertyIdx(name valueInt, desc PropertyDesc func (a *typedArrayObject) deleteStr(name unistring.String, throw bool) bool { idx, ok := strToIntNum(name) if ok { - if !a.isValidIntegerIndex(idx, false) { + if a.isValidIntegerIndex(idx) { a.val.runtime.typeErrorResult(throw, "Cannot delete property '%d' of %s", idx, a.val.String()) return false } @@ -616,7 +631,7 @@ func (a *typedArrayObject) deleteStr(name unistring.String, throw bool) bool { } func (a *typedArrayObject) deleteIdx(idx valueInt, throw bool) bool { - if a.viewedArrayBuf.ensureNotDetached(throw) && idx >= 0 && int64(idx) < int64(a.length) { + if a.viewedArrayBuf.ensureNotDetached(false) && idx >= 0 && int64(idx) < int64(a.length) { a.val.runtime.typeErrorResult(throw, "Cannot delete property '%d' of %s", idx, a.val.String()) return false } @@ -624,14 +639,14 @@ func (a *typedArrayObject) deleteIdx(idx valueInt, throw bool) bool { return true } -func (a *typedArrayObject) ownKeys(all bool, accum []Value) []Value { +func (a *typedArrayObject) stringKeys(all bool, accum []Value) []Value { if accum == nil { accum = make([]Value, 0, a.length) } for i := 0; i < a.length; i++ { accum = append(accum, asciiString(strconv.Itoa(i))) } - return a.baseObject.ownKeys(all, accum) + return a.baseObject.stringKeys(all, accum) } type typedArrayPropIter struct { @@ -644,13 +659,13 @@ func (i *typedArrayPropIter) next() (propIterItem, iterNextFunc) { name := strconv.Itoa(i.idx) prop := i.a._getIdx(i.idx) i.idx++ - return propIterItem{name: unistring.String(name), value: prop}, i.next + return propIterItem{name: asciiString(name), value: prop}, i.next } - return i.a.baseObject.enumerateOwnKeys()() + return i.a.baseObject.iterateStringKeys()() } -func (a *typedArrayObject) enumerateOwnKeys() iterNextFunc { +func (a *typedArrayObject) iterateStringKeys() iterNextFunc { return (&typedArrayPropIter{ a: a, }).next @@ -714,8 +729,7 @@ func (r *Runtime) newFloat64ArrayObject(buf *arrayBufferObject, offset, length i return r._newTypedArrayObject(buf, offset, length, 8, r.global.Float64Array, (*float64Array)(unsafe.Pointer(&buf.data)), proto) } -func (o *dataViewObject) getIdxAndByteOrder(idxVal, littleEndianVal Value, size int) (int, byteOrder) { - getIdx := o.val.runtime.toIndex(idxVal) +func (o *dataViewObject) getIdxAndByteOrder(getIdx int, littleEndianVal Value, size int) (int, byteOrder) { o.viewedArrayBuf.ensureNotDetached(true) if getIdx+size > o.byteLen { panic(o.val.runtime.newError(o.val.runtime.global.RangeError, "Index %d is out of bounds", getIdx)) @@ -793,6 +807,7 @@ func (o *arrayBufferObject) getUint32(idx int, byteOrder byteOrder) uint32 { } func (o *arrayBufferObject) setUint32(idx int, val uint32, byteOrder byteOrder) { + o.ensureNotDetached(true) if byteOrder == nativeEndian { *(*uint32)(unsafe.Pointer(&o.data[idx])) = val } else { diff --git a/vendor/github.com/dop251/goja/value.go b/vendor/github.com/dop251/goja/value.go index dd492148d..30460910a 100644 --- a/vendor/github.com/dop251/goja/value.go +++ b/vendor/github.com/dop251/goja/value.go @@ -767,7 +767,8 @@ func (o *Object) GetSymbol(sym *Symbol) Value { // This method will panic with an *Exception if a JavaScript exception is thrown in the process. func (o *Object) Keys() (keys []string) { iter := &enumerableIter{ - wrapped: o.self.enumerateOwnKeys(), + o: o, + wrapped: o.self.iterateStringKeys(), } for item, next := iter.next(); next != nil; item, next = next() { keys = append(keys, item.name.String()) @@ -779,7 +780,7 @@ func (o *Object) Keys() (keys []string) { // Symbols returns a list of Object's enumerable symbol properties. // This method will panic with an *Exception if a JavaScript exception is thrown in the process. func (o *Object) Symbols() []*Symbol { - symbols := o.self.ownSymbols(false, nil) + symbols := o.self.symbols(false, nil) ret := make([]*Symbol, len(symbols)) for i, sym := range symbols { ret[i], _ = sym.(*Symbol) @@ -996,11 +997,17 @@ func (s *Symbol) ToString() Value { } func (s *Symbol) String() string { - return s.desc.String() + if s.desc != nil { + return s.desc.String() + } + return "" } func (s *Symbol) string() unistring.String { - return s.desc.string() + if s.desc != nil { + return s.desc.string() + } + return "" } func (s *Symbol) ToFloat() float64 { @@ -1078,10 +1085,26 @@ func NewSymbol(s string) *Symbol { } func (s *Symbol) descriptiveString() valueString { - if s.desc == nil { - return stringEmpty + desc := s.desc + if desc == nil { + desc = stringEmpty } - return asciiString("Symbol(").concat(s.desc).concat(asciiString(")")) + return asciiString("Symbol(").concat(desc).concat(asciiString(")")) +} + +func funcName(prefix string, n Value) valueString { + var b valueStringBuilder + b.WriteString(asciiString(prefix)) + if sym, ok := n.(*Symbol); ok { + if sym.desc != nil { + b.WriteRune('[') + b.WriteString(sym.desc) + b.WriteRune(']') + } + } else { + b.WriteString(n.toString()) + } + return b.String() } func init() { diff --git a/vendor/github.com/dop251/goja/vm.go b/vendor/github.com/dop251/goja/vm.go index 172adc537..cc987b1db 100644 --- a/vendor/github.com/dop251/goja/vm.go +++ b/vendor/github.com/dop251/goja/vm.go @@ -5,6 +5,7 @@ import ( "math" "runtime" "strconv" + "strings" "sync" "sync/atomic" @@ -32,7 +33,7 @@ type stash struct { type context struct { prg *Program - funcName unistring.String + funcName unistring.String // only valid when prg is nil stash *stash newTarget Value result Value @@ -43,12 +44,13 @@ type context struct { type iterStackItem struct { val Value f iterNextFunc - iter *Object + iter *iteratorRecord } type ref interface { get() Value set(Value) + init(Value) refname() unistring.String } @@ -66,6 +68,10 @@ func (r *stashRef) set(v Value) { (*r.v)[r.idx] = v } +func (r *stashRef) init(v Value) { + r.set(v) +} + func (r *stashRef) refname() unistring.String { return r.n } @@ -90,6 +96,10 @@ func (r *stashRefLex) set(v Value) { *p = v } +func (r *stashRefLex) init(v Value) { + r.set(v) +} + type stashRefConst struct { stashRefLex strictConst bool @@ -101,6 +111,10 @@ func (r *stashRefConst) set(v Value) { } } +func (r *stashRefConst) init(v Value) { + r.set(v) +} + type objRef struct { base objectImpl name unistring.String @@ -112,6 +126,13 @@ func (r *objRef) get() Value { } func (r *objRef) set(v Value) { + if r.strict && !r.base.hasOwnPropertyStr(r.name) { + panic(referenceError(fmt.Sprintf("%s is not defined", r.name))) + } + r.base.setOwnStr(r.name, v, r.strict) +} + +func (r *objRef) init(v Value) { r.base.setOwnStr(r.name, v, r.strict) } @@ -133,6 +154,10 @@ func (r *unresolvedRef) set(Value) { r.get() } +func (r *unresolvedRef) init(Value) { + r.get() +} + func (r *unresolvedRef) refname() unistring.String { return r.name } @@ -140,7 +165,7 @@ func (r *unresolvedRef) refname() unistring.String { type vm struct { r *Runtime prg *Program - funcName unistring.String + funcName unistring.String // only valid when prg == nil pc int stack valueStack sp, sb, args int @@ -213,22 +238,6 @@ func assertInt64(v Value) (int64, bool) { return 0, false } -func toIntIgnoreNegZero(v Value) (int64, bool) { - num := v.ToNumber() - if i, ok := num.(valueInt); ok { - return int64(i), true - } - if f, ok := num.(valueFloat); ok { - if v == _negativeZero { - return 0, true - } - if i, ok := floatToInt(float64(f)); ok { - return i, true - } - } - return 0, false -} - func (s *valueStack) expand(idx int) { if idx < len(*s) { return @@ -411,12 +420,12 @@ func (vm *vm) run() { v := &InterruptedError{ iface: vm.interruptVal, } + v.stack = vm.captureStack(nil, 0) atomic.StoreUint32(&vm.interrupted, 0) vm.interruptVal = nil vm.interruptLock.Unlock() panic(&uncatchableException{ - stack: &v.stack, - err: v, + err: v, }) } } @@ -435,11 +444,24 @@ func (vm *vm) ClearInterrupt() { func (vm *vm) captureStack(stack []StackFrame, ctxOffset int) []StackFrame { // Unroll the context stack if vm.pc != -1 { - stack = append(stack, StackFrame{prg: vm.prg, pc: vm.pc, funcName: vm.funcName}) + var funcName unistring.String + if vm.prg != nil { + funcName = vm.prg.funcName + } else { + funcName = vm.funcName + } + stack = append(stack, StackFrame{prg: vm.prg, pc: vm.pc, funcName: funcName}) } for i := len(vm.callStack) - 1; i > ctxOffset-1; i-- { - if vm.callStack[i].pc != -1 { - stack = append(stack, StackFrame{prg: vm.callStack[i].prg, pc: vm.callStack[i].pc - 1, funcName: vm.callStack[i].funcName}) + frame := &vm.callStack[i] + if frame.pc != -1 { + var funcName unistring.String + if prg := frame.prg; prg != nil { + funcName = prg.funcName + } else { + funcName = frame.funcName + } + stack = append(stack, StackFrame{prg: vm.callStack[i].prg, pc: frame.pc - 1, funcName: funcName}) } } return stack @@ -465,8 +487,8 @@ func (vm *vm) try(f func()) (ex *Exception) { iterTail := vm.iterStack[iterLen:] for i := range iterTail { if iter := iterTail[i].iter; iter != nil { - vm.try(func() { - returnIter(iter) + _ = vm.try(func() { + iter.returnIter() }) } iterTail[i] = iterStackItem{} @@ -479,6 +501,13 @@ func (vm *vm) try(f func()) (ex *Exception) { vm.refStack = vm.refStack[:refLen] }() switch x1 := x.(type) { + case *Object: + ex = &Exception{ + val: x1, + } + if er, ok := x1.self.(*errorObject); ok { + ex.stack = er.stack + } case Value: ex = &Exception{ val: x1, @@ -486,7 +515,6 @@ func (vm *vm) try(f func()) (ex *Exception) { case *Exception: ex = x1 case *uncatchableException: - *x1.stack = vm.captureStack(*x1.stack, ctxOffset) panic(x1) case typeError: ex = &Exception{ @@ -510,7 +538,9 @@ func (vm *vm) try(f func()) (ex *Exception) { */ panic(x) } - ex.stack = vm.captureStack(ex.stack, ctxOffset) + if ex.stack == nil { + ex.stack = vm.captureStack(make([]StackFrame, 0, len(vm.callStack)+1), 0) + } } }() @@ -538,21 +568,16 @@ func (vm *vm) peek() Value { } func (vm *vm) saveCtx(ctx *context) { - ctx.prg, ctx.stash, ctx.newTarget, ctx.result, ctx.pc, ctx.sb, ctx.args = - vm.prg, vm.stash, vm.newTarget, vm.result, vm.pc, vm.sb, vm.args - if vm.funcName != "" { - ctx.funcName = vm.funcName - } else if ctx.prg != nil && ctx.prg.funcName != "" { - ctx.funcName = ctx.prg.funcName - } + ctx.prg, ctx.stash, ctx.newTarget, ctx.result, ctx.pc, ctx.sb, ctx.args, ctx.funcName = + vm.prg, vm.stash, vm.newTarget, vm.result, vm.pc, vm.sb, vm.args, vm.funcName } func (vm *vm) pushCtx() { if len(vm.callStack) > vm.maxCallStackSize { ex := &StackOverflowError{} + ex.stack = vm.captureStack(nil, 0) panic(&uncatchableException{ - stack: &ex.stack, - err: ex, + err: ex, }) } vm.callStack = append(vm.callStack, context{}) @@ -1242,6 +1267,14 @@ func (_toPropertyKey) exec(vm *vm) { vm.pc++ } +type _toString struct{} + +func (_toString) exec(vm *vm) { + p := vm.sp - 1 + vm.stack[p] = vm.stack[p].toString() + vm.pc++ +} + type _getElemRef struct{} var getElemRef _getElemRef @@ -1309,14 +1342,15 @@ type _setElem1Named struct{} var setElem1Named _setElem1Named func (_setElem1Named) exec(vm *vm) { - obj := vm.stack[vm.sp-3].ToObject(vm.r) + receiver := vm.stack[vm.sp-3] + base := receiver.ToObject(vm.r) propName := vm.stack[vm.sp-2] val := vm.stack[vm.sp-1] vm.r.toObject(val).self.defineOwnPropertyStr("name", PropertyDescriptor{ - Value: propName, + Value: funcName("", propName), Configurable: FLAG_TRUE, }, true) - obj.setOwn(propName, val, true) + base.set(propName, val, receiver, true) vm.sp -= 2 vm.pc++ @@ -1342,11 +1376,15 @@ type _setElemStrict struct{} var setElemStrict _setElemStrict func (_setElemStrict) exec(vm *vm) { - obj := vm.r.toObject(vm.stack[vm.sp-3]) propName := toPropertyKey(vm.stack[vm.sp-2]) + receiver := vm.stack[vm.sp-3] val := vm.stack[vm.sp-1] - - obj.setOwn(propName, val, true) + if receiverObj, ok := receiver.(*Object); ok { + receiverObj.setOwn(propName, val, true) + } else { + base := receiver.ToObject(vm.r) + base.set(propName, val, receiver, true) + } vm.sp -= 2 vm.stack[vm.sp-1] = val @@ -1358,11 +1396,15 @@ type _setElemStrictP struct{} var setElemStrictP _setElemStrictP func (_setElemStrictP) exec(vm *vm) { - obj := vm.r.toObject(vm.stack[vm.sp-3]) propName := toPropertyKey(vm.stack[vm.sp-2]) + receiver := vm.stack[vm.sp-3] val := vm.stack[vm.sp-1] - - obj.setOwn(propName, val, true) + if receiverObj, ok := receiver.(*Object); ok { + receiverObj.setOwn(propName, val, true) + } else { + base := receiver.ToObject(vm.r) + base.set(propName, val, receiver, true) + } vm.sp -= 3 vm.pc++ @@ -1373,7 +1415,7 @@ type _deleteElem struct{} var deleteElem _deleteElem func (_deleteElem) exec(vm *vm) { - obj := vm.r.toObject(vm.stack[vm.sp-2]) + obj := vm.stack[vm.sp-2].ToObject(vm.r) propName := toPropertyKey(vm.stack[vm.sp-1]) if obj.delete(propName, false) { vm.stack[vm.sp-2] = valueTrue @@ -1389,7 +1431,7 @@ type _deleteElemStrict struct{} var deleteElemStrict _deleteElemStrict func (_deleteElemStrict) exec(vm *vm) { - obj := vm.r.toObject(vm.stack[vm.sp-2]) + obj := vm.stack[vm.sp-2].ToObject(vm.r) propName := toPropertyKey(vm.stack[vm.sp-1]) obj.delete(propName, true) vm.stack[vm.sp-2] = valueTrue @@ -1463,11 +1505,16 @@ func (p setPropP) exec(vm *vm) { type setPropStrict unistring.String func (p setPropStrict) exec(vm *vm) { - obj := vm.stack[vm.sp-2] + receiver := vm.stack[vm.sp-2] val := vm.stack[vm.sp-1] + propName := unistring.String(p) + if receiverObj, ok := receiver.(*Object); ok { + receiverObj.self.setOwnStr(propName, val, true) + } else { + base := receiver.ToObject(vm.r) + base.setStr(propName, val, receiver, true) + } - obj1 := vm.r.toObject(obj) - obj1.self.setOwnStr(unistring.String(p), val, true) vm.stack[vm.sp-2] = val vm.sp-- vm.pc++ @@ -1476,10 +1523,16 @@ func (p setPropStrict) exec(vm *vm) { type setPropStrictP unistring.String func (p setPropStrictP) exec(vm *vm) { - obj := vm.r.toObject(vm.stack[vm.sp-2]) + receiver := vm.stack[vm.sp-2] val := vm.stack[vm.sp-1] + propName := unistring.String(p) + if receiverObj, ok := receiver.(*Object); ok { + receiverObj.self.setOwnStr(propName, val, true) + } else { + base := receiver.ToObject(vm.r) + base.setStr(propName, val, receiver, true) + } - obj.self.setOwnStr(unistring.String(p), val, true) vm.sp -= 2 vm.pc++ } @@ -1498,7 +1551,7 @@ type _setProto struct{} var setProto _setProto func (_setProto) exec(vm *vm) { - vm.r.toObject(vm.stack[vm.sp-2]).self.setProto(vm.r.toProto(vm.stack[vm.sp-1]), true) + vm.r.setObjectProto(vm.stack[vm.sp-2], vm.stack[vm.sp-1]) vm.sp-- vm.pc++ @@ -1510,7 +1563,7 @@ func (s setPropGetter) exec(vm *vm) { obj := vm.r.toObject(vm.stack[vm.sp-2]) val := vm.stack[vm.sp-1] vm.r.toObject(val).self.defineOwnPropertyStr("name", PropertyDescriptor{ - Value: asciiString("get ").concat(stringValueFromRaw(val.string())), + Value: asciiString("get ").concat(stringValueFromRaw(unistring.String(s))), Configurable: FLAG_TRUE, }, true) @@ -1533,7 +1586,7 @@ func (s setPropSetter) exec(vm *vm) { val := vm.stack[vm.sp-1] vm.r.toObject(val).self.defineOwnPropertyStr("name", PropertyDescriptor{ - Value: asciiString("set ").concat(stringValueFromRaw(val.string())), + Value: asciiString("set ").concat(stringValueFromRaw(unistring.String(s))), Configurable: FLAG_TRUE, }, true) @@ -1558,7 +1611,7 @@ func (s _setPropGetter1) exec(vm *vm) { propName := vm.stack[vm.sp-2] val := vm.stack[vm.sp-1] vm.r.toObject(val).self.defineOwnPropertyStr("name", PropertyDescriptor{ - Value: asciiString("get ").concat(stringValueFromRaw(val.string())), + Value: funcName("get ", propName), Configurable: FLAG_TRUE, }, true) @@ -1584,7 +1637,7 @@ func (s _setPropSetter1) exec(vm *vm) { val := vm.stack[vm.sp-1] vm.r.toObject(val).self.defineOwnPropertyStr("name", PropertyDescriptor{ - Value: asciiString("set ").concat(stringValueFromRaw(val.string())), + Value: funcName("set ", propName), Configurable: FLAG_TRUE, }, true) @@ -1755,7 +1808,7 @@ var pushArraySpread _pushArraySpread func (_pushArraySpread) exec(vm *vm) { arr := vm.stack[vm.sp-2].(*Object).self.(*arrayObject) - vm.r.iterate(vm.r.getIterator(vm.stack[vm.sp-1], nil), func(val Value) { + vm.r.getIterator(vm.stack[vm.sp-1], nil).iterate(func(val Value) { if arr.length < math.MaxUint32 { arr.length++ } else { @@ -1775,7 +1828,7 @@ var pushSpread _pushSpread func (_pushSpread) exec(vm *vm) { vm.sp-- obj := vm.stack[vm.sp] - vm.r.iterate(vm.r.getIterator(obj, nil), func(val Value) { + vm.r.getIterator(obj, nil).iterate(func(val Value) { vm.push(val) }) vm.pc++ @@ -1791,7 +1844,7 @@ func (_newArrayFromIter) exec(vm *vm) { iter := vm.iterStack[l].iter vm.iterStack[l] = iterStackItem{} vm.iterStack = vm.iterStack[:l] - vm.r.iterate(iter, func(val Value) { + iter.iterate(func(val Value) { values = append(values, val) }) vm.push(vm.r.newArrayValues(values)) @@ -2326,7 +2379,7 @@ func (r *resolveMixedStack) exec(vm *vm) { if r.idx > 0 { idx = vm.sb + vm.args + r.idx } else { - idx = vm.sb + r.idx + idx = vm.sb - r.idx } ref = newStashRef(r.typ, r.name, (*[]Value)(&vm.stack), idx) @@ -2397,6 +2450,20 @@ func (_putValueP) exec(vm *vm) { vm.pc++ } +type _initValueP struct{} + +var initValueP _initValueP + +func (_initValueP) exec(vm *vm) { + l := len(vm.refStack) - 1 + ref := vm.refStack[l] + vm.refStack[l] = nil + vm.refStack = vm.refStack[:l] + ref.init(vm.stack[vm.sp-1]) + vm.sp-- + vm.pc++ +} + type loadDynamic unistring.String func (n loadDynamic) exec(vm *vm) { @@ -2598,6 +2665,15 @@ func (numargs call) exec(vm *vm) { obj := vm.toCallee(v) repeat: switch f := obj.self.(type) { + case *methodFuncObject: + vm.pc++ + vm.pushCtx() + vm.args = n + vm.prg = f.prg + vm.stash = f.stash + vm.pc = 0 + vm.stack[vm.sp-n-1], vm.stack[vm.sp-n-2] = vm.stack[vm.sp-n-2], vm.stack[vm.sp-n-1] + return case *funcObject: vm.pc++ vm.pushCtx() @@ -2607,6 +2683,16 @@ repeat: vm.pc = 0 vm.stack[vm.sp-n-1], vm.stack[vm.sp-n-2] = vm.stack[vm.sp-n-2], vm.stack[vm.sp-n-1] return + case *arrowFuncObject: + vm.pc++ + vm.pushCtx() + vm.args = n + vm.prg = f.prg + vm.stash = f.stash + vm.pc = 0 + vm.stack[vm.sp-n-1], vm.stack[vm.sp-n-2] = f.this, vm.stack[vm.sp-n-1] + vm.newTarget = f.newTarget + return case *nativeFuncObject: vm._nativeCall(f, n) case *boundFuncObject: @@ -2952,17 +3038,41 @@ func (e *enterFuncStashless) exec(vm *vm) { type newFunc struct { prg *Program name unistring.String - length uint32 - strict bool + source string - srcStart, srcEnd uint32 + length int + strict bool } func (n *newFunc) exec(vm *vm) { - obj := vm.r.newFunc(n.name, int(n.length), n.strict) + obj := vm.r.newFunc(n.name, n.length, n.strict) obj.prg = n.prg obj.stash = vm.stash - obj.src = n.prg.src.Source()[n.srcStart:n.srcEnd] + obj.src = n.source + vm.push(obj.val) + vm.pc++ +} + +type newMethod newFunc + +func (n *newMethod) exec(vm *vm) { + obj := vm.r.newMethod(n.name, n.length, n.strict) + obj.prg = n.prg + obj.stash = vm.stash + obj.src = n.source + vm.push(obj.val) + vm.pc++ +} + +type newArrowFunc struct { + newFunc +} + +func (n *newArrowFunc) exec(vm *vm) { + obj := vm.r.newArrowFunc(n.name, n.length, n.strict) + obj.prg = n.prg + obj.stash = vm.stash + obj.src = n.source vm.push(obj.val) vm.pc++ } @@ -3509,7 +3619,27 @@ type _throw struct{} var throw _throw func (_throw) exec(vm *vm) { - panic(vm.stack[vm.sp-1]) + v := vm.stack[vm.sp-1] + if o, ok := v.(*Object); ok { + if e, ok := o.self.(*errorObject); ok { + if len(e.stack) > 0 { + frame0 := e.stack[0] + // If the Error was created immediately before throwing it (i.e. 'throw new Error(....)') + // avoid capturing the stack again by the reusing the stack from the Error. + // These stacks would be almost identical and the difference doesn't matter for debugging. + if frame0.prg == vm.prg && vm.pc-frame0.pc == 1 { + panic(&Exception{ + val: v, + stack: e.stack, + }) + } + } + } + } + panic(&Exception{ + val: v, + stack: vm.captureStack(make([]StackFrame, 0, len(vm.callStack)+1), 0), + }) } type _newVariadic struct{} @@ -3558,8 +3688,14 @@ func (_typeof) exec(vm *vm) { case *Object: repeat: switch s := v.self.(type) { - case *funcObject, *nativeFuncObject, *boundFuncObject: + case *methodFuncObject, *funcObject, *nativeFuncObject, *boundFuncObject, *arrowFuncObject: r = stringFunction + case *proxyObject: + if s.call == nil { + r = stringObjectC + } else { + r = stringFunction + } case *lazyObject: v.self = s.create(v) goto repeat @@ -3641,7 +3777,6 @@ func (formalArgs createArgsUnmapped) exec(vm *vm) { args._putProp("length", intToValue(int64(vm.args)), true, false, true) args._put("callee", vm.r.global.throwerProperty) - args._put("caller", vm.r.global.throwerProperty) args._putSym(SymIterator, valueProp(vm.r.global.arrayValues, true, false, true)) vm.push(args.val) vm.pc++ @@ -3692,7 +3827,7 @@ func (jmp enumNext) exec(vm *vm) { l := len(vm.iterStack) - 1 item, n := vm.iterStack[l].f() if n != nil { - vm.iterStack[l].val = stringValueFromRaw(item.name) + vm.iterStack[l].val = item.name vm.iterStack[l].f = n vm.pc++ } else { @@ -3731,7 +3866,7 @@ func (_enumPopClose) exec(vm *vm) { vm.iterStack[l] = iterStackItem{} vm.iterStack = vm.iterStack[:l] if iter := item.iter; iter != nil { - returnIter(iter) + iter.returnIter() } vm.pc++ } @@ -3762,19 +3897,9 @@ type iterNext int32 func (jmp iterNext) exec(vm *vm) { l := len(vm.iterStack) - 1 iter := vm.iterStack[l].iter - var res *Object - var done bool - var value Value - ex := vm.try(func() { - res = vm.r.toObject(toMethod(iter.self.getStr("next", nil))(FunctionCall{This: iter})) - done = nilSafe(res.self.getStr("done", nil)).ToBoolean() - if !done { - value = nilSafe(res.self.getStr("value", nil)) - vm.iterStack[l].val = value - } - }) + value, ex := iter.step() if ex == nil { - if done { + if value == nil { vm.pc += int(jmp) } else { vm.iterStack[l].val = value @@ -3788,6 +3913,26 @@ func (jmp iterNext) exec(vm *vm) { } } +type iterGetNextOrUndef struct{} + +func (iterGetNextOrUndef) exec(vm *vm) { + l := len(vm.iterStack) - 1 + iter := vm.iterStack[l].iter + var value Value + if iter.iterator != nil { + var ex *Exception + value, ex = iter.step() + if ex != nil { + l := len(vm.iterStack) - 1 + vm.iterStack[l] = iterStackItem{} + vm.iterStack = vm.iterStack[:l] + panic(ex.val) + } + } + vm.push(nilSafe(value)) + vm.pc++ +} + type copyStash struct{} func (copyStash) exec(vm *vm) { @@ -3797,6 +3942,7 @@ func (copyStash) exec(vm *vm) { } vm.stashAllocs++ newStash.values = append([]Value(nil), oldStash.values...) + newStash.names = oldStash.names vm.stash = newStash vm.pc++ } @@ -3815,9 +3961,8 @@ func (r *Runtime) copyDataProperties(target, source Value) { return } sourceObj := source.ToObject(r) - for _, key := range sourceObj.self.ownPropertyKeys(false, nil) { - v := nilSafe(sourceObj.get(key, nil)) - createDataPropertyOrThrow(targetObj, key, v) + for item, next := iterateEnumerableProperties(sourceObj)(); next != nil; item, next = next() { + createDataPropertyOrThrow(targetObj, item.name, item.value) } } @@ -3883,3 +4028,81 @@ func (_createArgsRestStash) exec(vm *vm) { vm.stash.extraArgs = nil vm.pc++ } + +type concatStrings int + +func (n concatStrings) exec(vm *vm) { + strs := vm.stack[vm.sp-int(n) : vm.sp] + length := 0 + allAscii := true + for _, s := range strs { + if allAscii { + if _, ok := s.(unicodeString); ok { + allAscii = false + } + } + length += s.(valueString).length() + } + + vm.sp -= int(n) - 1 + if allAscii { + var buf strings.Builder + buf.Grow(length) + for _, s := range strs { + buf.WriteString(string(s.(asciiString))) + } + vm.stack[vm.sp-1] = asciiString(buf.String()) + } else { + var buf unicodeStringBuilder + buf.Grow(length) + for _, s := range strs { + buf.WriteString(s.(valueString)) + } + vm.stack[vm.sp-1] = buf.String() + } + vm.pc++ +} + +type getTaggedTmplObject struct { + raw, cooked []Value +} + +// As tagged template objects are not cached (because it's hard to ensure the cache is cleaned without using +// finalizers) this wrapper is needed to override the equality method so that two objects for the same template +// literal appeared be equal from the code's point of view. +type taggedTemplateArray struct { + *arrayObject + idPtr *[]Value +} + +func (a *taggedTemplateArray) equal(other objectImpl) bool { + if o, ok := other.(*taggedTemplateArray); ok { + return a.idPtr == o.idPtr + } + return false +} + +func (c *getTaggedTmplObject) exec(vm *vm) { + cooked := vm.r.newArrayObject() + setArrayValues(cooked, c.cooked) + cooked.lengthProp.writable = false + + raw := vm.r.newArrayObject() + setArrayValues(raw, c.raw) + raw.lengthProp.writable = false + raw.preventExtensions(true) + raw.val.self = &taggedTemplateArray{ + arrayObject: raw, + idPtr: &c.raw, + } + + cooked._putProp("raw", raw.val, false, false, false) + cooked.preventExtensions(true) + cooked.val.self = &taggedTemplateArray{ + arrayObject: cooked, + idPtr: &c.cooked, + } + + vm.push(cooked.val) + vm.pc++ +} diff --git a/vendor/github.com/edwvee/exiffix/LICENSE b/vendor/github.com/edwvee/exiffix/LICENSE new file mode 100644 index 000000000..e922bb985 --- /dev/null +++ b/vendor/github.com/edwvee/exiffix/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2021 edwvee + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/vendor/github.com/edwvee/exiffix/decode.go b/vendor/github.com/edwvee/exiffix/decode.go index 369159ea0..bbbb036e0 100644 --- a/vendor/github.com/edwvee/exiffix/decode.go +++ b/vendor/github.com/edwvee/exiffix/decode.go @@ -20,11 +20,11 @@ func Decode(reader io.ReadSeeker) (image.Image, string, error) { switch orientation { case "1": case "2": - img = imaging.FlipV(img) + img = imaging.FlipH(img) case "3": img = imaging.Rotate180(img) case "4": - img = imaging.Rotate180(imaging.FlipV(img)) + img = imaging.Rotate180(imaging.FlipH(img)) case "5": img = imaging.Rotate270(imaging.FlipV(img)) case "6": diff --git a/vendor/github.com/ngrok/sqlmw/.golangci.yml b/vendor/github.com/ngrok/sqlmw/.golangci.yml new file mode 100644 index 000000000..c7081241f --- /dev/null +++ b/vendor/github.com/ngrok/sqlmw/.golangci.yml @@ -0,0 +1,3 @@ +issues: + exclude: + - "SA1019: .* has been deprecated since Go 1.*: Drivers should implement .*" diff --git a/vendor/github.com/ngrok/sqlmw/README.md b/vendor/github.com/ngrok/sqlmw/README.md index 9efde9296..99181b046 100644 --- a/vendor/github.com/ngrok/sqlmw/README.md +++ b/vendor/github.com/ngrok/sqlmw/README.md @@ -19,7 +19,7 @@ in a reuseable way, and more. Here's a complete example: -``` +```go func run(dsn string) { // install the wrapped driver sql.Register("postgres-mw", sqlmw.Driver(pq.Driver{}, new(sqlInterceptor))) @@ -41,7 +41,7 @@ func (in *sqlInterceptor) StmtQueryContext(ctx context.Context, conn driver.Stmt You may override any subset of methods to intercept in the `Interceptor` interface (https://godoc.org/github.com/ngrok/sqlmw#Interceptor): -``` +```go type Interceptor interface { // Connection interceptors ConnBeginTx(context.Context, driver.ConnBeginTx, driver.TxOptions) (driver.Tx, error) @@ -74,52 +74,60 @@ type Interceptor interface { Bear in mind that because you are intercepting the calls entirely, that you are responsible for passing control up to the wrapped driver in any function that you override, like so: - func (in *sqlInterceptor) ConnPing(ctx context.Context, conn driver.Pinger) error { - return conn.Ping(ctx) - } +```go +func (in *sqlInterceptor) ConnPing(ctx context.Context, conn driver.Pinger) error { + return conn.Ping(ctx) +} +``` ## Examples ### Logging - func (in *sqlInterceptor) StmtQueryContext(ctx context.Context, conn driver.StmtQueryContext, query string, args []driver.NamedValue) (driver.Rows, error) { - startedAt := time.Now() - rows, err := conn.QueryContext(ctx, args) - log.Debug("executed sql query", "duration", time.Since(startedAt), "query", query, "args", args, "err", err) - return rows, err - } +```go +func (in *sqlInterceptor) StmtQueryContext(ctx context.Context, conn driver.StmtQueryContext, query string, args []driver.NamedValue) (driver.Rows, error) { + startedAt := time.Now() + rows, err := conn.QueryContext(ctx, args) + log.Debug("executed sql query", "duration", time.Since(startedAt), "query", query, "args", args, "err", err) + return rows, err +} +``` ### Tracing - func (in *sqlInterceptor) StmtQueryContext(ctx context.Context, conn driver.StmtQueryContext, query string, args []driver.NamedValue) (driver.Rows, error) { - span := trace.FromContext(ctx).NewSpan(ctx, "StmtQueryContext") - span.Tags["query"] = query - defer span.Finish() - rows, err := conn.QueryContext(ctx, args) - if err != nil { - span.Error(err) - } - return rows, err +```go +func (in *sqlInterceptor) StmtQueryContext(ctx context.Context, conn driver.StmtQueryContext, query string, args []driver.NamedValue) (driver.Rows, error) { + span := trace.FromContext(ctx).NewSpan(ctx, "StmtQueryContext") + span.Tags["query"] = query + defer span.Finish() + rows, err := conn.QueryContext(ctx, args) + if err != nil { + span.Error(err) } + return rows, err +} +``` ### Retries - func (in *sqlInterceptor) StmtQueryContext(ctx context.Context, conn driver.StmtQueryContext, query string, args []driver.NamedValue) (driver.Rows, error) { - for { - rows, err := conn.QueryContext(ctx, args) - if err == nil { - return rows, nil - } - if err != nil && !isIdempotent(query) { - return nil, err - } - select { - case <-ctx.Done(): - return nil, ctx.Err() - case <-time.After(time.Second): - } +```go +func (in *sqlInterceptor) StmtQueryContext(ctx context.Context, conn driver.StmtQueryContext, query string, args []driver.NamedValue) (driver.Rows, error) { + for { + rows, err := conn.QueryContext(ctx, args) + if err == nil { + return rows, nil + } + if err != nil && !isIdempotent(query) { + return nil, err + } + select { + case <-ctx.Done(): + return nil, ctx.Err() + case <-time.After(time.Second): } } +} +``` ## Comparison with similar projects diff --git a/vendor/github.com/ngrok/sqlmw/conn.go b/vendor/github.com/ngrok/sqlmw/conn.go index 046b52503..b7f148077 100644 --- a/vendor/github.com/ngrok/sqlmw/conn.go +++ b/vendor/github.com/ngrok/sqlmw/conn.go @@ -94,7 +94,7 @@ func (c wrappedConn) Query(query string, args []driver.Value) (driver.Rows, erro if err != nil { return nil, err } - return wrappedRows{intr: c.intr, parent: rows}, nil + return wrapRows(context.Background(), c.intr, rows), nil //nolint } return nil, driver.ErrSkip } @@ -113,7 +113,7 @@ func (c wrappedConn) QueryContext(ctx context.Context, query string, args []driv return nil, err } - return wrappedRows{intr: c.intr, ctx: ctx, parent: rows}, nil + return wrapRows(ctx, c.intr, rows), nil } type wrappedParentConn struct { diff --git a/vendor/github.com/ngrok/sqlmw/conn_go115.go b/vendor/github.com/ngrok/sqlmw/conn_go115.go new file mode 100644 index 000000000..f635425d3 --- /dev/null +++ b/vendor/github.com/ngrok/sqlmw/conn_go115.go @@ -0,0 +1,19 @@ +// +build go1.15 + +package sqlmw + +import ( + "database/sql/driver" +) + +var _ driver.SessionResetter = wrappedConn{} + +func (c wrappedConn) IsValid() bool { + conn, ok := c.parent.(driver.Validator) + if !ok { + // the default if driver.Validator is not supported + return true + } + + return conn.IsValid() +} diff --git a/vendor/github.com/ngrok/sqlmw/connector.go b/vendor/github.com/ngrok/sqlmw/connector.go index 9c7770f65..4740a0de3 100644 --- a/vendor/github.com/ngrok/sqlmw/connector.go +++ b/vendor/github.com/ngrok/sqlmw/connector.go @@ -25,14 +25,6 @@ func (c wrappedConnector) Connect(ctx context.Context) (conn driver.Conn, err er return wrappedConn{intr: c.driverRef.intr, parent: conn}, nil } -func (c wrappedConnector) connect(ctx context.Context) (driver.Conn, error) { - conn, err := c.parent.Connect(ctx) - if err != nil { - return nil, err - } - return wrappedConn{intr: c.driverRef.intr, parent: conn}, err -} - func (c wrappedConnector) Driver() driver.Driver { return c.driverRef } diff --git a/vendor/github.com/ngrok/sqlmw/interceptor.go b/vendor/github.com/ngrok/sqlmw/interceptor.go index 1b57b3629..0cd07deec 100644 --- a/vendor/github.com/ngrok/sqlmw/interceptor.go +++ b/vendor/github.com/ngrok/sqlmw/interceptor.go @@ -22,6 +22,7 @@ type Interceptor interface { // Rows interceptors RowsNext(context.Context, driver.Rows, []driver.Value) error + RowsClose(context.Context, driver.Rows) error // Stmt interceptors StmtExecContext(context.Context, driver.StmtExecContext, string, []driver.NamedValue) (driver.Result, error) @@ -76,6 +77,10 @@ func (NullInterceptor) RowsNext(ctx context.Context, rows driver.Rows, dest []dr return rows.Next(dest) } +func (NullInterceptor) RowsClose(ctx context.Context, rows driver.Rows) error { + return rows.Close() +} + func (NullInterceptor) StmtExecContext(ctx context.Context, stmt driver.StmtExecContext, _ string, args []driver.NamedValue) (driver.Result, error) { return stmt.ExecContext(ctx, args) } diff --git a/vendor/github.com/ngrok/sqlmw/rows.go b/vendor/github.com/ngrok/sqlmw/rows.go index b215b618a..b18477962 100644 --- a/vendor/github.com/ngrok/sqlmw/rows.go +++ b/vendor/github.com/ngrok/sqlmw/rows.go @@ -3,18 +3,28 @@ package sqlmw import ( "context" "database/sql/driver" + "reflect" ) -// Compile time validation that our types implement the expected interfaces -var ( - _ driver.Rows = wrappedRows{} - _ driver.RowsColumnTypeDatabaseTypeName // TODO - _ driver.RowsColumnTypeLength // TODO - _ driver.RowsColumnTypeNullable // TODO - _ driver.RowsColumnTypePrecisionScale // TODO - _ driver.RowsColumnTypeScanType // TODO - _ driver.RowsNextResultSet // TODO -) +//go:generate go run ./tools/rows_picker_gen.go -o rows_picker.go + +// RowsUnwrapper must be used by any middleware that provides its own wrapping +// for driver.Rows. Unwrap should return the original driver.Rows the +// middleware received. You may wish to wrap the driver.Rows returned by the +// Query methods if you want to pass extra information from the Query call to +// the subsequent RowsNext and RowsClose calls. +// +// sqlmw needs to retrieve the original driver.Rows in order to determine the +// original set of optional methods supported by the driver.Rows of the +// database driver in use by the caller. +// +// If a middleware returns a custom driver.Rows, the custom implmentation +// must support all the driver.Rows optional interfaces that are supported by +// by the drivers that will be used with it. To support any arbitrary driver +// all the optional methods must be supported. +type RowsUnwrapper interface { + Unwrap() driver.Rows +} type wrappedRows struct { intr Interceptor @@ -27,9 +37,61 @@ func (r wrappedRows) Columns() []string { } func (r wrappedRows) Close() error { - return r.parent.Close() + return r.intr.RowsClose(r.ctx, r.parent) } func (r wrappedRows) Next(dest []driver.Value) (err error) { return r.intr.RowsNext(r.ctx, r.parent, dest) } + +type wrappedRowsNextResultSet struct { + rows driver.Rows +} + +func (r wrappedRowsNextResultSet) HasNextResultSet() bool { + return r.rows.(driver.RowsNextResultSet).HasNextResultSet() +} + +func (r wrappedRowsNextResultSet) NextResultSet() error { + return r.rows.(driver.RowsNextResultSet).NextResultSet() +} + +type wrappedRowsColumnTypeDatabaseTypeName struct { + rows driver.Rows +} + +func (r wrappedRowsColumnTypeDatabaseTypeName) ColumnTypeDatabaseTypeName(index int) string { + return r.rows.(driver.RowsColumnTypeDatabaseTypeName).ColumnTypeDatabaseTypeName(index) +} + +type wrappedRowsColumnTypeLength struct { + rows driver.Rows +} + +func (r wrappedRowsColumnTypeLength) ColumnTypeLength(index int) (length int64, ok bool) { + return r.rows.(driver.RowsColumnTypeLength).ColumnTypeLength(index) +} + +type wrappedRowsColumnTypeNullable struct { + rows driver.Rows +} + +func (r wrappedRowsColumnTypeNullable) ColumnTypeNullable(index int) (nullable, ok bool) { + return r.rows.(driver.RowsColumnTypeNullable).ColumnTypeNullable(index) +} + +type wrappedRowsColumnTypePrecisionScale struct { + rows driver.Rows +} + +func (r wrappedRowsColumnTypePrecisionScale) ColumnTypePrecisionScale(index int) (precision, scale int64, ok bool) { + return r.rows.(driver.RowsColumnTypePrecisionScale).ColumnTypePrecisionScale(index) +} + +type wrappedRowsColumnTypeScanType struct { + rows driver.Rows +} + +func (r wrappedRowsColumnTypeScanType) ColumnTypeScanType(index int) reflect.Type { + return r.rows.(driver.RowsColumnTypeScanType).ColumnTypeScanType(index) +} diff --git a/vendor/github.com/ngrok/sqlmw/rows_picker.go b/vendor/github.com/ngrok/sqlmw/rows_picker.go new file mode 100644 index 000000000..84a94ab3f --- /dev/null +++ b/vendor/github.com/ngrok/sqlmw/rows_picker.go @@ -0,0 +1,1017 @@ +// Code generated using tool/rows_picker_gen.go DO NOT EDIT. +// Date: Dec 20 09:54:15 + +package sqlmw + +import ( + "context" + "database/sql/driver" +) + +const ( + rowsNextResultSet = 1 << iota + rowsColumnTypeDatabaseTypeName + rowsColumnTypeLength + rowsColumnTypeNullable + rowsColumnTypePrecisionScale + rowsColumnTypeScanType +) + +var pickRows = make([]func(*wrappedRows) driver.Rows, 64) + +func init() { + + // plain driver.Rows + pickRows[0] = func(r *wrappedRows) driver.Rows { + return r + } + + // plain driver.Rows + pickRows[1] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + }{ + r, + wrappedRowsNextResultSet{r.parent}, + } + } + + // plain driver.Rows + pickRows[2] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + } + } + + // plain driver.Rows + pickRows[3] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + } + } + + // plain driver.Rows + pickRows[4] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeLength + }{ + r, + wrappedRowsColumnTypeLength{r.parent}, + } + } + + // plain driver.Rows + pickRows[5] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeLength + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + } + } + + // plain driver.Rows + pickRows[6] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + } + } + + // plain driver.Rows + pickRows[7] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + } + } + + // plain driver.Rows + pickRows[8] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeNullable + }{ + r, + wrappedRowsColumnTypeNullable{r.parent}, + } + } + + // plain driver.Rows + pickRows[9] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeNullable + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + } + } + + // plain driver.Rows + pickRows[10] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeNullable + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + } + } + + // plain driver.Rows + pickRows[11] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeNullable + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + } + } + + // plain driver.Rows + pickRows[12] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + }{ + r, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + } + } + + // plain driver.Rows + pickRows[13] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + } + } + + // plain driver.Rows + pickRows[14] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + } + } + + // plain driver.Rows + pickRows[15] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + } + } + + // plain driver.Rows + pickRows[16] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[17] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[18] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[19] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[20] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeLength + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[21] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeLength + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[22] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[23] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[24] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[25] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[26] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[27] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[28] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[29] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[30] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[31] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + } + } + + // plain driver.Rows + pickRows[32] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[33] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[34] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[35] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[36] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[37] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[38] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[39] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[40] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[41] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[42] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[43] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[44] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[45] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[46] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[47] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[48] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[49] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[50] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[51] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[52] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeLength + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[53] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeLength + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[54] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[55] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[56] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[57] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[58] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[59] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[60] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[61] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[62] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } + + // plain driver.Rows + pickRows[63] = func(r *wrappedRows) driver.Rows { + return struct { + *wrappedRows + wrappedRowsNextResultSet + wrappedRowsColumnTypeDatabaseTypeName + wrappedRowsColumnTypeLength + wrappedRowsColumnTypeNullable + wrappedRowsColumnTypePrecisionScale + wrappedRowsColumnTypeScanType + }{ + r, + wrappedRowsNextResultSet{r.parent}, + wrappedRowsColumnTypeDatabaseTypeName{r.parent}, + wrappedRowsColumnTypeLength{r.parent}, + wrappedRowsColumnTypeNullable{r.parent}, + wrappedRowsColumnTypePrecisionScale{r.parent}, + wrappedRowsColumnTypeScanType{r.parent}, + } + } +} + +func wrapRows(ctx context.Context, intr Interceptor, r driver.Rows) driver.Rows { + or := r + for { + ur, ok := or.(RowsUnwrapper) + if !ok { + break + } + or = ur.Unwrap() + } + + id := 0 + + if _, ok := or.(driver.RowsNextResultSet); ok { + id += rowsNextResultSet + } + if _, ok := or.(driver.RowsColumnTypeDatabaseTypeName); ok { + id += rowsColumnTypeDatabaseTypeName + } + if _, ok := or.(driver.RowsColumnTypeLength); ok { + id += rowsColumnTypeLength + } + if _, ok := or.(driver.RowsColumnTypeNullable); ok { + id += rowsColumnTypeNullable + } + if _, ok := or.(driver.RowsColumnTypePrecisionScale); ok { + id += rowsColumnTypePrecisionScale + } + if _, ok := or.(driver.RowsColumnTypeScanType); ok { + id += rowsColumnTypeScanType + } + wr := &wrappedRows{ + ctx: ctx, + intr: intr, + parent: r, + } + return pickRows[id](wr) +} diff --git a/vendor/github.com/ngrok/sqlmw/stmt.go b/vendor/github.com/ngrok/sqlmw/stmt.go index bde56dcf2..226db7bc7 100644 --- a/vendor/github.com/ngrok/sqlmw/stmt.go +++ b/vendor/github.com/ngrok/sqlmw/stmt.go @@ -42,7 +42,7 @@ func (s wrappedStmt) Query(args []driver.Value) (rows driver.Rows, err error) { if err != nil { return nil, err } - return wrappedRows{intr: s.intr, ctx: s.ctx, parent: rows}, nil + return wrapRows(s.ctx, s.intr, rows), nil } func (s wrappedStmt) ExecContext(ctx context.Context, args []driver.NamedValue) (res driver.Result, err error) { @@ -60,7 +60,7 @@ func (s wrappedStmt) QueryContext(ctx context.Context, args []driver.NamedValue) if err != nil { return nil, err } - return wrappedRows{intr: s.intr, ctx: ctx, parent: rows}, nil + return wrapRows(ctx, s.intr, rows), nil } func (s wrappedStmt) ColumnConverter(idx int) driver.ValueConverter { diff --git a/vendor/golang.org/x/crypto/argon2/blamka_amd64.go b/vendor/golang.org/x/crypto/argon2/blamka_amd64.go index 1108e1144..a014ac92a 100644 --- a/vendor/golang.org/x/crypto/argon2/blamka_amd64.go +++ b/vendor/golang.org/x/crypto/argon2/blamka_amd64.go @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build amd64 && gc && !purego // +build amd64,gc,!purego package argon2 diff --git a/vendor/golang.org/x/crypto/argon2/blamka_amd64.s b/vendor/golang.org/x/crypto/argon2/blamka_amd64.s index c4c84f07a..b2cc05150 100644 --- a/vendor/golang.org/x/crypto/argon2/blamka_amd64.s +++ b/vendor/golang.org/x/crypto/argon2/blamka_amd64.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build amd64 && gc && !purego // +build amd64,gc,!purego #include "textflag.h" diff --git a/vendor/golang.org/x/crypto/argon2/blamka_ref.go b/vendor/golang.org/x/crypto/argon2/blamka_ref.go index 4a963c780..167c59d2d 100644 --- a/vendor/golang.org/x/crypto/argon2/blamka_ref.go +++ b/vendor/golang.org/x/crypto/argon2/blamka_ref.go @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build !amd64 || purego || !gc // +build !amd64 purego !gc package argon2 diff --git a/vendor/golang.org/x/crypto/blake2b/blake2bAVX2_amd64.go b/vendor/golang.org/x/crypto/blake2b/blake2bAVX2_amd64.go index 8a893fdff..56bfaaa17 100644 --- a/vendor/golang.org/x/crypto/blake2b/blake2bAVX2_amd64.go +++ b/vendor/golang.org/x/crypto/blake2b/blake2bAVX2_amd64.go @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build go1.7 && amd64 && gc && !purego // +build go1.7,amd64,gc,!purego package blake2b diff --git a/vendor/golang.org/x/crypto/blake2b/blake2bAVX2_amd64.s b/vendor/golang.org/x/crypto/blake2b/blake2bAVX2_amd64.s index 8608a7f7d..4b9daa18d 100644 --- a/vendor/golang.org/x/crypto/blake2b/blake2bAVX2_amd64.s +++ b/vendor/golang.org/x/crypto/blake2b/blake2bAVX2_amd64.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build go1.7 && amd64 && gc && !purego // +build go1.7,amd64,gc,!purego #include "textflag.h" @@ -282,14 +283,12 @@ TEXT ·hashBlocksAVX2(SB), 4, $320-48 // frame size = 288 + 32 byte alignment MOVQ blocks_len+32(FP), DI MOVQ SP, DX - MOVQ SP, R9 - ADDQ $31, R9 - ANDQ $~31, R9 - MOVQ R9, SP + ADDQ $31, DX + ANDQ $~31, DX - MOVQ CX, 16(SP) + MOVQ CX, 16(DX) XORQ CX, CX - MOVQ CX, 24(SP) + MOVQ CX, 24(DX) VMOVDQU ·AVX2_c40<>(SB), Y4 VMOVDQU ·AVX2_c48<>(SB), Y5 @@ -301,33 +300,33 @@ TEXT ·hashBlocksAVX2(SB), 4, $320-48 // frame size = 288 + 32 byte alignment MOVQ 0(BX), R8 MOVQ 8(BX), R9 - MOVQ R9, 8(SP) + MOVQ R9, 8(DX) loop: ADDQ $128, R8 - MOVQ R8, 0(SP) + MOVQ R8, 0(DX) CMPQ R8, $128 JGE noinc INCQ R9 - MOVQ R9, 8(SP) + MOVQ R9, 8(DX) noinc: VMOVDQA Y8, Y0 VMOVDQA Y9, Y1 VMOVDQA Y6, Y2 - VPXOR 0(SP), Y7, Y3 + VPXOR 0(DX), Y7, Y3 LOAD_MSG_AVX2_0_2_4_6_1_3_5_7_8_10_12_14_9_11_13_15() - VMOVDQA Y12, 32(SP) - VMOVDQA Y13, 64(SP) - VMOVDQA Y14, 96(SP) - VMOVDQA Y15, 128(SP) + VMOVDQA Y12, 32(DX) + VMOVDQA Y13, 64(DX) + VMOVDQA Y14, 96(DX) + VMOVDQA Y15, 128(DX) ROUND_AVX2(Y12, Y13, Y14, Y15, Y10, Y4, Y5) LOAD_MSG_AVX2_14_4_9_13_10_8_15_6_1_0_11_5_12_2_7_3() - VMOVDQA Y12, 160(SP) - VMOVDQA Y13, 192(SP) - VMOVDQA Y14, 224(SP) - VMOVDQA Y15, 256(SP) + VMOVDQA Y12, 160(DX) + VMOVDQA Y13, 192(DX) + VMOVDQA Y14, 224(DX) + VMOVDQA Y15, 256(DX) ROUND_AVX2(Y12, Y13, Y14, Y15, Y10, Y4, Y5) LOAD_MSG_AVX2_11_12_5_15_8_0_2_13_10_3_7_9_14_6_1_4() @@ -347,8 +346,8 @@ noinc: LOAD_MSG_AVX2_10_8_7_1_2_4_6_5_15_9_3_13_11_14_12_0() ROUND_AVX2(Y12, Y13, Y14, Y15, Y10, Y4, Y5) - ROUND_AVX2(32(SP), 64(SP), 96(SP), 128(SP), Y10, Y4, Y5) - ROUND_AVX2(160(SP), 192(SP), 224(SP), 256(SP), Y10, Y4, Y5) + ROUND_AVX2(32(DX), 64(DX), 96(DX), 128(DX), Y10, Y4, Y5) + ROUND_AVX2(160(DX), 192(DX), 224(DX), 256(DX), Y10, Y4, Y5) VPXOR Y0, Y8, Y8 VPXOR Y1, Y9, Y9 @@ -366,7 +365,6 @@ noinc: VMOVDQU Y9, 32(AX) VZEROUPPER - MOVQ DX, SP RET #define VPUNPCKLQDQ_X2_X2_X15 BYTE $0xC5; BYTE $0x69; BYTE $0x6C; BYTE $0xFA @@ -584,11 +582,9 @@ TEXT ·hashBlocksAVX(SB), 4, $288-48 // frame size = 272 + 16 byte alignment MOVQ blocks_base+24(FP), SI MOVQ blocks_len+32(FP), DI - MOVQ SP, BP - MOVQ SP, R9 - ADDQ $15, R9 - ANDQ $~15, R9 - MOVQ R9, SP + MOVQ SP, R10 + ADDQ $15, R10 + ANDQ $~15, R10 VMOVDQU ·AVX_c40<>(SB), X0 VMOVDQU ·AVX_c48<>(SB), X1 @@ -596,8 +592,8 @@ TEXT ·hashBlocksAVX(SB), 4, $288-48 // frame size = 272 + 16 byte alignment VMOVDQA X1, X9 VMOVDQU ·AVX_iv3<>(SB), X0 - VMOVDQA X0, 0(SP) - XORQ CX, 0(SP) // 0(SP) = ·AVX_iv3 ^ (CX || 0) + VMOVDQA X0, 0(R10) + XORQ CX, 0(R10) // 0(R10) = ·AVX_iv3 ^ (CX || 0) VMOVDQU 0(AX), X10 VMOVDQU 16(AX), X11 @@ -624,35 +620,35 @@ noinc: VMOVDQU ·AVX_iv2<>(SB), X6 VPXOR X15, X6, X6 - VMOVDQA 0(SP), X7 + VMOVDQA 0(R10), X7 LOAD_MSG_AVX_0_2_4_6_1_3_5_7() - VMOVDQA X12, 16(SP) - VMOVDQA X13, 32(SP) - VMOVDQA X14, 48(SP) - VMOVDQA X15, 64(SP) + VMOVDQA X12, 16(R10) + VMOVDQA X13, 32(R10) + VMOVDQA X14, 48(R10) + VMOVDQA X15, 64(R10) HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, X12, X13, X14, X15, X15, X8, X9) SHUFFLE_AVX() LOAD_MSG_AVX(8, 10, 12, 14, 9, 11, 13, 15) - VMOVDQA X12, 80(SP) - VMOVDQA X13, 96(SP) - VMOVDQA X14, 112(SP) - VMOVDQA X15, 128(SP) + VMOVDQA X12, 80(R10) + VMOVDQA X13, 96(R10) + VMOVDQA X14, 112(R10) + VMOVDQA X15, 128(R10) HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, X12, X13, X14, X15, X15, X8, X9) SHUFFLE_AVX_INV() LOAD_MSG_AVX(14, 4, 9, 13, 10, 8, 15, 6) - VMOVDQA X12, 144(SP) - VMOVDQA X13, 160(SP) - VMOVDQA X14, 176(SP) - VMOVDQA X15, 192(SP) + VMOVDQA X12, 144(R10) + VMOVDQA X13, 160(R10) + VMOVDQA X14, 176(R10) + VMOVDQA X15, 192(R10) HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, X12, X13, X14, X15, X15, X8, X9) SHUFFLE_AVX() LOAD_MSG_AVX_1_0_11_5_12_2_7_3() - VMOVDQA X12, 208(SP) - VMOVDQA X13, 224(SP) - VMOVDQA X14, 240(SP) - VMOVDQA X15, 256(SP) + VMOVDQA X12, 208(R10) + VMOVDQA X13, 224(R10) + VMOVDQA X14, 240(R10) + VMOVDQA X15, 256(R10) HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, X12, X13, X14, X15, X15, X8, X9) SHUFFLE_AVX_INV() @@ -712,14 +708,14 @@ noinc: HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, X12, X13, X14, X15, X15, X8, X9) SHUFFLE_AVX_INV() - HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, 16(SP), 32(SP), 48(SP), 64(SP), X15, X8, X9) + HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, 16(R10), 32(R10), 48(R10), 64(R10), X15, X8, X9) SHUFFLE_AVX() - HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, 80(SP), 96(SP), 112(SP), 128(SP), X15, X8, X9) + HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, 80(R10), 96(R10), 112(R10), 128(R10), X15, X8, X9) SHUFFLE_AVX_INV() - HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, 144(SP), 160(SP), 176(SP), 192(SP), X15, X8, X9) + HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, 144(R10), 160(R10), 176(R10), 192(R10), X15, X8, X9) SHUFFLE_AVX() - HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, 208(SP), 224(SP), 240(SP), 256(SP), X15, X8, X9) + HALF_ROUND_AVX(X0, X1, X2, X3, X4, X5, X6, X7, 208(R10), 224(R10), 240(R10), 256(R10), X15, X8, X9) SHUFFLE_AVX_INV() VMOVDQU 32(AX), X14 @@ -746,5 +742,4 @@ noinc: MOVQ R9, 8(BX) VZEROUPPER - MOVQ BP, SP RET diff --git a/vendor/golang.org/x/crypto/blake2b/blake2b_amd64.go b/vendor/golang.org/x/crypto/blake2b/blake2b_amd64.go index a52c887fc..5fa1b3284 100644 --- a/vendor/golang.org/x/crypto/blake2b/blake2b_amd64.go +++ b/vendor/golang.org/x/crypto/blake2b/blake2b_amd64.go @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build !go1.7 && amd64 && gc && !purego // +build !go1.7,amd64,gc,!purego package blake2b diff --git a/vendor/golang.org/x/crypto/blake2b/blake2b_amd64.s b/vendor/golang.org/x/crypto/blake2b/blake2b_amd64.s index 1f4c6a927..ae75eb9af 100644 --- a/vendor/golang.org/x/crypto/blake2b/blake2b_amd64.s +++ b/vendor/golang.org/x/crypto/blake2b/blake2b_amd64.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build amd64 && gc && !purego // +build amd64,gc,!purego #include "textflag.h" @@ -118,15 +119,13 @@ TEXT ·hashBlocksSSE4(SB), 4, $288-48 // frame size = 272 + 16 byte alignment MOVQ blocks_base+24(FP), SI MOVQ blocks_len+32(FP), DI - MOVQ SP, BP - MOVQ SP, R9 - ADDQ $15, R9 - ANDQ $~15, R9 - MOVQ R9, SP + MOVQ SP, R10 + ADDQ $15, R10 + ANDQ $~15, R10 MOVOU ·iv3<>(SB), X0 - MOVO X0, 0(SP) - XORQ CX, 0(SP) // 0(SP) = ·iv3 ^ (CX || 0) + MOVO X0, 0(R10) + XORQ CX, 0(R10) // 0(R10) = ·iv3 ^ (CX || 0) MOVOU ·c40<>(SB), X13 MOVOU ·c48<>(SB), X14 @@ -156,35 +155,35 @@ noinc: MOVOU ·iv2<>(SB), X6 PXOR X8, X6 - MOVO 0(SP), X7 + MOVO 0(R10), X7 LOAD_MSG(X8, X9, X10, X11, SI, 0, 2, 4, 6, 1, 3, 5, 7) - MOVO X8, 16(SP) - MOVO X9, 32(SP) - MOVO X10, 48(SP) - MOVO X11, 64(SP) + MOVO X8, 16(R10) + MOVO X9, 32(R10) + MOVO X10, 48(R10) + MOVO X11, 64(R10) HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, X8, X9, X10, X11, X11, X13, X14) SHUFFLE(X2, X3, X4, X5, X6, X7, X8, X9) LOAD_MSG(X8, X9, X10, X11, SI, 8, 10, 12, 14, 9, 11, 13, 15) - MOVO X8, 80(SP) - MOVO X9, 96(SP) - MOVO X10, 112(SP) - MOVO X11, 128(SP) + MOVO X8, 80(R10) + MOVO X9, 96(R10) + MOVO X10, 112(R10) + MOVO X11, 128(R10) HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, X8, X9, X10, X11, X11, X13, X14) SHUFFLE_INV(X2, X3, X4, X5, X6, X7, X8, X9) LOAD_MSG(X8, X9, X10, X11, SI, 14, 4, 9, 13, 10, 8, 15, 6) - MOVO X8, 144(SP) - MOVO X9, 160(SP) - MOVO X10, 176(SP) - MOVO X11, 192(SP) + MOVO X8, 144(R10) + MOVO X9, 160(R10) + MOVO X10, 176(R10) + MOVO X11, 192(R10) HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, X8, X9, X10, X11, X11, X13, X14) SHUFFLE(X2, X3, X4, X5, X6, X7, X8, X9) LOAD_MSG(X8, X9, X10, X11, SI, 1, 0, 11, 5, 12, 2, 7, 3) - MOVO X8, 208(SP) - MOVO X9, 224(SP) - MOVO X10, 240(SP) - MOVO X11, 256(SP) + MOVO X8, 208(R10) + MOVO X9, 224(R10) + MOVO X10, 240(R10) + MOVO X11, 256(R10) HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, X8, X9, X10, X11, X11, X13, X14) SHUFFLE_INV(X2, X3, X4, X5, X6, X7, X8, X9) @@ -244,14 +243,14 @@ noinc: HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, X8, X9, X10, X11, X11, X13, X14) SHUFFLE_INV(X2, X3, X4, X5, X6, X7, X8, X9) - HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, 16(SP), 32(SP), 48(SP), 64(SP), X11, X13, X14) + HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, 16(R10), 32(R10), 48(R10), 64(R10), X11, X13, X14) SHUFFLE(X2, X3, X4, X5, X6, X7, X8, X9) - HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, 80(SP), 96(SP), 112(SP), 128(SP), X11, X13, X14) + HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, 80(R10), 96(R10), 112(R10), 128(R10), X11, X13, X14) SHUFFLE_INV(X2, X3, X4, X5, X6, X7, X8, X9) - HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, 144(SP), 160(SP), 176(SP), 192(SP), X11, X13, X14) + HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, 144(R10), 160(R10), 176(R10), 192(R10), X11, X13, X14) SHUFFLE(X2, X3, X4, X5, X6, X7, X8, X9) - HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, 208(SP), 224(SP), 240(SP), 256(SP), X11, X13, X14) + HALF_ROUND(X0, X1, X2, X3, X4, X5, X6, X7, 208(R10), 224(R10), 240(R10), 256(R10), X11, X13, X14) SHUFFLE_INV(X2, X3, X4, X5, X6, X7, X8, X9) MOVOU 32(AX), X10 @@ -277,5 +276,4 @@ noinc: MOVQ R8, 0(BX) MOVQ R9, 8(BX) - MOVQ BP, SP RET diff --git a/vendor/golang.org/x/crypto/blake2b/blake2b_ref.go b/vendor/golang.org/x/crypto/blake2b/blake2b_ref.go index 859745778..b0137cdf0 100644 --- a/vendor/golang.org/x/crypto/blake2b/blake2b_ref.go +++ b/vendor/golang.org/x/crypto/blake2b/blake2b_ref.go @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build !amd64 || purego || !gc // +build !amd64 purego !gc package blake2b diff --git a/vendor/golang.org/x/crypto/blake2b/register.go b/vendor/golang.org/x/crypto/blake2b/register.go index efd689af4..9d8633963 100644 --- a/vendor/golang.org/x/crypto/blake2b/register.go +++ b/vendor/golang.org/x/crypto/blake2b/register.go @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build go1.9 // +build go1.9 package blake2b diff --git a/vendor/golang.org/x/crypto/curve25519/curve25519.go b/vendor/golang.org/x/crypto/curve25519/curve25519.go index 4b9a655d1..cda3fdd35 100644 --- a/vendor/golang.org/x/crypto/curve25519/curve25519.go +++ b/vendor/golang.org/x/crypto/curve25519/curve25519.go @@ -10,6 +10,8 @@ package curve25519 // import "golang.org/x/crypto/curve25519" import ( "crypto/subtle" "fmt" + + "golang.org/x/crypto/curve25519/internal/field" ) // ScalarMult sets dst to the product scalar * point. @@ -18,7 +20,55 @@ import ( // zeroes, irrespective of the scalar. Instead, use the X25519 function, which // will return an error. func ScalarMult(dst, scalar, point *[32]byte) { - scalarMult(dst, scalar, point) + var e [32]byte + + copy(e[:], scalar[:]) + e[0] &= 248 + e[31] &= 127 + e[31] |= 64 + + var x1, x2, z2, x3, z3, tmp0, tmp1 field.Element + x1.SetBytes(point[:]) + x2.One() + x3.Set(&x1) + z3.One() + + swap := 0 + for pos := 254; pos >= 0; pos-- { + b := e[pos/8] >> uint(pos&7) + b &= 1 + swap ^= int(b) + x2.Swap(&x3, swap) + z2.Swap(&z3, swap) + swap = int(b) + + tmp0.Subtract(&x3, &z3) + tmp1.Subtract(&x2, &z2) + x2.Add(&x2, &z2) + z2.Add(&x3, &z3) + z3.Multiply(&tmp0, &x2) + z2.Multiply(&z2, &tmp1) + tmp0.Square(&tmp1) + tmp1.Square(&x2) + x3.Add(&z3, &z2) + z2.Subtract(&z3, &z2) + x2.Multiply(&tmp1, &tmp0) + tmp1.Subtract(&tmp1, &tmp0) + z2.Square(&z2) + + z3.Mult32(&tmp1, 121666) + x3.Square(&x3) + tmp0.Add(&tmp0, &z3) + z3.Multiply(&x1, &z2) + z2.Multiply(&tmp1, &tmp0) + } + + x2.Swap(&x3, swap) + z2.Swap(&z3, swap) + + z2.Invert(&z2) + x2.Multiply(&x2, &z2) + copy(dst[:], x2.Bytes()) } // ScalarBaseMult sets dst to the product scalar * base where base is the diff --git a/vendor/golang.org/x/crypto/curve25519/curve25519_amd64.go b/vendor/golang.org/x/crypto/curve25519/curve25519_amd64.go deleted file mode 100644 index 877b6de29..000000000 --- a/vendor/golang.org/x/crypto/curve25519/curve25519_amd64.go +++ /dev/null @@ -1,240 +0,0 @@ -// Copyright 2012 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -// +build amd64,gc,!purego - -package curve25519 - -// These functions are implemented in the .s files. The names of the functions -// in the rest of the file are also taken from the SUPERCOP sources to help -// people following along. - -//go:noescape - -func cswap(inout *[5]uint64, v uint64) - -//go:noescape - -func ladderstep(inout *[5][5]uint64) - -//go:noescape - -func freeze(inout *[5]uint64) - -//go:noescape - -func mul(dest, a, b *[5]uint64) - -//go:noescape - -func square(out, in *[5]uint64) - -// mladder uses a Montgomery ladder to calculate (xr/zr) *= s. -func mladder(xr, zr *[5]uint64, s *[32]byte) { - var work [5][5]uint64 - - work[0] = *xr - setint(&work[1], 1) - setint(&work[2], 0) - work[3] = *xr - setint(&work[4], 1) - - j := uint(6) - var prevbit byte - - for i := 31; i >= 0; i-- { - for j < 8 { - bit := ((*s)[i] >> j) & 1 - swap := bit ^ prevbit - prevbit = bit - cswap(&work[1], uint64(swap)) - ladderstep(&work) - j-- - } - j = 7 - } - - *xr = work[1] - *zr = work[2] -} - -func scalarMult(out, in, base *[32]byte) { - var e [32]byte - copy(e[:], (*in)[:]) - e[0] &= 248 - e[31] &= 127 - e[31] |= 64 - - var t, z [5]uint64 - unpack(&t, base) - mladder(&t, &z, &e) - invert(&z, &z) - mul(&t, &t, &z) - pack(out, &t) -} - -func setint(r *[5]uint64, v uint64) { - r[0] = v - r[1] = 0 - r[2] = 0 - r[3] = 0 - r[4] = 0 -} - -// unpack sets r = x where r consists of 5, 51-bit limbs in little-endian -// order. -func unpack(r *[5]uint64, x *[32]byte) { - r[0] = uint64(x[0]) | - uint64(x[1])<<8 | - uint64(x[2])<<16 | - uint64(x[3])<<24 | - uint64(x[4])<<32 | - uint64(x[5])<<40 | - uint64(x[6]&7)<<48 - - r[1] = uint64(x[6])>>3 | - uint64(x[7])<<5 | - uint64(x[8])<<13 | - uint64(x[9])<<21 | - uint64(x[10])<<29 | - uint64(x[11])<<37 | - uint64(x[12]&63)<<45 - - r[2] = uint64(x[12])>>6 | - uint64(x[13])<<2 | - uint64(x[14])<<10 | - uint64(x[15])<<18 | - uint64(x[16])<<26 | - uint64(x[17])<<34 | - uint64(x[18])<<42 | - uint64(x[19]&1)<<50 - - r[3] = uint64(x[19])>>1 | - uint64(x[20])<<7 | - uint64(x[21])<<15 | - uint64(x[22])<<23 | - uint64(x[23])<<31 | - uint64(x[24])<<39 | - uint64(x[25]&15)<<47 - - r[4] = uint64(x[25])>>4 | - uint64(x[26])<<4 | - uint64(x[27])<<12 | - uint64(x[28])<<20 | - uint64(x[29])<<28 | - uint64(x[30])<<36 | - uint64(x[31]&127)<<44 -} - -// pack sets out = x where out is the usual, little-endian form of the 5, -// 51-bit limbs in x. -func pack(out *[32]byte, x *[5]uint64) { - t := *x - freeze(&t) - - out[0] = byte(t[0]) - out[1] = byte(t[0] >> 8) - out[2] = byte(t[0] >> 16) - out[3] = byte(t[0] >> 24) - out[4] = byte(t[0] >> 32) - out[5] = byte(t[0] >> 40) - out[6] = byte(t[0] >> 48) - - out[6] ^= byte(t[1]<<3) & 0xf8 - out[7] = byte(t[1] >> 5) - out[8] = byte(t[1] >> 13) - out[9] = byte(t[1] >> 21) - out[10] = byte(t[1] >> 29) - out[11] = byte(t[1] >> 37) - out[12] = byte(t[1] >> 45) - - out[12] ^= byte(t[2]<<6) & 0xc0 - out[13] = byte(t[2] >> 2) - out[14] = byte(t[2] >> 10) - out[15] = byte(t[2] >> 18) - out[16] = byte(t[2] >> 26) - out[17] = byte(t[2] >> 34) - out[18] = byte(t[2] >> 42) - out[19] = byte(t[2] >> 50) - - out[19] ^= byte(t[3]<<1) & 0xfe - out[20] = byte(t[3] >> 7) - out[21] = byte(t[3] >> 15) - out[22] = byte(t[3] >> 23) - out[23] = byte(t[3] >> 31) - out[24] = byte(t[3] >> 39) - out[25] = byte(t[3] >> 47) - - out[25] ^= byte(t[4]<<4) & 0xf0 - out[26] = byte(t[4] >> 4) - out[27] = byte(t[4] >> 12) - out[28] = byte(t[4] >> 20) - out[29] = byte(t[4] >> 28) - out[30] = byte(t[4] >> 36) - out[31] = byte(t[4] >> 44) -} - -// invert calculates r = x^-1 mod p using Fermat's little theorem. -func invert(r *[5]uint64, x *[5]uint64) { - var z2, z9, z11, z2_5_0, z2_10_0, z2_20_0, z2_50_0, z2_100_0, t [5]uint64 - - square(&z2, x) /* 2 */ - square(&t, &z2) /* 4 */ - square(&t, &t) /* 8 */ - mul(&z9, &t, x) /* 9 */ - mul(&z11, &z9, &z2) /* 11 */ - square(&t, &z11) /* 22 */ - mul(&z2_5_0, &t, &z9) /* 2^5 - 2^0 = 31 */ - - square(&t, &z2_5_0) /* 2^6 - 2^1 */ - for i := 1; i < 5; i++ { /* 2^20 - 2^10 */ - square(&t, &t) - } - mul(&z2_10_0, &t, &z2_5_0) /* 2^10 - 2^0 */ - - square(&t, &z2_10_0) /* 2^11 - 2^1 */ - for i := 1; i < 10; i++ { /* 2^20 - 2^10 */ - square(&t, &t) - } - mul(&z2_20_0, &t, &z2_10_0) /* 2^20 - 2^0 */ - - square(&t, &z2_20_0) /* 2^21 - 2^1 */ - for i := 1; i < 20; i++ { /* 2^40 - 2^20 */ - square(&t, &t) - } - mul(&t, &t, &z2_20_0) /* 2^40 - 2^0 */ - - square(&t, &t) /* 2^41 - 2^1 */ - for i := 1; i < 10; i++ { /* 2^50 - 2^10 */ - square(&t, &t) - } - mul(&z2_50_0, &t, &z2_10_0) /* 2^50 - 2^0 */ - - square(&t, &z2_50_0) /* 2^51 - 2^1 */ - for i := 1; i < 50; i++ { /* 2^100 - 2^50 */ - square(&t, &t) - } - mul(&z2_100_0, &t, &z2_50_0) /* 2^100 - 2^0 */ - - square(&t, &z2_100_0) /* 2^101 - 2^1 */ - for i := 1; i < 100; i++ { /* 2^200 - 2^100 */ - square(&t, &t) - } - mul(&t, &t, &z2_100_0) /* 2^200 - 2^0 */ - - square(&t, &t) /* 2^201 - 2^1 */ - for i := 1; i < 50; i++ { /* 2^250 - 2^50 */ - square(&t, &t) - } - mul(&t, &t, &z2_50_0) /* 2^250 - 2^0 */ - - square(&t, &t) /* 2^251 - 2^1 */ - square(&t, &t) /* 2^252 - 2^2 */ - square(&t, &t) /* 2^253 - 2^3 */ - - square(&t, &t) /* 2^254 - 2^4 */ - - square(&t, &t) /* 2^255 - 2^5 */ - mul(r, &t, &z11) /* 2^255 - 21 */ -} diff --git a/vendor/golang.org/x/crypto/curve25519/curve25519_amd64.s b/vendor/golang.org/x/crypto/curve25519/curve25519_amd64.s deleted file mode 100644 index 6c5338092..000000000 --- a/vendor/golang.org/x/crypto/curve25519/curve25519_amd64.s +++ /dev/null @@ -1,1793 +0,0 @@ -// Copyright 2012 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -// This code was translated into a form compatible with 6a from the public -// domain sources in SUPERCOP: https://bench.cr.yp.to/supercop.html - -// +build amd64,gc,!purego - -#define REDMASK51 0x0007FFFFFFFFFFFF - -// These constants cannot be encoded in non-MOVQ immediates. -// We access them directly from memory instead. - -DATA ·_121666_213(SB)/8, $996687872 -GLOBL ·_121666_213(SB), 8, $8 - -DATA ·_2P0(SB)/8, $0xFFFFFFFFFFFDA -GLOBL ·_2P0(SB), 8, $8 - -DATA ·_2P1234(SB)/8, $0xFFFFFFFFFFFFE -GLOBL ·_2P1234(SB), 8, $8 - -// func freeze(inout *[5]uint64) -TEXT ·freeze(SB),7,$0-8 - MOVQ inout+0(FP), DI - - MOVQ 0(DI),SI - MOVQ 8(DI),DX - MOVQ 16(DI),CX - MOVQ 24(DI),R8 - MOVQ 32(DI),R9 - MOVQ $REDMASK51,AX - MOVQ AX,R10 - SUBQ $18,R10 - MOVQ $3,R11 -REDUCELOOP: - MOVQ SI,R12 - SHRQ $51,R12 - ANDQ AX,SI - ADDQ R12,DX - MOVQ DX,R12 - SHRQ $51,R12 - ANDQ AX,DX - ADDQ R12,CX - MOVQ CX,R12 - SHRQ $51,R12 - ANDQ AX,CX - ADDQ R12,R8 - MOVQ R8,R12 - SHRQ $51,R12 - ANDQ AX,R8 - ADDQ R12,R9 - MOVQ R9,R12 - SHRQ $51,R12 - ANDQ AX,R9 - IMUL3Q $19,R12,R12 - ADDQ R12,SI - SUBQ $1,R11 - JA REDUCELOOP - MOVQ $1,R12 - CMPQ R10,SI - CMOVQLT R11,R12 - CMPQ AX,DX - CMOVQNE R11,R12 - CMPQ AX,CX - CMOVQNE R11,R12 - CMPQ AX,R8 - CMOVQNE R11,R12 - CMPQ AX,R9 - CMOVQNE R11,R12 - NEGQ R12 - ANDQ R12,AX - ANDQ R12,R10 - SUBQ R10,SI - SUBQ AX,DX - SUBQ AX,CX - SUBQ AX,R8 - SUBQ AX,R9 - MOVQ SI,0(DI) - MOVQ DX,8(DI) - MOVQ CX,16(DI) - MOVQ R8,24(DI) - MOVQ R9,32(DI) - RET - -// func ladderstep(inout *[5][5]uint64) -TEXT ·ladderstep(SB),0,$296-8 - MOVQ inout+0(FP),DI - - MOVQ 40(DI),SI - MOVQ 48(DI),DX - MOVQ 56(DI),CX - MOVQ 64(DI),R8 - MOVQ 72(DI),R9 - MOVQ SI,AX - MOVQ DX,R10 - MOVQ CX,R11 - MOVQ R8,R12 - MOVQ R9,R13 - ADDQ ·_2P0(SB),AX - ADDQ ·_2P1234(SB),R10 - ADDQ ·_2P1234(SB),R11 - ADDQ ·_2P1234(SB),R12 - ADDQ ·_2P1234(SB),R13 - ADDQ 80(DI),SI - ADDQ 88(DI),DX - ADDQ 96(DI),CX - ADDQ 104(DI),R8 - ADDQ 112(DI),R9 - SUBQ 80(DI),AX - SUBQ 88(DI),R10 - SUBQ 96(DI),R11 - SUBQ 104(DI),R12 - SUBQ 112(DI),R13 - MOVQ SI,0(SP) - MOVQ DX,8(SP) - MOVQ CX,16(SP) - MOVQ R8,24(SP) - MOVQ R9,32(SP) - MOVQ AX,40(SP) - MOVQ R10,48(SP) - MOVQ R11,56(SP) - MOVQ R12,64(SP) - MOVQ R13,72(SP) - MOVQ 40(SP),AX - MULQ 40(SP) - MOVQ AX,SI - MOVQ DX,CX - MOVQ 40(SP),AX - SHLQ $1,AX - MULQ 48(SP) - MOVQ AX,R8 - MOVQ DX,R9 - MOVQ 40(SP),AX - SHLQ $1,AX - MULQ 56(SP) - MOVQ AX,R10 - MOVQ DX,R11 - MOVQ 40(SP),AX - SHLQ $1,AX - MULQ 64(SP) - MOVQ AX,R12 - MOVQ DX,R13 - MOVQ 40(SP),AX - SHLQ $1,AX - MULQ 72(SP) - MOVQ AX,R14 - MOVQ DX,R15 - MOVQ 48(SP),AX - MULQ 48(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 48(SP),AX - SHLQ $1,AX - MULQ 56(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 48(SP),AX - SHLQ $1,AX - MULQ 64(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 48(SP),DX - IMUL3Q $38,DX,AX - MULQ 72(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 56(SP),AX - MULQ 56(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 56(SP),DX - IMUL3Q $38,DX,AX - MULQ 64(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 56(SP),DX - IMUL3Q $38,DX,AX - MULQ 72(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 64(SP),DX - IMUL3Q $19,DX,AX - MULQ 64(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 64(SP),DX - IMUL3Q $38,DX,AX - MULQ 72(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 72(SP),DX - IMUL3Q $19,DX,AX - MULQ 72(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ $REDMASK51,DX - SHLQ $13,SI,CX - ANDQ DX,SI - SHLQ $13,R8,R9 - ANDQ DX,R8 - ADDQ CX,R8 - SHLQ $13,R10,R11 - ANDQ DX,R10 - ADDQ R9,R10 - SHLQ $13,R12,R13 - ANDQ DX,R12 - ADDQ R11,R12 - SHLQ $13,R14,R15 - ANDQ DX,R14 - ADDQ R13,R14 - IMUL3Q $19,R15,CX - ADDQ CX,SI - MOVQ SI,CX - SHRQ $51,CX - ADDQ R8,CX - ANDQ DX,SI - MOVQ CX,R8 - SHRQ $51,CX - ADDQ R10,CX - ANDQ DX,R8 - MOVQ CX,R9 - SHRQ $51,CX - ADDQ R12,CX - ANDQ DX,R9 - MOVQ CX,AX - SHRQ $51,CX - ADDQ R14,CX - ANDQ DX,AX - MOVQ CX,R10 - SHRQ $51,CX - IMUL3Q $19,CX,CX - ADDQ CX,SI - ANDQ DX,R10 - MOVQ SI,80(SP) - MOVQ R8,88(SP) - MOVQ R9,96(SP) - MOVQ AX,104(SP) - MOVQ R10,112(SP) - MOVQ 0(SP),AX - MULQ 0(SP) - MOVQ AX,SI - MOVQ DX,CX - MOVQ 0(SP),AX - SHLQ $1,AX - MULQ 8(SP) - MOVQ AX,R8 - MOVQ DX,R9 - MOVQ 0(SP),AX - SHLQ $1,AX - MULQ 16(SP) - MOVQ AX,R10 - MOVQ DX,R11 - MOVQ 0(SP),AX - SHLQ $1,AX - MULQ 24(SP) - MOVQ AX,R12 - MOVQ DX,R13 - MOVQ 0(SP),AX - SHLQ $1,AX - MULQ 32(SP) - MOVQ AX,R14 - MOVQ DX,R15 - MOVQ 8(SP),AX - MULQ 8(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 8(SP),AX - SHLQ $1,AX - MULQ 16(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 8(SP),AX - SHLQ $1,AX - MULQ 24(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 8(SP),DX - IMUL3Q $38,DX,AX - MULQ 32(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 16(SP),AX - MULQ 16(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 16(SP),DX - IMUL3Q $38,DX,AX - MULQ 24(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 16(SP),DX - IMUL3Q $38,DX,AX - MULQ 32(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 24(SP),DX - IMUL3Q $19,DX,AX - MULQ 24(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 24(SP),DX - IMUL3Q $38,DX,AX - MULQ 32(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 32(SP),DX - IMUL3Q $19,DX,AX - MULQ 32(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ $REDMASK51,DX - SHLQ $13,SI,CX - ANDQ DX,SI - SHLQ $13,R8,R9 - ANDQ DX,R8 - ADDQ CX,R8 - SHLQ $13,R10,R11 - ANDQ DX,R10 - ADDQ R9,R10 - SHLQ $13,R12,R13 - ANDQ DX,R12 - ADDQ R11,R12 - SHLQ $13,R14,R15 - ANDQ DX,R14 - ADDQ R13,R14 - IMUL3Q $19,R15,CX - ADDQ CX,SI - MOVQ SI,CX - SHRQ $51,CX - ADDQ R8,CX - ANDQ DX,SI - MOVQ CX,R8 - SHRQ $51,CX - ADDQ R10,CX - ANDQ DX,R8 - MOVQ CX,R9 - SHRQ $51,CX - ADDQ R12,CX - ANDQ DX,R9 - MOVQ CX,AX - SHRQ $51,CX - ADDQ R14,CX - ANDQ DX,AX - MOVQ CX,R10 - SHRQ $51,CX - IMUL3Q $19,CX,CX - ADDQ CX,SI - ANDQ DX,R10 - MOVQ SI,120(SP) - MOVQ R8,128(SP) - MOVQ R9,136(SP) - MOVQ AX,144(SP) - MOVQ R10,152(SP) - MOVQ SI,SI - MOVQ R8,DX - MOVQ R9,CX - MOVQ AX,R8 - MOVQ R10,R9 - ADDQ ·_2P0(SB),SI - ADDQ ·_2P1234(SB),DX - ADDQ ·_2P1234(SB),CX - ADDQ ·_2P1234(SB),R8 - ADDQ ·_2P1234(SB),R9 - SUBQ 80(SP),SI - SUBQ 88(SP),DX - SUBQ 96(SP),CX - SUBQ 104(SP),R8 - SUBQ 112(SP),R9 - MOVQ SI,160(SP) - MOVQ DX,168(SP) - MOVQ CX,176(SP) - MOVQ R8,184(SP) - MOVQ R9,192(SP) - MOVQ 120(DI),SI - MOVQ 128(DI),DX - MOVQ 136(DI),CX - MOVQ 144(DI),R8 - MOVQ 152(DI),R9 - MOVQ SI,AX - MOVQ DX,R10 - MOVQ CX,R11 - MOVQ R8,R12 - MOVQ R9,R13 - ADDQ ·_2P0(SB),AX - ADDQ ·_2P1234(SB),R10 - ADDQ ·_2P1234(SB),R11 - ADDQ ·_2P1234(SB),R12 - ADDQ ·_2P1234(SB),R13 - ADDQ 160(DI),SI - ADDQ 168(DI),DX - ADDQ 176(DI),CX - ADDQ 184(DI),R8 - ADDQ 192(DI),R9 - SUBQ 160(DI),AX - SUBQ 168(DI),R10 - SUBQ 176(DI),R11 - SUBQ 184(DI),R12 - SUBQ 192(DI),R13 - MOVQ SI,200(SP) - MOVQ DX,208(SP) - MOVQ CX,216(SP) - MOVQ R8,224(SP) - MOVQ R9,232(SP) - MOVQ AX,240(SP) - MOVQ R10,248(SP) - MOVQ R11,256(SP) - MOVQ R12,264(SP) - MOVQ R13,272(SP) - MOVQ 224(SP),SI - IMUL3Q $19,SI,AX - MOVQ AX,280(SP) - MULQ 56(SP) - MOVQ AX,SI - MOVQ DX,CX - MOVQ 232(SP),DX - IMUL3Q $19,DX,AX - MOVQ AX,288(SP) - MULQ 48(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 200(SP),AX - MULQ 40(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 200(SP),AX - MULQ 48(SP) - MOVQ AX,R8 - MOVQ DX,R9 - MOVQ 200(SP),AX - MULQ 56(SP) - MOVQ AX,R10 - MOVQ DX,R11 - MOVQ 200(SP),AX - MULQ 64(SP) - MOVQ AX,R12 - MOVQ DX,R13 - MOVQ 200(SP),AX - MULQ 72(SP) - MOVQ AX,R14 - MOVQ DX,R15 - MOVQ 208(SP),AX - MULQ 40(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 208(SP),AX - MULQ 48(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 208(SP),AX - MULQ 56(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 208(SP),AX - MULQ 64(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 208(SP),DX - IMUL3Q $19,DX,AX - MULQ 72(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 216(SP),AX - MULQ 40(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 216(SP),AX - MULQ 48(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 216(SP),AX - MULQ 56(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 216(SP),DX - IMUL3Q $19,DX,AX - MULQ 64(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 216(SP),DX - IMUL3Q $19,DX,AX - MULQ 72(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 224(SP),AX - MULQ 40(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 224(SP),AX - MULQ 48(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 280(SP),AX - MULQ 64(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 280(SP),AX - MULQ 72(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 232(SP),AX - MULQ 40(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 288(SP),AX - MULQ 56(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 288(SP),AX - MULQ 64(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 288(SP),AX - MULQ 72(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ $REDMASK51,DX - SHLQ $13,SI,CX - ANDQ DX,SI - SHLQ $13,R8,R9 - ANDQ DX,R8 - ADDQ CX,R8 - SHLQ $13,R10,R11 - ANDQ DX,R10 - ADDQ R9,R10 - SHLQ $13,R12,R13 - ANDQ DX,R12 - ADDQ R11,R12 - SHLQ $13,R14,R15 - ANDQ DX,R14 - ADDQ R13,R14 - IMUL3Q $19,R15,CX - ADDQ CX,SI - MOVQ SI,CX - SHRQ $51,CX - ADDQ R8,CX - MOVQ CX,R8 - SHRQ $51,CX - ANDQ DX,SI - ADDQ R10,CX - MOVQ CX,R9 - SHRQ $51,CX - ANDQ DX,R8 - ADDQ R12,CX - MOVQ CX,AX - SHRQ $51,CX - ANDQ DX,R9 - ADDQ R14,CX - MOVQ CX,R10 - SHRQ $51,CX - ANDQ DX,AX - IMUL3Q $19,CX,CX - ADDQ CX,SI - ANDQ DX,R10 - MOVQ SI,40(SP) - MOVQ R8,48(SP) - MOVQ R9,56(SP) - MOVQ AX,64(SP) - MOVQ R10,72(SP) - MOVQ 264(SP),SI - IMUL3Q $19,SI,AX - MOVQ AX,200(SP) - MULQ 16(SP) - MOVQ AX,SI - MOVQ DX,CX - MOVQ 272(SP),DX - IMUL3Q $19,DX,AX - MOVQ AX,208(SP) - MULQ 8(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 240(SP),AX - MULQ 0(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 240(SP),AX - MULQ 8(SP) - MOVQ AX,R8 - MOVQ DX,R9 - MOVQ 240(SP),AX - MULQ 16(SP) - MOVQ AX,R10 - MOVQ DX,R11 - MOVQ 240(SP),AX - MULQ 24(SP) - MOVQ AX,R12 - MOVQ DX,R13 - MOVQ 240(SP),AX - MULQ 32(SP) - MOVQ AX,R14 - MOVQ DX,R15 - MOVQ 248(SP),AX - MULQ 0(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 248(SP),AX - MULQ 8(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 248(SP),AX - MULQ 16(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 248(SP),AX - MULQ 24(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 248(SP),DX - IMUL3Q $19,DX,AX - MULQ 32(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 256(SP),AX - MULQ 0(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 256(SP),AX - MULQ 8(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 256(SP),AX - MULQ 16(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 256(SP),DX - IMUL3Q $19,DX,AX - MULQ 24(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 256(SP),DX - IMUL3Q $19,DX,AX - MULQ 32(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 264(SP),AX - MULQ 0(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 264(SP),AX - MULQ 8(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 200(SP),AX - MULQ 24(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 200(SP),AX - MULQ 32(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 272(SP),AX - MULQ 0(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 208(SP),AX - MULQ 16(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 208(SP),AX - MULQ 24(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 208(SP),AX - MULQ 32(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ $REDMASK51,DX - SHLQ $13,SI,CX - ANDQ DX,SI - SHLQ $13,R8,R9 - ANDQ DX,R8 - ADDQ CX,R8 - SHLQ $13,R10,R11 - ANDQ DX,R10 - ADDQ R9,R10 - SHLQ $13,R12,R13 - ANDQ DX,R12 - ADDQ R11,R12 - SHLQ $13,R14,R15 - ANDQ DX,R14 - ADDQ R13,R14 - IMUL3Q $19,R15,CX - ADDQ CX,SI - MOVQ SI,CX - SHRQ $51,CX - ADDQ R8,CX - MOVQ CX,R8 - SHRQ $51,CX - ANDQ DX,SI - ADDQ R10,CX - MOVQ CX,R9 - SHRQ $51,CX - ANDQ DX,R8 - ADDQ R12,CX - MOVQ CX,AX - SHRQ $51,CX - ANDQ DX,R9 - ADDQ R14,CX - MOVQ CX,R10 - SHRQ $51,CX - ANDQ DX,AX - IMUL3Q $19,CX,CX - ADDQ CX,SI - ANDQ DX,R10 - MOVQ SI,DX - MOVQ R8,CX - MOVQ R9,R11 - MOVQ AX,R12 - MOVQ R10,R13 - ADDQ ·_2P0(SB),DX - ADDQ ·_2P1234(SB),CX - ADDQ ·_2P1234(SB),R11 - ADDQ ·_2P1234(SB),R12 - ADDQ ·_2P1234(SB),R13 - ADDQ 40(SP),SI - ADDQ 48(SP),R8 - ADDQ 56(SP),R9 - ADDQ 64(SP),AX - ADDQ 72(SP),R10 - SUBQ 40(SP),DX - SUBQ 48(SP),CX - SUBQ 56(SP),R11 - SUBQ 64(SP),R12 - SUBQ 72(SP),R13 - MOVQ SI,120(DI) - MOVQ R8,128(DI) - MOVQ R9,136(DI) - MOVQ AX,144(DI) - MOVQ R10,152(DI) - MOVQ DX,160(DI) - MOVQ CX,168(DI) - MOVQ R11,176(DI) - MOVQ R12,184(DI) - MOVQ R13,192(DI) - MOVQ 120(DI),AX - MULQ 120(DI) - MOVQ AX,SI - MOVQ DX,CX - MOVQ 120(DI),AX - SHLQ $1,AX - MULQ 128(DI) - MOVQ AX,R8 - MOVQ DX,R9 - MOVQ 120(DI),AX - SHLQ $1,AX - MULQ 136(DI) - MOVQ AX,R10 - MOVQ DX,R11 - MOVQ 120(DI),AX - SHLQ $1,AX - MULQ 144(DI) - MOVQ AX,R12 - MOVQ DX,R13 - MOVQ 120(DI),AX - SHLQ $1,AX - MULQ 152(DI) - MOVQ AX,R14 - MOVQ DX,R15 - MOVQ 128(DI),AX - MULQ 128(DI) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 128(DI),AX - SHLQ $1,AX - MULQ 136(DI) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 128(DI),AX - SHLQ $1,AX - MULQ 144(DI) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 128(DI),DX - IMUL3Q $38,DX,AX - MULQ 152(DI) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 136(DI),AX - MULQ 136(DI) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 136(DI),DX - IMUL3Q $38,DX,AX - MULQ 144(DI) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 136(DI),DX - IMUL3Q $38,DX,AX - MULQ 152(DI) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 144(DI),DX - IMUL3Q $19,DX,AX - MULQ 144(DI) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 144(DI),DX - IMUL3Q $38,DX,AX - MULQ 152(DI) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 152(DI),DX - IMUL3Q $19,DX,AX - MULQ 152(DI) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ $REDMASK51,DX - SHLQ $13,SI,CX - ANDQ DX,SI - SHLQ $13,R8,R9 - ANDQ DX,R8 - ADDQ CX,R8 - SHLQ $13,R10,R11 - ANDQ DX,R10 - ADDQ R9,R10 - SHLQ $13,R12,R13 - ANDQ DX,R12 - ADDQ R11,R12 - SHLQ $13,R14,R15 - ANDQ DX,R14 - ADDQ R13,R14 - IMUL3Q $19,R15,CX - ADDQ CX,SI - MOVQ SI,CX - SHRQ $51,CX - ADDQ R8,CX - ANDQ DX,SI - MOVQ CX,R8 - SHRQ $51,CX - ADDQ R10,CX - ANDQ DX,R8 - MOVQ CX,R9 - SHRQ $51,CX - ADDQ R12,CX - ANDQ DX,R9 - MOVQ CX,AX - SHRQ $51,CX - ADDQ R14,CX - ANDQ DX,AX - MOVQ CX,R10 - SHRQ $51,CX - IMUL3Q $19,CX,CX - ADDQ CX,SI - ANDQ DX,R10 - MOVQ SI,120(DI) - MOVQ R8,128(DI) - MOVQ R9,136(DI) - MOVQ AX,144(DI) - MOVQ R10,152(DI) - MOVQ 160(DI),AX - MULQ 160(DI) - MOVQ AX,SI - MOVQ DX,CX - MOVQ 160(DI),AX - SHLQ $1,AX - MULQ 168(DI) - MOVQ AX,R8 - MOVQ DX,R9 - MOVQ 160(DI),AX - SHLQ $1,AX - MULQ 176(DI) - MOVQ AX,R10 - MOVQ DX,R11 - MOVQ 160(DI),AX - SHLQ $1,AX - MULQ 184(DI) - MOVQ AX,R12 - MOVQ DX,R13 - MOVQ 160(DI),AX - SHLQ $1,AX - MULQ 192(DI) - MOVQ AX,R14 - MOVQ DX,R15 - MOVQ 168(DI),AX - MULQ 168(DI) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 168(DI),AX - SHLQ $1,AX - MULQ 176(DI) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 168(DI),AX - SHLQ $1,AX - MULQ 184(DI) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 168(DI),DX - IMUL3Q $38,DX,AX - MULQ 192(DI) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 176(DI),AX - MULQ 176(DI) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 176(DI),DX - IMUL3Q $38,DX,AX - MULQ 184(DI) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 176(DI),DX - IMUL3Q $38,DX,AX - MULQ 192(DI) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 184(DI),DX - IMUL3Q $19,DX,AX - MULQ 184(DI) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 184(DI),DX - IMUL3Q $38,DX,AX - MULQ 192(DI) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 192(DI),DX - IMUL3Q $19,DX,AX - MULQ 192(DI) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ $REDMASK51,DX - SHLQ $13,SI,CX - ANDQ DX,SI - SHLQ $13,R8,R9 - ANDQ DX,R8 - ADDQ CX,R8 - SHLQ $13,R10,R11 - ANDQ DX,R10 - ADDQ R9,R10 - SHLQ $13,R12,R13 - ANDQ DX,R12 - ADDQ R11,R12 - SHLQ $13,R14,R15 - ANDQ DX,R14 - ADDQ R13,R14 - IMUL3Q $19,R15,CX - ADDQ CX,SI - MOVQ SI,CX - SHRQ $51,CX - ADDQ R8,CX - ANDQ DX,SI - MOVQ CX,R8 - SHRQ $51,CX - ADDQ R10,CX - ANDQ DX,R8 - MOVQ CX,R9 - SHRQ $51,CX - ADDQ R12,CX - ANDQ DX,R9 - MOVQ CX,AX - SHRQ $51,CX - ADDQ R14,CX - ANDQ DX,AX - MOVQ CX,R10 - SHRQ $51,CX - IMUL3Q $19,CX,CX - ADDQ CX,SI - ANDQ DX,R10 - MOVQ SI,160(DI) - MOVQ R8,168(DI) - MOVQ R9,176(DI) - MOVQ AX,184(DI) - MOVQ R10,192(DI) - MOVQ 184(DI),SI - IMUL3Q $19,SI,AX - MOVQ AX,0(SP) - MULQ 16(DI) - MOVQ AX,SI - MOVQ DX,CX - MOVQ 192(DI),DX - IMUL3Q $19,DX,AX - MOVQ AX,8(SP) - MULQ 8(DI) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 160(DI),AX - MULQ 0(DI) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 160(DI),AX - MULQ 8(DI) - MOVQ AX,R8 - MOVQ DX,R9 - MOVQ 160(DI),AX - MULQ 16(DI) - MOVQ AX,R10 - MOVQ DX,R11 - MOVQ 160(DI),AX - MULQ 24(DI) - MOVQ AX,R12 - MOVQ DX,R13 - MOVQ 160(DI),AX - MULQ 32(DI) - MOVQ AX,R14 - MOVQ DX,R15 - MOVQ 168(DI),AX - MULQ 0(DI) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 168(DI),AX - MULQ 8(DI) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 168(DI),AX - MULQ 16(DI) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 168(DI),AX - MULQ 24(DI) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 168(DI),DX - IMUL3Q $19,DX,AX - MULQ 32(DI) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 176(DI),AX - MULQ 0(DI) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 176(DI),AX - MULQ 8(DI) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 176(DI),AX - MULQ 16(DI) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 176(DI),DX - IMUL3Q $19,DX,AX - MULQ 24(DI) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 176(DI),DX - IMUL3Q $19,DX,AX - MULQ 32(DI) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 184(DI),AX - MULQ 0(DI) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 184(DI),AX - MULQ 8(DI) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 0(SP),AX - MULQ 24(DI) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 0(SP),AX - MULQ 32(DI) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 192(DI),AX - MULQ 0(DI) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 8(SP),AX - MULQ 16(DI) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 8(SP),AX - MULQ 24(DI) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 8(SP),AX - MULQ 32(DI) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ $REDMASK51,DX - SHLQ $13,SI,CX - ANDQ DX,SI - SHLQ $13,R8,R9 - ANDQ DX,R8 - ADDQ CX,R8 - SHLQ $13,R10,R11 - ANDQ DX,R10 - ADDQ R9,R10 - SHLQ $13,R12,R13 - ANDQ DX,R12 - ADDQ R11,R12 - SHLQ $13,R14,R15 - ANDQ DX,R14 - ADDQ R13,R14 - IMUL3Q $19,R15,CX - ADDQ CX,SI - MOVQ SI,CX - SHRQ $51,CX - ADDQ R8,CX - MOVQ CX,R8 - SHRQ $51,CX - ANDQ DX,SI - ADDQ R10,CX - MOVQ CX,R9 - SHRQ $51,CX - ANDQ DX,R8 - ADDQ R12,CX - MOVQ CX,AX - SHRQ $51,CX - ANDQ DX,R9 - ADDQ R14,CX - MOVQ CX,R10 - SHRQ $51,CX - ANDQ DX,AX - IMUL3Q $19,CX,CX - ADDQ CX,SI - ANDQ DX,R10 - MOVQ SI,160(DI) - MOVQ R8,168(DI) - MOVQ R9,176(DI) - MOVQ AX,184(DI) - MOVQ R10,192(DI) - MOVQ 144(SP),SI - IMUL3Q $19,SI,AX - MOVQ AX,0(SP) - MULQ 96(SP) - MOVQ AX,SI - MOVQ DX,CX - MOVQ 152(SP),DX - IMUL3Q $19,DX,AX - MOVQ AX,8(SP) - MULQ 88(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 120(SP),AX - MULQ 80(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 120(SP),AX - MULQ 88(SP) - MOVQ AX,R8 - MOVQ DX,R9 - MOVQ 120(SP),AX - MULQ 96(SP) - MOVQ AX,R10 - MOVQ DX,R11 - MOVQ 120(SP),AX - MULQ 104(SP) - MOVQ AX,R12 - MOVQ DX,R13 - MOVQ 120(SP),AX - MULQ 112(SP) - MOVQ AX,R14 - MOVQ DX,R15 - MOVQ 128(SP),AX - MULQ 80(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 128(SP),AX - MULQ 88(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 128(SP),AX - MULQ 96(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 128(SP),AX - MULQ 104(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 128(SP),DX - IMUL3Q $19,DX,AX - MULQ 112(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 136(SP),AX - MULQ 80(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 136(SP),AX - MULQ 88(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 136(SP),AX - MULQ 96(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 136(SP),DX - IMUL3Q $19,DX,AX - MULQ 104(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 136(SP),DX - IMUL3Q $19,DX,AX - MULQ 112(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 144(SP),AX - MULQ 80(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 144(SP),AX - MULQ 88(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 0(SP),AX - MULQ 104(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 0(SP),AX - MULQ 112(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 152(SP),AX - MULQ 80(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 8(SP),AX - MULQ 96(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 8(SP),AX - MULQ 104(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 8(SP),AX - MULQ 112(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ $REDMASK51,DX - SHLQ $13,SI,CX - ANDQ DX,SI - SHLQ $13,R8,R9 - ANDQ DX,R8 - ADDQ CX,R8 - SHLQ $13,R10,R11 - ANDQ DX,R10 - ADDQ R9,R10 - SHLQ $13,R12,R13 - ANDQ DX,R12 - ADDQ R11,R12 - SHLQ $13,R14,R15 - ANDQ DX,R14 - ADDQ R13,R14 - IMUL3Q $19,R15,CX - ADDQ CX,SI - MOVQ SI,CX - SHRQ $51,CX - ADDQ R8,CX - MOVQ CX,R8 - SHRQ $51,CX - ANDQ DX,SI - ADDQ R10,CX - MOVQ CX,R9 - SHRQ $51,CX - ANDQ DX,R8 - ADDQ R12,CX - MOVQ CX,AX - SHRQ $51,CX - ANDQ DX,R9 - ADDQ R14,CX - MOVQ CX,R10 - SHRQ $51,CX - ANDQ DX,AX - IMUL3Q $19,CX,CX - ADDQ CX,SI - ANDQ DX,R10 - MOVQ SI,40(DI) - MOVQ R8,48(DI) - MOVQ R9,56(DI) - MOVQ AX,64(DI) - MOVQ R10,72(DI) - MOVQ 160(SP),AX - MULQ ·_121666_213(SB) - SHRQ $13,AX - MOVQ AX,SI - MOVQ DX,CX - MOVQ 168(SP),AX - MULQ ·_121666_213(SB) - SHRQ $13,AX - ADDQ AX,CX - MOVQ DX,R8 - MOVQ 176(SP),AX - MULQ ·_121666_213(SB) - SHRQ $13,AX - ADDQ AX,R8 - MOVQ DX,R9 - MOVQ 184(SP),AX - MULQ ·_121666_213(SB) - SHRQ $13,AX - ADDQ AX,R9 - MOVQ DX,R10 - MOVQ 192(SP),AX - MULQ ·_121666_213(SB) - SHRQ $13,AX - ADDQ AX,R10 - IMUL3Q $19,DX,DX - ADDQ DX,SI - ADDQ 80(SP),SI - ADDQ 88(SP),CX - ADDQ 96(SP),R8 - ADDQ 104(SP),R9 - ADDQ 112(SP),R10 - MOVQ SI,80(DI) - MOVQ CX,88(DI) - MOVQ R8,96(DI) - MOVQ R9,104(DI) - MOVQ R10,112(DI) - MOVQ 104(DI),SI - IMUL3Q $19,SI,AX - MOVQ AX,0(SP) - MULQ 176(SP) - MOVQ AX,SI - MOVQ DX,CX - MOVQ 112(DI),DX - IMUL3Q $19,DX,AX - MOVQ AX,8(SP) - MULQ 168(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 80(DI),AX - MULQ 160(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 80(DI),AX - MULQ 168(SP) - MOVQ AX,R8 - MOVQ DX,R9 - MOVQ 80(DI),AX - MULQ 176(SP) - MOVQ AX,R10 - MOVQ DX,R11 - MOVQ 80(DI),AX - MULQ 184(SP) - MOVQ AX,R12 - MOVQ DX,R13 - MOVQ 80(DI),AX - MULQ 192(SP) - MOVQ AX,R14 - MOVQ DX,R15 - MOVQ 88(DI),AX - MULQ 160(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 88(DI),AX - MULQ 168(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 88(DI),AX - MULQ 176(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 88(DI),AX - MULQ 184(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 88(DI),DX - IMUL3Q $19,DX,AX - MULQ 192(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 96(DI),AX - MULQ 160(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 96(DI),AX - MULQ 168(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 96(DI),AX - MULQ 176(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 96(DI),DX - IMUL3Q $19,DX,AX - MULQ 184(SP) - ADDQ AX,SI - ADCQ DX,CX - MOVQ 96(DI),DX - IMUL3Q $19,DX,AX - MULQ 192(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 104(DI),AX - MULQ 160(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 104(DI),AX - MULQ 168(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 0(SP),AX - MULQ 184(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 0(SP),AX - MULQ 192(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 112(DI),AX - MULQ 160(SP) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 8(SP),AX - MULQ 176(SP) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 8(SP),AX - MULQ 184(SP) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 8(SP),AX - MULQ 192(SP) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ $REDMASK51,DX - SHLQ $13,SI,CX - ANDQ DX,SI - SHLQ $13,R8,R9 - ANDQ DX,R8 - ADDQ CX,R8 - SHLQ $13,R10,R11 - ANDQ DX,R10 - ADDQ R9,R10 - SHLQ $13,R12,R13 - ANDQ DX,R12 - ADDQ R11,R12 - SHLQ $13,R14,R15 - ANDQ DX,R14 - ADDQ R13,R14 - IMUL3Q $19,R15,CX - ADDQ CX,SI - MOVQ SI,CX - SHRQ $51,CX - ADDQ R8,CX - MOVQ CX,R8 - SHRQ $51,CX - ANDQ DX,SI - ADDQ R10,CX - MOVQ CX,R9 - SHRQ $51,CX - ANDQ DX,R8 - ADDQ R12,CX - MOVQ CX,AX - SHRQ $51,CX - ANDQ DX,R9 - ADDQ R14,CX - MOVQ CX,R10 - SHRQ $51,CX - ANDQ DX,AX - IMUL3Q $19,CX,CX - ADDQ CX,SI - ANDQ DX,R10 - MOVQ SI,80(DI) - MOVQ R8,88(DI) - MOVQ R9,96(DI) - MOVQ AX,104(DI) - MOVQ R10,112(DI) - RET - -// func cswap(inout *[4][5]uint64, v uint64) -TEXT ·cswap(SB),7,$0 - MOVQ inout+0(FP),DI - MOVQ v+8(FP),SI - - SUBQ $1, SI - NOTQ SI - MOVQ SI, X15 - PSHUFD $0x44, X15, X15 - - MOVOU 0(DI), X0 - MOVOU 16(DI), X2 - MOVOU 32(DI), X4 - MOVOU 48(DI), X6 - MOVOU 64(DI), X8 - MOVOU 80(DI), X1 - MOVOU 96(DI), X3 - MOVOU 112(DI), X5 - MOVOU 128(DI), X7 - MOVOU 144(DI), X9 - - MOVO X1, X10 - MOVO X3, X11 - MOVO X5, X12 - MOVO X7, X13 - MOVO X9, X14 - - PXOR X0, X10 - PXOR X2, X11 - PXOR X4, X12 - PXOR X6, X13 - PXOR X8, X14 - PAND X15, X10 - PAND X15, X11 - PAND X15, X12 - PAND X15, X13 - PAND X15, X14 - PXOR X10, X0 - PXOR X10, X1 - PXOR X11, X2 - PXOR X11, X3 - PXOR X12, X4 - PXOR X12, X5 - PXOR X13, X6 - PXOR X13, X7 - PXOR X14, X8 - PXOR X14, X9 - - MOVOU X0, 0(DI) - MOVOU X2, 16(DI) - MOVOU X4, 32(DI) - MOVOU X6, 48(DI) - MOVOU X8, 64(DI) - MOVOU X1, 80(DI) - MOVOU X3, 96(DI) - MOVOU X5, 112(DI) - MOVOU X7, 128(DI) - MOVOU X9, 144(DI) - RET - -// func mul(dest, a, b *[5]uint64) -TEXT ·mul(SB),0,$16-24 - MOVQ dest+0(FP), DI - MOVQ a+8(FP), SI - MOVQ b+16(FP), DX - - MOVQ DX,CX - MOVQ 24(SI),DX - IMUL3Q $19,DX,AX - MOVQ AX,0(SP) - MULQ 16(CX) - MOVQ AX,R8 - MOVQ DX,R9 - MOVQ 32(SI),DX - IMUL3Q $19,DX,AX - MOVQ AX,8(SP) - MULQ 8(CX) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 0(SI),AX - MULQ 0(CX) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 0(SI),AX - MULQ 8(CX) - MOVQ AX,R10 - MOVQ DX,R11 - MOVQ 0(SI),AX - MULQ 16(CX) - MOVQ AX,R12 - MOVQ DX,R13 - MOVQ 0(SI),AX - MULQ 24(CX) - MOVQ AX,R14 - MOVQ DX,R15 - MOVQ 0(SI),AX - MULQ 32(CX) - MOVQ AX,BX - MOVQ DX,BP - MOVQ 8(SI),AX - MULQ 0(CX) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 8(SI),AX - MULQ 8(CX) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 8(SI),AX - MULQ 16(CX) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 8(SI),AX - MULQ 24(CX) - ADDQ AX,BX - ADCQ DX,BP - MOVQ 8(SI),DX - IMUL3Q $19,DX,AX - MULQ 32(CX) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 16(SI),AX - MULQ 0(CX) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 16(SI),AX - MULQ 8(CX) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 16(SI),AX - MULQ 16(CX) - ADDQ AX,BX - ADCQ DX,BP - MOVQ 16(SI),DX - IMUL3Q $19,DX,AX - MULQ 24(CX) - ADDQ AX,R8 - ADCQ DX,R9 - MOVQ 16(SI),DX - IMUL3Q $19,DX,AX - MULQ 32(CX) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 24(SI),AX - MULQ 0(CX) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ 24(SI),AX - MULQ 8(CX) - ADDQ AX,BX - ADCQ DX,BP - MOVQ 0(SP),AX - MULQ 24(CX) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 0(SP),AX - MULQ 32(CX) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 32(SI),AX - MULQ 0(CX) - ADDQ AX,BX - ADCQ DX,BP - MOVQ 8(SP),AX - MULQ 16(CX) - ADDQ AX,R10 - ADCQ DX,R11 - MOVQ 8(SP),AX - MULQ 24(CX) - ADDQ AX,R12 - ADCQ DX,R13 - MOVQ 8(SP),AX - MULQ 32(CX) - ADDQ AX,R14 - ADCQ DX,R15 - MOVQ $REDMASK51,SI - SHLQ $13,R8,R9 - ANDQ SI,R8 - SHLQ $13,R10,R11 - ANDQ SI,R10 - ADDQ R9,R10 - SHLQ $13,R12,R13 - ANDQ SI,R12 - ADDQ R11,R12 - SHLQ $13,R14,R15 - ANDQ SI,R14 - ADDQ R13,R14 - SHLQ $13,BX,BP - ANDQ SI,BX - ADDQ R15,BX - IMUL3Q $19,BP,DX - ADDQ DX,R8 - MOVQ R8,DX - SHRQ $51,DX - ADDQ R10,DX - MOVQ DX,CX - SHRQ $51,DX - ANDQ SI,R8 - ADDQ R12,DX - MOVQ DX,R9 - SHRQ $51,DX - ANDQ SI,CX - ADDQ R14,DX - MOVQ DX,AX - SHRQ $51,DX - ANDQ SI,R9 - ADDQ BX,DX - MOVQ DX,R10 - SHRQ $51,DX - ANDQ SI,AX - IMUL3Q $19,DX,DX - ADDQ DX,R8 - ANDQ SI,R10 - MOVQ R8,0(DI) - MOVQ CX,8(DI) - MOVQ R9,16(DI) - MOVQ AX,24(DI) - MOVQ R10,32(DI) - RET - -// func square(out, in *[5]uint64) -TEXT ·square(SB),7,$0-16 - MOVQ out+0(FP), DI - MOVQ in+8(FP), SI - - MOVQ 0(SI),AX - MULQ 0(SI) - MOVQ AX,CX - MOVQ DX,R8 - MOVQ 0(SI),AX - SHLQ $1,AX - MULQ 8(SI) - MOVQ AX,R9 - MOVQ DX,R10 - MOVQ 0(SI),AX - SHLQ $1,AX - MULQ 16(SI) - MOVQ AX,R11 - MOVQ DX,R12 - MOVQ 0(SI),AX - SHLQ $1,AX - MULQ 24(SI) - MOVQ AX,R13 - MOVQ DX,R14 - MOVQ 0(SI),AX - SHLQ $1,AX - MULQ 32(SI) - MOVQ AX,R15 - MOVQ DX,BX - MOVQ 8(SI),AX - MULQ 8(SI) - ADDQ AX,R11 - ADCQ DX,R12 - MOVQ 8(SI),AX - SHLQ $1,AX - MULQ 16(SI) - ADDQ AX,R13 - ADCQ DX,R14 - MOVQ 8(SI),AX - SHLQ $1,AX - MULQ 24(SI) - ADDQ AX,R15 - ADCQ DX,BX - MOVQ 8(SI),DX - IMUL3Q $38,DX,AX - MULQ 32(SI) - ADDQ AX,CX - ADCQ DX,R8 - MOVQ 16(SI),AX - MULQ 16(SI) - ADDQ AX,R15 - ADCQ DX,BX - MOVQ 16(SI),DX - IMUL3Q $38,DX,AX - MULQ 24(SI) - ADDQ AX,CX - ADCQ DX,R8 - MOVQ 16(SI),DX - IMUL3Q $38,DX,AX - MULQ 32(SI) - ADDQ AX,R9 - ADCQ DX,R10 - MOVQ 24(SI),DX - IMUL3Q $19,DX,AX - MULQ 24(SI) - ADDQ AX,R9 - ADCQ DX,R10 - MOVQ 24(SI),DX - IMUL3Q $38,DX,AX - MULQ 32(SI) - ADDQ AX,R11 - ADCQ DX,R12 - MOVQ 32(SI),DX - IMUL3Q $19,DX,AX - MULQ 32(SI) - ADDQ AX,R13 - ADCQ DX,R14 - MOVQ $REDMASK51,SI - SHLQ $13,CX,R8 - ANDQ SI,CX - SHLQ $13,R9,R10 - ANDQ SI,R9 - ADDQ R8,R9 - SHLQ $13,R11,R12 - ANDQ SI,R11 - ADDQ R10,R11 - SHLQ $13,R13,R14 - ANDQ SI,R13 - ADDQ R12,R13 - SHLQ $13,R15,BX - ANDQ SI,R15 - ADDQ R14,R15 - IMUL3Q $19,BX,DX - ADDQ DX,CX - MOVQ CX,DX - SHRQ $51,DX - ADDQ R9,DX - ANDQ SI,CX - MOVQ DX,R8 - SHRQ $51,DX - ADDQ R11,DX - ANDQ SI,R8 - MOVQ DX,R9 - SHRQ $51,DX - ADDQ R13,DX - ANDQ SI,R9 - MOVQ DX,AX - SHRQ $51,DX - ADDQ R15,DX - ANDQ SI,AX - MOVQ DX,R10 - SHRQ $51,DX - IMUL3Q $19,DX,DX - ADDQ DX,CX - ANDQ SI,R10 - MOVQ CX,0(DI) - MOVQ R8,8(DI) - MOVQ R9,16(DI) - MOVQ AX,24(DI) - MOVQ R10,32(DI) - RET diff --git a/vendor/golang.org/x/crypto/curve25519/curve25519_generic.go b/vendor/golang.org/x/crypto/curve25519/curve25519_generic.go deleted file mode 100644 index c43b13fc8..000000000 --- a/vendor/golang.org/x/crypto/curve25519/curve25519_generic.go +++ /dev/null @@ -1,828 +0,0 @@ -// Copyright 2013 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -package curve25519 - -import "encoding/binary" - -// This code is a port of the public domain, "ref10" implementation of -// curve25519 from SUPERCOP 20130419 by D. J. Bernstein. - -// fieldElement represents an element of the field GF(2^255 - 19). An element -// t, entries t[0]...t[9], represents the integer t[0]+2^26 t[1]+2^51 t[2]+2^77 -// t[3]+2^102 t[4]+...+2^230 t[9]. Bounds on each t[i] vary depending on -// context. -type fieldElement [10]int32 - -func feZero(fe *fieldElement) { - for i := range fe { - fe[i] = 0 - } -} - -func feOne(fe *fieldElement) { - feZero(fe) - fe[0] = 1 -} - -func feAdd(dst, a, b *fieldElement) { - for i := range dst { - dst[i] = a[i] + b[i] - } -} - -func feSub(dst, a, b *fieldElement) { - for i := range dst { - dst[i] = a[i] - b[i] - } -} - -func feCopy(dst, src *fieldElement) { - for i := range dst { - dst[i] = src[i] - } -} - -// feCSwap replaces (f,g) with (g,f) if b == 1; replaces (f,g) with (f,g) if b == 0. -// -// Preconditions: b in {0,1}. -func feCSwap(f, g *fieldElement, b int32) { - b = -b - for i := range f { - t := b & (f[i] ^ g[i]) - f[i] ^= t - g[i] ^= t - } -} - -// load3 reads a 24-bit, little-endian value from in. -func load3(in []byte) int64 { - var r int64 - r = int64(in[0]) - r |= int64(in[1]) << 8 - r |= int64(in[2]) << 16 - return r -} - -// load4 reads a 32-bit, little-endian value from in. -func load4(in []byte) int64 { - return int64(binary.LittleEndian.Uint32(in)) -} - -func feFromBytes(dst *fieldElement, src *[32]byte) { - h0 := load4(src[:]) - h1 := load3(src[4:]) << 6 - h2 := load3(src[7:]) << 5 - h3 := load3(src[10:]) << 3 - h4 := load3(src[13:]) << 2 - h5 := load4(src[16:]) - h6 := load3(src[20:]) << 7 - h7 := load3(src[23:]) << 5 - h8 := load3(src[26:]) << 4 - h9 := (load3(src[29:]) & 0x7fffff) << 2 - - var carry [10]int64 - carry[9] = (h9 + 1<<24) >> 25 - h0 += carry[9] * 19 - h9 -= carry[9] << 25 - carry[1] = (h1 + 1<<24) >> 25 - h2 += carry[1] - h1 -= carry[1] << 25 - carry[3] = (h3 + 1<<24) >> 25 - h4 += carry[3] - h3 -= carry[3] << 25 - carry[5] = (h5 + 1<<24) >> 25 - h6 += carry[5] - h5 -= carry[5] << 25 - carry[7] = (h7 + 1<<24) >> 25 - h8 += carry[7] - h7 -= carry[7] << 25 - - carry[0] = (h0 + 1<<25) >> 26 - h1 += carry[0] - h0 -= carry[0] << 26 - carry[2] = (h2 + 1<<25) >> 26 - h3 += carry[2] - h2 -= carry[2] << 26 - carry[4] = (h4 + 1<<25) >> 26 - h5 += carry[4] - h4 -= carry[4] << 26 - carry[6] = (h6 + 1<<25) >> 26 - h7 += carry[6] - h6 -= carry[6] << 26 - carry[8] = (h8 + 1<<25) >> 26 - h9 += carry[8] - h8 -= carry[8] << 26 - - dst[0] = int32(h0) - dst[1] = int32(h1) - dst[2] = int32(h2) - dst[3] = int32(h3) - dst[4] = int32(h4) - dst[5] = int32(h5) - dst[6] = int32(h6) - dst[7] = int32(h7) - dst[8] = int32(h8) - dst[9] = int32(h9) -} - -// feToBytes marshals h to s. -// Preconditions: -// |h| bounded by 1.1*2^25,1.1*2^24,1.1*2^25,1.1*2^24,etc. -// -// Write p=2^255-19; q=floor(h/p). -// Basic claim: q = floor(2^(-255)(h + 19 2^(-25)h9 + 2^(-1))). -// -// Proof: -// Have |h|<=p so |q|<=1 so |19^2 2^(-255) q|<1/4. -// Also have |h-2^230 h9|<2^230 so |19 2^(-255)(h-2^230 h9)|<1/4. -// -// Write y=2^(-1)-19^2 2^(-255)q-19 2^(-255)(h-2^230 h9). -// Then 0> 25 - q = (h[0] + q) >> 26 - q = (h[1] + q) >> 25 - q = (h[2] + q) >> 26 - q = (h[3] + q) >> 25 - q = (h[4] + q) >> 26 - q = (h[5] + q) >> 25 - q = (h[6] + q) >> 26 - q = (h[7] + q) >> 25 - q = (h[8] + q) >> 26 - q = (h[9] + q) >> 25 - - // Goal: Output h-(2^255-19)q, which is between 0 and 2^255-20. - h[0] += 19 * q - // Goal: Output h-2^255 q, which is between 0 and 2^255-20. - - carry[0] = h[0] >> 26 - h[1] += carry[0] - h[0] -= carry[0] << 26 - carry[1] = h[1] >> 25 - h[2] += carry[1] - h[1] -= carry[1] << 25 - carry[2] = h[2] >> 26 - h[3] += carry[2] - h[2] -= carry[2] << 26 - carry[3] = h[3] >> 25 - h[4] += carry[3] - h[3] -= carry[3] << 25 - carry[4] = h[4] >> 26 - h[5] += carry[4] - h[4] -= carry[4] << 26 - carry[5] = h[5] >> 25 - h[6] += carry[5] - h[5] -= carry[5] << 25 - carry[6] = h[6] >> 26 - h[7] += carry[6] - h[6] -= carry[6] << 26 - carry[7] = h[7] >> 25 - h[8] += carry[7] - h[7] -= carry[7] << 25 - carry[8] = h[8] >> 26 - h[9] += carry[8] - h[8] -= carry[8] << 26 - carry[9] = h[9] >> 25 - h[9] -= carry[9] << 25 - // h10 = carry9 - - // Goal: Output h[0]+...+2^255 h10-2^255 q, which is between 0 and 2^255-20. - // Have h[0]+...+2^230 h[9] between 0 and 2^255-1; - // evidently 2^255 h10-2^255 q = 0. - // Goal: Output h[0]+...+2^230 h[9]. - - s[0] = byte(h[0] >> 0) - s[1] = byte(h[0] >> 8) - s[2] = byte(h[0] >> 16) - s[3] = byte((h[0] >> 24) | (h[1] << 2)) - s[4] = byte(h[1] >> 6) - s[5] = byte(h[1] >> 14) - s[6] = byte((h[1] >> 22) | (h[2] << 3)) - s[7] = byte(h[2] >> 5) - s[8] = byte(h[2] >> 13) - s[9] = byte((h[2] >> 21) | (h[3] << 5)) - s[10] = byte(h[3] >> 3) - s[11] = byte(h[3] >> 11) - s[12] = byte((h[3] >> 19) | (h[4] << 6)) - s[13] = byte(h[4] >> 2) - s[14] = byte(h[4] >> 10) - s[15] = byte(h[4] >> 18) - s[16] = byte(h[5] >> 0) - s[17] = byte(h[5] >> 8) - s[18] = byte(h[5] >> 16) - s[19] = byte((h[5] >> 24) | (h[6] << 1)) - s[20] = byte(h[6] >> 7) - s[21] = byte(h[6] >> 15) - s[22] = byte((h[6] >> 23) | (h[7] << 3)) - s[23] = byte(h[7] >> 5) - s[24] = byte(h[7] >> 13) - s[25] = byte((h[7] >> 21) | (h[8] << 4)) - s[26] = byte(h[8] >> 4) - s[27] = byte(h[8] >> 12) - s[28] = byte((h[8] >> 20) | (h[9] << 6)) - s[29] = byte(h[9] >> 2) - s[30] = byte(h[9] >> 10) - s[31] = byte(h[9] >> 18) -} - -// feMul calculates h = f * g -// Can overlap h with f or g. -// -// Preconditions: -// |f| bounded by 1.1*2^26,1.1*2^25,1.1*2^26,1.1*2^25,etc. -// |g| bounded by 1.1*2^26,1.1*2^25,1.1*2^26,1.1*2^25,etc. -// -// Postconditions: -// |h| bounded by 1.1*2^25,1.1*2^24,1.1*2^25,1.1*2^24,etc. -// -// Notes on implementation strategy: -// -// Using schoolbook multiplication. -// Karatsuba would save a little in some cost models. -// -// Most multiplications by 2 and 19 are 32-bit precomputations; -// cheaper than 64-bit postcomputations. -// -// There is one remaining multiplication by 19 in the carry chain; -// one *19 precomputation can be merged into this, -// but the resulting data flow is considerably less clean. -// -// There are 12 carries below. -// 10 of them are 2-way parallelizable and vectorizable. -// Can get away with 11 carries, but then data flow is much deeper. -// -// With tighter constraints on inputs can squeeze carries into int32. -func feMul(h, f, g *fieldElement) { - f0 := f[0] - f1 := f[1] - f2 := f[2] - f3 := f[3] - f4 := f[4] - f5 := f[5] - f6 := f[6] - f7 := f[7] - f8 := f[8] - f9 := f[9] - g0 := g[0] - g1 := g[1] - g2 := g[2] - g3 := g[3] - g4 := g[4] - g5 := g[5] - g6 := g[6] - g7 := g[7] - g8 := g[8] - g9 := g[9] - g1_19 := 19 * g1 // 1.4*2^29 - g2_19 := 19 * g2 // 1.4*2^30; still ok - g3_19 := 19 * g3 - g4_19 := 19 * g4 - g5_19 := 19 * g5 - g6_19 := 19 * g6 - g7_19 := 19 * g7 - g8_19 := 19 * g8 - g9_19 := 19 * g9 - f1_2 := 2 * f1 - f3_2 := 2 * f3 - f5_2 := 2 * f5 - f7_2 := 2 * f7 - f9_2 := 2 * f9 - f0g0 := int64(f0) * int64(g0) - f0g1 := int64(f0) * int64(g1) - f0g2 := int64(f0) * int64(g2) - f0g3 := int64(f0) * int64(g3) - f0g4 := int64(f0) * int64(g4) - f0g5 := int64(f0) * int64(g5) - f0g6 := int64(f0) * int64(g6) - f0g7 := int64(f0) * int64(g7) - f0g8 := int64(f0) * int64(g8) - f0g9 := int64(f0) * int64(g9) - f1g0 := int64(f1) * int64(g0) - f1g1_2 := int64(f1_2) * int64(g1) - f1g2 := int64(f1) * int64(g2) - f1g3_2 := int64(f1_2) * int64(g3) - f1g4 := int64(f1) * int64(g4) - f1g5_2 := int64(f1_2) * int64(g5) - f1g6 := int64(f1) * int64(g6) - f1g7_2 := int64(f1_2) * int64(g7) - f1g8 := int64(f1) * int64(g8) - f1g9_38 := int64(f1_2) * int64(g9_19) - f2g0 := int64(f2) * int64(g0) - f2g1 := int64(f2) * int64(g1) - f2g2 := int64(f2) * int64(g2) - f2g3 := int64(f2) * int64(g3) - f2g4 := int64(f2) * int64(g4) - f2g5 := int64(f2) * int64(g5) - f2g6 := int64(f2) * int64(g6) - f2g7 := int64(f2) * int64(g7) - f2g8_19 := int64(f2) * int64(g8_19) - f2g9_19 := int64(f2) * int64(g9_19) - f3g0 := int64(f3) * int64(g0) - f3g1_2 := int64(f3_2) * int64(g1) - f3g2 := int64(f3) * int64(g2) - f3g3_2 := int64(f3_2) * int64(g3) - f3g4 := int64(f3) * int64(g4) - f3g5_2 := int64(f3_2) * int64(g5) - f3g6 := int64(f3) * int64(g6) - f3g7_38 := int64(f3_2) * int64(g7_19) - f3g8_19 := int64(f3) * int64(g8_19) - f3g9_38 := int64(f3_2) * int64(g9_19) - f4g0 := int64(f4) * int64(g0) - f4g1 := int64(f4) * int64(g1) - f4g2 := int64(f4) * int64(g2) - f4g3 := int64(f4) * int64(g3) - f4g4 := int64(f4) * int64(g4) - f4g5 := int64(f4) * int64(g5) - f4g6_19 := int64(f4) * int64(g6_19) - f4g7_19 := int64(f4) * int64(g7_19) - f4g8_19 := int64(f4) * int64(g8_19) - f4g9_19 := int64(f4) * int64(g9_19) - f5g0 := int64(f5) * int64(g0) - f5g1_2 := int64(f5_2) * int64(g1) - f5g2 := int64(f5) * int64(g2) - f5g3_2 := int64(f5_2) * int64(g3) - f5g4 := int64(f5) * int64(g4) - f5g5_38 := int64(f5_2) * int64(g5_19) - f5g6_19 := int64(f5) * int64(g6_19) - f5g7_38 := int64(f5_2) * int64(g7_19) - f5g8_19 := int64(f5) * int64(g8_19) - f5g9_38 := int64(f5_2) * int64(g9_19) - f6g0 := int64(f6) * int64(g0) - f6g1 := int64(f6) * int64(g1) - f6g2 := int64(f6) * int64(g2) - f6g3 := int64(f6) * int64(g3) - f6g4_19 := int64(f6) * int64(g4_19) - f6g5_19 := int64(f6) * int64(g5_19) - f6g6_19 := int64(f6) * int64(g6_19) - f6g7_19 := int64(f6) * int64(g7_19) - f6g8_19 := int64(f6) * int64(g8_19) - f6g9_19 := int64(f6) * int64(g9_19) - f7g0 := int64(f7) * int64(g0) - f7g1_2 := int64(f7_2) * int64(g1) - f7g2 := int64(f7) * int64(g2) - f7g3_38 := int64(f7_2) * int64(g3_19) - f7g4_19 := int64(f7) * int64(g4_19) - f7g5_38 := int64(f7_2) * int64(g5_19) - f7g6_19 := int64(f7) * int64(g6_19) - f7g7_38 := int64(f7_2) * int64(g7_19) - f7g8_19 := int64(f7) * int64(g8_19) - f7g9_38 := int64(f7_2) * int64(g9_19) - f8g0 := int64(f8) * int64(g0) - f8g1 := int64(f8) * int64(g1) - f8g2_19 := int64(f8) * int64(g2_19) - f8g3_19 := int64(f8) * int64(g3_19) - f8g4_19 := int64(f8) * int64(g4_19) - f8g5_19 := int64(f8) * int64(g5_19) - f8g6_19 := int64(f8) * int64(g6_19) - f8g7_19 := int64(f8) * int64(g7_19) - f8g8_19 := int64(f8) * int64(g8_19) - f8g9_19 := int64(f8) * int64(g9_19) - f9g0 := int64(f9) * int64(g0) - f9g1_38 := int64(f9_2) * int64(g1_19) - f9g2_19 := int64(f9) * int64(g2_19) - f9g3_38 := int64(f9_2) * int64(g3_19) - f9g4_19 := int64(f9) * int64(g4_19) - f9g5_38 := int64(f9_2) * int64(g5_19) - f9g6_19 := int64(f9) * int64(g6_19) - f9g7_38 := int64(f9_2) * int64(g7_19) - f9g8_19 := int64(f9) * int64(g8_19) - f9g9_38 := int64(f9_2) * int64(g9_19) - h0 := f0g0 + f1g9_38 + f2g8_19 + f3g7_38 + f4g6_19 + f5g5_38 + f6g4_19 + f7g3_38 + f8g2_19 + f9g1_38 - h1 := f0g1 + f1g0 + f2g9_19 + f3g8_19 + f4g7_19 + f5g6_19 + f6g5_19 + f7g4_19 + f8g3_19 + f9g2_19 - h2 := f0g2 + f1g1_2 + f2g0 + f3g9_38 + f4g8_19 + f5g7_38 + f6g6_19 + f7g5_38 + f8g4_19 + f9g3_38 - h3 := f0g3 + f1g2 + f2g1 + f3g0 + f4g9_19 + f5g8_19 + f6g7_19 + f7g6_19 + f8g5_19 + f9g4_19 - h4 := f0g4 + f1g3_2 + f2g2 + f3g1_2 + f4g0 + f5g9_38 + f6g8_19 + f7g7_38 + f8g6_19 + f9g5_38 - h5 := f0g5 + f1g4 + f2g3 + f3g2 + f4g1 + f5g0 + f6g9_19 + f7g8_19 + f8g7_19 + f9g6_19 - h6 := f0g6 + f1g5_2 + f2g4 + f3g3_2 + f4g2 + f5g1_2 + f6g0 + f7g9_38 + f8g8_19 + f9g7_38 - h7 := f0g7 + f1g6 + f2g5 + f3g4 + f4g3 + f5g2 + f6g1 + f7g0 + f8g9_19 + f9g8_19 - h8 := f0g8 + f1g7_2 + f2g6 + f3g5_2 + f4g4 + f5g3_2 + f6g2 + f7g1_2 + f8g0 + f9g9_38 - h9 := f0g9 + f1g8 + f2g7 + f3g6 + f4g5 + f5g4 + f6g3 + f7g2 + f8g1 + f9g0 - var carry [10]int64 - - // |h0| <= (1.1*1.1*2^52*(1+19+19+19+19)+1.1*1.1*2^50*(38+38+38+38+38)) - // i.e. |h0| <= 1.2*2^59; narrower ranges for h2, h4, h6, h8 - // |h1| <= (1.1*1.1*2^51*(1+1+19+19+19+19+19+19+19+19)) - // i.e. |h1| <= 1.5*2^58; narrower ranges for h3, h5, h7, h9 - - carry[0] = (h0 + (1 << 25)) >> 26 - h1 += carry[0] - h0 -= carry[0] << 26 - carry[4] = (h4 + (1 << 25)) >> 26 - h5 += carry[4] - h4 -= carry[4] << 26 - // |h0| <= 2^25 - // |h4| <= 2^25 - // |h1| <= 1.51*2^58 - // |h5| <= 1.51*2^58 - - carry[1] = (h1 + (1 << 24)) >> 25 - h2 += carry[1] - h1 -= carry[1] << 25 - carry[5] = (h5 + (1 << 24)) >> 25 - h6 += carry[5] - h5 -= carry[5] << 25 - // |h1| <= 2^24; from now on fits into int32 - // |h5| <= 2^24; from now on fits into int32 - // |h2| <= 1.21*2^59 - // |h6| <= 1.21*2^59 - - carry[2] = (h2 + (1 << 25)) >> 26 - h3 += carry[2] - h2 -= carry[2] << 26 - carry[6] = (h6 + (1 << 25)) >> 26 - h7 += carry[6] - h6 -= carry[6] << 26 - // |h2| <= 2^25; from now on fits into int32 unchanged - // |h6| <= 2^25; from now on fits into int32 unchanged - // |h3| <= 1.51*2^58 - // |h7| <= 1.51*2^58 - - carry[3] = (h3 + (1 << 24)) >> 25 - h4 += carry[3] - h3 -= carry[3] << 25 - carry[7] = (h7 + (1 << 24)) >> 25 - h8 += carry[7] - h7 -= carry[7] << 25 - // |h3| <= 2^24; from now on fits into int32 unchanged - // |h7| <= 2^24; from now on fits into int32 unchanged - // |h4| <= 1.52*2^33 - // |h8| <= 1.52*2^33 - - carry[4] = (h4 + (1 << 25)) >> 26 - h5 += carry[4] - h4 -= carry[4] << 26 - carry[8] = (h8 + (1 << 25)) >> 26 - h9 += carry[8] - h8 -= carry[8] << 26 - // |h4| <= 2^25; from now on fits into int32 unchanged - // |h8| <= 2^25; from now on fits into int32 unchanged - // |h5| <= 1.01*2^24 - // |h9| <= 1.51*2^58 - - carry[9] = (h9 + (1 << 24)) >> 25 - h0 += carry[9] * 19 - h9 -= carry[9] << 25 - // |h9| <= 2^24; from now on fits into int32 unchanged - // |h0| <= 1.8*2^37 - - carry[0] = (h0 + (1 << 25)) >> 26 - h1 += carry[0] - h0 -= carry[0] << 26 - // |h0| <= 2^25; from now on fits into int32 unchanged - // |h1| <= 1.01*2^24 - - h[0] = int32(h0) - h[1] = int32(h1) - h[2] = int32(h2) - h[3] = int32(h3) - h[4] = int32(h4) - h[5] = int32(h5) - h[6] = int32(h6) - h[7] = int32(h7) - h[8] = int32(h8) - h[9] = int32(h9) -} - -// feSquare calculates h = f*f. Can overlap h with f. -// -// Preconditions: -// |f| bounded by 1.1*2^26,1.1*2^25,1.1*2^26,1.1*2^25,etc. -// -// Postconditions: -// |h| bounded by 1.1*2^25,1.1*2^24,1.1*2^25,1.1*2^24,etc. -func feSquare(h, f *fieldElement) { - f0 := f[0] - f1 := f[1] - f2 := f[2] - f3 := f[3] - f4 := f[4] - f5 := f[5] - f6 := f[6] - f7 := f[7] - f8 := f[8] - f9 := f[9] - f0_2 := 2 * f0 - f1_2 := 2 * f1 - f2_2 := 2 * f2 - f3_2 := 2 * f3 - f4_2 := 2 * f4 - f5_2 := 2 * f5 - f6_2 := 2 * f6 - f7_2 := 2 * f7 - f5_38 := 38 * f5 // 1.31*2^30 - f6_19 := 19 * f6 // 1.31*2^30 - f7_38 := 38 * f7 // 1.31*2^30 - f8_19 := 19 * f8 // 1.31*2^30 - f9_38 := 38 * f9 // 1.31*2^30 - f0f0 := int64(f0) * int64(f0) - f0f1_2 := int64(f0_2) * int64(f1) - f0f2_2 := int64(f0_2) * int64(f2) - f0f3_2 := int64(f0_2) * int64(f3) - f0f4_2 := int64(f0_2) * int64(f4) - f0f5_2 := int64(f0_2) * int64(f5) - f0f6_2 := int64(f0_2) * int64(f6) - f0f7_2 := int64(f0_2) * int64(f7) - f0f8_2 := int64(f0_2) * int64(f8) - f0f9_2 := int64(f0_2) * int64(f9) - f1f1_2 := int64(f1_2) * int64(f1) - f1f2_2 := int64(f1_2) * int64(f2) - f1f3_4 := int64(f1_2) * int64(f3_2) - f1f4_2 := int64(f1_2) * int64(f4) - f1f5_4 := int64(f1_2) * int64(f5_2) - f1f6_2 := int64(f1_2) * int64(f6) - f1f7_4 := int64(f1_2) * int64(f7_2) - f1f8_2 := int64(f1_2) * int64(f8) - f1f9_76 := int64(f1_2) * int64(f9_38) - f2f2 := int64(f2) * int64(f2) - f2f3_2 := int64(f2_2) * int64(f3) - f2f4_2 := int64(f2_2) * int64(f4) - f2f5_2 := int64(f2_2) * int64(f5) - f2f6_2 := int64(f2_2) * int64(f6) - f2f7_2 := int64(f2_2) * int64(f7) - f2f8_38 := int64(f2_2) * int64(f8_19) - f2f9_38 := int64(f2) * int64(f9_38) - f3f3_2 := int64(f3_2) * int64(f3) - f3f4_2 := int64(f3_2) * int64(f4) - f3f5_4 := int64(f3_2) * int64(f5_2) - f3f6_2 := int64(f3_2) * int64(f6) - f3f7_76 := int64(f3_2) * int64(f7_38) - f3f8_38 := int64(f3_2) * int64(f8_19) - f3f9_76 := int64(f3_2) * int64(f9_38) - f4f4 := int64(f4) * int64(f4) - f4f5_2 := int64(f4_2) * int64(f5) - f4f6_38 := int64(f4_2) * int64(f6_19) - f4f7_38 := int64(f4) * int64(f7_38) - f4f8_38 := int64(f4_2) * int64(f8_19) - f4f9_38 := int64(f4) * int64(f9_38) - f5f5_38 := int64(f5) * int64(f5_38) - f5f6_38 := int64(f5_2) * int64(f6_19) - f5f7_76 := int64(f5_2) * int64(f7_38) - f5f8_38 := int64(f5_2) * int64(f8_19) - f5f9_76 := int64(f5_2) * int64(f9_38) - f6f6_19 := int64(f6) * int64(f6_19) - f6f7_38 := int64(f6) * int64(f7_38) - f6f8_38 := int64(f6_2) * int64(f8_19) - f6f9_38 := int64(f6) * int64(f9_38) - f7f7_38 := int64(f7) * int64(f7_38) - f7f8_38 := int64(f7_2) * int64(f8_19) - f7f9_76 := int64(f7_2) * int64(f9_38) - f8f8_19 := int64(f8) * int64(f8_19) - f8f9_38 := int64(f8) * int64(f9_38) - f9f9_38 := int64(f9) * int64(f9_38) - h0 := f0f0 + f1f9_76 + f2f8_38 + f3f7_76 + f4f6_38 + f5f5_38 - h1 := f0f1_2 + f2f9_38 + f3f8_38 + f4f7_38 + f5f6_38 - h2 := f0f2_2 + f1f1_2 + f3f9_76 + f4f8_38 + f5f7_76 + f6f6_19 - h3 := f0f3_2 + f1f2_2 + f4f9_38 + f5f8_38 + f6f7_38 - h4 := f0f4_2 + f1f3_4 + f2f2 + f5f9_76 + f6f8_38 + f7f7_38 - h5 := f0f5_2 + f1f4_2 + f2f3_2 + f6f9_38 + f7f8_38 - h6 := f0f6_2 + f1f5_4 + f2f4_2 + f3f3_2 + f7f9_76 + f8f8_19 - h7 := f0f7_2 + f1f6_2 + f2f5_2 + f3f4_2 + f8f9_38 - h8 := f0f8_2 + f1f7_4 + f2f6_2 + f3f5_4 + f4f4 + f9f9_38 - h9 := f0f9_2 + f1f8_2 + f2f7_2 + f3f6_2 + f4f5_2 - var carry [10]int64 - - carry[0] = (h0 + (1 << 25)) >> 26 - h1 += carry[0] - h0 -= carry[0] << 26 - carry[4] = (h4 + (1 << 25)) >> 26 - h5 += carry[4] - h4 -= carry[4] << 26 - - carry[1] = (h1 + (1 << 24)) >> 25 - h2 += carry[1] - h1 -= carry[1] << 25 - carry[5] = (h5 + (1 << 24)) >> 25 - h6 += carry[5] - h5 -= carry[5] << 25 - - carry[2] = (h2 + (1 << 25)) >> 26 - h3 += carry[2] - h2 -= carry[2] << 26 - carry[6] = (h6 + (1 << 25)) >> 26 - h7 += carry[6] - h6 -= carry[6] << 26 - - carry[3] = (h3 + (1 << 24)) >> 25 - h4 += carry[3] - h3 -= carry[3] << 25 - carry[7] = (h7 + (1 << 24)) >> 25 - h8 += carry[7] - h7 -= carry[7] << 25 - - carry[4] = (h4 + (1 << 25)) >> 26 - h5 += carry[4] - h4 -= carry[4] << 26 - carry[8] = (h8 + (1 << 25)) >> 26 - h9 += carry[8] - h8 -= carry[8] << 26 - - carry[9] = (h9 + (1 << 24)) >> 25 - h0 += carry[9] * 19 - h9 -= carry[9] << 25 - - carry[0] = (h0 + (1 << 25)) >> 26 - h1 += carry[0] - h0 -= carry[0] << 26 - - h[0] = int32(h0) - h[1] = int32(h1) - h[2] = int32(h2) - h[3] = int32(h3) - h[4] = int32(h4) - h[5] = int32(h5) - h[6] = int32(h6) - h[7] = int32(h7) - h[8] = int32(h8) - h[9] = int32(h9) -} - -// feMul121666 calculates h = f * 121666. Can overlap h with f. -// -// Preconditions: -// |f| bounded by 1.1*2^26,1.1*2^25,1.1*2^26,1.1*2^25,etc. -// -// Postconditions: -// |h| bounded by 1.1*2^25,1.1*2^24,1.1*2^25,1.1*2^24,etc. -func feMul121666(h, f *fieldElement) { - h0 := int64(f[0]) * 121666 - h1 := int64(f[1]) * 121666 - h2 := int64(f[2]) * 121666 - h3 := int64(f[3]) * 121666 - h4 := int64(f[4]) * 121666 - h5 := int64(f[5]) * 121666 - h6 := int64(f[6]) * 121666 - h7 := int64(f[7]) * 121666 - h8 := int64(f[8]) * 121666 - h9 := int64(f[9]) * 121666 - var carry [10]int64 - - carry[9] = (h9 + (1 << 24)) >> 25 - h0 += carry[9] * 19 - h9 -= carry[9] << 25 - carry[1] = (h1 + (1 << 24)) >> 25 - h2 += carry[1] - h1 -= carry[1] << 25 - carry[3] = (h3 + (1 << 24)) >> 25 - h4 += carry[3] - h3 -= carry[3] << 25 - carry[5] = (h5 + (1 << 24)) >> 25 - h6 += carry[5] - h5 -= carry[5] << 25 - carry[7] = (h7 + (1 << 24)) >> 25 - h8 += carry[7] - h7 -= carry[7] << 25 - - carry[0] = (h0 + (1 << 25)) >> 26 - h1 += carry[0] - h0 -= carry[0] << 26 - carry[2] = (h2 + (1 << 25)) >> 26 - h3 += carry[2] - h2 -= carry[2] << 26 - carry[4] = (h4 + (1 << 25)) >> 26 - h5 += carry[4] - h4 -= carry[4] << 26 - carry[6] = (h6 + (1 << 25)) >> 26 - h7 += carry[6] - h6 -= carry[6] << 26 - carry[8] = (h8 + (1 << 25)) >> 26 - h9 += carry[8] - h8 -= carry[8] << 26 - - h[0] = int32(h0) - h[1] = int32(h1) - h[2] = int32(h2) - h[3] = int32(h3) - h[4] = int32(h4) - h[5] = int32(h5) - h[6] = int32(h6) - h[7] = int32(h7) - h[8] = int32(h8) - h[9] = int32(h9) -} - -// feInvert sets out = z^-1. -func feInvert(out, z *fieldElement) { - var t0, t1, t2, t3 fieldElement - var i int - - feSquare(&t0, z) - for i = 1; i < 1; i++ { - feSquare(&t0, &t0) - } - feSquare(&t1, &t0) - for i = 1; i < 2; i++ { - feSquare(&t1, &t1) - } - feMul(&t1, z, &t1) - feMul(&t0, &t0, &t1) - feSquare(&t2, &t0) - for i = 1; i < 1; i++ { - feSquare(&t2, &t2) - } - feMul(&t1, &t1, &t2) - feSquare(&t2, &t1) - for i = 1; i < 5; i++ { - feSquare(&t2, &t2) - } - feMul(&t1, &t2, &t1) - feSquare(&t2, &t1) - for i = 1; i < 10; i++ { - feSquare(&t2, &t2) - } - feMul(&t2, &t2, &t1) - feSquare(&t3, &t2) - for i = 1; i < 20; i++ { - feSquare(&t3, &t3) - } - feMul(&t2, &t3, &t2) - feSquare(&t2, &t2) - for i = 1; i < 10; i++ { - feSquare(&t2, &t2) - } - feMul(&t1, &t2, &t1) - feSquare(&t2, &t1) - for i = 1; i < 50; i++ { - feSquare(&t2, &t2) - } - feMul(&t2, &t2, &t1) - feSquare(&t3, &t2) - for i = 1; i < 100; i++ { - feSquare(&t3, &t3) - } - feMul(&t2, &t3, &t2) - feSquare(&t2, &t2) - for i = 1; i < 50; i++ { - feSquare(&t2, &t2) - } - feMul(&t1, &t2, &t1) - feSquare(&t1, &t1) - for i = 1; i < 5; i++ { - feSquare(&t1, &t1) - } - feMul(out, &t1, &t0) -} - -func scalarMultGeneric(out, in, base *[32]byte) { - var e [32]byte - - copy(e[:], in[:]) - e[0] &= 248 - e[31] &= 127 - e[31] |= 64 - - var x1, x2, z2, x3, z3, tmp0, tmp1 fieldElement - feFromBytes(&x1, base) - feOne(&x2) - feCopy(&x3, &x1) - feOne(&z3) - - swap := int32(0) - for pos := 254; pos >= 0; pos-- { - b := e[pos/8] >> uint(pos&7) - b &= 1 - swap ^= int32(b) - feCSwap(&x2, &x3, swap) - feCSwap(&z2, &z3, swap) - swap = int32(b) - - feSub(&tmp0, &x3, &z3) - feSub(&tmp1, &x2, &z2) - feAdd(&x2, &x2, &z2) - feAdd(&z2, &x3, &z3) - feMul(&z3, &tmp0, &x2) - feMul(&z2, &z2, &tmp1) - feSquare(&tmp0, &tmp1) - feSquare(&tmp1, &x2) - feAdd(&x3, &z3, &z2) - feSub(&z2, &z3, &z2) - feMul(&x2, &tmp1, &tmp0) - feSub(&tmp1, &tmp1, &tmp0) - feSquare(&z2, &z2) - feMul121666(&z3, &tmp1) - feSquare(&x3, &x3) - feAdd(&tmp0, &tmp0, &z3) - feMul(&z3, &x1, &z2) - feMul(&z2, &tmp1, &tmp0) - } - - feCSwap(&x2, &x3, swap) - feCSwap(&z2, &z3, swap) - - feInvert(&z2, &z2) - feMul(&x2, &x2, &z2) - feToBytes(out, &x2) -} diff --git a/vendor/golang.org/x/crypto/curve25519/curve25519_noasm.go b/vendor/golang.org/x/crypto/curve25519/curve25519_noasm.go deleted file mode 100644 index 80d3300af..000000000 --- a/vendor/golang.org/x/crypto/curve25519/curve25519_noasm.go +++ /dev/null @@ -1,11 +0,0 @@ -// Copyright 2019 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -// +build !amd64 !gc purego - -package curve25519 - -func scalarMult(out, in, base *[32]byte) { - scalarMultGeneric(out, in, base) -} diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/README b/vendor/golang.org/x/crypto/curve25519/internal/field/README new file mode 100644 index 000000000..e25bca7dc --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/README @@ -0,0 +1,7 @@ +This package is kept in sync with crypto/ed25519/internal/edwards25519/field in +the standard library. + +If there are any changes in the standard library that need to be synced to this +package, run sync.sh. It will not overwrite any local changes made since the +previous sync, so it's ok to land changes in this package first, and then sync +to the standard library later. diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/fe.go b/vendor/golang.org/x/crypto/curve25519/internal/field/fe.go new file mode 100644 index 000000000..ca841ad99 --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/fe.go @@ -0,0 +1,416 @@ +// Copyright (c) 2017 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Package field implements fast arithmetic modulo 2^255-19. +package field + +import ( + "crypto/subtle" + "encoding/binary" + "math/bits" +) + +// Element represents an element of the field GF(2^255-19). Note that this +// is not a cryptographically secure group, and should only be used to interact +// with edwards25519.Point coordinates. +// +// This type works similarly to math/big.Int, and all arguments and receivers +// are allowed to alias. +// +// The zero value is a valid zero element. +type Element struct { + // An element t represents the integer + // t.l0 + t.l1*2^51 + t.l2*2^102 + t.l3*2^153 + t.l4*2^204 + // + // Between operations, all limbs are expected to be lower than 2^52. + l0 uint64 + l1 uint64 + l2 uint64 + l3 uint64 + l4 uint64 +} + +const maskLow51Bits uint64 = (1 << 51) - 1 + +var feZero = &Element{0, 0, 0, 0, 0} + +// Zero sets v = 0, and returns v. +func (v *Element) Zero() *Element { + *v = *feZero + return v +} + +var feOne = &Element{1, 0, 0, 0, 0} + +// One sets v = 1, and returns v. +func (v *Element) One() *Element { + *v = *feOne + return v +} + +// reduce reduces v modulo 2^255 - 19 and returns it. +func (v *Element) reduce() *Element { + v.carryPropagate() + + // After the light reduction we now have a field element representation + // v < 2^255 + 2^13 * 19, but need v < 2^255 - 19. + + // If v >= 2^255 - 19, then v + 19 >= 2^255, which would overflow 2^255 - 1, + // generating a carry. That is, c will be 0 if v < 2^255 - 19, and 1 otherwise. + c := (v.l0 + 19) >> 51 + c = (v.l1 + c) >> 51 + c = (v.l2 + c) >> 51 + c = (v.l3 + c) >> 51 + c = (v.l4 + c) >> 51 + + // If v < 2^255 - 19 and c = 0, this will be a no-op. Otherwise, it's + // effectively applying the reduction identity to the carry. + v.l0 += 19 * c + + v.l1 += v.l0 >> 51 + v.l0 = v.l0 & maskLow51Bits + v.l2 += v.l1 >> 51 + v.l1 = v.l1 & maskLow51Bits + v.l3 += v.l2 >> 51 + v.l2 = v.l2 & maskLow51Bits + v.l4 += v.l3 >> 51 + v.l3 = v.l3 & maskLow51Bits + // no additional carry + v.l4 = v.l4 & maskLow51Bits + + return v +} + +// Add sets v = a + b, and returns v. +func (v *Element) Add(a, b *Element) *Element { + v.l0 = a.l0 + b.l0 + v.l1 = a.l1 + b.l1 + v.l2 = a.l2 + b.l2 + v.l3 = a.l3 + b.l3 + v.l4 = a.l4 + b.l4 + // Using the generic implementation here is actually faster than the + // assembly. Probably because the body of this function is so simple that + // the compiler can figure out better optimizations by inlining the carry + // propagation. TODO + return v.carryPropagateGeneric() +} + +// Subtract sets v = a - b, and returns v. +func (v *Element) Subtract(a, b *Element) *Element { + // We first add 2 * p, to guarantee the subtraction won't underflow, and + // then subtract b (which can be up to 2^255 + 2^13 * 19). + v.l0 = (a.l0 + 0xFFFFFFFFFFFDA) - b.l0 + v.l1 = (a.l1 + 0xFFFFFFFFFFFFE) - b.l1 + v.l2 = (a.l2 + 0xFFFFFFFFFFFFE) - b.l2 + v.l3 = (a.l3 + 0xFFFFFFFFFFFFE) - b.l3 + v.l4 = (a.l4 + 0xFFFFFFFFFFFFE) - b.l4 + return v.carryPropagate() +} + +// Negate sets v = -a, and returns v. +func (v *Element) Negate(a *Element) *Element { + return v.Subtract(feZero, a) +} + +// Invert sets v = 1/z mod p, and returns v. +// +// If z == 0, Invert returns v = 0. +func (v *Element) Invert(z *Element) *Element { + // Inversion is implemented as exponentiation with exponent p − 2. It uses the + // same sequence of 255 squarings and 11 multiplications as [Curve25519]. + var z2, z9, z11, z2_5_0, z2_10_0, z2_20_0, z2_50_0, z2_100_0, t Element + + z2.Square(z) // 2 + t.Square(&z2) // 4 + t.Square(&t) // 8 + z9.Multiply(&t, z) // 9 + z11.Multiply(&z9, &z2) // 11 + t.Square(&z11) // 22 + z2_5_0.Multiply(&t, &z9) // 31 = 2^5 - 2^0 + + t.Square(&z2_5_0) // 2^6 - 2^1 + for i := 0; i < 4; i++ { + t.Square(&t) // 2^10 - 2^5 + } + z2_10_0.Multiply(&t, &z2_5_0) // 2^10 - 2^0 + + t.Square(&z2_10_0) // 2^11 - 2^1 + for i := 0; i < 9; i++ { + t.Square(&t) // 2^20 - 2^10 + } + z2_20_0.Multiply(&t, &z2_10_0) // 2^20 - 2^0 + + t.Square(&z2_20_0) // 2^21 - 2^1 + for i := 0; i < 19; i++ { + t.Square(&t) // 2^40 - 2^20 + } + t.Multiply(&t, &z2_20_0) // 2^40 - 2^0 + + t.Square(&t) // 2^41 - 2^1 + for i := 0; i < 9; i++ { + t.Square(&t) // 2^50 - 2^10 + } + z2_50_0.Multiply(&t, &z2_10_0) // 2^50 - 2^0 + + t.Square(&z2_50_0) // 2^51 - 2^1 + for i := 0; i < 49; i++ { + t.Square(&t) // 2^100 - 2^50 + } + z2_100_0.Multiply(&t, &z2_50_0) // 2^100 - 2^0 + + t.Square(&z2_100_0) // 2^101 - 2^1 + for i := 0; i < 99; i++ { + t.Square(&t) // 2^200 - 2^100 + } + t.Multiply(&t, &z2_100_0) // 2^200 - 2^0 + + t.Square(&t) // 2^201 - 2^1 + for i := 0; i < 49; i++ { + t.Square(&t) // 2^250 - 2^50 + } + t.Multiply(&t, &z2_50_0) // 2^250 - 2^0 + + t.Square(&t) // 2^251 - 2^1 + t.Square(&t) // 2^252 - 2^2 + t.Square(&t) // 2^253 - 2^3 + t.Square(&t) // 2^254 - 2^4 + t.Square(&t) // 2^255 - 2^5 + + return v.Multiply(&t, &z11) // 2^255 - 21 +} + +// Set sets v = a, and returns v. +func (v *Element) Set(a *Element) *Element { + *v = *a + return v +} + +// SetBytes sets v to x, which must be a 32-byte little-endian encoding. +// +// Consistent with RFC 7748, the most significant bit (the high bit of the +// last byte) is ignored, and non-canonical values (2^255-19 through 2^255-1) +// are accepted. Note that this is laxer than specified by RFC 8032. +func (v *Element) SetBytes(x []byte) *Element { + if len(x) != 32 { + panic("edwards25519: invalid field element input size") + } + + // Bits 0:51 (bytes 0:8, bits 0:64, shift 0, mask 51). + v.l0 = binary.LittleEndian.Uint64(x[0:8]) + v.l0 &= maskLow51Bits + // Bits 51:102 (bytes 6:14, bits 48:112, shift 3, mask 51). + v.l1 = binary.LittleEndian.Uint64(x[6:14]) >> 3 + v.l1 &= maskLow51Bits + // Bits 102:153 (bytes 12:20, bits 96:160, shift 6, mask 51). + v.l2 = binary.LittleEndian.Uint64(x[12:20]) >> 6 + v.l2 &= maskLow51Bits + // Bits 153:204 (bytes 19:27, bits 152:216, shift 1, mask 51). + v.l3 = binary.LittleEndian.Uint64(x[19:27]) >> 1 + v.l3 &= maskLow51Bits + // Bits 204:251 (bytes 24:32, bits 192:256, shift 12, mask 51). + // Note: not bytes 25:33, shift 4, to avoid overread. + v.l4 = binary.LittleEndian.Uint64(x[24:32]) >> 12 + v.l4 &= maskLow51Bits + + return v +} + +// Bytes returns the canonical 32-byte little-endian encoding of v. +func (v *Element) Bytes() []byte { + // This function is outlined to make the allocations inline in the caller + // rather than happen on the heap. + var out [32]byte + return v.bytes(&out) +} + +func (v *Element) bytes(out *[32]byte) []byte { + t := *v + t.reduce() + + var buf [8]byte + for i, l := range [5]uint64{t.l0, t.l1, t.l2, t.l3, t.l4} { + bitsOffset := i * 51 + binary.LittleEndian.PutUint64(buf[:], l<= len(out) { + break + } + out[off] |= bb + } + } + + return out[:] +} + +// Equal returns 1 if v and u are equal, and 0 otherwise. +func (v *Element) Equal(u *Element) int { + sa, sv := u.Bytes(), v.Bytes() + return subtle.ConstantTimeCompare(sa, sv) +} + +// mask64Bits returns 0xffffffff if cond is 1, and 0 otherwise. +func mask64Bits(cond int) uint64 { return ^(uint64(cond) - 1) } + +// Select sets v to a if cond == 1, and to b if cond == 0. +func (v *Element) Select(a, b *Element, cond int) *Element { + m := mask64Bits(cond) + v.l0 = (m & a.l0) | (^m & b.l0) + v.l1 = (m & a.l1) | (^m & b.l1) + v.l2 = (m & a.l2) | (^m & b.l2) + v.l3 = (m & a.l3) | (^m & b.l3) + v.l4 = (m & a.l4) | (^m & b.l4) + return v +} + +// Swap swaps v and u if cond == 1 or leaves them unchanged if cond == 0, and returns v. +func (v *Element) Swap(u *Element, cond int) { + m := mask64Bits(cond) + t := m & (v.l0 ^ u.l0) + v.l0 ^= t + u.l0 ^= t + t = m & (v.l1 ^ u.l1) + v.l1 ^= t + u.l1 ^= t + t = m & (v.l2 ^ u.l2) + v.l2 ^= t + u.l2 ^= t + t = m & (v.l3 ^ u.l3) + v.l3 ^= t + u.l3 ^= t + t = m & (v.l4 ^ u.l4) + v.l4 ^= t + u.l4 ^= t +} + +// IsNegative returns 1 if v is negative, and 0 otherwise. +func (v *Element) IsNegative() int { + return int(v.Bytes()[0] & 1) +} + +// Absolute sets v to |u|, and returns v. +func (v *Element) Absolute(u *Element) *Element { + return v.Select(new(Element).Negate(u), u, u.IsNegative()) +} + +// Multiply sets v = x * y, and returns v. +func (v *Element) Multiply(x, y *Element) *Element { + feMul(v, x, y) + return v +} + +// Square sets v = x * x, and returns v. +func (v *Element) Square(x *Element) *Element { + feSquare(v, x) + return v +} + +// Mult32 sets v = x * y, and returns v. +func (v *Element) Mult32(x *Element, y uint32) *Element { + x0lo, x0hi := mul51(x.l0, y) + x1lo, x1hi := mul51(x.l1, y) + x2lo, x2hi := mul51(x.l2, y) + x3lo, x3hi := mul51(x.l3, y) + x4lo, x4hi := mul51(x.l4, y) + v.l0 = x0lo + 19*x4hi // carried over per the reduction identity + v.l1 = x1lo + x0hi + v.l2 = x2lo + x1hi + v.l3 = x3lo + x2hi + v.l4 = x4lo + x3hi + // The hi portions are going to be only 32 bits, plus any previous excess, + // so we can skip the carry propagation. + return v +} + +// mul51 returns lo + hi * 2⁵¹ = a * b. +func mul51(a uint64, b uint32) (lo uint64, hi uint64) { + mh, ml := bits.Mul64(a, uint64(b)) + lo = ml & maskLow51Bits + hi = (mh << 13) | (ml >> 51) + return +} + +// Pow22523 set v = x^((p-5)/8), and returns v. (p-5)/8 is 2^252-3. +func (v *Element) Pow22523(x *Element) *Element { + var t0, t1, t2 Element + + t0.Square(x) // x^2 + t1.Square(&t0) // x^4 + t1.Square(&t1) // x^8 + t1.Multiply(x, &t1) // x^9 + t0.Multiply(&t0, &t1) // x^11 + t0.Square(&t0) // x^22 + t0.Multiply(&t1, &t0) // x^31 + t1.Square(&t0) // x^62 + for i := 1; i < 5; i++ { // x^992 + t1.Square(&t1) + } + t0.Multiply(&t1, &t0) // x^1023 -> 1023 = 2^10 - 1 + t1.Square(&t0) // 2^11 - 2 + for i := 1; i < 10; i++ { // 2^20 - 2^10 + t1.Square(&t1) + } + t1.Multiply(&t1, &t0) // 2^20 - 1 + t2.Square(&t1) // 2^21 - 2 + for i := 1; i < 20; i++ { // 2^40 - 2^20 + t2.Square(&t2) + } + t1.Multiply(&t2, &t1) // 2^40 - 1 + t1.Square(&t1) // 2^41 - 2 + for i := 1; i < 10; i++ { // 2^50 - 2^10 + t1.Square(&t1) + } + t0.Multiply(&t1, &t0) // 2^50 - 1 + t1.Square(&t0) // 2^51 - 2 + for i := 1; i < 50; i++ { // 2^100 - 2^50 + t1.Square(&t1) + } + t1.Multiply(&t1, &t0) // 2^100 - 1 + t2.Square(&t1) // 2^101 - 2 + for i := 1; i < 100; i++ { // 2^200 - 2^100 + t2.Square(&t2) + } + t1.Multiply(&t2, &t1) // 2^200 - 1 + t1.Square(&t1) // 2^201 - 2 + for i := 1; i < 50; i++ { // 2^250 - 2^50 + t1.Square(&t1) + } + t0.Multiply(&t1, &t0) // 2^250 - 1 + t0.Square(&t0) // 2^251 - 2 + t0.Square(&t0) // 2^252 - 4 + return v.Multiply(&t0, x) // 2^252 - 3 -> x^(2^252-3) +} + +// sqrtM1 is 2^((p-1)/4), which squared is equal to -1 by Euler's Criterion. +var sqrtM1 = &Element{1718705420411056, 234908883556509, + 2233514472574048, 2117202627021982, 765476049583133} + +// SqrtRatio sets r to the non-negative square root of the ratio of u and v. +// +// If u/v is square, SqrtRatio returns r and 1. If u/v is not square, SqrtRatio +// sets r according to Section 4.3 of draft-irtf-cfrg-ristretto255-decaf448-00, +// and returns r and 0. +func (r *Element) SqrtRatio(u, v *Element) (rr *Element, wasSquare int) { + var a, b Element + + // r = (u * v3) * (u * v7)^((p-5)/8) + v2 := a.Square(v) + uv3 := b.Multiply(u, b.Multiply(v2, v)) + uv7 := a.Multiply(uv3, a.Square(v2)) + r.Multiply(uv3, r.Pow22523(uv7)) + + check := a.Multiply(v, a.Square(r)) // check = v * r^2 + + uNeg := b.Negate(u) + correctSignSqrt := check.Equal(u) + flippedSignSqrt := check.Equal(uNeg) + flippedSignSqrtI := check.Equal(uNeg.Multiply(uNeg, sqrtM1)) + + rPrime := b.Multiply(r, sqrtM1) // r_prime = SQRT_M1 * r + // r = CT_SELECT(r_prime IF flipped_sign_sqrt | flipped_sign_sqrt_i ELSE r) + r.Select(rPrime, r, flippedSignSqrt|flippedSignSqrtI) + + r.Absolute(r) // Choose the nonnegative square root. + return r, correctSignSqrt | flippedSignSqrt +} diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64.go b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64.go new file mode 100644 index 000000000..44dc8e8ca --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64.go @@ -0,0 +1,13 @@ +// Code generated by command: go run fe_amd64_asm.go -out ../fe_amd64.s -stubs ../fe_amd64.go -pkg field. DO NOT EDIT. + +// +build amd64,gc,!purego + +package field + +// feMul sets out = a * b. It works like feMulGeneric. +//go:noescape +func feMul(out *Element, a *Element, b *Element) + +// feSquare sets out = a * a. It works like feSquareGeneric. +//go:noescape +func feSquare(out *Element, a *Element) diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64.s b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64.s new file mode 100644 index 000000000..293f013c9 --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64.s @@ -0,0 +1,379 @@ +// Code generated by command: go run fe_amd64_asm.go -out ../fe_amd64.s -stubs ../fe_amd64.go -pkg field. DO NOT EDIT. + +//go:build amd64 && gc && !purego +// +build amd64,gc,!purego + +#include "textflag.h" + +// func feMul(out *Element, a *Element, b *Element) +TEXT ·feMul(SB), NOSPLIT, $0-24 + MOVQ a+8(FP), CX + MOVQ b+16(FP), BX + + // r0 = a0×b0 + MOVQ (CX), AX + MULQ (BX) + MOVQ AX, DI + MOVQ DX, SI + + // r0 += 19×a1×b4 + MOVQ 8(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 32(BX) + ADDQ AX, DI + ADCQ DX, SI + + // r0 += 19×a2×b3 + MOVQ 16(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 24(BX) + ADDQ AX, DI + ADCQ DX, SI + + // r0 += 19×a3×b2 + MOVQ 24(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 16(BX) + ADDQ AX, DI + ADCQ DX, SI + + // r0 += 19×a4×b1 + MOVQ 32(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 8(BX) + ADDQ AX, DI + ADCQ DX, SI + + // r1 = a0×b1 + MOVQ (CX), AX + MULQ 8(BX) + MOVQ AX, R9 + MOVQ DX, R8 + + // r1 += a1×b0 + MOVQ 8(CX), AX + MULQ (BX) + ADDQ AX, R9 + ADCQ DX, R8 + + // r1 += 19×a2×b4 + MOVQ 16(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 32(BX) + ADDQ AX, R9 + ADCQ DX, R8 + + // r1 += 19×a3×b3 + MOVQ 24(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 24(BX) + ADDQ AX, R9 + ADCQ DX, R8 + + // r1 += 19×a4×b2 + MOVQ 32(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 16(BX) + ADDQ AX, R9 + ADCQ DX, R8 + + // r2 = a0×b2 + MOVQ (CX), AX + MULQ 16(BX) + MOVQ AX, R11 + MOVQ DX, R10 + + // r2 += a1×b1 + MOVQ 8(CX), AX + MULQ 8(BX) + ADDQ AX, R11 + ADCQ DX, R10 + + // r2 += a2×b0 + MOVQ 16(CX), AX + MULQ (BX) + ADDQ AX, R11 + ADCQ DX, R10 + + // r2 += 19×a3×b4 + MOVQ 24(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 32(BX) + ADDQ AX, R11 + ADCQ DX, R10 + + // r2 += 19×a4×b3 + MOVQ 32(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 24(BX) + ADDQ AX, R11 + ADCQ DX, R10 + + // r3 = a0×b3 + MOVQ (CX), AX + MULQ 24(BX) + MOVQ AX, R13 + MOVQ DX, R12 + + // r3 += a1×b2 + MOVQ 8(CX), AX + MULQ 16(BX) + ADDQ AX, R13 + ADCQ DX, R12 + + // r3 += a2×b1 + MOVQ 16(CX), AX + MULQ 8(BX) + ADDQ AX, R13 + ADCQ DX, R12 + + // r3 += a3×b0 + MOVQ 24(CX), AX + MULQ (BX) + ADDQ AX, R13 + ADCQ DX, R12 + + // r3 += 19×a4×b4 + MOVQ 32(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 32(BX) + ADDQ AX, R13 + ADCQ DX, R12 + + // r4 = a0×b4 + MOVQ (CX), AX + MULQ 32(BX) + MOVQ AX, R15 + MOVQ DX, R14 + + // r4 += a1×b3 + MOVQ 8(CX), AX + MULQ 24(BX) + ADDQ AX, R15 + ADCQ DX, R14 + + // r4 += a2×b2 + MOVQ 16(CX), AX + MULQ 16(BX) + ADDQ AX, R15 + ADCQ DX, R14 + + // r4 += a3×b1 + MOVQ 24(CX), AX + MULQ 8(BX) + ADDQ AX, R15 + ADCQ DX, R14 + + // r4 += a4×b0 + MOVQ 32(CX), AX + MULQ (BX) + ADDQ AX, R15 + ADCQ DX, R14 + + // First reduction chain + MOVQ $0x0007ffffffffffff, AX + SHLQ $0x0d, DI, SI + SHLQ $0x0d, R9, R8 + SHLQ $0x0d, R11, R10 + SHLQ $0x0d, R13, R12 + SHLQ $0x0d, R15, R14 + ANDQ AX, DI + IMUL3Q $0x13, R14, R14 + ADDQ R14, DI + ANDQ AX, R9 + ADDQ SI, R9 + ANDQ AX, R11 + ADDQ R8, R11 + ANDQ AX, R13 + ADDQ R10, R13 + ANDQ AX, R15 + ADDQ R12, R15 + + // Second reduction chain (carryPropagate) + MOVQ DI, SI + SHRQ $0x33, SI + MOVQ R9, R8 + SHRQ $0x33, R8 + MOVQ R11, R10 + SHRQ $0x33, R10 + MOVQ R13, R12 + SHRQ $0x33, R12 + MOVQ R15, R14 + SHRQ $0x33, R14 + ANDQ AX, DI + IMUL3Q $0x13, R14, R14 + ADDQ R14, DI + ANDQ AX, R9 + ADDQ SI, R9 + ANDQ AX, R11 + ADDQ R8, R11 + ANDQ AX, R13 + ADDQ R10, R13 + ANDQ AX, R15 + ADDQ R12, R15 + + // Store output + MOVQ out+0(FP), AX + MOVQ DI, (AX) + MOVQ R9, 8(AX) + MOVQ R11, 16(AX) + MOVQ R13, 24(AX) + MOVQ R15, 32(AX) + RET + +// func feSquare(out *Element, a *Element) +TEXT ·feSquare(SB), NOSPLIT, $0-16 + MOVQ a+8(FP), CX + + // r0 = l0×l0 + MOVQ (CX), AX + MULQ (CX) + MOVQ AX, SI + MOVQ DX, BX + + // r0 += 38×l1×l4 + MOVQ 8(CX), AX + IMUL3Q $0x26, AX, AX + MULQ 32(CX) + ADDQ AX, SI + ADCQ DX, BX + + // r0 += 38×l2×l3 + MOVQ 16(CX), AX + IMUL3Q $0x26, AX, AX + MULQ 24(CX) + ADDQ AX, SI + ADCQ DX, BX + + // r1 = 2×l0×l1 + MOVQ (CX), AX + SHLQ $0x01, AX + MULQ 8(CX) + MOVQ AX, R8 + MOVQ DX, DI + + // r1 += 38×l2×l4 + MOVQ 16(CX), AX + IMUL3Q $0x26, AX, AX + MULQ 32(CX) + ADDQ AX, R8 + ADCQ DX, DI + + // r1 += 19×l3×l3 + MOVQ 24(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 24(CX) + ADDQ AX, R8 + ADCQ DX, DI + + // r2 = 2×l0×l2 + MOVQ (CX), AX + SHLQ $0x01, AX + MULQ 16(CX) + MOVQ AX, R10 + MOVQ DX, R9 + + // r2 += l1×l1 + MOVQ 8(CX), AX + MULQ 8(CX) + ADDQ AX, R10 + ADCQ DX, R9 + + // r2 += 38×l3×l4 + MOVQ 24(CX), AX + IMUL3Q $0x26, AX, AX + MULQ 32(CX) + ADDQ AX, R10 + ADCQ DX, R9 + + // r3 = 2×l0×l3 + MOVQ (CX), AX + SHLQ $0x01, AX + MULQ 24(CX) + MOVQ AX, R12 + MOVQ DX, R11 + + // r3 += 2×l1×l2 + MOVQ 8(CX), AX + IMUL3Q $0x02, AX, AX + MULQ 16(CX) + ADDQ AX, R12 + ADCQ DX, R11 + + // r3 += 19×l4×l4 + MOVQ 32(CX), AX + IMUL3Q $0x13, AX, AX + MULQ 32(CX) + ADDQ AX, R12 + ADCQ DX, R11 + + // r4 = 2×l0×l4 + MOVQ (CX), AX + SHLQ $0x01, AX + MULQ 32(CX) + MOVQ AX, R14 + MOVQ DX, R13 + + // r4 += 2×l1×l3 + MOVQ 8(CX), AX + IMUL3Q $0x02, AX, AX + MULQ 24(CX) + ADDQ AX, R14 + ADCQ DX, R13 + + // r4 += l2×l2 + MOVQ 16(CX), AX + MULQ 16(CX) + ADDQ AX, R14 + ADCQ DX, R13 + + // First reduction chain + MOVQ $0x0007ffffffffffff, AX + SHLQ $0x0d, SI, BX + SHLQ $0x0d, R8, DI + SHLQ $0x0d, R10, R9 + SHLQ $0x0d, R12, R11 + SHLQ $0x0d, R14, R13 + ANDQ AX, SI + IMUL3Q $0x13, R13, R13 + ADDQ R13, SI + ANDQ AX, R8 + ADDQ BX, R8 + ANDQ AX, R10 + ADDQ DI, R10 + ANDQ AX, R12 + ADDQ R9, R12 + ANDQ AX, R14 + ADDQ R11, R14 + + // Second reduction chain (carryPropagate) + MOVQ SI, BX + SHRQ $0x33, BX + MOVQ R8, DI + SHRQ $0x33, DI + MOVQ R10, R9 + SHRQ $0x33, R9 + MOVQ R12, R11 + SHRQ $0x33, R11 + MOVQ R14, R13 + SHRQ $0x33, R13 + ANDQ AX, SI + IMUL3Q $0x13, R13, R13 + ADDQ R13, SI + ANDQ AX, R8 + ADDQ BX, R8 + ANDQ AX, R10 + ADDQ DI, R10 + ANDQ AX, R12 + ADDQ R9, R12 + ANDQ AX, R14 + ADDQ R11, R14 + + // Store output + MOVQ out+0(FP), AX + MOVQ SI, (AX) + MOVQ R8, 8(AX) + MOVQ R10, 16(AX) + MOVQ R12, 24(AX) + MOVQ R14, 32(AX) + RET diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64_noasm.go b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64_noasm.go new file mode 100644 index 000000000..ddb6c9b8f --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_amd64_noasm.go @@ -0,0 +1,12 @@ +// Copyright (c) 2019 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +//go:build !amd64 || !gc || purego +// +build !amd64 !gc purego + +package field + +func feMul(v, x, y *Element) { feMulGeneric(v, x, y) } + +func feSquare(v, x *Element) { feSquareGeneric(v, x) } diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64.go b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64.go new file mode 100644 index 000000000..af459ef51 --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64.go @@ -0,0 +1,16 @@ +// Copyright (c) 2020 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +//go:build arm64 && gc && !purego +// +build arm64,gc,!purego + +package field + +//go:noescape +func carryPropagate(v *Element) + +func (v *Element) carryPropagate() *Element { + carryPropagate(v) + return v +} diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64.s b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64.s new file mode 100644 index 000000000..5c91e4589 --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64.s @@ -0,0 +1,43 @@ +// Copyright (c) 2020 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +//go:build arm64 && gc && !purego +// +build arm64,gc,!purego + +#include "textflag.h" + +// carryPropagate works exactly like carryPropagateGeneric and uses the +// same AND, ADD, and LSR+MADD instructions emitted by the compiler, but +// avoids loading R0-R4 twice and uses LDP and STP. +// +// See https://golang.org/issues/43145 for the main compiler issue. +// +// func carryPropagate(v *Element) +TEXT ·carryPropagate(SB),NOFRAME|NOSPLIT,$0-8 + MOVD v+0(FP), R20 + + LDP 0(R20), (R0, R1) + LDP 16(R20), (R2, R3) + MOVD 32(R20), R4 + + AND $0x7ffffffffffff, R0, R10 + AND $0x7ffffffffffff, R1, R11 + AND $0x7ffffffffffff, R2, R12 + AND $0x7ffffffffffff, R3, R13 + AND $0x7ffffffffffff, R4, R14 + + ADD R0>>51, R11, R11 + ADD R1>>51, R12, R12 + ADD R2>>51, R13, R13 + ADD R3>>51, R14, R14 + // R4>>51 * 19 + R10 -> R10 + LSR $51, R4, R21 + MOVD $19, R22 + MADD R22, R10, R21, R10 + + STP (R10, R11), 0(R20) + STP (R12, R13), 16(R20) + MOVD R14, 32(R20) + + RET diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64_noasm.go b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64_noasm.go new file mode 100644 index 000000000..234a5b2e5 --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_arm64_noasm.go @@ -0,0 +1,12 @@ +// Copyright (c) 2021 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +//go:build !arm64 || !gc || purego +// +build !arm64 !gc purego + +package field + +func (v *Element) carryPropagate() *Element { + return v.carryPropagateGeneric() +} diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/fe_generic.go b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_generic.go new file mode 100644 index 000000000..7b5b78cbd --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/fe_generic.go @@ -0,0 +1,264 @@ +// Copyright (c) 2017 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package field + +import "math/bits" + +// uint128 holds a 128-bit number as two 64-bit limbs, for use with the +// bits.Mul64 and bits.Add64 intrinsics. +type uint128 struct { + lo, hi uint64 +} + +// mul64 returns a * b. +func mul64(a, b uint64) uint128 { + hi, lo := bits.Mul64(a, b) + return uint128{lo, hi} +} + +// addMul64 returns v + a * b. +func addMul64(v uint128, a, b uint64) uint128 { + hi, lo := bits.Mul64(a, b) + lo, c := bits.Add64(lo, v.lo, 0) + hi, _ = bits.Add64(hi, v.hi, c) + return uint128{lo, hi} +} + +// shiftRightBy51 returns a >> 51. a is assumed to be at most 115 bits. +func shiftRightBy51(a uint128) uint64 { + return (a.hi << (64 - 51)) | (a.lo >> 51) +} + +func feMulGeneric(v, a, b *Element) { + a0 := a.l0 + a1 := a.l1 + a2 := a.l2 + a3 := a.l3 + a4 := a.l4 + + b0 := b.l0 + b1 := b.l1 + b2 := b.l2 + b3 := b.l3 + b4 := b.l4 + + // Limb multiplication works like pen-and-paper columnar multiplication, but + // with 51-bit limbs instead of digits. + // + // a4 a3 a2 a1 a0 x + // b4 b3 b2 b1 b0 = + // ------------------------ + // a4b0 a3b0 a2b0 a1b0 a0b0 + + // a4b1 a3b1 a2b1 a1b1 a0b1 + + // a4b2 a3b2 a2b2 a1b2 a0b2 + + // a4b3 a3b3 a2b3 a1b3 a0b3 + + // a4b4 a3b4 a2b4 a1b4 a0b4 = + // ---------------------------------------------- + // r8 r7 r6 r5 r4 r3 r2 r1 r0 + // + // We can then use the reduction identity (a * 2²⁵⁵ + b = a * 19 + b) to + // reduce the limbs that would overflow 255 bits. r5 * 2²⁵⁵ becomes 19 * r5, + // r6 * 2³⁰⁶ becomes 19 * r6 * 2⁵¹, etc. + // + // Reduction can be carried out simultaneously to multiplication. For + // example, we do not compute r5: whenever the result of a multiplication + // belongs to r5, like a1b4, we multiply it by 19 and add the result to r0. + // + // a4b0 a3b0 a2b0 a1b0 a0b0 + + // a3b1 a2b1 a1b1 a0b1 19×a4b1 + + // a2b2 a1b2 a0b2 19×a4b2 19×a3b2 + + // a1b3 a0b3 19×a4b3 19×a3b3 19×a2b3 + + // a0b4 19×a4b4 19×a3b4 19×a2b4 19×a1b4 = + // -------------------------------------- + // r4 r3 r2 r1 r0 + // + // Finally we add up the columns into wide, overlapping limbs. + + a1_19 := a1 * 19 + a2_19 := a2 * 19 + a3_19 := a3 * 19 + a4_19 := a4 * 19 + + // r0 = a0×b0 + 19×(a1×b4 + a2×b3 + a3×b2 + a4×b1) + r0 := mul64(a0, b0) + r0 = addMul64(r0, a1_19, b4) + r0 = addMul64(r0, a2_19, b3) + r0 = addMul64(r0, a3_19, b2) + r0 = addMul64(r0, a4_19, b1) + + // r1 = a0×b1 + a1×b0 + 19×(a2×b4 + a3×b3 + a4×b2) + r1 := mul64(a0, b1) + r1 = addMul64(r1, a1, b0) + r1 = addMul64(r1, a2_19, b4) + r1 = addMul64(r1, a3_19, b3) + r1 = addMul64(r1, a4_19, b2) + + // r2 = a0×b2 + a1×b1 + a2×b0 + 19×(a3×b4 + a4×b3) + r2 := mul64(a0, b2) + r2 = addMul64(r2, a1, b1) + r2 = addMul64(r2, a2, b0) + r2 = addMul64(r2, a3_19, b4) + r2 = addMul64(r2, a4_19, b3) + + // r3 = a0×b3 + a1×b2 + a2×b1 + a3×b0 + 19×a4×b4 + r3 := mul64(a0, b3) + r3 = addMul64(r3, a1, b2) + r3 = addMul64(r3, a2, b1) + r3 = addMul64(r3, a3, b0) + r3 = addMul64(r3, a4_19, b4) + + // r4 = a0×b4 + a1×b3 + a2×b2 + a3×b1 + a4×b0 + r4 := mul64(a0, b4) + r4 = addMul64(r4, a1, b3) + r4 = addMul64(r4, a2, b2) + r4 = addMul64(r4, a3, b1) + r4 = addMul64(r4, a4, b0) + + // After the multiplication, we need to reduce (carry) the five coefficients + // to obtain a result with limbs that are at most slightly larger than 2⁵¹, + // to respect the Element invariant. + // + // Overall, the reduction works the same as carryPropagate, except with + // wider inputs: we take the carry for each coefficient by shifting it right + // by 51, and add it to the limb above it. The top carry is multiplied by 19 + // according to the reduction identity and added to the lowest limb. + // + // The largest coefficient (r0) will be at most 111 bits, which guarantees + // that all carries are at most 111 - 51 = 60 bits, which fits in a uint64. + // + // r0 = a0×b0 + 19×(a1×b4 + a2×b3 + a3×b2 + a4×b1) + // r0 < 2⁵²×2⁵² + 19×(2⁵²×2⁵² + 2⁵²×2⁵² + 2⁵²×2⁵² + 2⁵²×2⁵²) + // r0 < (1 + 19 × 4) × 2⁵² × 2⁵² + // r0 < 2⁷ × 2⁵² × 2⁵² + // r0 < 2¹¹¹ + // + // Moreover, the top coefficient (r4) is at most 107 bits, so c4 is at most + // 56 bits, and c4 * 19 is at most 61 bits, which again fits in a uint64 and + // allows us to easily apply the reduction identity. + // + // r4 = a0×b4 + a1×b3 + a2×b2 + a3×b1 + a4×b0 + // r4 < 5 × 2⁵² × 2⁵² + // r4 < 2¹⁰⁷ + // + + c0 := shiftRightBy51(r0) + c1 := shiftRightBy51(r1) + c2 := shiftRightBy51(r2) + c3 := shiftRightBy51(r3) + c4 := shiftRightBy51(r4) + + rr0 := r0.lo&maskLow51Bits + c4*19 + rr1 := r1.lo&maskLow51Bits + c0 + rr2 := r2.lo&maskLow51Bits + c1 + rr3 := r3.lo&maskLow51Bits + c2 + rr4 := r4.lo&maskLow51Bits + c3 + + // Now all coefficients fit into 64-bit registers but are still too large to + // be passed around as a Element. We therefore do one last carry chain, + // where the carries will be small enough to fit in the wiggle room above 2⁵¹. + *v = Element{rr0, rr1, rr2, rr3, rr4} + v.carryPropagate() +} + +func feSquareGeneric(v, a *Element) { + l0 := a.l0 + l1 := a.l1 + l2 := a.l2 + l3 := a.l3 + l4 := a.l4 + + // Squaring works precisely like multiplication above, but thanks to its + // symmetry we get to group a few terms together. + // + // l4 l3 l2 l1 l0 x + // l4 l3 l2 l1 l0 = + // ------------------------ + // l4l0 l3l0 l2l0 l1l0 l0l0 + + // l4l1 l3l1 l2l1 l1l1 l0l1 + + // l4l2 l3l2 l2l2 l1l2 l0l2 + + // l4l3 l3l3 l2l3 l1l3 l0l3 + + // l4l4 l3l4 l2l4 l1l4 l0l4 = + // ---------------------------------------------- + // r8 r7 r6 r5 r4 r3 r2 r1 r0 + // + // l4l0 l3l0 l2l0 l1l0 l0l0 + + // l3l1 l2l1 l1l1 l0l1 19×l4l1 + + // l2l2 l1l2 l0l2 19×l4l2 19×l3l2 + + // l1l3 l0l3 19×l4l3 19×l3l3 19×l2l3 + + // l0l4 19×l4l4 19×l3l4 19×l2l4 19×l1l4 = + // -------------------------------------- + // r4 r3 r2 r1 r0 + // + // With precomputed 2×, 19×, and 2×19× terms, we can compute each limb with + // only three Mul64 and four Add64, instead of five and eight. + + l0_2 := l0 * 2 + l1_2 := l1 * 2 + + l1_38 := l1 * 38 + l2_38 := l2 * 38 + l3_38 := l3 * 38 + + l3_19 := l3 * 19 + l4_19 := l4 * 19 + + // r0 = l0×l0 + 19×(l1×l4 + l2×l3 + l3×l2 + l4×l1) = l0×l0 + 19×2×(l1×l4 + l2×l3) + r0 := mul64(l0, l0) + r0 = addMul64(r0, l1_38, l4) + r0 = addMul64(r0, l2_38, l3) + + // r1 = l0×l1 + l1×l0 + 19×(l2×l4 + l3×l3 + l4×l2) = 2×l0×l1 + 19×2×l2×l4 + 19×l3×l3 + r1 := mul64(l0_2, l1) + r1 = addMul64(r1, l2_38, l4) + r1 = addMul64(r1, l3_19, l3) + + // r2 = l0×l2 + l1×l1 + l2×l0 + 19×(l3×l4 + l4×l3) = 2×l0×l2 + l1×l1 + 19×2×l3×l4 + r2 := mul64(l0_2, l2) + r2 = addMul64(r2, l1, l1) + r2 = addMul64(r2, l3_38, l4) + + // r3 = l0×l3 + l1×l2 + l2×l1 + l3×l0 + 19×l4×l4 = 2×l0×l3 + 2×l1×l2 + 19×l4×l4 + r3 := mul64(l0_2, l3) + r3 = addMul64(r3, l1_2, l2) + r3 = addMul64(r3, l4_19, l4) + + // r4 = l0×l4 + l1×l3 + l2×l2 + l3×l1 + l4×l0 = 2×l0×l4 + 2×l1×l3 + l2×l2 + r4 := mul64(l0_2, l4) + r4 = addMul64(r4, l1_2, l3) + r4 = addMul64(r4, l2, l2) + + c0 := shiftRightBy51(r0) + c1 := shiftRightBy51(r1) + c2 := shiftRightBy51(r2) + c3 := shiftRightBy51(r3) + c4 := shiftRightBy51(r4) + + rr0 := r0.lo&maskLow51Bits + c4*19 + rr1 := r1.lo&maskLow51Bits + c0 + rr2 := r2.lo&maskLow51Bits + c1 + rr3 := r3.lo&maskLow51Bits + c2 + rr4 := r4.lo&maskLow51Bits + c3 + + *v = Element{rr0, rr1, rr2, rr3, rr4} + v.carryPropagate() +} + +// carryPropagate brings the limbs below 52 bits by applying the reduction +// identity (a * 2²⁵⁵ + b = a * 19 + b) to the l4 carry. TODO inline +func (v *Element) carryPropagateGeneric() *Element { + c0 := v.l0 >> 51 + c1 := v.l1 >> 51 + c2 := v.l2 >> 51 + c3 := v.l3 >> 51 + c4 := v.l4 >> 51 + + v.l0 = v.l0&maskLow51Bits + c4*19 + v.l1 = v.l1&maskLow51Bits + c0 + v.l2 = v.l2&maskLow51Bits + c1 + v.l3 = v.l3&maskLow51Bits + c2 + v.l4 = v.l4&maskLow51Bits + c3 + + return v +} diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/sync.checkpoint b/vendor/golang.org/x/crypto/curve25519/internal/field/sync.checkpoint new file mode 100644 index 000000000..e3685f95c --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/sync.checkpoint @@ -0,0 +1 @@ +b0c49ae9f59d233526f8934262c5bbbe14d4358d diff --git a/vendor/golang.org/x/crypto/curve25519/internal/field/sync.sh b/vendor/golang.org/x/crypto/curve25519/internal/field/sync.sh new file mode 100644 index 000000000..1ba22a8b4 --- /dev/null +++ b/vendor/golang.org/x/crypto/curve25519/internal/field/sync.sh @@ -0,0 +1,19 @@ +#! /bin/bash +set -euo pipefail + +cd "$(git rev-parse --show-toplevel)" + +STD_PATH=src/crypto/ed25519/internal/edwards25519/field +LOCAL_PATH=curve25519/internal/field +LAST_SYNC_REF=$(cat $LOCAL_PATH/sync.checkpoint) + +git fetch https://go.googlesource.com/go master + +if git diff --quiet $LAST_SYNC_REF:$STD_PATH FETCH_HEAD:$STD_PATH; then + echo "No changes." +else + NEW_REF=$(git rev-parse FETCH_HEAD | tee $LOCAL_PATH/sync.checkpoint) + echo "Applying changes from $LAST_SYNC_REF to $NEW_REF..." + git diff $LAST_SYNC_REF:$STD_PATH FETCH_HEAD:$STD_PATH | \ + git apply -3 --directory=$LOCAL_PATH +fi diff --git a/vendor/golang.org/x/crypto/ed25519/ed25519.go b/vendor/golang.org/x/crypto/ed25519/ed25519.go index c7f8c7e64..71ad917da 100644 --- a/vendor/golang.org/x/crypto/ed25519/ed25519.go +++ b/vendor/golang.org/x/crypto/ed25519/ed25519.go @@ -5,6 +5,7 @@ // In Go 1.13, the ed25519 package was promoted to the standard library as // crypto/ed25519, and this package became a wrapper for the standard library one. // +//go:build !go1.13 // +build !go1.13 // Package ed25519 implements the Ed25519 signature algorithm. See diff --git a/vendor/golang.org/x/crypto/ed25519/ed25519_go113.go b/vendor/golang.org/x/crypto/ed25519/ed25519_go113.go index d1448d8d2..b5974dc8b 100644 --- a/vendor/golang.org/x/crypto/ed25519/ed25519_go113.go +++ b/vendor/golang.org/x/crypto/ed25519/ed25519_go113.go @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build go1.13 // +build go1.13 // Package ed25519 implements the Ed25519 signature algorithm. See diff --git a/vendor/golang.org/x/crypto/scrypt/scrypt.go b/vendor/golang.org/x/crypto/scrypt/scrypt.go index 2f81fe414..bbe4494c6 100644 --- a/vendor/golang.org/x/crypto/scrypt/scrypt.go +++ b/vendor/golang.org/x/crypto/scrypt/scrypt.go @@ -9,6 +9,7 @@ package scrypt // import "golang.org/x/crypto/scrypt" import ( "crypto/sha256" + "encoding/binary" "errors" "math/bits" @@ -143,36 +144,34 @@ func integer(b []uint32, r int) uint64 { func smix(b []byte, r, N int, v, xy []uint32) { var tmp [16]uint32 + R := 32 * r x := xy - y := xy[32*r:] + y := xy[R:] j := 0 - for i := 0; i < 32*r; i++ { - x[i] = uint32(b[j]) | uint32(b[j+1])<<8 | uint32(b[j+2])<<16 | uint32(b[j+3])<<24 + for i := 0; i < R; i++ { + x[i] = binary.LittleEndian.Uint32(b[j:]) j += 4 } for i := 0; i < N; i += 2 { - blockCopy(v[i*(32*r):], x, 32*r) + blockCopy(v[i*R:], x, R) blockMix(&tmp, x, y, r) - blockCopy(v[(i+1)*(32*r):], y, 32*r) + blockCopy(v[(i+1)*R:], y, R) blockMix(&tmp, y, x, r) } for i := 0; i < N; i += 2 { j := int(integer(x, r) & uint64(N-1)) - blockXOR(x, v[j*(32*r):], 32*r) + blockXOR(x, v[j*R:], R) blockMix(&tmp, x, y, r) j = int(integer(y, r) & uint64(N-1)) - blockXOR(y, v[j*(32*r):], 32*r) + blockXOR(y, v[j*R:], R) blockMix(&tmp, y, x, r) } j = 0 - for _, v := range x[:32*r] { - b[j+0] = byte(v >> 0) - b[j+1] = byte(v >> 8) - b[j+2] = byte(v >> 16) - b[j+3] = byte(v >> 24) + for _, v := range x[:R] { + binary.LittleEndian.PutUint32(b[j:], v) j += 4 } } diff --git a/vendor/golang.org/x/net/http2/README b/vendor/golang.org/x/net/http2/README deleted file mode 100644 index 360d5aa37..000000000 --- a/vendor/golang.org/x/net/http2/README +++ /dev/null @@ -1,20 +0,0 @@ -This is a work-in-progress HTTP/2 implementation for Go. - -It will eventually live in the Go standard library and won't require -any changes to your code to use. It will just be automatic. - -Status: - -* The server support is pretty good. A few things are missing - but are being worked on. -* The client work has just started but shares a lot of code - is coming along much quicker. - -Docs are at https://godoc.org/golang.org/x/net/http2 - -Demo test server at https://http2.golang.org/ - -Help & bug reports welcome! - -Contributing: https://golang.org/doc/contribute.html -Bugs: https://golang.org/issue/new?title=x/net/http2:+ diff --git a/vendor/golang.org/x/net/http2/client_conn_pool.go b/vendor/golang.org/x/net/http2/client_conn_pool.go index 652bc11a0..c936843ea 100644 --- a/vendor/golang.org/x/net/http2/client_conn_pool.go +++ b/vendor/golang.org/x/net/http2/client_conn_pool.go @@ -16,6 +16,12 @@ import ( // ClientConnPool manages a pool of HTTP/2 client connections. type ClientConnPool interface { + // GetClientConn returns a specific HTTP/2 connection (usually + // a TLS-TCP connection) to an HTTP/2 server. On success, the + // returned ClientConn accounts for the upcoming RoundTrip + // call, so the caller should not omit it. If the caller needs + // to, ClientConn.RoundTrip can be called with a bogus + // new(http.Request) to release the stream reservation. GetClientConn(req *http.Request, addr string) (*ClientConn, error) MarkDead(*ClientConn) } @@ -42,7 +48,7 @@ type clientConnPool struct { conns map[string][]*ClientConn // key is host:port dialing map[string]*dialCall // currently in-flight dials keys map[*ClientConn][]string - addConnCalls map[string]*addConnCall // in-flight addConnIfNeede calls + addConnCalls map[string]*addConnCall // in-flight addConnIfNeeded calls } func (p *clientConnPool) GetClientConn(req *http.Request, addr string) (*ClientConn, error) { @@ -54,28 +60,8 @@ const ( noDialOnMiss = false ) -// shouldTraceGetConn reports whether getClientConn should call any -// ClientTrace.GetConn hook associated with the http.Request. -// -// This complexity is needed to avoid double calls of the GetConn hook -// during the back-and-forth between net/http and x/net/http2 (when the -// net/http.Transport is upgraded to also speak http2), as well as support -// the case where x/net/http2 is being used directly. -func (p *clientConnPool) shouldTraceGetConn(st clientConnIdleState) bool { - // If our Transport wasn't made via ConfigureTransport, always - // trace the GetConn hook if provided, because that means the - // http2 package is being used directly and it's the one - // dialing, as opposed to net/http. - if _, ok := p.t.ConnPool.(noDialClientConnPool); !ok { - return true - } - // Otherwise, only use the GetConn hook if this connection has - // been used previously for other requests. For fresh - // connections, the net/http package does the dialing. - return !st.freshConn -} - func (p *clientConnPool) getClientConn(req *http.Request, addr string, dialOnMiss bool) (*ClientConn, error) { + // TODO(dneil): Dial a new connection when t.DisableKeepAlives is set? if isConnectionCloseRequest(req) && dialOnMiss { // It gets its own connection. traceGetConn(req, addr) @@ -89,10 +75,14 @@ func (p *clientConnPool) getClientConn(req *http.Request, addr string, dialOnMis for { p.mu.Lock() for _, cc := range p.conns[addr] { - if st := cc.idleState(); st.canTakeNewRequest { - if p.shouldTraceGetConn(st) { + if cc.ReserveNewRequest() { + // When a connection is presented to us by the net/http package, + // the GetConn hook has already been called. + // Don't call it a second time here. + if !cc.getConnCalled { traceGetConn(req, addr) } + cc.getConnCalled = false p.mu.Unlock() return cc, nil } @@ -108,7 +98,13 @@ func (p *clientConnPool) getClientConn(req *http.Request, addr string, dialOnMis if shouldRetryDial(call, req) { continue } - return call.res, call.err + cc, err := call.res, call.err + if err != nil { + return nil, err + } + if cc.ReserveNewRequest() { + return cc, nil + } } } @@ -205,6 +201,7 @@ func (c *addConnCall) run(t *Transport, key string, tc *tls.Conn) { if err != nil { c.err = err } else { + cc.getConnCalled = true // already called by the net/http package p.addConnLocked(key, cc) } delete(p.addConnCalls, key) diff --git a/vendor/golang.org/x/net/http2/errors.go b/vendor/golang.org/x/net/http2/errors.go index 71f2c4631..2663e5d28 100644 --- a/vendor/golang.org/x/net/http2/errors.go +++ b/vendor/golang.org/x/net/http2/errors.go @@ -53,6 +53,13 @@ func (e ErrCode) String() string { return fmt.Sprintf("unknown error code 0x%x", uint32(e)) } +func (e ErrCode) stringToken() string { + if s, ok := errCodeName[e]; ok { + return s + } + return fmt.Sprintf("ERR_UNKNOWN_%d", uint32(e)) +} + // ConnectionError is an error that results in the termination of the // entire connection. type ConnectionError ErrCode @@ -67,6 +74,11 @@ type StreamError struct { Cause error // optional additional detail } +// errFromPeer is a sentinel error value for StreamError.Cause to +// indicate that the StreamError was sent from the peer over the wire +// and wasn't locally generated in the Transport. +var errFromPeer = errors.New("received from peer") + func streamError(id uint32, code ErrCode) StreamError { return StreamError{StreamID: id, Code: code} } diff --git a/vendor/golang.org/x/net/http2/frame.go b/vendor/golang.org/x/net/http2/frame.go index 514c126c5..96a747905 100644 --- a/vendor/golang.org/x/net/http2/frame.go +++ b/vendor/golang.org/x/net/http2/frame.go @@ -122,7 +122,7 @@ var flagName = map[FrameType]map[Flags]string{ // a frameParser parses a frame given its FrameHeader and payload // bytes. The length of payload will always equal fh.Length (which // might be 0). -type frameParser func(fc *frameCache, fh FrameHeader, payload []byte) (Frame, error) +type frameParser func(fc *frameCache, fh FrameHeader, countError func(string), payload []byte) (Frame, error) var frameParsers = map[FrameType]frameParser{ FrameData: parseDataFrame, @@ -267,6 +267,11 @@ type Framer struct { lastFrame Frame errDetail error + // countError is a non-nil func that's called on a frame parse + // error with some unique error path token. It's initialized + // from Transport.CountError or Server.CountError. + countError func(errToken string) + // lastHeaderStream is non-zero if the last frame was an // unfinished HEADERS/CONTINUATION. lastHeaderStream uint32 @@ -426,6 +431,7 @@ func NewFramer(w io.Writer, r io.Reader) *Framer { fr := &Framer{ w: w, r: r, + countError: func(string) {}, logReads: logFrameReads, logWrites: logFrameWrites, debugReadLoggerf: log.Printf, @@ -500,7 +506,7 @@ func (fr *Framer) ReadFrame() (Frame, error) { if _, err := io.ReadFull(fr.r, payload); err != nil { return nil, err } - f, err := typeFrameParser(fh.Type)(fr.frameCache, fh, payload) + f, err := typeFrameParser(fh.Type)(fr.frameCache, fh, fr.countError, payload) if err != nil { if ce, ok := err.(connError); ok { return nil, fr.connError(ce.Code, ce.Reason) @@ -588,13 +594,14 @@ func (f *DataFrame) Data() []byte { return f.data } -func parseDataFrame(fc *frameCache, fh FrameHeader, payload []byte) (Frame, error) { +func parseDataFrame(fc *frameCache, fh FrameHeader, countError func(string), payload []byte) (Frame, error) { if fh.StreamID == 0 { // DATA frames MUST be associated with a stream. If a // DATA frame is received whose stream identifier // field is 0x0, the recipient MUST respond with a // connection error (Section 5.4.1) of type // PROTOCOL_ERROR. + countError("frame_data_stream_0") return nil, connError{ErrCodeProtocol, "DATA frame with stream ID 0"} } f := fc.getDataFrame() @@ -605,6 +612,7 @@ func parseDataFrame(fc *frameCache, fh FrameHeader, payload []byte) (Frame, erro var err error payload, padSize, err = readByte(payload) if err != nil { + countError("frame_data_pad_byte_short") return nil, err } } @@ -613,6 +621,7 @@ func parseDataFrame(fc *frameCache, fh FrameHeader, payload []byte) (Frame, erro // length of the frame payload, the recipient MUST // treat this as a connection error. // Filed: https://github.com/http2/http2-spec/issues/610 + countError("frame_data_pad_too_big") return nil, connError{ErrCodeProtocol, "pad size larger than data payload"} } f.data = payload[:len(payload)-int(padSize)] @@ -695,7 +704,7 @@ type SettingsFrame struct { p []byte } -func parseSettingsFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { +func parseSettingsFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { if fh.Flags.Has(FlagSettingsAck) && fh.Length > 0 { // When this (ACK 0x1) bit is set, the payload of the // SETTINGS frame MUST be empty. Receipt of a @@ -703,6 +712,7 @@ func parseSettingsFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) // field value other than 0 MUST be treated as a // connection error (Section 5.4.1) of type // FRAME_SIZE_ERROR. + countError("frame_settings_ack_with_length") return nil, ConnectionError(ErrCodeFrameSize) } if fh.StreamID != 0 { @@ -713,14 +723,17 @@ func parseSettingsFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) // field is anything other than 0x0, the endpoint MUST // respond with a connection error (Section 5.4.1) of // type PROTOCOL_ERROR. + countError("frame_settings_has_stream") return nil, ConnectionError(ErrCodeProtocol) } if len(p)%6 != 0 { + countError("frame_settings_mod_6") // Expecting even number of 6 byte settings. return nil, ConnectionError(ErrCodeFrameSize) } f := &SettingsFrame{FrameHeader: fh, p: p} if v, ok := f.Value(SettingInitialWindowSize); ok && v > (1<<31)-1 { + countError("frame_settings_window_size_too_big") // Values above the maximum flow control window size of 2^31 - 1 MUST // be treated as a connection error (Section 5.4.1) of type // FLOW_CONTROL_ERROR. @@ -832,11 +845,13 @@ type PingFrame struct { func (f *PingFrame) IsAck() bool { return f.Flags.Has(FlagPingAck) } -func parsePingFrame(_ *frameCache, fh FrameHeader, payload []byte) (Frame, error) { +func parsePingFrame(_ *frameCache, fh FrameHeader, countError func(string), payload []byte) (Frame, error) { if len(payload) != 8 { + countError("frame_ping_length") return nil, ConnectionError(ErrCodeFrameSize) } if fh.StreamID != 0 { + countError("frame_ping_has_stream") return nil, ConnectionError(ErrCodeProtocol) } f := &PingFrame{FrameHeader: fh} @@ -872,11 +887,13 @@ func (f *GoAwayFrame) DebugData() []byte { return f.debugData } -func parseGoAwayFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { +func parseGoAwayFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { if fh.StreamID != 0 { + countError("frame_goaway_has_stream") return nil, ConnectionError(ErrCodeProtocol) } if len(p) < 8 { + countError("frame_goaway_short") return nil, ConnectionError(ErrCodeFrameSize) } return &GoAwayFrame{ @@ -912,7 +929,7 @@ func (f *UnknownFrame) Payload() []byte { return f.p } -func parseUnknownFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { +func parseUnknownFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { return &UnknownFrame{fh, p}, nil } @@ -923,8 +940,9 @@ type WindowUpdateFrame struct { Increment uint32 // never read with high bit set } -func parseWindowUpdateFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { +func parseWindowUpdateFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { if len(p) != 4 { + countError("frame_windowupdate_bad_len") return nil, ConnectionError(ErrCodeFrameSize) } inc := binary.BigEndian.Uint32(p[:4]) & 0x7fffffff // mask off high reserved bit @@ -936,8 +954,10 @@ func parseWindowUpdateFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, err // control window MUST be treated as a connection // error (Section 5.4.1). if fh.StreamID == 0 { + countError("frame_windowupdate_zero_inc_conn") return nil, ConnectionError(ErrCodeProtocol) } + countError("frame_windowupdate_zero_inc_stream") return nil, streamError(fh.StreamID, ErrCodeProtocol) } return &WindowUpdateFrame{ @@ -988,7 +1008,7 @@ func (f *HeadersFrame) HasPriority() bool { return f.FrameHeader.Flags.Has(FlagHeadersPriority) } -func parseHeadersFrame(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err error) { +func parseHeadersFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (_ Frame, err error) { hf := &HeadersFrame{ FrameHeader: fh, } @@ -997,11 +1017,13 @@ func parseHeadersFrame(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err er // is received whose stream identifier field is 0x0, the recipient MUST // respond with a connection error (Section 5.4.1) of type // PROTOCOL_ERROR. + countError("frame_headers_zero_stream") return nil, connError{ErrCodeProtocol, "HEADERS frame with stream ID 0"} } var padLength uint8 if fh.Flags.Has(FlagHeadersPadded) { if p, padLength, err = readByte(p); err != nil { + countError("frame_headers_pad_short") return } } @@ -1009,16 +1031,19 @@ func parseHeadersFrame(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err er var v uint32 p, v, err = readUint32(p) if err != nil { + countError("frame_headers_prio_short") return nil, err } hf.Priority.StreamDep = v & 0x7fffffff hf.Priority.Exclusive = (v != hf.Priority.StreamDep) // high bit was set p, hf.Priority.Weight, err = readByte(p) if err != nil { + countError("frame_headers_prio_weight_short") return nil, err } } - if len(p)-int(padLength) <= 0 { + if len(p)-int(padLength) < 0 { + countError("frame_headers_pad_too_big") return nil, streamError(fh.StreamID, ErrCodeProtocol) } hf.headerFragBuf = p[:len(p)-int(padLength)] @@ -1125,11 +1150,13 @@ func (p PriorityParam) IsZero() bool { return p == PriorityParam{} } -func parsePriorityFrame(_ *frameCache, fh FrameHeader, payload []byte) (Frame, error) { +func parsePriorityFrame(_ *frameCache, fh FrameHeader, countError func(string), payload []byte) (Frame, error) { if fh.StreamID == 0 { + countError("frame_priority_zero_stream") return nil, connError{ErrCodeProtocol, "PRIORITY frame with stream ID 0"} } if len(payload) != 5 { + countError("frame_priority_bad_length") return nil, connError{ErrCodeFrameSize, fmt.Sprintf("PRIORITY frame payload size was %d; want 5", len(payload))} } v := binary.BigEndian.Uint32(payload[:4]) @@ -1172,11 +1199,13 @@ type RSTStreamFrame struct { ErrCode ErrCode } -func parseRSTStreamFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { +func parseRSTStreamFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { if len(p) != 4 { + countError("frame_rststream_bad_len") return nil, ConnectionError(ErrCodeFrameSize) } if fh.StreamID == 0 { + countError("frame_rststream_zero_stream") return nil, ConnectionError(ErrCodeProtocol) } return &RSTStreamFrame{fh, ErrCode(binary.BigEndian.Uint32(p[:4]))}, nil @@ -1202,8 +1231,9 @@ type ContinuationFrame struct { headerFragBuf []byte } -func parseContinuationFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { +func parseContinuationFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { if fh.StreamID == 0 { + countError("frame_continuation_zero_stream") return nil, connError{ErrCodeProtocol, "CONTINUATION frame with stream ID 0"} } return &ContinuationFrame{fh, p}, nil @@ -1252,7 +1282,7 @@ func (f *PushPromiseFrame) HeadersEnded() bool { return f.FrameHeader.Flags.Has(FlagPushPromiseEndHeaders) } -func parsePushPromise(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err error) { +func parsePushPromise(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (_ Frame, err error) { pp := &PushPromiseFrame{ FrameHeader: fh, } @@ -1263,6 +1293,7 @@ func parsePushPromise(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err err // with. If the stream identifier field specifies the value // 0x0, a recipient MUST respond with a connection error // (Section 5.4.1) of type PROTOCOL_ERROR. + countError("frame_pushpromise_zero_stream") return nil, ConnectionError(ErrCodeProtocol) } // The PUSH_PROMISE frame includes optional padding. @@ -1270,18 +1301,21 @@ func parsePushPromise(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err err var padLength uint8 if fh.Flags.Has(FlagPushPromisePadded) { if p, padLength, err = readByte(p); err != nil { + countError("frame_pushpromise_pad_short") return } } p, pp.PromiseID, err = readUint32(p) if err != nil { + countError("frame_pushpromise_promiseid_short") return } pp.PromiseID = pp.PromiseID & (1<<31 - 1) if int(padLength) > len(p) { // like the DATA frame, error out if padding is longer than the body. + countError("frame_pushpromise_pad_too_big") return nil, ConnectionError(ErrCodeProtocol) } pp.headerFragBuf = p[:len(p)-int(padLength)] diff --git a/vendor/golang.org/x/net/http2/hpack/huffman.go b/vendor/golang.org/x/net/http2/hpack/huffman.go index a1ab2f056..fe0b84ccd 100644 --- a/vendor/golang.org/x/net/http2/hpack/huffman.go +++ b/vendor/golang.org/x/net/http2/hpack/huffman.go @@ -140,25 +140,29 @@ func buildRootHuffmanNode() { panic("unexpected size") } lazyRootHuffmanNode = newInternalNode() - for i, code := range huffmanCodes { - addDecoderNode(byte(i), code, huffmanCodeLen[i]) - } -} + // allocate a leaf node for each of the 256 symbols + leaves := new([256]node) -func addDecoderNode(sym byte, code uint32, codeLen uint8) { - cur := lazyRootHuffmanNode - for codeLen > 8 { - codeLen -= 8 - i := uint8(code >> codeLen) - if cur.children[i] == nil { - cur.children[i] = newInternalNode() + for sym, code := range huffmanCodes { + codeLen := huffmanCodeLen[sym] + + cur := lazyRootHuffmanNode + for codeLen > 8 { + codeLen -= 8 + i := uint8(code >> codeLen) + if cur.children[i] == nil { + cur.children[i] = newInternalNode() + } + cur = cur.children[i] + } + shift := 8 - codeLen + start, end := int(uint8(code< 0 { sc.sendWindowUpdate(nil, int(diff)) @@ -856,6 +865,15 @@ func (sc *serverConn) serve() { case res := <-sc.wroteFrameCh: sc.wroteFrame(res) case res := <-sc.readFrameCh: + // Process any written frames before reading new frames from the client since a + // written frame could have triggered a new stream to be started. + if sc.writingFrameAsync { + select { + case wroteRes := <-sc.wroteFrameCh: + sc.wroteFrame(wroteRes) + default: + } + } if !sc.processFrameFromReader(res) { return } @@ -1390,7 +1408,7 @@ func (sc *serverConn) processFrame(f Frame) error { // First frame received must be SETTINGS. if !sc.sawFirstSettings { if _, ok := f.(*SettingsFrame); !ok { - return ConnectionError(ErrCodeProtocol) + return sc.countError("first_settings", ConnectionError(ErrCodeProtocol)) } sc.sawFirstSettings = true } @@ -1415,7 +1433,7 @@ func (sc *serverConn) processFrame(f Frame) error { case *PushPromiseFrame: // A client cannot push. Thus, servers MUST treat the receipt of a PUSH_PROMISE // frame as a connection error (Section 5.4.1) of type PROTOCOL_ERROR. - return ConnectionError(ErrCodeProtocol) + return sc.countError("push_promise", ConnectionError(ErrCodeProtocol)) default: sc.vlogf("http2: server ignoring frame: %v", f.Header()) return nil @@ -1435,7 +1453,7 @@ func (sc *serverConn) processPing(f *PingFrame) error { // identifier field value other than 0x0, the recipient MUST // respond with a connection error (Section 5.4.1) of type // PROTOCOL_ERROR." - return ConnectionError(ErrCodeProtocol) + return sc.countError("ping_on_stream", ConnectionError(ErrCodeProtocol)) } if sc.inGoAway && sc.goAwayCode != ErrCodeNo { return nil @@ -1454,7 +1472,7 @@ func (sc *serverConn) processWindowUpdate(f *WindowUpdateFrame) error { // or PRIORITY on a stream in this state MUST be // treated as a connection error (Section 5.4.1) of // type PROTOCOL_ERROR." - return ConnectionError(ErrCodeProtocol) + return sc.countError("stream_idle", ConnectionError(ErrCodeProtocol)) } if st == nil { // "WINDOW_UPDATE can be sent by a peer that has sent a @@ -1465,7 +1483,7 @@ func (sc *serverConn) processWindowUpdate(f *WindowUpdateFrame) error { return nil } if !st.flow.add(int32(f.Increment)) { - return streamError(f.StreamID, ErrCodeFlowControl) + return sc.countError("bad_flow", streamError(f.StreamID, ErrCodeFlowControl)) } default: // connection-level flow control if !sc.flow.add(int32(f.Increment)) { @@ -1486,7 +1504,7 @@ func (sc *serverConn) processResetStream(f *RSTStreamFrame) error { // identifying an idle stream is received, the // recipient MUST treat this as a connection error // (Section 5.4.1) of type PROTOCOL_ERROR. - return ConnectionError(ErrCodeProtocol) + return sc.countError("reset_idle_stream", ConnectionError(ErrCodeProtocol)) } if st != nil { st.cancelCtx() @@ -1538,7 +1556,7 @@ func (sc *serverConn) processSettings(f *SettingsFrame) error { // Why is the peer ACKing settings we never sent? // The spec doesn't mention this case, but // hang up on them anyway. - return ConnectionError(ErrCodeProtocol) + return sc.countError("ack_mystery", ConnectionError(ErrCodeProtocol)) } return nil } @@ -1546,7 +1564,7 @@ func (sc *serverConn) processSettings(f *SettingsFrame) error { // This isn't actually in the spec, but hang up on // suspiciously large settings frames or those with // duplicate entries. - return ConnectionError(ErrCodeProtocol) + return sc.countError("settings_big_or_dups", ConnectionError(ErrCodeProtocol)) } if err := f.ForeachSetting(sc.processSetting); err != nil { return err @@ -1613,7 +1631,7 @@ func (sc *serverConn) processSettingInitialWindowSize(val uint32) error { // control window to exceed the maximum size as a // connection error (Section 5.4.1) of type // FLOW_CONTROL_ERROR." - return ConnectionError(ErrCodeFlowControl) + return sc.countError("setting_win_size", ConnectionError(ErrCodeFlowControl)) } } return nil @@ -1646,7 +1664,7 @@ func (sc *serverConn) processData(f *DataFrame) error { // or PRIORITY on a stream in this state MUST be // treated as a connection error (Section 5.4.1) of // type PROTOCOL_ERROR." - return ConnectionError(ErrCodeProtocol) + return sc.countError("data_on_idle", ConnectionError(ErrCodeProtocol)) } // "If a DATA frame is received whose stream is not in "open" @@ -1663,7 +1681,7 @@ func (sc *serverConn) processData(f *DataFrame) error { // and return any flow control bytes since we're not going // to consume them. if sc.inflow.available() < int32(f.Length) { - return streamError(id, ErrCodeFlowControl) + return sc.countError("data_flow", streamError(id, ErrCodeFlowControl)) } // Deduct the flow control from inflow, since we're // going to immediately add it back in @@ -1676,7 +1694,7 @@ func (sc *serverConn) processData(f *DataFrame) error { // Already have a stream error in flight. Don't send another. return nil } - return streamError(id, ErrCodeStreamClosed) + return sc.countError("closed", streamError(id, ErrCodeStreamClosed)) } if st.body == nil { panic("internal error: should have a body in this state") @@ -1688,12 +1706,12 @@ func (sc *serverConn) processData(f *DataFrame) error { // RFC 7540, sec 8.1.2.6: A request or response is also malformed if the // value of a content-length header field does not equal the sum of the // DATA frame payload lengths that form the body. - return streamError(id, ErrCodeProtocol) + return sc.countError("send_too_much", streamError(id, ErrCodeProtocol)) } if f.Length > 0 { // Check whether the client has flow control quota. if st.inflow.available() < int32(f.Length) { - return streamError(id, ErrCodeFlowControl) + return sc.countError("flow_on_data_length", streamError(id, ErrCodeFlowControl)) } st.inflow.take(int32(f.Length)) @@ -1701,7 +1719,7 @@ func (sc *serverConn) processData(f *DataFrame) error { wrote, err := st.body.Write(data) if err != nil { sc.sendWindowUpdate(nil, int(f.Length)-wrote) - return streamError(id, ErrCodeStreamClosed) + return sc.countError("body_write_err", streamError(id, ErrCodeStreamClosed)) } if wrote != len(data) { panic("internal error: bad Writer") @@ -1787,7 +1805,7 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { // stream identifier MUST respond with a connection error // (Section 5.4.1) of type PROTOCOL_ERROR. if id%2 != 1 { - return ConnectionError(ErrCodeProtocol) + return sc.countError("headers_even", ConnectionError(ErrCodeProtocol)) } // A HEADERS frame can be used to create a new stream or // send a trailer for an open one. If we already have a stream @@ -1804,7 +1822,7 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { // this state, it MUST respond with a stream error (Section 5.4.2) of // type STREAM_CLOSED. if st.state == stateHalfClosedRemote { - return streamError(id, ErrCodeStreamClosed) + return sc.countError("headers_half_closed", streamError(id, ErrCodeStreamClosed)) } return st.processTrailerHeaders(f) } @@ -1815,7 +1833,7 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { // receives an unexpected stream identifier MUST respond with // a connection error (Section 5.4.1) of type PROTOCOL_ERROR. if id <= sc.maxClientStreamID { - return ConnectionError(ErrCodeProtocol) + return sc.countError("stream_went_down", ConnectionError(ErrCodeProtocol)) } sc.maxClientStreamID = id @@ -1832,14 +1850,14 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { if sc.curClientStreams+1 > sc.advMaxStreams { if sc.unackedSettings == 0 { // They should know better. - return streamError(id, ErrCodeProtocol) + return sc.countError("over_max_streams", streamError(id, ErrCodeProtocol)) } // Assume it's a network race, where they just haven't // received our last SETTINGS update. But actually // this can't happen yet, because we don't yet provide // a way for users to adjust server parameters at // runtime. - return streamError(id, ErrCodeRefusedStream) + return sc.countError("over_max_streams_race", streamError(id, ErrCodeRefusedStream)) } initialState := stateOpen @@ -1849,7 +1867,7 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { st := sc.newStream(id, 0, initialState) if f.HasPriority() { - if err := checkPriority(f.StreamID, f.Priority); err != nil { + if err := sc.checkPriority(f.StreamID, f.Priority); err != nil { return err } sc.writeSched.AdjustStream(st.id, f.Priority) @@ -1893,15 +1911,15 @@ func (st *stream) processTrailerHeaders(f *MetaHeadersFrame) error { sc := st.sc sc.serveG.check() if st.gotTrailerHeader { - return ConnectionError(ErrCodeProtocol) + return sc.countError("dup_trailers", ConnectionError(ErrCodeProtocol)) } st.gotTrailerHeader = true if !f.StreamEnded() { - return streamError(st.id, ErrCodeProtocol) + return sc.countError("trailers_not_ended", streamError(st.id, ErrCodeProtocol)) } if len(f.PseudoFields()) > 0 { - return streamError(st.id, ErrCodeProtocol) + return sc.countError("trailers_pseudo", streamError(st.id, ErrCodeProtocol)) } if st.trailer != nil { for _, hf := range f.RegularFields() { @@ -1910,7 +1928,7 @@ func (st *stream) processTrailerHeaders(f *MetaHeadersFrame) error { // TODO: send more details to the peer somehow. But http2 has // no way to send debug data at a stream level. Discuss with // HTTP folk. - return streamError(st.id, ErrCodeProtocol) + return sc.countError("trailers_bogus", streamError(st.id, ErrCodeProtocol)) } st.trailer[key] = append(st.trailer[key], hf.Value) } @@ -1919,13 +1937,13 @@ func (st *stream) processTrailerHeaders(f *MetaHeadersFrame) error { return nil } -func checkPriority(streamID uint32, p PriorityParam) error { +func (sc *serverConn) checkPriority(streamID uint32, p PriorityParam) error { if streamID == p.StreamDep { // Section 5.3.1: "A stream cannot depend on itself. An endpoint MUST treat // this as a stream error (Section 5.4.2) of type PROTOCOL_ERROR." // Section 5.3.3 says that a stream can depend on one of its dependencies, // so it's only self-dependencies that are forbidden. - return streamError(streamID, ErrCodeProtocol) + return sc.countError("priority", streamError(streamID, ErrCodeProtocol)) } return nil } @@ -1934,7 +1952,7 @@ func (sc *serverConn) processPriority(f *PriorityFrame) error { if sc.inGoAway { return nil } - if err := checkPriority(f.StreamID, f.PriorityParam); err != nil { + if err := sc.checkPriority(f.StreamID, f.PriorityParam); err != nil { return err } sc.writeSched.AdjustStream(f.StreamID, f.PriorityParam) @@ -1991,7 +2009,7 @@ func (sc *serverConn) newWriterAndRequest(st *stream, f *MetaHeadersFrame) (*res isConnect := rp.method == "CONNECT" if isConnect { if rp.path != "" || rp.scheme != "" || rp.authority == "" { - return nil, nil, streamError(f.StreamID, ErrCodeProtocol) + return nil, nil, sc.countError("bad_connect", streamError(f.StreamID, ErrCodeProtocol)) } } else if rp.method == "" || rp.path == "" || (rp.scheme != "https" && rp.scheme != "http") { // See 8.1.2.6 Malformed Requests and Responses: @@ -2004,13 +2022,13 @@ func (sc *serverConn) newWriterAndRequest(st *stream, f *MetaHeadersFrame) (*res // "All HTTP/2 requests MUST include exactly one valid // value for the :method, :scheme, and :path // pseudo-header fields" - return nil, nil, streamError(f.StreamID, ErrCodeProtocol) + return nil, nil, sc.countError("bad_path_method", streamError(f.StreamID, ErrCodeProtocol)) } bodyOpen := !f.StreamEnded() if rp.method == "HEAD" && bodyOpen { // HEAD requests can't have bodies - return nil, nil, streamError(f.StreamID, ErrCodeProtocol) + return nil, nil, sc.countError("head_body", streamError(f.StreamID, ErrCodeProtocol)) } rp.header = make(http.Header) @@ -2093,7 +2111,7 @@ func (sc *serverConn) newWriterAndRequestNoBody(st *stream, rp requestParam) (*r var err error url_, err = url.ParseRequestURI(rp.path) if err != nil { - return nil, nil, streamError(st.id, ErrCodeProtocol) + return nil, nil, sc.countError("bad_path", streamError(st.id, ErrCodeProtocol)) } requestURI = rp.path } @@ -2976,3 +2994,31 @@ func h1ServerKeepAlivesDisabled(hs *http.Server) bool { } return false } + +func (sc *serverConn) countError(name string, err error) error { + if sc == nil || sc.srv == nil { + return err + } + f := sc.srv.CountError + if f == nil { + return err + } + var typ string + var code ErrCode + switch e := err.(type) { + case ConnectionError: + typ = "conn" + code = ErrCode(e) + case StreamError: + typ = "stream" + code = ErrCode(e.Code) + default: + return err + } + codeStr := errCodeName[code] + if codeStr == "" { + codeStr = strconv.Itoa(int(code)) + } + f(fmt.Sprintf("%s_%s_%s", typ, codeStr, name)) + return err +} diff --git a/vendor/golang.org/x/net/http2/transport.go b/vendor/golang.org/x/net/http2/transport.go index b97adff7d..b5e2ac64d 100644 --- a/vendor/golang.org/x/net/http2/transport.go +++ b/vendor/golang.org/x/net/http2/transport.go @@ -24,6 +24,7 @@ import ( "net/http" "net/http/httptrace" "net/textproto" + "os" "sort" "strconv" "strings" @@ -51,6 +52,15 @@ const ( transportDefaultStreamMinRefresh = 4 << 10 defaultUserAgent = "Go-http-client/2.0" + + // initialMaxConcurrentStreams is a connections maxConcurrentStreams until + // it's received servers initial SETTINGS frame, which corresponds with the + // spec's minimum recommended value. + initialMaxConcurrentStreams = 100 + + // defaultMaxConcurrentStreams is a connections default maxConcurrentStreams + // if the server doesn't include one in its initial SETTINGS frame. + defaultMaxConcurrentStreams = 1000 ) // Transport is an HTTP/2 Transport. @@ -121,6 +131,17 @@ type Transport struct { // Defaults to 15s. PingTimeout time.Duration + // WriteByteTimeout is the timeout after which the connection will be + // closed no data can be written to it. The timeout begins when data is + // available to write, and is extended whenever any bytes are written. + WriteByteTimeout time.Duration + + // CountError, if non-nil, is called on HTTP/2 transport errors. + // It's intended to increment a metric for monitoring, such + // as an expvar or Prometheus metric. + // The errType consists of only ASCII word characters. + CountError func(errType string) + // t1, if non-nil, is the standard library Transport using // this transport. Its settings are used (but not its // RoundTrip method, etc). @@ -227,11 +248,12 @@ func (t *Transport) initConnPool() { // ClientConn is the state of a single HTTP/2 client connection to an // HTTP/2 server. type ClientConn struct { - t *Transport - tconn net.Conn // usually *tls.Conn, except specialized impls - tlsState *tls.ConnectionState // nil only for specialized impls - reused uint32 // whether conn is being reused; atomic - singleUse bool // whether being used for a single http.Request + t *Transport + tconn net.Conn // usually *tls.Conn, except specialized impls + tlsState *tls.ConnectionState // nil only for specialized impls + reused uint32 // whether conn is being reused; atomic + singleUse bool // whether being used for a single http.Request + getConnCalled bool // used by clientConnPool // readLoop goroutine fields: readerDone chan struct{} // closed on error @@ -244,86 +266,94 @@ type ClientConn struct { cond *sync.Cond // hold mu; broadcast on flow/closed changes flow flow // our conn-level flow control quota (cs.flow is per stream) inflow flow // peer's conn-level flow control + doNotReuse bool // whether conn is marked to not be reused for any future requests closing bool closed bool + seenSettings bool // true if we've seen a settings frame, false otherwise wantSettingsAck bool // we sent a SETTINGS frame and haven't heard back goAway *GoAwayFrame // if non-nil, the GoAwayFrame we received goAwayDebug string // goAway frame's debug data, retained as a string streams map[uint32]*clientStream // client-initiated + streamsReserved int // incr by ReserveNewRequest; decr on RoundTrip nextStreamID uint32 pendingRequests int // requests blocked and waiting to be sent because len(streams) == maxConcurrentStreams pings map[[8]byte]chan struct{} // in flight ping data to notification channel - bw *bufio.Writer br *bufio.Reader - fr *Framer lastActive time.Time lastIdle time.Time // time last idle - // Settings from peer: (also guarded by mu) + // Settings from peer: (also guarded by wmu) maxFrameSize uint32 maxConcurrentStreams uint32 peerMaxHeaderListSize uint64 initialWindowSize uint32 + // reqHeaderMu is a 1-element semaphore channel controlling access to sending new requests. + // Write to reqHeaderMu to lock it, read from it to unlock. + // Lock reqmu BEFORE mu or wmu. + reqHeaderMu chan struct{} + + // wmu is held while writing. + // Acquire BEFORE mu when holding both, to avoid blocking mu on network writes. + // Only acquire both at the same time when changing peer settings. + wmu sync.Mutex + bw *bufio.Writer + fr *Framer + werr error // first write error that has occurred hbuf bytes.Buffer // HPACK encoder writes into this henc *hpack.Encoder - - wmu sync.Mutex // held while writing; acquire AFTER mu if holding both - werr error // first write error that has occurred } // clientStream is the state for a single HTTP/2 stream. One of these // is created for each Transport.RoundTrip call. type clientStream struct { - cc *ClientConn - req *http.Request + cc *ClientConn + + // Fields of Request that we may access even after the response body is closed. + ctx context.Context + reqCancel <-chan struct{} + trace *httptrace.ClientTrace // or nil ID uint32 - resc chan resAndError bufPipe pipe // buffered pipe with the flow-controlled response payload - startedWrite bool // started request body write; guarded by cc.mu requestedGzip bool - on100 func() // optional code to run if get a 100 continue response + isHead bool + + abortOnce sync.Once + abort chan struct{} // closed to signal stream should end immediately + abortErr error // set if abort is closed + + peerClosed chan struct{} // closed when the peer sends an END_STREAM flag + donec chan struct{} // closed after the stream is in the closed state + on100 chan struct{} // buffered; written to if a 100 is received + + respHeaderRecv chan struct{} // closed when headers are received + res *http.Response // set if respHeaderRecv is closed flow flow // guarded by cc.mu inflow flow // guarded by cc.mu bytesRemain int64 // -1 means unknown; owned by transportResponseBody.Read readErr error // sticky read error; owned by transportResponseBody.Read - stopReqBody error // if non-nil, stop writing req body; guarded by cc.mu - didReset bool // whether we sent a RST_STREAM to the server; guarded by cc.mu - peerReset chan struct{} // closed on peer reset - resetErr error // populated before peerReset is closed + reqBody io.ReadCloser + reqBodyContentLength int64 // -1 means unknown + reqBodyClosed bool // body has been closed; guarded by cc.mu - done chan struct{} // closed when stream remove from cc.streams map; close calls guarded by cc.mu + // owned by writeRequest: + sentEndStream bool // sent an END_STREAM flag to the peer + sentHeaders bool // owned by clientConnReadLoop: firstByte bool // got the first response byte pastHeaders bool // got first MetaHeadersFrame (actual headers) pastTrailers bool // got optional second MetaHeadersFrame (trailers) num1xx uint8 // number of 1xx responses seen + readClosed bool // peer sent an END_STREAM flag + readAborted bool // read loop reset the stream trailer http.Header // accumulated trailers resTrailer *http.Header // client's Response.Trailer } -// awaitRequestCancel waits for the user to cancel a request or for the done -// channel to be signaled. A non-nil error is returned only if the request was -// canceled. -func awaitRequestCancel(req *http.Request, done <-chan struct{}) error { - ctx := req.Context() - if req.Cancel == nil && ctx.Done() == nil { - return nil - } - select { - case <-req.Cancel: - return errRequestCanceled - case <-ctx.Done(): - return ctx.Err() - case <-done: - return nil - } -} - var got1xxFuncForTests func(int, textproto.MIMEHeader) error // get1xxTraceFunc returns the value of request's httptrace.ClientTrace.Got1xxResponse func, @@ -335,73 +365,65 @@ func (cs *clientStream) get1xxTraceFunc() func(int, textproto.MIMEHeader) error return traceGot1xxResponseFunc(cs.trace) } -// awaitRequestCancel waits for the user to cancel a request, its context to -// expire, or for the request to be done (any way it might be removed from the -// cc.streams map: peer reset, successful completion, TCP connection breakage, -// etc). If the request is canceled, then cs will be canceled and closed. -func (cs *clientStream) awaitRequestCancel(req *http.Request) { - if err := awaitRequestCancel(req, cs.done); err != nil { - cs.cancelStream() - cs.bufPipe.CloseWithError(err) +func (cs *clientStream) abortStream(err error) { + cs.cc.mu.Lock() + defer cs.cc.mu.Unlock() + cs.abortStreamLocked(err) +} + +func (cs *clientStream) abortStreamLocked(err error) { + cs.abortOnce.Do(func() { + cs.abortErr = err + close(cs.abort) + }) + if cs.reqBody != nil && !cs.reqBodyClosed { + cs.reqBody.Close() + cs.reqBodyClosed = true + } + // TODO(dneil): Clean up tests where cs.cc.cond is nil. + if cs.cc.cond != nil { + // Wake up writeRequestBody if it is waiting on flow control. + cs.cc.cond.Broadcast() } } -func (cs *clientStream) cancelStream() { - cc := cs.cc - cc.mu.Lock() - didReset := cs.didReset - cs.didReset = true - cc.mu.Unlock() - - if !didReset { - cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) - cc.forgetStreamID(cs.ID) - } -} - -// checkResetOrDone reports any error sent in a RST_STREAM frame by the -// server, or errStreamClosed if the stream is complete. -func (cs *clientStream) checkResetOrDone() error { - select { - case <-cs.peerReset: - return cs.resetErr - case <-cs.done: - return errStreamClosed - default: - return nil - } -} - -func (cs *clientStream) getStartedWrite() bool { +func (cs *clientStream) abortRequestBodyWrite() { cc := cs.cc cc.mu.Lock() defer cc.mu.Unlock() - return cs.startedWrite -} - -func (cs *clientStream) abortRequestBodyWrite(err error) { - if err == nil { - panic("nil error") + if cs.reqBody != nil && !cs.reqBodyClosed { + cs.reqBody.Close() + cs.reqBodyClosed = true + cc.cond.Broadcast() } - cc := cs.cc - cc.mu.Lock() - cs.stopReqBody = err - cc.cond.Broadcast() - cc.mu.Unlock() } type stickyErrWriter struct { - w io.Writer - err *error + conn net.Conn + timeout time.Duration + err *error } func (sew stickyErrWriter) Write(p []byte) (n int, err error) { if *sew.err != nil { return 0, *sew.err } - n, err = sew.w.Write(p) - *sew.err = err - return + for { + if sew.timeout != 0 { + sew.conn.SetWriteDeadline(time.Now().Add(sew.timeout)) + } + nn, err := sew.conn.Write(p[n:]) + n += nn + if n < len(p) && nn > 0 && errors.Is(err, os.ErrDeadlineExceeded) { + // Keep extending the deadline so long as we're making progress. + continue + } + if sew.timeout != 0 { + sew.conn.SetWriteDeadline(time.Time{}) + } + *sew.err = err + return n, err + } } // noCachedConnError is the concrete type of ErrNoCachedConn, which @@ -474,9 +496,9 @@ func (t *Transport) RoundTripOpt(req *http.Request, opt RoundTripOpt) (*http.Res } reused := !atomic.CompareAndSwapUint32(&cc.reused, 0, 1) traceGotConn(req, cc, reused) - res, gotErrAfterReqBodyWrite, err := cc.roundTrip(req) + res, err := cc.RoundTrip(req) if err != nil && retry <= 6 { - if req, err = shouldRetryRequest(req, err, gotErrAfterReqBodyWrite); err == nil { + if req, err = shouldRetryRequest(req, err); err == nil { // After the first retry, do exponential backoff with 10% jitter. if retry == 0 { continue @@ -487,7 +509,7 @@ func (t *Transport) RoundTripOpt(req *http.Request, opt RoundTripOpt) (*http.Res case <-time.After(time.Second * time.Duration(backoff)): continue case <-req.Context().Done(): - return nil, req.Context().Err() + err = req.Context().Err() } } } @@ -518,7 +540,7 @@ var ( // response headers. It is always called with a non-nil error. // It returns either a request to retry (either the same request, or a // modified clone), or an error if the request can't be replayed. -func shouldRetryRequest(req *http.Request, err error, afterBodyWrite bool) (*http.Request, error) { +func shouldRetryRequest(req *http.Request, err error) (*http.Request, error) { if !canRetryError(err) { return nil, err } @@ -531,7 +553,6 @@ func shouldRetryRequest(req *http.Request, err error, afterBodyWrite bool) (*htt // If the request body can be reset back to its original // state via the optional req.GetBody, do that. if req.GetBody != nil { - // TODO: consider a req.Body.Close here? or audit that all caller paths do? body, err := req.GetBody() if err != nil { return nil, err @@ -543,10 +564,8 @@ func shouldRetryRequest(req *http.Request, err error, afterBodyWrite bool) (*htt // The Request.Body can't reset back to the beginning, but we // don't seem to have started to read from it yet, so reuse - // the request directly. The "afterBodyWrite" means the - // bodyWrite process has started, which becomes true before - // the first Read. - if !afterBodyWrite { + // the request directly. + if err == errClientConnUnusable { return req, nil } @@ -558,6 +577,10 @@ func canRetryError(err error) bool { return true } if se, ok := err.(StreamError); ok { + if se.Code == ErrCodeProtocol && se.Cause == errFromPeer { + // See golang/go#47635, golang/go#42777 + return true + } return se.Code == ErrCodeRefusedStream } return false @@ -632,14 +655,15 @@ func (t *Transport) newClientConn(c net.Conn, singleUse bool) (*ClientConn, erro tconn: c, readerDone: make(chan struct{}), nextStreamID: 1, - maxFrameSize: 16 << 10, // spec default - initialWindowSize: 65535, // spec default - maxConcurrentStreams: 1000, // "infinite", per spec. 1000 seems good enough. - peerMaxHeaderListSize: 0xffffffffffffffff, // "infinite", per spec. Use 2^64-1 instead. + maxFrameSize: 16 << 10, // spec default + initialWindowSize: 65535, // spec default + maxConcurrentStreams: initialMaxConcurrentStreams, // "infinite", per spec. Use a smaller value until we have received server settings. + peerMaxHeaderListSize: 0xffffffffffffffff, // "infinite", per spec. Use 2^64-1 instead. streams: make(map[uint32]*clientStream), singleUse: singleUse, wantSettingsAck: true, pings: make(map[[8]byte]chan struct{}), + reqHeaderMu: make(chan struct{}, 1), } if d := t.idleConnTimeout(); d != 0 { cc.idleTimeout = d @@ -654,9 +678,16 @@ func (t *Transport) newClientConn(c net.Conn, singleUse bool) (*ClientConn, erro // TODO: adjust this writer size to account for frame size + // MTU + crypto/tls record padding. - cc.bw = bufio.NewWriter(stickyErrWriter{c, &cc.werr}) + cc.bw = bufio.NewWriter(stickyErrWriter{ + conn: c, + timeout: t.WriteByteTimeout, + err: &cc.werr, + }) cc.br = bufio.NewReader(c) cc.fr = NewFramer(cc.bw, cc.br) + if t.CountError != nil { + cc.fr.countError = t.CountError + } cc.fr.ReadMetaHeaders = hpack.NewDecoder(initialHeaderTableSize, nil) cc.fr.MaxHeaderListSize = t.maxHeaderListSize() @@ -709,6 +740,13 @@ func (cc *ClientConn) healthCheck() { } } +// SetDoNotReuse marks cc as not reusable for future HTTP requests. +func (cc *ClientConn) SetDoNotReuse() { + cc.mu.Lock() + defer cc.mu.Unlock() + cc.doNotReuse = true +} + func (cc *ClientConn) setGoAway(f *GoAwayFrame) { cc.mu.Lock() defer cc.mu.Unlock() @@ -726,27 +764,94 @@ func (cc *ClientConn) setGoAway(f *GoAwayFrame) { last := f.LastStreamID for streamID, cs := range cc.streams { if streamID > last { - select { - case cs.resc <- resAndError{err: errClientConnGotGoAway}: - default: - } + cs.abortStreamLocked(errClientConnGotGoAway) } } } // CanTakeNewRequest reports whether the connection can take a new request, // meaning it has not been closed or received or sent a GOAWAY. +// +// If the caller is going to immediately make a new request on this +// connection, use ReserveNewRequest instead. func (cc *ClientConn) CanTakeNewRequest() bool { cc.mu.Lock() defer cc.mu.Unlock() return cc.canTakeNewRequestLocked() } +// ReserveNewRequest is like CanTakeNewRequest but also reserves a +// concurrent stream in cc. The reservation is decremented on the +// next call to RoundTrip. +func (cc *ClientConn) ReserveNewRequest() bool { + cc.mu.Lock() + defer cc.mu.Unlock() + if st := cc.idleStateLocked(); !st.canTakeNewRequest { + return false + } + cc.streamsReserved++ + return true +} + +// ClientConnState describes the state of a ClientConn. +type ClientConnState struct { + // Closed is whether the connection is closed. + Closed bool + + // Closing is whether the connection is in the process of + // closing. It may be closing due to shutdown, being a + // single-use connection, being marked as DoNotReuse, or + // having received a GOAWAY frame. + Closing bool + + // StreamsActive is how many streams are active. + StreamsActive int + + // StreamsReserved is how many streams have been reserved via + // ClientConn.ReserveNewRequest. + StreamsReserved int + + // StreamsPending is how many requests have been sent in excess + // of the peer's advertised MaxConcurrentStreams setting and + // are waiting for other streams to complete. + StreamsPending int + + // MaxConcurrentStreams is how many concurrent streams the + // peer advertised as acceptable. Zero means no SETTINGS + // frame has been received yet. + MaxConcurrentStreams uint32 + + // LastIdle, if non-zero, is when the connection last + // transitioned to idle state. + LastIdle time.Time +} + +// State returns a snapshot of cc's state. +func (cc *ClientConn) State() ClientConnState { + cc.wmu.Lock() + maxConcurrent := cc.maxConcurrentStreams + if !cc.seenSettings { + maxConcurrent = 0 + } + cc.wmu.Unlock() + + cc.mu.Lock() + defer cc.mu.Unlock() + return ClientConnState{ + Closed: cc.closed, + Closing: cc.closing || cc.singleUse || cc.doNotReuse || cc.goAway != nil, + StreamsActive: len(cc.streams), + StreamsReserved: cc.streamsReserved, + StreamsPending: cc.pendingRequests, + LastIdle: cc.lastIdle, + MaxConcurrentStreams: maxConcurrent, + } +} + // clientConnIdleState describes the suitability of a client // connection to initiate a new RoundTrip request. type clientConnIdleState struct { canTakeNewRequest bool - freshConn bool // whether it's unused by any previous request } func (cc *ClientConn) idleState() clientConnIdleState { @@ -767,13 +872,13 @@ func (cc *ClientConn) idleStateLocked() (st clientConnIdleState) { // writing it. maxConcurrentOkay = true } else { - maxConcurrentOkay = int64(len(cc.streams)+1) < int64(cc.maxConcurrentStreams) + maxConcurrentOkay = int64(len(cc.streams)+cc.streamsReserved+1) <= int64(cc.maxConcurrentStreams) } st.canTakeNewRequest = cc.goAway == nil && !cc.closed && !cc.closing && maxConcurrentOkay && + !cc.doNotReuse && int64(cc.nextStreamID)+2*int64(cc.pendingRequests) < math.MaxInt32 && !cc.tooIdleLocked() - st.freshConn = cc.nextStreamID == 1 && st.canTakeNewRequest return } @@ -804,7 +909,7 @@ func (cc *ClientConn) onIdleTimeout() { func (cc *ClientConn) closeIfIdle() { cc.mu.Lock() - if len(cc.streams) > 0 { + if len(cc.streams) > 0 || cc.streamsReserved > 0 { cc.mu.Unlock() return } @@ -819,9 +924,15 @@ func (cc *ClientConn) closeIfIdle() { cc.tconn.Close() } +func (cc *ClientConn) isDoNotReuseAndIdle() bool { + cc.mu.Lock() + defer cc.mu.Unlock() + return cc.doNotReuse && len(cc.streams) == 0 +} + var shutdownEnterWaitStateHook = func() {} -// Shutdown gracefully close the client connection, waiting for running streams to complete. +// Shutdown gracefully closes the client connection, waiting for running streams to complete. func (cc *ClientConn) Shutdown(ctx context.Context) error { if err := cc.sendGoAway(); err != nil { return err @@ -860,15 +971,18 @@ func (cc *ClientConn) Shutdown(ctx context.Context) error { func (cc *ClientConn) sendGoAway() error { cc.mu.Lock() - defer cc.mu.Unlock() - cc.wmu.Lock() - defer cc.wmu.Unlock() - if cc.closing { + closing := cc.closing + cc.closing = true + maxStreamID := cc.nextStreamID + cc.mu.Unlock() + if closing { // GOAWAY sent already return nil } + + cc.wmu.Lock() + defer cc.wmu.Unlock() // Send a graceful shutdown frame to server - maxStreamID := cc.nextStreamID if err := cc.fr.WriteGoAway(maxStreamID, ErrCodeNo, nil); err != nil { return err } @@ -876,7 +990,6 @@ func (cc *ClientConn) sendGoAway() error { return err } // Prevent new requests - cc.closing = true return nil } @@ -884,17 +997,12 @@ func (cc *ClientConn) sendGoAway() error { // err is sent to streams. func (cc *ClientConn) closeForError(err error) error { cc.mu.Lock() + cc.closed = true + for _, cs := range cc.streams { + cs.abortStreamLocked(err) + } defer cc.cond.Broadcast() defer cc.mu.Unlock() - for id, cs := range cc.streams { - select { - case cs.resc <- resAndError{err: err}: - default: - } - cs.bufPipe.CloseWithError(err) - delete(cc.streams, id) - } - cc.closed = true return cc.tconn.Close() } @@ -909,6 +1017,9 @@ func (cc *ClientConn) Close() error { // closes the client connection immediately. In-flight requests are interrupted. func (cc *ClientConn) closeForLostPing() error { err := errors.New("http2: client connection lost") + if f := cc.t.CountError; f != nil { + f("conn_close_lost_ping") + } return cc.closeForError(err) } @@ -973,41 +1084,145 @@ func actualContentLength(req *http.Request) int64 { return -1 } -func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) { - resp, _, err := cc.roundTrip(req) - return resp, err +func (cc *ClientConn) decrStreamReservations() { + cc.mu.Lock() + defer cc.mu.Unlock() + cc.decrStreamReservationsLocked() } -func (cc *ClientConn) roundTrip(req *http.Request) (res *http.Response, gotErrAfterReqBodyWrite bool, err error) { - if err := checkConnHeaders(req); err != nil { - return nil, false, err +func (cc *ClientConn) decrStreamReservationsLocked() { + if cc.streamsReserved > 0 { + cc.streamsReserved-- } +} + +func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) { + ctx := req.Context() + cs := &clientStream{ + cc: cc, + ctx: ctx, + reqCancel: req.Cancel, + isHead: req.Method == "HEAD", + reqBody: req.Body, + reqBodyContentLength: actualContentLength(req), + trace: httptrace.ContextClientTrace(ctx), + peerClosed: make(chan struct{}), + abort: make(chan struct{}), + respHeaderRecv: make(chan struct{}), + donec: make(chan struct{}), + } + go cs.doRequest(req) + + waitDone := func() error { + select { + case <-cs.donec: + return nil + case <-ctx.Done(): + return ctx.Err() + case <-cs.reqCancel: + return errRequestCanceled + } + } + + for { + select { + case <-cs.respHeaderRecv: + res := cs.res + if res.StatusCode > 299 { + // On error or status code 3xx, 4xx, 5xx, etc abort any + // ongoing write, assuming that the server doesn't care + // about our request body. If the server replied with 1xx or + // 2xx, however, then assume the server DOES potentially + // want our body (e.g. full-duplex streaming: + // golang.org/issue/13444). If it turns out the server + // doesn't, they'll RST_STREAM us soon enough. This is a + // heuristic to avoid adding knobs to Transport. Hopefully + // we can keep it. + cs.abortRequestBodyWrite() + } + res.Request = req + res.TLS = cc.tlsState + if res.Body == noBody && actualContentLength(req) == 0 { + // If there isn't a request or response body still being + // written, then wait for the stream to be closed before + // RoundTrip returns. + if err := waitDone(); err != nil { + return nil, err + } + } + return res, nil + case <-cs.abort: + waitDone() + return nil, cs.abortErr + case <-ctx.Done(): + err := ctx.Err() + cs.abortStream(err) + return nil, err + case <-cs.reqCancel: + cs.abortStream(errRequestCanceled) + return nil, errRequestCanceled + } + } +} + +// doRequest runs for the duration of the request lifetime. +// +// It sends the request and performs post-request cleanup (closing Request.Body, etc.). +func (cs *clientStream) doRequest(req *http.Request) { + err := cs.writeRequest(req) + cs.cleanupWriteRequest(err) +} + +// writeRequest sends a request. +// +// It returns nil after the request is written, the response read, +// and the request stream is half-closed by the peer. +// +// It returns non-nil if the request ends otherwise. +// If the returned error is StreamError, the error Code may be used in resetting the stream. +func (cs *clientStream) writeRequest(req *http.Request) (err error) { + cc := cs.cc + ctx := cs.ctx + + if err := checkConnHeaders(req); err != nil { + return err + } + + // Acquire the new-request lock by writing to reqHeaderMu. + // This lock guards the critical section covering allocating a new stream ID + // (requires mu) and creating the stream (requires wmu). + if cc.reqHeaderMu == nil { + panic("RoundTrip on uninitialized ClientConn") // for tests + } + select { + case cc.reqHeaderMu <- struct{}{}: + case <-cs.reqCancel: + return errRequestCanceled + case <-ctx.Done(): + return ctx.Err() + } + + cc.mu.Lock() if cc.idleTimer != nil { cc.idleTimer.Stop() } - - trailers, err := commaSeparatedTrailers(req) - if err != nil { - return nil, false, err - } - hasTrailers := trailers != "" - - cc.mu.Lock() - if err := cc.awaitOpenSlotForRequest(req); err != nil { + cc.decrStreamReservationsLocked() + if err := cc.awaitOpenSlotForStreamLocked(cs); err != nil { cc.mu.Unlock() - return nil, false, err + <-cc.reqHeaderMu + return err } - - body := req.Body - contentLen := actualContentLength(req) - hasBody := contentLen != 0 + cc.addStreamLocked(cs) // assigns stream ID + if isConnectionCloseRequest(req) { + cc.doNotReuse = true + } + cc.mu.Unlock() // TODO(bradfitz): this is a copy of the logic in net/http. Unify somewhere? - var requestedGzip bool if !cc.t.disableCompression() && req.Header.Get("Accept-Encoding") == "" && req.Header.Get("Range") == "" && - req.Method != "HEAD" { + !cs.isHead { // Request gzip only, not deflate. Deflate is ambiguous and // not as universally supported anyway. // See: https://zlib.net/zlib_faq.html#faq39 @@ -1020,195 +1235,223 @@ func (cc *ClientConn) roundTrip(req *http.Request) (res *http.Response, gotErrAf // We don't request gzip if the request is for a range, since // auto-decoding a portion of a gzipped document will just fail // anyway. See https://golang.org/issue/8923 - requestedGzip = true + cs.requestedGzip = true } - // we send: HEADERS{1}, CONTINUATION{0,} + DATA{0,} (DATA is - // sent by writeRequestBody below, along with any Trailers, - // again in form HEADERS{1}, CONTINUATION{0,}) - hdrs, err := cc.encodeHeaders(req, requestedGzip, trailers, contentLen) + continueTimeout := cc.t.expectContinueTimeout() + if continueTimeout != 0 && + !httpguts.HeaderValuesContainsToken( + req.Header["Expect"], + "100-continue") { + continueTimeout = 0 + cs.on100 = make(chan struct{}, 1) + } + + // Past this point (where we send request headers), it is possible for + // RoundTrip to return successfully. Since the RoundTrip contract permits + // the caller to "mutate or reuse" the Request after closing the Response's Body, + // we must take care when referencing the Request from here on. + err = cs.encodeAndWriteHeaders(req) + <-cc.reqHeaderMu if err != nil { - cc.mu.Unlock() - return nil, false, err + return err } - cs := cc.newStream() - cs.req = req - cs.trace = httptrace.ContextClientTrace(req.Context()) - cs.requestedGzip = requestedGzip - bodyWriter := cc.t.getBodyWriterState(cs, body) - cs.on100 = bodyWriter.on100 - - defer func() { - cc.wmu.Lock() - werr := cc.werr - cc.wmu.Unlock() - if werr != nil { - cc.Close() + hasBody := cs.reqBodyContentLength != 0 + if !hasBody { + cs.sentEndStream = true + } else { + if continueTimeout != 0 { + traceWait100Continue(cs.trace) + timer := time.NewTimer(continueTimeout) + select { + case <-timer.C: + err = nil + case <-cs.on100: + err = nil + case <-cs.abort: + err = cs.abortErr + case <-ctx.Done(): + err = ctx.Err() + case <-cs.reqCancel: + err = errRequestCanceled + } + timer.Stop() + if err != nil { + traceWroteRequest(cs.trace, err) + return err + } } - }() - cc.wmu.Lock() - endStream := !hasBody && !hasTrailers - werr := cc.writeHeaders(cs.ID, endStream, int(cc.maxFrameSize), hdrs) - cc.wmu.Unlock() - traceWroteHeaders(cs.trace) - cc.mu.Unlock() - - if werr != nil { - if hasBody { - req.Body.Close() // per RoundTripper contract - bodyWriter.cancel() + if err = cs.writeRequestBody(req); err != nil { + if err != errStopReqBodyWrite { + traceWroteRequest(cs.trace, err) + return err + } + } else { + cs.sentEndStream = true } - cc.forgetStreamID(cs.ID) - // Don't bother sending a RST_STREAM (our write already failed; - // no need to keep writing) - traceWroteRequest(cs.trace, werr) - return nil, false, werr } + traceWroteRequest(cs.trace, err) + var respHeaderTimer <-chan time.Time - if hasBody { - bodyWriter.scheduleBodyWrite() - } else { - traceWroteRequest(cs.trace, nil) - if d := cc.responseHeaderTimeout(); d != 0 { - timer := time.NewTimer(d) - defer timer.Stop() - respHeaderTimer = timer.C - } + var respHeaderRecv chan struct{} + if d := cc.responseHeaderTimeout(); d != 0 { + timer := time.NewTimer(d) + defer timer.Stop() + respHeaderTimer = timer.C + respHeaderRecv = cs.respHeaderRecv } - - readLoopResCh := cs.resc - bodyWritten := false - ctx := req.Context() - - handleReadLoopResponse := func(re resAndError) (*http.Response, bool, error) { - res := re.res - if re.err != nil || res.StatusCode > 299 { - // On error or status code 3xx, 4xx, 5xx, etc abort any - // ongoing write, assuming that the server doesn't care - // about our request body. If the server replied with 1xx or - // 2xx, however, then assume the server DOES potentially - // want our body (e.g. full-duplex streaming: - // golang.org/issue/13444). If it turns out the server - // doesn't, they'll RST_STREAM us soon enough. This is a - // heuristic to avoid adding knobs to Transport. Hopefully - // we can keep it. - bodyWriter.cancel() - cs.abortRequestBodyWrite(errStopReqBodyWrite) - if hasBody && !bodyWritten { - <-bodyWriter.resc - } - } - if re.err != nil { - cc.forgetStreamID(cs.ID) - return nil, cs.getStartedWrite(), re.err - } - res.Request = req - res.TLS = cc.tlsState - return res, false, nil - } - + // Wait until the peer half-closes its end of the stream, + // or until the request is aborted (via context, error, or otherwise), + // whichever comes first. for { select { - case re := <-readLoopResCh: - return handleReadLoopResponse(re) + case <-cs.peerClosed: + return nil case <-respHeaderTimer: - if !hasBody || bodyWritten { - cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) - } else { - bodyWriter.cancel() - cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel) - <-bodyWriter.resc - } - cc.forgetStreamID(cs.ID) - return nil, cs.getStartedWrite(), errTimeout + return errTimeout + case <-respHeaderRecv: + respHeaderTimer = nil // keep waiting for END_STREAM + case <-cs.abort: + return cs.abortErr case <-ctx.Done(): - if !hasBody || bodyWritten { - cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) - } else { - bodyWriter.cancel() - cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel) - <-bodyWriter.resc - } - cc.forgetStreamID(cs.ID) - return nil, cs.getStartedWrite(), ctx.Err() - case <-req.Cancel: - if !hasBody || bodyWritten { - cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) - } else { - bodyWriter.cancel() - cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel) - <-bodyWriter.resc - } - cc.forgetStreamID(cs.ID) - return nil, cs.getStartedWrite(), errRequestCanceled - case <-cs.peerReset: - // processResetStream already removed the - // stream from the streams map; no need for - // forgetStreamID. - return nil, cs.getStartedWrite(), cs.resetErr - case err := <-bodyWriter.resc: - bodyWritten = true - // Prefer the read loop's response, if available. Issue 16102. - select { - case re := <-readLoopResCh: - return handleReadLoopResponse(re) - default: - } - if err != nil { - cc.forgetStreamID(cs.ID) - return nil, cs.getStartedWrite(), err - } - if d := cc.responseHeaderTimeout(); d != 0 { - timer := time.NewTimer(d) - defer timer.Stop() - respHeaderTimer = timer.C - } + return ctx.Err() + case <-cs.reqCancel: + return errRequestCanceled } } } -// awaitOpenSlotForRequest waits until len(streams) < maxConcurrentStreams. +func (cs *clientStream) encodeAndWriteHeaders(req *http.Request) error { + cc := cs.cc + ctx := cs.ctx + + cc.wmu.Lock() + defer cc.wmu.Unlock() + + // If the request was canceled while waiting for cc.mu, just quit. + select { + case <-cs.abort: + return cs.abortErr + case <-ctx.Done(): + return ctx.Err() + case <-cs.reqCancel: + return errRequestCanceled + default: + } + + // Encode headers. + // + // we send: HEADERS{1}, CONTINUATION{0,} + DATA{0,} (DATA is + // sent by writeRequestBody below, along with any Trailers, + // again in form HEADERS{1}, CONTINUATION{0,}) + trailers, err := commaSeparatedTrailers(req) + if err != nil { + return err + } + hasTrailers := trailers != "" + contentLen := actualContentLength(req) + hasBody := contentLen != 0 + hdrs, err := cc.encodeHeaders(req, cs.requestedGzip, trailers, contentLen) + if err != nil { + return err + } + + // Write the request. + endStream := !hasBody && !hasTrailers + cs.sentHeaders = true + err = cc.writeHeaders(cs.ID, endStream, int(cc.maxFrameSize), hdrs) + traceWroteHeaders(cs.trace) + return err +} + +// cleanupWriteRequest performs post-request tasks. +// +// If err (the result of writeRequest) is non-nil and the stream is not closed, +// cleanupWriteRequest will send a reset to the peer. +func (cs *clientStream) cleanupWriteRequest(err error) { + cc := cs.cc + + if cs.ID == 0 { + // We were canceled before creating the stream, so return our reservation. + cc.decrStreamReservations() + } + + // TODO: write h12Compare test showing whether + // Request.Body is closed by the Transport, + // and in multiple cases: server replies <=299 and >299 + // while still writing request body + cc.mu.Lock() + bodyClosed := cs.reqBodyClosed + cs.reqBodyClosed = true + cc.mu.Unlock() + if !bodyClosed && cs.reqBody != nil { + cs.reqBody.Close() + } + + if err != nil && cs.sentEndStream { + // If the connection is closed immediately after the response is read, + // we may be aborted before finishing up here. If the stream was closed + // cleanly on both sides, there is no error. + select { + case <-cs.peerClosed: + err = nil + default: + } + } + if err != nil { + cs.abortStream(err) // possibly redundant, but harmless + if cs.sentHeaders { + if se, ok := err.(StreamError); ok { + if se.Cause != errFromPeer { + cc.writeStreamReset(cs.ID, se.Code, err) + } + } else { + cc.writeStreamReset(cs.ID, ErrCodeCancel, err) + } + } + cs.bufPipe.CloseWithError(err) // no-op if already closed + } else { + if cs.sentHeaders && !cs.sentEndStream { + cc.writeStreamReset(cs.ID, ErrCodeNo, nil) + } + cs.bufPipe.CloseWithError(errRequestCanceled) + } + if cs.ID != 0 { + cc.forgetStreamID(cs.ID) + } + + cc.wmu.Lock() + werr := cc.werr + cc.wmu.Unlock() + if werr != nil { + cc.Close() + } + + close(cs.donec) +} + +// awaitOpenSlotForStream waits until len(streams) < maxConcurrentStreams. // Must hold cc.mu. -func (cc *ClientConn) awaitOpenSlotForRequest(req *http.Request) error { - var waitingForConn chan struct{} - var waitingForConnErr error // guarded by cc.mu +func (cc *ClientConn) awaitOpenSlotForStreamLocked(cs *clientStream) error { for { cc.lastActive = time.Now() if cc.closed || !cc.canTakeNewRequestLocked() { - if waitingForConn != nil { - close(waitingForConn) - } return errClientConnUnusable } cc.lastIdle = time.Time{} - if int64(len(cc.streams))+1 <= int64(cc.maxConcurrentStreams) { - if waitingForConn != nil { - close(waitingForConn) - } + if int64(len(cc.streams)) < int64(cc.maxConcurrentStreams) { return nil } - // Unfortunately, we cannot wait on a condition variable and channel at - // the same time, so instead, we spin up a goroutine to check if the - // request is canceled while we wait for a slot to open in the connection. - if waitingForConn == nil { - waitingForConn = make(chan struct{}) - go func() { - if err := awaitRequestCancel(req, waitingForConn); err != nil { - cc.mu.Lock() - waitingForConnErr = err - cc.cond.Broadcast() - cc.mu.Unlock() - } - }() - } cc.pendingRequests++ cc.cond.Wait() cc.pendingRequests-- - if waitingForConnErr != nil { - return waitingForConnErr + select { + case <-cs.abort: + return cs.abortErr + default: } } } @@ -1235,10 +1478,6 @@ func (cc *ClientConn) writeHeaders(streamID uint32, endStream bool, maxFrameSize cc.fr.WriteContinuation(streamID, endHeaders, chunk) } } - // TODO(bradfitz): this Flush could potentially block (as - // could the WriteHeaders call(s) above), which means they - // wouldn't respond to Request.Cancel being readable. That's - // rare, but this should probably be in a goroutine. cc.bw.Flush() return cc.werr } @@ -1265,7 +1504,7 @@ func (cs *clientStream) frameScratchBufferLen(maxFrameSize int) int { if n > max { n = max } - if cl := actualContentLength(cs.req); cl != -1 && cl+1 < n { + if cl := cs.reqBodyContentLength; cl != -1 && cl+1 < n { // Add an extra byte past the declared content-length to // give the caller's Request.Body io.Reader a chance to // give us more bytes than they declared, so we can catch it @@ -1280,25 +1519,13 @@ func (cs *clientStream) frameScratchBufferLen(maxFrameSize int) int { var bufPool sync.Pool // of *[]byte -func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) (err error) { +func (cs *clientStream) writeRequestBody(req *http.Request) (err error) { cc := cs.cc + body := cs.reqBody sentEnd := false // whether we sent the final DATA frame w/ END_STREAM - defer func() { - traceWroteRequest(cs.trace, err) - // TODO: write h12Compare test showing whether - // Request.Body is closed by the Transport, - // and in multiple cases: server replies <=299 and >299 - // while still writing request body - cerr := bodyCloser.Close() - if err == nil { - err = cerr - } - }() - - req := cs.req hasTrailers := req.Trailer != nil - remainLen := actualContentLength(req) + remainLen := cs.reqBodyContentLength hasContentLen := remainLen != -1 cc.mu.Lock() @@ -1336,29 +1563,29 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) ( } if remainLen < 0 { err = errReqBodyTooLong - cc.writeStreamReset(cs.ID, ErrCodeCancel, err) return err } } - if err == io.EOF { - sawEOF = true - err = nil - } else if err != nil { - cc.writeStreamReset(cs.ID, ErrCodeCancel, err) - return err + if err != nil { + cc.mu.Lock() + bodyClosed := cs.reqBodyClosed + cc.mu.Unlock() + switch { + case bodyClosed: + return errStopReqBodyWrite + case err == io.EOF: + sawEOF = true + err = nil + default: + return err + } } remain := buf[:n] for len(remain) > 0 && err == nil { var allowed int32 allowed, err = cs.awaitFlowControl(len(remain)) - switch { - case err == errStopReqBodyWrite: - return err - case err == errStopReqBodyWriteAndCancel: - cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) - return err - case err != nil: + if err != nil { return err } cc.wmu.Lock() @@ -1389,20 +1616,26 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) ( return nil } - var trls []byte - if hasTrailers { - cc.mu.Lock() - trls, err = cc.encodeTrailers(req) - cc.mu.Unlock() - if err != nil { - cc.writeStreamReset(cs.ID, ErrCodeInternal, err) - cc.forgetStreamID(cs.ID) - return err - } + // Since the RoundTrip contract permits the caller to "mutate or reuse" + // a request after the Response's Body is closed, verify that this hasn't + // happened before accessing the trailers. + cc.mu.Lock() + trailer := req.Trailer + err = cs.abortErr + cc.mu.Unlock() + if err != nil { + return err } cc.wmu.Lock() defer cc.wmu.Unlock() + var trls []byte + if len(trailer) > 0 { + trls, err = cc.encodeTrailers(trailer) + if err != nil { + return err + } + } // Two ways to send END_STREAM: either with trailers, or // with an empty DATA frame. @@ -1423,17 +1656,24 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) ( // if the stream is dead. func (cs *clientStream) awaitFlowControl(maxBytes int) (taken int32, err error) { cc := cs.cc + ctx := cs.ctx cc.mu.Lock() defer cc.mu.Unlock() for { if cc.closed { return 0, errClientConnClosed } - if cs.stopReqBody != nil { - return 0, cs.stopReqBody + if cs.reqBodyClosed { + return 0, errStopReqBodyWrite } - if err := cs.checkResetOrDone(); err != nil { - return 0, err + select { + case <-cs.abort: + return 0, cs.abortErr + case <-ctx.Done(): + return 0, ctx.Err() + case <-cs.reqCancel: + return 0, errRequestCanceled + default: } if a := cs.flow.available(); a > 0 { take := a @@ -1451,9 +1691,14 @@ func (cs *clientStream) awaitFlowControl(maxBytes int) (taken int32, err error) } } -// requires cc.mu be held. +var errNilRequestURL = errors.New("http2: Request.URI is nil") + +// requires cc.wmu be held. func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trailers string, contentLength int64) ([]byte, error) { cc.hbuf.Reset() + if req.URL == nil { + return nil, errNilRequestURL + } host := req.Host if host == "" { @@ -1639,12 +1884,12 @@ func shouldSendReqContentLength(method string, contentLength int64) bool { } } -// requires cc.mu be held. -func (cc *ClientConn) encodeTrailers(req *http.Request) ([]byte, error) { +// requires cc.wmu be held. +func (cc *ClientConn) encodeTrailers(trailer http.Header) ([]byte, error) { cc.hbuf.Reset() hlSize := uint64(0) - for k, vv := range req.Trailer { + for k, vv := range trailer { for _, v := range vv { hf := hpack.HeaderField{Name: k, Value: v} hlSize += uint64(hf.Size()) @@ -1654,7 +1899,7 @@ func (cc *ClientConn) encodeTrailers(req *http.Request) ([]byte, error) { return nil, errRequestHeaderListSize } - for k, vv := range req.Trailer { + for k, vv := range trailer { lowKey, ascii := asciiToLower(k) if !ascii { // Skip writing invalid headers. Per RFC 7540, Section 8.1.2, header @@ -1684,51 +1929,51 @@ type resAndError struct { } // requires cc.mu be held. -func (cc *ClientConn) newStream() *clientStream { - cs := &clientStream{ - cc: cc, - ID: cc.nextStreamID, - resc: make(chan resAndError, 1), - peerReset: make(chan struct{}), - done: make(chan struct{}), - } +func (cc *ClientConn) addStreamLocked(cs *clientStream) { cs.flow.add(int32(cc.initialWindowSize)) cs.flow.setConnFlow(&cc.flow) cs.inflow.add(transportDefaultStreamFlow) cs.inflow.setConnFlow(&cc.inflow) + cs.ID = cc.nextStreamID cc.nextStreamID += 2 cc.streams[cs.ID] = cs - return cs + if cs.ID == 0 { + panic("assigned stream ID 0") + } } func (cc *ClientConn) forgetStreamID(id uint32) { - cc.streamByID(id, true) -} - -func (cc *ClientConn) streamByID(id uint32, andRemove bool) *clientStream { cc.mu.Lock() - defer cc.mu.Unlock() - cs := cc.streams[id] - if andRemove && cs != nil && !cc.closed { - cc.lastActive = time.Now() - delete(cc.streams, id) - if len(cc.streams) == 0 && cc.idleTimer != nil { - cc.idleTimer.Reset(cc.idleTimeout) - cc.lastIdle = time.Now() - } - close(cs.done) - // Wake up checkResetOrDone via clientStream.awaitFlowControl and - // wake up RoundTrip if there is a pending request. - cc.cond.Broadcast() + slen := len(cc.streams) + delete(cc.streams, id) + if len(cc.streams) != slen-1 { + panic("forgetting unknown stream id") } - return cs + cc.lastActive = time.Now() + if len(cc.streams) == 0 && cc.idleTimer != nil { + cc.idleTimer.Reset(cc.idleTimeout) + cc.lastIdle = time.Now() + } + // Wake up writeRequestBody via clientStream.awaitFlowControl and + // wake up RoundTrip if there is a pending request. + cc.cond.Broadcast() + + closeOnIdle := cc.singleUse || cc.doNotReuse || cc.t.disableKeepAlives() + if closeOnIdle && cc.streamsReserved == 0 && len(cc.streams) == 0 { + if VerboseLogs { + cc.vlogf("http2: Transport closing idle conn %p (forSingleUse=%v, maxStream=%v)", cc, cc.singleUse, cc.nextStreamID-2) + } + cc.closed = true + defer cc.tconn.Close() + } + + cc.mu.Unlock() } // clientConnReadLoop is the state owned by the clientConn's frame-reading readLoop. type clientConnReadLoop struct { - _ incomparable - cc *ClientConn - closeWhenIdle bool + _ incomparable + cc *ClientConn } // readLoop runs in its own goroutine and reads and dispatches frames. @@ -1788,23 +2033,49 @@ func (rl *clientConnReadLoop) cleanup() { } else if err == io.EOF { err = io.ErrUnexpectedEOF } - for _, cs := range cc.streams { - cs.bufPipe.CloseWithError(err) // no-op if already closed - select { - case cs.resc <- resAndError{err: err}: - default: - } - close(cs.done) - } cc.closed = true + for _, cs := range cc.streams { + select { + case <-cs.peerClosed: + // The server closed the stream before closing the conn, + // so no need to interrupt it. + default: + cs.abortStreamLocked(err) + } + } cc.cond.Broadcast() cc.mu.Unlock() } +// countReadFrameError calls Transport.CountError with a string +// representing err. +func (cc *ClientConn) countReadFrameError(err error) { + f := cc.t.CountError + if f == nil || err == nil { + return + } + if ce, ok := err.(ConnectionError); ok { + errCode := ErrCode(ce) + f(fmt.Sprintf("read_frame_conn_error_%s", errCode.stringToken())) + return + } + if errors.Is(err, io.EOF) { + f("read_frame_eof") + return + } + if errors.Is(err, io.ErrUnexpectedEOF) { + f("read_frame_unexpected_eof") + return + } + if errors.Is(err, ErrFrameTooLarge) { + f("read_frame_too_large") + return + } + f("read_frame_other") +} + func (rl *clientConnReadLoop) run() error { cc := rl.cc - rl.closeWhenIdle = cc.t.disableKeepAlives() || cc.singleUse - gotReply := false // ever saw a HEADERS reply gotSettings := false readIdleTimeout := cc.t.ReadIdleTimeout var t *time.Timer @@ -1821,9 +2092,7 @@ func (rl *clientConnReadLoop) run() error { cc.vlogf("http2: Transport readFrame error on conn %p: (%T) %v", cc, err, err) } if se, ok := err.(StreamError); ok { - if cs := cc.streamByID(se.StreamID, false); cs != nil { - cs.cc.writeStreamReset(cs.ID, se.Code, err) - cs.cc.forgetStreamID(cs.ID) + if cs := rl.streamByID(se.StreamID); cs != nil { if se.Cause == nil { se.Cause = cc.fr.errDetail } @@ -1831,6 +2100,7 @@ func (rl *clientConnReadLoop) run() error { } continue } else if err != nil { + cc.countReadFrameError(err) return err } if VerboseLogs { @@ -1843,22 +2113,16 @@ func (rl *clientConnReadLoop) run() error { } gotSettings = true } - maybeIdle := false // whether frame might transition us to idle switch f := f.(type) { case *MetaHeadersFrame: err = rl.processHeaders(f) - maybeIdle = true - gotReply = true case *DataFrame: err = rl.processData(f) - maybeIdle = true case *GoAwayFrame: err = rl.processGoAway(f) - maybeIdle = true case *RSTStreamFrame: err = rl.processResetStream(f) - maybeIdle = true case *SettingsFrame: err = rl.processSettings(f) case *PushPromiseFrame: @@ -1876,38 +2140,24 @@ func (rl *clientConnReadLoop) run() error { } return err } - if rl.closeWhenIdle && gotReply && maybeIdle { - cc.closeIfIdle() - } } } func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error { - cc := rl.cc - cs := cc.streamByID(f.StreamID, false) + cs := rl.streamByID(f.StreamID) if cs == nil { // We'd get here if we canceled a request while the // server had its response still in flight. So if this // was just something we canceled, ignore it. return nil } - if f.StreamEnded() { - // Issue 20521: If the stream has ended, streamByID() causes - // clientStream.done to be closed, which causes the request's bodyWriter - // to be closed with an errStreamClosed, which may be received by - // clientConn.RoundTrip before the result of processing these headers. - // Deferring stream closure allows the header processing to occur first. - // clientConn.RoundTrip may still receive the bodyWriter error first, but - // the fix for issue 16102 prioritises any response. - // - // Issue 22413: If there is no request body, we should close the - // stream before writing to cs.resc so that the stream is closed - // immediately once RoundTrip returns. - if cs.req.Body != nil { - defer cc.forgetStreamID(f.StreamID) - } else { - cc.forgetStreamID(f.StreamID) - } + if cs.readClosed { + rl.endStreamError(cs, StreamError{ + StreamID: f.StreamID, + Code: ErrCodeProtocol, + Cause: errors.New("protocol error: headers after END_STREAM"), + }) + return nil } if !cs.firstByte { if cs.trace != nil { @@ -1931,9 +2181,11 @@ func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error { return err } // Any other error type is a stream error. - cs.cc.writeStreamReset(f.StreamID, ErrCodeProtocol, err) - cc.forgetStreamID(cs.ID) - cs.resc <- resAndError{err: err} + rl.endStreamError(cs, StreamError{ + StreamID: f.StreamID, + Code: ErrCodeProtocol, + Cause: err, + }) return nil // return nil from process* funcs to keep conn alive } if res == nil { @@ -1941,7 +2193,11 @@ func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error { return nil } cs.resTrailer = &res.Trailer - cs.resc <- resAndError{res: res} + cs.res = res + close(cs.respHeaderRecv) + if f.StreamEnded() { + rl.endStream(cs) + } return nil } @@ -2003,6 +2259,9 @@ func (rl *clientConnReadLoop) handleResponse(cs *clientStream, f *MetaHeadersFra } if statusCode >= 100 && statusCode <= 199 { + if f.StreamEnded() { + return nil, errors.New("1xx informational response with END_STREAM flag") + } cs.num1xx++ const max1xxResponses = 5 // arbitrary bound on number of informational responses, same as net/http if cs.num1xx > max1xxResponses { @@ -2015,42 +2274,49 @@ func (rl *clientConnReadLoop) handleResponse(cs *clientStream, f *MetaHeadersFra } if statusCode == 100 { traceGot100Continue(cs.trace) - if cs.on100 != nil { - cs.on100() // forces any write delay timer to fire + select { + case cs.on100 <- struct{}{}: + default: } } cs.pastHeaders = false // do it all again return nil, nil } - streamEnded := f.StreamEnded() - isHead := cs.req.Method == "HEAD" - if !streamEnded || isHead { - res.ContentLength = -1 - if clens := res.Header["Content-Length"]; len(clens) == 1 { - if cl, err := strconv.ParseUint(clens[0], 10, 63); err == nil { - res.ContentLength = int64(cl) - } else { - // TODO: care? unlike http/1, it won't mess up our framing, so it's - // more safe smuggling-wise to ignore. - } - } else if len(clens) > 1 { + res.ContentLength = -1 + if clens := res.Header["Content-Length"]; len(clens) == 1 { + if cl, err := strconv.ParseUint(clens[0], 10, 63); err == nil { + res.ContentLength = int64(cl) + } else { // TODO: care? unlike http/1, it won't mess up our framing, so it's // more safe smuggling-wise to ignore. } + } else if len(clens) > 1 { + // TODO: care? unlike http/1, it won't mess up our framing, so it's + // more safe smuggling-wise to ignore. + } else if f.StreamEnded() && !cs.isHead { + res.ContentLength = 0 } - if streamEnded || isHead { + if cs.isHead { res.Body = noBody return res, nil } - cs.bufPipe = pipe{b: &dataBuffer{expected: res.ContentLength}} + if f.StreamEnded() { + if res.ContentLength > 0 { + res.Body = missingBody{} + } else { + res.Body = noBody + } + return res, nil + } + + cs.bufPipe.setBuffer(&dataBuffer{expected: res.ContentLength}) cs.bytesRemain = res.ContentLength res.Body = transportResponseBody{cs} - go cs.awaitRequestCancel(cs.req) - if cs.requestedGzip && res.Header.Get("Content-Encoding") == "gzip" { + if cs.requestedGzip && asciiEqualFold(res.Header.Get("Content-Encoding"), "gzip") { res.Header.Del("Content-Encoding") res.Header.Del("Content-Length") res.ContentLength = -1 @@ -2089,8 +2355,7 @@ func (rl *clientConnReadLoop) processTrailers(cs *clientStream, f *MetaHeadersFr } // transportResponseBody is the concrete type of Transport.RoundTrip's -// Response.Body. It is an io.ReadCloser. On Read, it reads from cs.body. -// On Close it sends RST_STREAM if EOF wasn't already seen. +// Response.Body. It is an io.ReadCloser. type transportResponseBody struct { cs *clientStream } @@ -2108,7 +2373,7 @@ func (b transportResponseBody) Read(p []byte) (n int, err error) { n = int(cs.bytesRemain) if err == nil { err = errors.New("net/http: server replied with more than declared Content-Length; truncated") - cc.writeStreamReset(cs.ID, ErrCodeProtocol, err) + cs.abortStream(err) } cs.readErr = err return int(cs.bytesRemain), err @@ -2126,8 +2391,6 @@ func (b transportResponseBody) Read(p []byte) (n int, err error) { } cc.mu.Lock() - defer cc.mu.Unlock() - var connAdd, streamAdd int32 // Check the conn-level first, before the stream-level. if v := cc.inflow.available(); v < transportDefaultConnFlow/2 { @@ -2144,6 +2407,8 @@ func (b transportResponseBody) Read(p []byte) (n int, err error) { cs.inflow.add(streamAdd) } } + cc.mu.Unlock() + if connAdd != 0 || streamAdd != 0 { cc.wmu.Lock() defer cc.wmu.Unlock() @@ -2164,34 +2429,45 @@ func (b transportResponseBody) Close() error { cs := b.cs cc := cs.cc - serverSentStreamEnd := cs.bufPipe.Err() == io.EOF unread := cs.bufPipe.Len() - - if unread > 0 || !serverSentStreamEnd { + if unread > 0 { cc.mu.Lock() - cc.wmu.Lock() - if !serverSentStreamEnd { - cc.fr.WriteRSTStream(cs.ID, ErrCodeCancel) - cs.didReset = true - } // Return connection-level flow control. if unread > 0 { cc.inflow.add(int32(unread)) + } + cc.mu.Unlock() + + // TODO(dneil): Acquiring this mutex can block indefinitely. + // Move flow control return to a goroutine? + cc.wmu.Lock() + // Return connection-level flow control. + if unread > 0 { cc.fr.WriteWindowUpdate(0, uint32(unread)) } cc.bw.Flush() cc.wmu.Unlock() - cc.mu.Unlock() } cs.bufPipe.BreakWithError(errClosedResponseBody) - cc.forgetStreamID(cs.ID) + cs.abortStream(errClosedResponseBody) + + select { + case <-cs.donec: + case <-cs.ctx.Done(): + // See golang/go#49366: The net/http package can cancel the + // request context after the response body is fully read. + // Don't treat this as an error. + return nil + case <-cs.reqCancel: + return errRequestCanceled + } return nil } func (rl *clientConnReadLoop) processData(f *DataFrame) error { cc := rl.cc - cs := cc.streamByID(f.StreamID, f.StreamEnded()) + cs := rl.streamByID(f.StreamID) data := f.Data() if cs == nil { cc.mu.Lock() @@ -2220,6 +2496,14 @@ func (rl *clientConnReadLoop) processData(f *DataFrame) error { } return nil } + if cs.readClosed { + cc.logf("protocol error: received DATA after END_STREAM") + rl.endStreamError(cs, StreamError{ + StreamID: f.StreamID, + Code: ErrCodeProtocol, + }) + return nil + } if !cs.firstByte { cc.logf("protocol error: received DATA before a HEADERS frame") rl.endStreamError(cs, StreamError{ @@ -2229,7 +2513,7 @@ func (rl *clientConnReadLoop) processData(f *DataFrame) error { return nil } if f.Length > 0 { - if cs.req.Method == "HEAD" && len(data) > 0 { + if cs.isHead && len(data) > 0 { cc.logf("protocol error: received DATA on a HEAD request") rl.endStreamError(cs, StreamError{ StreamID: f.StreamID, @@ -2251,30 +2535,39 @@ func (rl *clientConnReadLoop) processData(f *DataFrame) error { if pad := int(f.Length) - len(data); pad > 0 { refund += pad } - // Return len(data) now if the stream is already closed, - // since data will never be read. - didReset := cs.didReset - if didReset { - refund += len(data) + + didReset := false + var err error + if len(data) > 0 { + if _, err = cs.bufPipe.Write(data); err != nil { + // Return len(data) now if the stream is already closed, + // since data will never be read. + didReset = true + refund += len(data) + } } + if refund > 0 { cc.inflow.add(int32(refund)) + if !didReset { + cs.inflow.add(int32(refund)) + } + } + cc.mu.Unlock() + + if refund > 0 { cc.wmu.Lock() cc.fr.WriteWindowUpdate(0, uint32(refund)) if !didReset { - cs.inflow.add(int32(refund)) cc.fr.WriteWindowUpdate(cs.ID, uint32(refund)) } cc.bw.Flush() cc.wmu.Unlock() } - cc.mu.Unlock() - if len(data) > 0 && !didReset { - if _, err := cs.bufPipe.Write(data); err != nil { - rl.endStreamError(cs, err) - return err - } + if err != nil { + rl.endStreamError(cs, err) + return nil } } @@ -2287,24 +2580,32 @@ func (rl *clientConnReadLoop) processData(f *DataFrame) error { func (rl *clientConnReadLoop) endStream(cs *clientStream) { // TODO: check that any declared content-length matches, like // server.go's (*stream).endStream method. - rl.endStreamError(cs, nil) + if !cs.readClosed { + cs.readClosed = true + // Close cs.bufPipe and cs.peerClosed with cc.mu held to avoid a + // race condition: The caller can read io.EOF from Response.Body + // and close the body before we close cs.peerClosed, causing + // cleanupWriteRequest to send a RST_STREAM. + rl.cc.mu.Lock() + defer rl.cc.mu.Unlock() + cs.bufPipe.closeWithErrorAndCode(io.EOF, cs.copyTrailers) + close(cs.peerClosed) + } } func (rl *clientConnReadLoop) endStreamError(cs *clientStream, err error) { - var code func() - if err == nil { - err = io.EOF - code = cs.copyTrailers - } - if isConnectionCloseRequest(cs.req) { - rl.closeWhenIdle = true - } - cs.bufPipe.closeWithErrorAndCode(err, code) + cs.readAborted = true + cs.abortStream(err) +} - select { - case cs.resc <- resAndError{err: err}: - default: +func (rl *clientConnReadLoop) streamByID(id uint32) *clientStream { + rl.cc.mu.Lock() + defer rl.cc.mu.Unlock() + cs := rl.cc.streams[id] + if cs != nil && !cs.readAborted { + return cs } + return nil } func (cs *clientStream) copyTrailers() { @@ -2323,12 +2624,33 @@ func (rl *clientConnReadLoop) processGoAway(f *GoAwayFrame) error { if f.ErrCode != 0 { // TODO: deal with GOAWAY more. particularly the error code cc.vlogf("transport got GOAWAY with error code = %v", f.ErrCode) + if fn := cc.t.CountError; fn != nil { + fn("recv_goaway_" + f.ErrCode.stringToken()) + } + } cc.setGoAway(f) return nil } func (rl *clientConnReadLoop) processSettings(f *SettingsFrame) error { + cc := rl.cc + // Locking both mu and wmu here allows frame encoding to read settings with only wmu held. + // Acquiring wmu when f.IsAck() is unnecessary, but convenient and mostly harmless. + cc.wmu.Lock() + defer cc.wmu.Unlock() + + if err := rl.processSettingsNoWrite(f); err != nil { + return err + } + if !f.IsAck() { + cc.fr.WriteSettingsAck() + cc.bw.Flush() + } + return nil +} + +func (rl *clientConnReadLoop) processSettingsNoWrite(f *SettingsFrame) error { cc := rl.cc cc.mu.Lock() defer cc.mu.Unlock() @@ -2341,12 +2663,14 @@ func (rl *clientConnReadLoop) processSettings(f *SettingsFrame) error { return ConnectionError(ErrCodeProtocol) } + var seenMaxConcurrentStreams bool err := f.ForeachSetting(func(s Setting) error { switch s.ID { case SettingMaxFrameSize: cc.maxFrameSize = s.Val case SettingMaxConcurrentStreams: cc.maxConcurrentStreams = s.Val + seenMaxConcurrentStreams = true case SettingMaxHeaderListSize: cc.peerMaxHeaderListSize = uint64(s.Val) case SettingInitialWindowSize: @@ -2378,17 +2702,23 @@ func (rl *clientConnReadLoop) processSettings(f *SettingsFrame) error { return err } - cc.wmu.Lock() - defer cc.wmu.Unlock() + if !cc.seenSettings { + if !seenMaxConcurrentStreams { + // This was the servers initial SETTINGS frame and it + // didn't contain a MAX_CONCURRENT_STREAMS field so + // increase the number of concurrent streams this + // connection can establish to our default. + cc.maxConcurrentStreams = defaultMaxConcurrentStreams + } + cc.seenSettings = true + } - cc.fr.WriteSettingsAck() - cc.bw.Flush() - return cc.werr + return nil } func (rl *clientConnReadLoop) processWindowUpdate(f *WindowUpdateFrame) error { cc := rl.cc - cs := cc.streamByID(f.StreamID, false) + cs := rl.streamByID(f.StreamID) if f.StreamID != 0 && cs == nil { return nil } @@ -2408,24 +2738,22 @@ func (rl *clientConnReadLoop) processWindowUpdate(f *WindowUpdateFrame) error { } func (rl *clientConnReadLoop) processResetStream(f *RSTStreamFrame) error { - cs := rl.cc.streamByID(f.StreamID, true) + cs := rl.streamByID(f.StreamID) if cs == nil { - // TODO: return error if server tries to RST_STEAM an idle stream + // TODO: return error if server tries to RST_STREAM an idle stream return nil } - select { - case <-cs.peerReset: - // Already reset. - // This is the only goroutine - // which closes this, so there - // isn't a race. - default: - err := streamError(cs.ID, f.ErrCode) - cs.resetErr = err - close(cs.peerReset) - cs.bufPipe.CloseWithError(err) - cs.cc.cond.Broadcast() // wake up checkResetOrDone via clientStream.awaitFlowControl + serr := streamError(cs.ID, f.ErrCode) + serr.Cause = errFromPeer + if f.ErrCode == ErrCodeProtocol { + rl.cc.SetDoNotReuse() } + if fn := cs.cc.t.CountError; fn != nil { + fn("recv_rststream_" + f.ErrCode.stringToken()) + } + cs.abortStream(serr) + + cs.bufPipe.CloseWithError(serr) return nil } @@ -2447,19 +2775,24 @@ func (cc *ClientConn) Ping(ctx context.Context) error { } cc.mu.Unlock() } - cc.wmu.Lock() - if err := cc.fr.WritePing(false, p); err != nil { - cc.wmu.Unlock() - return err - } - if err := cc.bw.Flush(); err != nil { - cc.wmu.Unlock() - return err - } - cc.wmu.Unlock() + errc := make(chan error, 1) + go func() { + cc.wmu.Lock() + defer cc.wmu.Unlock() + if err := cc.fr.WritePing(false, p); err != nil { + errc <- err + return + } + if err := cc.bw.Flush(); err != nil { + errc <- err + return + } + }() select { case <-c: return nil + case err := <-errc: + return err case <-ctx.Done(): return ctx.Err() case <-cc.readerDone: @@ -2536,6 +2869,11 @@ func (t *Transport) logf(format string, args ...interface{}) { var noBody io.ReadCloser = ioutil.NopCloser(bytes.NewReader(nil)) +type missingBody struct{} + +func (missingBody) Close() error { return nil } +func (missingBody) Read([]byte) (int, error) { return 0, io.ErrUnexpectedEOF } + func strSliceContains(ss []string, s string) bool { for _, v := range ss { if v == s { @@ -2581,87 +2919,6 @@ type errorReader struct{ err error } func (r errorReader) Read(p []byte) (int, error) { return 0, r.err } -// bodyWriterState encapsulates various state around the Transport's writing -// of the request body, particularly regarding doing delayed writes of the body -// when the request contains "Expect: 100-continue". -type bodyWriterState struct { - cs *clientStream - timer *time.Timer // if non-nil, we're doing a delayed write - fnonce *sync.Once // to call fn with - fn func() // the code to run in the goroutine, writing the body - resc chan error // result of fn's execution - delay time.Duration // how long we should delay a delayed write for -} - -func (t *Transport) getBodyWriterState(cs *clientStream, body io.Reader) (s bodyWriterState) { - s.cs = cs - if body == nil { - return - } - resc := make(chan error, 1) - s.resc = resc - s.fn = func() { - cs.cc.mu.Lock() - cs.startedWrite = true - cs.cc.mu.Unlock() - resc <- cs.writeRequestBody(body, cs.req.Body) - } - s.delay = t.expectContinueTimeout() - if s.delay == 0 || - !httpguts.HeaderValuesContainsToken( - cs.req.Header["Expect"], - "100-continue") { - return - } - s.fnonce = new(sync.Once) - - // Arm the timer with a very large duration, which we'll - // intentionally lower later. It has to be large now because - // we need a handle to it before writing the headers, but the - // s.delay value is defined to not start until after the - // request headers were written. - const hugeDuration = 365 * 24 * time.Hour - s.timer = time.AfterFunc(hugeDuration, func() { - s.fnonce.Do(s.fn) - }) - return -} - -func (s bodyWriterState) cancel() { - if s.timer != nil { - if s.timer.Stop() { - s.resc <- nil - } - } -} - -func (s bodyWriterState) on100() { - if s.timer == nil { - // If we didn't do a delayed write, ignore the server's - // bogus 100 continue response. - return - } - s.timer.Stop() - go func() { s.fnonce.Do(s.fn) }() -} - -// scheduleBodyWrite starts writing the body, either immediately (in -// the common case) or after the delay timeout. It should not be -// called until after the headers have been written. -func (s bodyWriterState) scheduleBodyWrite() { - if s.timer == nil { - // We're not doing a delayed write (see - // getBodyWriterState), so just start the writing - // goroutine immediately. - go s.fn() - return - } - traceWait100Continue(s.cs.trace) - if s.timer.Stop() { - s.timer.Reset(s.delay) - } -} - // isConnectionCloseRequest reports whether req should use its own // connection for a single request and then close the connection. func isConnectionCloseRequest(req *http.Request) bool { diff --git a/vendor/golang.org/x/net/idna/go118.go b/vendor/golang.org/x/net/idna/go118.go new file mode 100644 index 000000000..c5c4338db --- /dev/null +++ b/vendor/golang.org/x/net/idna/go118.go @@ -0,0 +1,14 @@ +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. + +// Copyright 2021 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +//go:build go1.18 +// +build go1.18 + +package idna + +// Transitional processing is disabled by default in Go 1.18. +// https://golang.org/issue/47510 +const transitionalLookup = false diff --git a/vendor/golang.org/x/net/idna/idna10.0.0.go b/vendor/golang.org/x/net/idna/idna10.0.0.go index 5208ba6cb..64ccf85fe 100644 --- a/vendor/golang.org/x/net/idna/idna10.0.0.go +++ b/vendor/golang.org/x/net/idna/idna10.0.0.go @@ -59,10 +59,10 @@ type Option func(*options) // Transitional sets a Profile to use the Transitional mapping as defined in UTS // #46. This will cause, for example, "ß" to be mapped to "ss". Using the // transitional mapping provides a compromise between IDNA2003 and IDNA2008 -// compatibility. It is used by most browsers when resolving domain names. This +// compatibility. It is used by some browsers when resolving domain names. This // option is only meaningful if combined with MapForLookup. func Transitional(transitional bool) Option { - return func(o *options) { o.transitional = true } + return func(o *options) { o.transitional = transitional } } // VerifyDNSLength sets whether a Profile should fail if any of the IDN parts @@ -284,7 +284,7 @@ var ( punycode = &Profile{} lookup = &Profile{options{ - transitional: true, + transitional: transitionalLookup, useSTD3Rules: true, checkHyphens: true, checkJoiners: true, diff --git a/vendor/golang.org/x/net/idna/idna9.0.0.go b/vendor/golang.org/x/net/idna/idna9.0.0.go index 55f718f12..aae6aac87 100644 --- a/vendor/golang.org/x/net/idna/idna9.0.0.go +++ b/vendor/golang.org/x/net/idna/idna9.0.0.go @@ -58,10 +58,10 @@ type Option func(*options) // Transitional sets a Profile to use the Transitional mapping as defined in UTS // #46. This will cause, for example, "ß" to be mapped to "ss". Using the // transitional mapping provides a compromise between IDNA2003 and IDNA2008 -// compatibility. It is used by most browsers when resolving domain names. This +// compatibility. It is used by some browsers when resolving domain names. This // option is only meaningful if combined with MapForLookup. func Transitional(transitional bool) Option { - return func(o *options) { o.transitional = true } + return func(o *options) { o.transitional = transitional } } // VerifyDNSLength sets whether a Profile should fail if any of the IDN parts diff --git a/vendor/golang.org/x/net/idna/pre_go118.go b/vendor/golang.org/x/net/idna/pre_go118.go new file mode 100644 index 000000000..3aaccab1c --- /dev/null +++ b/vendor/golang.org/x/net/idna/pre_go118.go @@ -0,0 +1,12 @@ +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. + +// Copyright 2021 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +//go:build !go1.18 +// +build !go1.18 + +package idna + +const transitionalLookup = true diff --git a/vendor/golang.org/x/net/idna/punycode.go b/vendor/golang.org/x/net/idna/punycode.go index 02c7d59af..e8e3ac11a 100644 --- a/vendor/golang.org/x/net/idna/punycode.go +++ b/vendor/golang.org/x/net/idna/punycode.go @@ -49,6 +49,7 @@ func decode(encoded string) (string, error) { } } i, n, bias := int32(0), initialN, initialBias + overflow := false for pos < len(encoded) { oldI, w := i, int32(1) for k := base; ; k += base { @@ -60,29 +61,32 @@ func decode(encoded string) (string, error) { return "", punyError(encoded) } pos++ - i += digit * w - if i < 0 { + i, overflow = madd(i, digit, w) + if overflow { return "", punyError(encoded) } t := k - bias - if t < tmin { + if k <= bias { t = tmin - } else if t > tmax { + } else if k >= bias+tmax { t = tmax } if digit < t { break } - w *= base - t - if w >= math.MaxInt32/base { + w, overflow = madd(0, w, base-t) + if overflow { return "", punyError(encoded) } } + if len(output) >= 1024 { + return "", punyError(encoded) + } x := int32(len(output) + 1) bias = adapt(i-oldI, x, oldI == 0) n += i / x i %= x - if n > utf8.MaxRune || len(output) >= 1024 { + if n < 0 || n > utf8.MaxRune { return "", punyError(encoded) } output = append(output, 0) @@ -115,6 +119,7 @@ func encode(prefix, s string) (string, error) { if b > 0 { output = append(output, '-') } + overflow := false for remaining != 0 { m := int32(0x7fffffff) for _, r := range s { @@ -122,8 +127,8 @@ func encode(prefix, s string) (string, error) { m = r } } - delta += (m - n) * (h + 1) - if delta < 0 { + delta, overflow = madd(delta, m-n, h+1) + if overflow { return "", punyError(s) } n = m @@ -141,9 +146,9 @@ func encode(prefix, s string) (string, error) { q := delta for k := base; ; k += base { t := k - bias - if t < tmin { + if k <= bias { t = tmin - } else if t > tmax { + } else if k >= bias+tmax { t = tmax } if q < t { @@ -164,6 +169,15 @@ func encode(prefix, s string) (string, error) { return string(output), nil } +// madd computes a + (b * c), detecting overflow. +func madd(a, b, c int32) (next int32, overflow bool) { + p := int64(b) * int64(c) + if p > math.MaxInt32-int64(a) { + return 0, true + } + return a + int32(p), false +} + func decodeDigit(x byte) (digit int32, ok bool) { switch { case '0' <= x && x <= '9': diff --git a/vendor/golang.org/x/net/publicsuffix/table.go b/vendor/golang.org/x/net/publicsuffix/table.go index c2e368db1..51f40b8eb 100644 --- a/vendor/golang.org/x/net/publicsuffix/table.go +++ b/vendor/golang.org/x/net/publicsuffix/table.go @@ -2,7 +2,7 @@ package publicsuffix -const version = "publicsuffix.org's public_suffix_list.dat, git revision 1e2388af5cee935fdec6dc557db41559111e3fb9 (2021-04-26T23:42:06Z)" +const version = "publicsuffix.org's public_suffix_list.dat, git revision 792f13d38c795cf910de96de4baac48f1fee3162 (2021-08-23T07:37:32Z)" const ( nodesBitsChildren = 10 @@ -23,506 +23,510 @@ const ( ) // numTLD is the number of top level domains. -const numTLD = 1506 +const numTLD = 1508 // Text is the combined text of all labels. -const text = "9guacuiababia-goracleaningroks-theatree12hpalmasfjorden4tatarant" + - "ours3-ap-northeast-2ix4432-balsan-suedtirolkuszczytnord-aurdalp1" + - "kappchizip6116-b-datacentermezproxyzgorabogadobeaemcloud-fr1337b" + - "irdartcenterprisecloudaccesscambridgeiseiroumuenchenirasakincheo" + - "nishiazaindianapolis-a-bloggerbirkenesoddtangenovarahkkeravjuego" + - "shikikugawashtenawdev-myqnapcloudcontrolledekagaminogifts3-websi" + - "te-ap-southeast-2birthplacevje-og-hornnes3-website-eu-west-1bjar" + - "koyuu2-localhostrolekaniepcextraspace-to-rentalstomakomaibarabje" + - "rkreimbamblebesbyglandroverhallaakesvuemieleccebinagisoccertmgra" + - "zerbaijan-mayengerdalipaywhirlimanowarudaustevollillyokosukanrag" + - "rocerybnikeisenbahnaumburggfarmerseine164-balsfjordd-dnshome-web" + - "serverdal-o-g-i-naval-d-aosta-valleyboltateshinanomachimkentatey" + - "amajudygarlanddnslivefsnillfjorddnss3-ap-south-1bjugnieznord-oda" + - "lomzaporizhzhiablackfridayuzawabloombergbauernishigohtawaramotoi" + - "neppueblockbusterniiminamiawajikindianmarketinglitcheltenham-rad" + - "io-opencraftrainingliwicebloxcms3-website-sa-east-1bluedagestang" + - "emologicallyngenishiharabmoattachments3-website-us-east-1bms3-we" + - "bsite-us-west-1bmwedeploybnrwegroweibolognagareyamakeuparaglidin" + - "globoavistanbulsan-sudtirolondonetskaratebomloabathsbchernivtsic" + - "iliabondigitaloceanographicsxboxfordellogliastradinglogoweirbonn" + - "ishiizunazukindielddanuorrindigenamsosnowiechernovtsyncloudray-d" + - "nstracebookinghostedpictetjeldsundrayddnsfreebox-osascoli-piceno" + - "rdlandraydnsupdaterbookonlinewjerseyboomlajollamericanexpressexy" + - "boschaefflerdalondrinapleskns3-website-us-west-2bostik-serverran" + - "koshigayachts5ybostonakijinsekikogentappsselfiparisor-fronishika" + - "taketomisatomobelembetsukubankaratsuginamikatagamilanotairesakyo" + - "tanabellevuelosangelesjabbottjmaxxxenishikatsuragit-reposalangen" + - "ishikawazukamisatohoboleslawiechirurgiens-dentistes-en-francebot" + - "anicalgardeno-stagingloppenzaporizhzhedmarkareliancebotanicgarde" + - "nishimerabotanychiryukyuragifuchungbukharanzanishinomiyashironom" + - "niweatherchannelorenskoglugsjcbnpparibashkiriabouncemerckmsdnipr" + - "opetrovskjervoyageorgeorgiabounty-fullensakerrypropertiesalon-1b" + - "outiquebeconomiastalowa-wolawassamukawataricoharuovatmallorcafed" + - "eration-webpaashorokanaieboutiresindevicenzaganquannefrankfurtjo" + - "meloyalistoragebozen-sudtirolottebozen-suedtirolottokonamegataka" + - "yamassa-carrara-massacarraramassabusinessebykleclerchitachinakag" + - "awatchandclockariyameiwamarshallstatebankarlsoybplaceducatoraybr" + - "andywinevalleybrasiliabrindisibenikilatironrenderbristoloseyouri" + - "parliamentjxeroxfinitybritishcolumbialowiezakopanelastxjampalace" + - "broadcastlebtimnetzjavaldaostathelleluxembourgmbhartipschlesisch" + - "esaltdalouvrehabmerbroadwaybroke-itkmaxxn--0trq7p7nnishinoomoteg" + - "omurabrokerbronnoysundrivegarsheiheijindowapblogsiteleafamilycom" + - "pany-2brothermesaverdealerbrowsersafetymarketsaludrobaknoluoktac" + - "hikawafflecellclstagehirnrtksatxn--11b4c3drudupontariobranconaka" + - "niikawatanagurabrumunddalpusercontentlon-2brunelblagrarchaeology" + - "eongbuk0brusselsalvadordalibabalena-devicesalzburgminakamichihar" + - "abruxellesamegawabryanskleppgafanishinoshimatsusakahoginankokubu" + - "njindustriabrynewmexicodyn-o-saurlandesamnangerbuskerudurbanamex" + - "hibitionishiokoppegardurhamburgmodellingmxn--12c1fe0bradescotlan" + - "dynathomebuiltwithdarkarmoybuzentsujiiebuzzlgretakamoriokakegawa" + - "bwellbeingzonebzhitomirbzzwesteuropenairbusantiquest-a-la-maison" + - "dre-landroidyndns-at-homedepotenzaolbia-tempio-olbiatempioolbial" + - "ystokkeliwebhostingrimstadyndns-at-workisboringripecolumbusheyco" + - "mmunecommunity-prochowicecomoarekecomparemarkerryhotelsantamaria" + - "kecomsecaaskoyabearalvahkihokumakogenebakkeshibechambagriculture" + - "nnebugattiffanyaarborteaches-yogasawara-rugbydgoszczecinemacerat" + - "abuseating-organicbcieszyncondoshichinohealth-carereformemergenc" + - "yahikobeardubaiduckdnswedeniwaizumiotsukumiyamazonawsglobalaccel" + - "eratorahimeshimabaridagawalbrzycharternopilawalesundyndns-remote" + - "wdyndns-serverisignconferenceconstructionconsuladoesntexisteinge" + - "ekashibatakatorinzais-a-candidateconsultanthropologyconsultingro" + - "undhandlingroznynysaikisosakitagawacontactoyouracontagematsubara" + - "vpagexluzerncontemporaryarteducationalchikugodogadollsantoandrea" + - "mhostersanukis-a-caterercontractorskenconventureshinodearthruher" + - "ecifedexetercookingchannelsdvrdnsdojoburgrpasadenaritakoelncoolv" + - "ivanovoldacooperativano-frankivskolefrakkestadyndns-webhareidsbe" + - "rgentingruecopenhagencyclopedichonanbulsan-suedtirolubindalublin" + - "desnesamsclubartowestfalenishitosashimizunaminamibosogndalucania" + - "coproductionsaobernardocorporationcorsicahcesuoloansaogoncarrier" + - "corvettemp-dnsaotomelbournecosenzamamidorissadonnagatorogersvps-" + - "hostrowiechoseikarugamvikarpaczeladzcosidnsfor-better-thanawawsm" + - "pplanetariumemorialcostumedicinaharimalborkashiharacouchpotatofr" + - "iesapporocoukashiwaracouncilcouponsardegnarusawacozoracqcxn--12c" + - "fi8ixb8lcranbrookuwanalyticsardiniacrdyndns-wikinkobierzycecredi" + - "tcardyndns-workshoparenakanojohanamakinoharacreditunioncremonash" + - "gabadaddjaguarqhachinoheguris-a-celticsfancrewhoswholdingsmall-w" + - "ebredirectmeetoystre-slidrettozawacricketrzyncrimeast-kazakhstan" + - "angercrotonecrownipassagensarlcrsarpsborguidefenseljordyndns1cru" + - "isesarufutsunomiyawakasaikaitabashijonawatecuisinellancashirecip" + - "escaracalvinklein-berlindaskvollculturalcentertainmentozsdelmenh" + - "orstalbansasayamattelekommunikationcuneocupcakecuritibaghdadynns" + - "asebofageologycurvallee-aosteroycymrussiacyonabarumemsettlersask" + - "atchewancyouthachiojiyaizuwakamatsubushikusakadogawaferrarivnefe" + - "rrerotikagoshimalopolskanlandynv6fetsundynvpnpluscountryestateof" + - "delawareclaimsaudafgulenfhvalerfidoomdnsiskinkyotobetsumidatlant" + - "ichoshibuyahabackyardsamsungriwataraidyndns-freeboxoslocus-4fiel" + - "dyroyrvikinguitarsauheradynservebbsassaris-a-chefashionfigueresi" + - "stancefilateliafilegear-audnedalnfilegear-dealstahaugesunderseap" + - "ortsinfolionetworkangerfilegear-gbizfilegear-iefilegear-jpmorgan" + - "filegear-sg-1filminamiechizenfinalfinancefineartschokokekschokol" + - "adenfinlandfinnoyfirebaseappatriafirenetraniandriabarlettatrania" + - "ndriafirenzefirestonefirewebhopensocialfirmdalegnicapebretonamic" + - "rolightingunmaniwakuratefishingokasells-for-lesscholarshipschool" + - "sztynsettsurgeonshalloffameldalfitjarvodkafjordvagsoygardendofth" + - "einternetnedalceschulefitnessettlementranoyfjalerflekkefjordfles" + - "berguovdageaidnulminamifuranoflickragerokunohealthcareerschulser" + - "verflirfloginlinefloraflorencefloridatsunanjoetsuwanouchikujogas" + - "zkolancasterfloripaderbornfloristanohatajiris-a-cpadualstackasse" + - "rversailleschwarzgwangjuifminamiiserniafloromskogushikamifuranor" + - "e-og-uvdalflowerschweizfltranslateflynnhosting-clusterfndfnwkasu" + - "kabedzin-addrammenulvikasumigaurayasudafoodnetworkdalfor-ourfor-" + - "somedizinhistorischesciencecentersciencehistoryfor-theaterforexr" + - "othachirogatakanabeautysfjordforgotdnscientistordalforli-cesena-" + - "forlicesenaforlikescandyn53forsalegoldpoint2thisamitsukeforsanda" + - "suoloftransportefortalfortevaksdalfortmissoulanciafortworthadano" + - "rfolkebibleksvikasuyanaizuerichardlillesandefjordfosnescjohnsonf" + - "otaruis-a-cubicle-slavellinodeobjectscrapper-sitefoxafozfranamiz" + - "uhobby-sitexascrappingwiddleitungsenfrancaiseharafranziskanerima" + - "ringatlantakahamalselvendrellfredrikstadtvscrysecuritytacticserv" + - "ehttpaviancargodaddyn-vpndnservehumourfreeddnsgeekgalaxyfreedesk" + - "topocznordreisa-hockeynutazurestaticappspacehosted-by-previderfr" + - "eemasonryfreemyiphosteurovisionfreesitextileikangerfreetlserveir" + - "choyodobashichikashukujitawaraumalatvuopmicrosoftbankaruizawafre" + - "iburgxn--1ck2e1bar0emmafann-arboretumbriamallamaceiobbcg12038fre" + - "seniusculturecreationfribourgfriuli-v-giuliafriuli-ve-giuliafriu" + - "li-vegiuliafriuli-venezia-giuliafriuli-veneziagiuliafriuli-vgiul" + - "iafriuliv-giuliafriulive-giuliafriulivegiuliafriulivenezia-giuli" + - "afriuliveneziagiuliafriulivgiuliafrlfroganserveminecraftransurlf" + - "rognfrolandfrom-akrehamnfrom-alfrom-arfrom-azimuthatogayabukijob" + - "servableusercontentrapaniizafrom-capetownnews-stagingfrom-coffee" + - "dbackplaneappfizerfrom-ctravelchannelfrom-dchristiansburgroks-th" + - "isayamanobeokakudamatsuefrom-deatnuniversityfrom-flanderservemp3" + - "from-gaulardalfrom-hichisochildrensgardenfrom-iafrom-idfrom-ilfr" + - "om-in-brbar1from-kservep2pgfoggiafrom-kyowariasahikawafrom-lange" + - "vagrigentomologyeonggiehtavuoatnabudapest-a-la-masion-rancherkas" + - "ydneyfrom-malvikaszubyfrom-mdfrom-meerestaurantravelersinsurance" + - "from-mifunefrom-mnfrom-modalenfrom-mservepicservequakefrom-mtnfr" + - "om-nctulanservesarcasmatartanddesignfrom-ndfrom-nefrom-nh-serveb" + - "logspotrdfrom-njservicesevastopolefrom-nminamiizukaminokawanishi" + - "aizubangefrom-nvallee-d-aosteigenfrom-nyminamimakis-a-democratre" + - "ndhostingfrom-ohdattorelayfrom-oketogolffansevenassisicilyfrom-o" + - "rfrom-padoval-daostavalleyfrom-pratogurafrom-ris-a-designerfrom-" + - "schoenbrunnfrom-sdscloudfrom-tnfrom-txn--1ctwolominamatarnobrzeg" + - "yptianfrom-utsiracusagaeroclubmedecincinnativeamericanantiquest-" + - "mon-blogueurodirumadridnbloggerimo-i-rana4unjargafrom-vald-aosta" + - "rostwodzislawienfrom-vtrentin-sud-tirolfrom-wafrom-wiardwebspace" + - "from-wvalleeaosteinkjerusalempresashibetsukuis-a-doctorprojectre" + - "ntin-sudtirolfrom-wyfrosinonefrostaplesharis-a-financialadvisor-" + - "aurdalfroyaitakaharunusualpersonfstcgroupharmaciensharpharmacysh" + - "awaiijimarburgfujiiderafujikawaguchikonefujiminokamoenairlineen-" + - "rootaribeiraogashimadachicagoboatshellaspeziafujinomiyadattowebc" + - "ampinashikiminohostfoldnavyfujiokayamamurogawafujisatoshonairpor" + - "tland-4-salernoduminamiminowafujisawafujishiroishidakabiratoride" + - "bianfujitsurugashimandalfujiyoshidavvenjargap-northeast-3fukayab" + - "eatshimojis-a-geekatowicefukuchiyamadavvesiidappnodebalancertifi" + - "cationfukudomigawafukuis-a-greenfukumitsubishigakirovogradoyfuku" + - "okazakiryuohkurafukuroishikarikaturindalfukusakisarazure-mobilei" + - "rfjordfukuyamagatakahashimamakishiwadazaifudaigojomedio-campidan" + - "o-mediocampidanomediofunabashiriuchinadafunagatakahatakaishimogo" + - "senfunahashikamiamakusatsumasendaisennangonohejis-a-gurunzenfund" + - "aciofunkfeuerfuoiskujukuriyamangooglecodespotrentin-sued-tirolfu" + - "osskoczowiiheyakumodernfurnitureggio-calabriafurubirafurudonosti" + - "aafurukawairtelebitbridgestonekobayashikaoirmitakeharackmazeplay" + - "fusodegaurafussagamiharafutabayamaguchinomihachimanagementrentin" + - "-suedtirolfutboldlygoingnowhere-for-morenakatombetsumitakagiizef" + - "uttsurugimperiafuturecmshimokawafuturehostingfuturemailingfvghan" + - "gglidinghangoutsystemscloudsitehannanmokuizumodenaklodzkochikush" + - "inonsenergyhannorthwesternmutualhanyuzenhapmircloudletshimonitay" + - "anagitapphdfcbankatsuyamarugame-hostyhostinghappousrcfastly-terr" + - "ariumetacentrumeteorappassenger-associationharstadharvestcelebra" + - "tionhasamansionshimonosekikawahasaminami-alpshimosuwalkis-a-land" + - "scaperugiahashbanghasudahasura-apphiladelphiaareadmyblogsytehasv" + - "ikaufentigerhatoyamazakitahiroshimanxn--1lqs03nhatsukaichikaisei" + - "yoichippubetsubetsugarustkanmakiwakunigamiharutwentehattfjelldal" + - "hayashimamotobungotakadancehazuminobusells-for-uhelsinkitakamiiz" + - "umisanofidelitysvardontexistmein-iservebeerhembygdsforbundhemnes" + - "himotsukehemsedalhepforgeblockshimotsumaherokusslattuminamioguni" + - "5heroyhgtvalleedaostehidorahigashiagatsumagoianiahigashichichibu" + - "nkyonanaoshimakanegasakimobetsuldalhigashihiroshimanehigashiizum" + - "ozakitakatakaokalmykiahigashikagawahigashikagurasoedahigashikawa" + - "kitaaikitakyushuaiahigashikurumegurownproviderhigashimatsushimao" + - "ris-a-lawyerhigashimatsuyamakitaakitadaitoigawahigashimurayamamo" + - "torcycleshinichinanhigashinarusells-itrentino-aadigehigashinehig" + - "ashiomitamamurausukitamihamadahigashiosakasayamanakakogawahigash" + - "ishirakawamatakarazukaluganskygearapphilatelyhigashisumiyoshikaw" + - "aminamiaikitamotosumy-gatewayhigashitsunortonhigashiurawa-mazows" + - "zexnetrentino-alto-adigehigashiyamatokoriyamanashifteditorxn--1l" + - "qs71dhigashiyodogawahigashiyoshinogaris-a-liberalhiraizumisatohm" + - "apartmentshinjournalismailillehammerfeste-iphilipsynology-diskst" + - "ationhirakatashinagawahiranairtrafficplexus-1hirarahiratsukaeruh" + - "irayakagehistorichouseshinjukumamotoyamashikokuchuohitachiomiyag" + - "ildeskaliszhitachiotagoppdalhitraeumtgeradegreehjartdalhjelmelan" + - "dholeckodairaholidayhomegoodshinkamigototalhomeiphoenixn--1qqw23" + - "ahomelinkyard-cloudjiffylkesbiblackbaudcdn-edgestackhero-network" + - "inggroupowiathletajimageandsoundandvision-riopretochigiessensios" + - "itecnologiahomelinuxn--2m4a15ehomeofficehomesecuritymacaparecida" + - "homesecuritypchristmaseratinterhostsolutionsandnessjoenishiwakin" + - "ternationalfirearmsandoyhomesenseeringhomeunixn--2scrj9chromedic" + - "altanissettaishinomakinderoyhondahongotembaixadahonjyoitakasagot" + - "pantheonsitehornindalhorsellsyourhomeftphonefosshinshinotsurgery" + - "hortendofinternet-dnshinshirohospitalhoteleshintokushimahotelwit" + - "hflightshintomikasaharahotmailhoyangerhoylandetroitskypehumaniti" + - "eshinyoshitomiokamishihoronobeauxartsandcraftshiojirishirifujied" + - "ahurdalhurumajis-a-libertarianhyllestadhyogoris-a-linux-usershio" + - "yandexcloudhyugawarahyundaiwafuneis-uberleetrentino-stirolis-ver" + - "y-badajozis-a-painteractivestfoldis-very-evillageis-very-goodyea" + - "ris-very-niceis-very-sweetpepperis-with-thebandownloadisleofmana" + - "ustdaljenv-arubajddarchitecturealtoregontrailroadjeonnamerikawau" + - "ejetztrentino-sud-tiroljevnakershusdecorativeartshisognejewelryj" + - "ewishartgalleryjfkazteleportlligatrentino-sudtiroljgorajlljls-st" + - "o1jls-sto2jls-sto3jmphxn--30rr7yjnjaworznoshiroomgjoyentrentino-" + - "sued-tiroljoyokaichibalashovhadselburgjpnjprshisuifuettertdasnet" + - "zjurkosaigawakosakaerodromegallupaascolipiceno-ipifony-1koseis-a" + - "-photographerokuapphotographysiokosherbrookegawakoshimizumakiyos" + - "emitekoshunantankddiamondshizukuishimofusaitoshimatta-varjjatren" + - "tino-suedtirolkosugekotohiradomainsureggioemiliaromagnamsskogane" + - "is-a-playershiftcryptonomichigangwonkotourakouhokutamakiyosunnda" + - "lkounosupplieshopitsitekouyamashikekouzushimashikizunokunimilita" + - "rykozagawakozakis-a-republicancerresearchaeologicaliforniakozowi" + - "ldlifestylekpnkppspdnshoppingkrasnikahokutokamachintaifun-dnsali" + - "ashopwarendalenugkrasnodarkredstonekrelliankristiansandcatshouji" + - "s-a-rockstarachowicekristiansundkrodsheradkrokstadelvalle-aostat" + - "ic-accesshowakryminamisanrikubetsupportrentinoa-adigekumanottero" + - "ykumatorinow-dnshowtimelhusgardenkumejimasoykumenantokigawakunis" + - "akis-a-socialistdlibestadkunitachiarailwaykunitomigusukuleuvenet" + - "okashikis-a-soxfankunneppubtlshwilliamhillkunstsammlungkunstundd" + - "esignkuokgroupilotsienarviikamiokameokamakurazakitchenkuregruhos" + - "tingkurgankurobeepilepsykkylvenicekurogimimatakatsukis-a-student" + - "alkuroisoftwarezzokuromatsunais-a-teacherkassyno-dshirahamatonbe" + - "tsurnadalkurotakikawasakis-a-techietis-a-llamaritimoldell-oglias" + - "traderkushirogawakustanais-a-therapistoiakusupplynxn--3bst00mina" + - "mitanekutchanelkutnowruzhgorodeokuzumakis-an-accountantshirakoka" + - "miminershiranukamisunagawakvafjordkvalsundkvamlidlugolekadenagah" + - "amaroyerkvanangenkvinesdalkvinnheradkviteseidatingkvitsoykwpspec" + - "truminamiuonumassivegridkzmisconfusedmishimasudamissilewismiller" + - "misugitokorozawamitourismilezajskfh-muenstermitoyoakemiuramiyazu" + - "recontainerdpolicemiyotamanomjondalenmlbfanmontrealestatefarmequ" + - "ipmentrentinoaadigemonza-brianzapposigdalmonza-e-della-brianzapt" + - "okuyamatsumaebashikshacknetrentinoalto-adigemonzabrianzaramonzae" + - "brianzamonzaedellabrianzamoonscaleforcemordoviamoriyamatsumotofu" + - "kemoriyoshiminamiashigaramormonstermoroyamatsunomortgagemoscowin" + - "barclaycards3-external-1moseushistorymosjoenmoskenesilkhakassiam" + - "ossimple-urlmosvikharkivanylvenneslaskerrylogisticshizuokamitsue" + - "moteginowaniigatakamatsukawamoviemovimientokyotangovtrentinoalto" + - "adigemozilla-iotrentinos-tirolmtranbymuginozawaonsenmuikaminoyam" + - "axunispacemukoebenhavnmulhouseoullensvanguardmultibaasirdalmunak" + - "atanemuncienciamuosattemupimientakinouemurmanskharkovaomurotorcr" + - "aftrentinostirolmusashinoharamuseetrentinosud-tirolmuseumverenig" + - "ingmusicarbonia-iglesias-carboniaiglesiascarboniamutsuzawamy-vig" + - "orgemy-wanggouvichurchaseljedugit-pagespeedmobilizeroticagliarik" + - "uzentakataipeidsvolluccaravantaarparochernigovernmentoyosatoyoka" + - "wamyactivedirectorymyasustor-elvdalmycdmycloudnslupskhersonmydat" + - "tolocalhistorymyddnskingmydissentrentinosudtirolmydobisshikis-an" + - "-artistgstagemydroboehringerikemydslzmyeffectrentinosued-tirolmy" + - "fastblogermyfirewallonieruchomoscienceandindustrynmyforuminamiya" + - "mashirokawanabelaudibleasingmyfritzmyftpaccessmolarvikhmelnitski" + - "yamarumorimachidamyhome-servermyjinomykolaivarggatrentinosuedtir" + - "olmymailermymediapcircustomer-ocimdbananarepublic66myokohamamats" + - "udamypepinbarclays3-fips-us-gov-west-1mypetsmushcdn77-sslingmyph" + - "otoshibalatinoipirangalsaceomypicturesnoasakakinokiamypsxn--3ds4" + - "43gmysecuritycamerakermyshopblocksokndalmyshopifyresdalmythic-be" + - "astsolarssonmytis-a-bookkeeperspectakashimarcheapigeelvinckhmeln" + - "ytskyivaporcloudmytuleaprendemasakievennodesabaerobaticketsologn" + - "emyvncistrondheimmobilienissandiegomywireitrentinsud-tirolplatte" + - "rpioneerplazaplcube-serverplumbingoplurinacionalpodhalepodlasiel" + - "laktyubinskiptveterinairealmpmnpodzonepohlpoivronpokerpokrovsknx" + - "-serversicherungpoliticarrdpolitiendapolkowicepoltavalle-d-aosta" + - "ticsomnarvikomaganepomorzeszowindmillponpesaro-urbino-pesarourbi" + - "nopesaromasvuotnaroyponypordenonepornporsangerporsangugeporsgrun" + - "nanyokoshibahikariwanumatakkofuefukihabororosoopoznanpraxis-a-br" + - "uinsfanprdpresidioprgmrprimetelemarkomakiyosatokaizukamikoaniiha" + - "matamakawajimarnardalprincipeprivatizehealthinsuranceprofesional" + - "progressivestnesopotrentinsudtirolpromombetsurfaststacksavannahg" + - "apropertyprotectionprotonetrentinsued-tirolprudentialpruszkowind" + - "owskrakowinnersor-odalprvcyberlevagangaviikanonjis-an-engineerin" + - "gprzeworskogpulawypupippugliapvhagebostadpvtrentinsuedtirolpwcit" + - "adeliverydyndns-iparsanfranciscofreakunemurorangecloudplatform0p" + - "ythonanywherepaircraftingvollolipopittsburghofficialpzqldqotoyoh" + - "ashimotoolsor-varangerqponiatowadaqslgbtrentoyonakagyokutoyakolo" + - "brzegersundqualifioappiwatequickconnectrevisohughesorfoldquicksy" + - "tesorocabalestrandabergamo-siemenscaledogawarabikomaezakirunombr" + - "esciaquipelementsorreisahayakawakamiichikawamisatottoris-an-ente" + - "rtainerqvcitichitosetoeigersundyndns-blogdnsampaleomutashinaindu" + - "striesteamfamberkeleyswidnikkokonoeswiebodzin-butterswiftcoversw" + - "inoujscienceandhistoryswissmarterthanyousynology-dsowatuvalleaos" + - "taverntuxfamilytwmailvevelstadvibo-valentiavibovalentiavideovill" + - "asphinxn--3e0b707evinnicasacamdvrcampinagrandebuilderschmidtre-g" + - "auldalvinnytsiavipsinaappixolinovirginiavirtual-userveexchangevi" + - "rtualcloudvirtualservervirtualuserveftpizzavirtueeldomein-vigorl" + - "icevirtuelvisakegawaviterboknowsitallvivolkenkundenvixn--3hcrj9c" + - "ivilizationisshingucciprianidyndns-mailukowestus2vlaanderenvladi" + - "kavkazimierz-dolnyvladimirvlogintoyonezawavminiservervologdansko" + - "mmunevolvolkswagentspjelkavikomatsushimarylandvolyngdalvoorloper" + - "auniterois-foundationvossevangenvotevotingvotoyonowithyoutubersp" + - "acekitagatargitlaborwiwatsukiyonosegawawixsitewloclawekomorotsuk" + - "agawawmcloudwmflabsrhtritonwnextdirectromsojamisonwoodsideloitte" + - "mpurlworldworse-thandawowiospydebergwpdevcloudwpenginepoweredwph" + - "ostedmailwpmucdnpklabudhabikinokawabarthaebaruericssongdalenvikn" + - "akatsugawawpmudevcdnaccessokamogawawritesthisblogwroclawitdkomon" + - "otogawawtcircleverappspotagerwtfastvps-serveronakasatsunairguard" + - "iannakadomarinedre-eikerwuozuwzmiuwajimaxn--45brj9civilwarmiasak" + - "uchinotsuchiurakawatchesangoxn--45q11clanbibaidarmeniaxn--4gbrim" + - "iningxn--4it168dxn--4it797kongsbergxn--4pvxs4allxn--54b7fta0ccld" + - "mailuroyxn--55qw42gxn--55qx5dxn--5js045dxn--5rtp49clic20001wwwfa" + - "rmsteadyndns-office-on-the-weberxn--5rtq34kongsvingerxn--5su34j9" + - "36bgsgxn--5tzm5gxn--6btw5axn--6frz82gxn--6orx2rxn--6qq986b3xlxn-" + - "-7t0a264clicketcloudcontrolappartintuitoyotapartsanjotoyotomiyaz" + - "akinuyamashinatsukigatakasakitashiobaraxn--80aaa0cvacationsrlxn-" + - "-80adxhksrvaroyxn--80ao21axn--80aqecdr1axn--80asehdbarefootballo" + - "oningjesdalimitediscourses3-sa-east-1xn--80aswgxn--80augustowith" + - "googleapiszxn--8ltr62koninjambylxn--8pvr4uxn--8y0a063axn--90a1af" + - "lakstadaokagakicks-assnasaarlandxn--90a3academiamicable-modemone" + - "yxn--90aeroportalaheadjudaicadaquestorebaselectroandinosaurepbod" + - "ynamic-dnsoruminanoxn--90aishobarakawagoexn--90amcdirxn--90azhyt" + - "omyravendbargainstantcloudfrontdoorlandiscoveryggeehimejiiyamano" + - "uchikuhokuryugasakitanakagusukumodumcpreservationayorovnoceanogr" + - "aphiquemrhcloudishakotanfshostrodawaraustraliamuneues3-ap-southe" + - "ast-1xn--9dbhblg6dietrusteexn--9dbq2axn--9et52uxn--9krt00axn--an" + - "dy-iraxn--aroport-byaotsurreyxn--asky-iraxn--aurskog-hland-jnbar" + - "reauctioncilla-speziaustrheimatunduhrennesoyokoteastasiamusement" + - "dllpages3-ap-southeast-2xn--avery-yuasakuhokksundxn--b-5gaxn--b4" + - "w605ferdxn--balsan-sdtirol-nsbstorfjordxn--bck1b9a5dre4clickrisi" + - "nglesannaniyodogawaxn--bdddj-mrabdxn--bearalvhki-y4axn--berlevg-" + - "jxaxn--bhcavuotna-s4axn--bhccavuotna-k7axn--bidr-5nachikatsuurax" + - "n--bievt-0qa2xn--bjarky-fyasakaiminatoyookanazawaxn--bjddar-ptar" + - "umizusawaxn--blt-elabourxn--bmlo-graingerxn--bod-2naturalhistory" + - "museumcenterxn--bozen-sdtirol-2obanazawaxn--brnny-wuacademy-fire" + - "wall-gatewayxn--brnnysund-m8accident-investigation-aptibleadpage" + - "square7xn--brum-voagatrvestre-slidreportromsakatamayufuelverumin" + - "comcastresinstagingxn--btsfjord-9zaxn--bulsan-sdtirol-nsbarrel-o" + - "f-knowledgeappleborkaracoldwarszawauthordalandds3-ca-central-1xn" + - "--c1avgxn--c2br7gxn--c3s14minnesotaketakazakis-an-actorxn--cck2b" + - "3barrell-of-knowledgecomputerhistoryofscience-fictionfabricafjs3" + - "-us-east-2xn--cckwcxetdxn--cesena-forl-mcbremangerxn--cesenaforl" + - "-i8axn--cg4bkis-gonexn--ciqpnxn--clchc0ea0b2g2a9gcdxn--comunicae" + - "s-v6a2oxn--correios-e-telecomunicaes-ghc29axn--czr694barsycenter" + - "prisesakikonaikawachinaganoharamcoachampionshiphoptobamagazineat" + - "-urlimolisemineu-1xn--czrs0try-snowplowiczest-le-patronxn--czru2" + - "dxn--czrw28barsyonlineustargardiskussionsbereichattanooganordest" + - "e-idcasadelamonedapliernewspaperxn--d1acj3basicservercelliguriau" + - "tomotivelandeportenrittogitsulikes-piedmonticellocalzoneastcoast" + - "aldefenceastus2xn--d1alfaromeoxn--d1atrycloudflareplantationxn--" + - "d5qv7z876clinichofunatoriginstitutemasekd1xn--davvenjrga-y4axn--" + - "djrs72d6uyxn--djty4konskowolayangroupiemontexn--dnna-grajewolter" + - "skluwerxn--drbak-wuaxn--dyry-iraxn--e1a4cliniquenoharavennagasak" + - "indlecznagasukexn--eckvdtc9dxn--efvn9storjcloud-ver-jpchungnamda" + - "lseidfjordyndns-homednsandvikcoromantovalle-daostavangerxn--efvy" + - "88haibarakitahatakanezawaxn--ehqz56nxn--elqq16hair-surveillancex" + - "n--eveni-0qa01gaxn--f6qx53axn--fct429konsulatrobeeldengeluidvare" + - "serve-onlinexn--fhbeiarnxn--finny-yuaxn--fiq228c5hstpetersburgxn" + - "--fiq64basilicataniautoscanadaeguambulancentralus-2xn--fiqs8stre" + - "amscompute-1xn--fiqz9studioxn--fjord-lraxn--fjq720axn--fl-ziaxn-" + - "-flor-jraxn--flw351exn--forl-cesena-fcbsstudynamisches-dnsoundca" + - "stronomy-routerxn--forlcesena-c8axn--fpcrj9c3dxn--frde-grandrapi" + - "dstuff-4-salexn--frna-woaraisaijosoyrovigotsukisofukushimangyshl" + - "akasamatsudopaasnesoddenmarkhangelskjakdnepropetrovskiervaapstei" + - "ermarkonyvelohmusashimurayamarylhurstjordalshalsenxn--frya-hraxn" + - "--fzc2c9e2clintonoshoesannohelplfinancialutskarumaifarsundyndns-" + - "picsanokasaokamikitayamatsurinvestmentsantabarbaraxn--fzys8d69uv" + - "gmailxn--g2xx48clothingdustdataitogakushimotoganewyorkshirebungo" + - "onordkappartyxn--gckr3f0fauskedsmokorsetagayaseralingenoamishira" + - "satogliattis-a-conservativegasaveincloudynufcfanxn--gecrj9cn-nor" + - "thwest-1xn--ggaviika-8ya47hakatanorth-kazakhstanxn--gildeskl-g0a" + - "xn--givuotna-8yasugitpagefrontapplantsolundbeckmpspbar2xn--gjvik" + - "-wuaxn--gk3at1exn--gls-elacaixaxn--gmq050is-into-animeinforumzxn" + - "--gmqw5axn--gnstigbestellen-zvbrplsbxn--3oq18vl8pn36axn--gnstigl" + - "iefern-wobihirosakikamijimatsushigexn--h-2failxn--h1aeghakodatex" + - "n--h1ahnxn--h1alizxn--h2breg3evenestufftoread-booksnesouthcaroli" + - "natalxn--h2brj9c8cngrondarxn--h3cuzk1discountysnestuttgartrogsta" + - "dxn--hbmer-xqaxn--hcesuolo-7ya35basketballfinanzgorzeleccogjovik" + - "aragandaveroykenflfanpachigasakids3-eu-central-1xn--hery-iraxn--" + - "hgebostad-g3axn--hkkinen-5waxn--hmmrfeasta-s4accident-prevention" + - "-k3susakis-bytomaritimekeepingxn--hnefoss-q1axn--hobl-iraxn--hol" + - "tlen-hxaxn--hpmir-xqaxn--hxt814exn--hyanger-q1axn--hylandet-54ax" + - "n--i1b6b1a6a2exn--imr513nxn--indery-fyasuokannamihokkaidovre-eik" + - "erxn--io0a7is-into-carshiraokamitondabayashiogamagoriziaxn--j1ad" + - "platformshangrilaquilanxessomaxn--j1aefbsbxn--12co0c3b4evalled-a" + - "ostaobaomoriguchiharag-cloud-charitychyattorneyagawakayamagnethn" + - "ologyxn--j1ael8batochiokinoshimaintenanceu-2xn--j1amhakonexn--j6" + - "w193gxn--jlq480n2rgxn--jlq61u9w7batsfjordisrechtranakaiwamizawav" + - "ocatanzarowbq-aukraanghkembuchikumagayagawakepnogatagajoboji234l" + - "ima-cityeatselinogradult3l3p0rtatamotorsitestingdyniabruzzoologi" + - "calabamagasakishimabaraogakibichuobiraetnaamesjevuemielnoboribet" + - "sucks3-ap-northeast-1xn--jlster-byatominamidaitomanchesterxn--jr" + - "peland-54axn--jvr189mintereisenxn--k7yn95exn--karmy-yuaxn--kbrq7" + - "oxn--kcrx77d1x4axn--kfjord-iuaxn--klbu-woaxn--klt787dxn--kltp7dx" + - "n--kltx9axn--klty5xn--3pxu8komvuxn--32vp30hagakhanamigawaxn--kol" + - "uokta-7ya57hakubahcavuotnagaivuotnagaokakyotambabyenglandxn--kpr" + - "w13dxn--kpry57dxn--kput3is-into-cartoonshiratakahagithubusercont" + - "entrentino-altoadigexn--krager-gyatsukanoyaltakasugais-into-game" + - "ssinazawaxn--kranghke-b0axn--krdsherad-m8axn--krehamn-dxaxn--krj" + - "ohka-hwab49jdevcloudfunctionshishikuis-a-patsfanxn--ksnes-uuaxn-" + - "-kvfjord-nxaxn--kvitsy-fyatsushiroxn--kvnangen-k0axn--l-1fairwin" + - "dsusonoxn--l1accentureklamborghinikolaeventsuzakanagawaxn--lahea" + - "dju-7yawaraxn--langevg-jxaxn--lcvr32dxn--ldingen-q1axn--leagavii" + - "ka-52bauhausposts-and-telecommunicationsncfditchyouripalmsprings" + - "akerxn--lesund-huaxn--lgbbat1ad8jdfastlylbanzaicloudappspaceuser" + - "contentatsunobninskanzakiwielunnereviewsaitamatsukuribmdevelopme" + - "ntattoolforgerockartuzyolasitebinordre-landgcanonoichinomiyakebi" + - "zenakanotoddenavuotnarashinobserverevistarnbergjerstadotsuruokak" + - "amigaharaustinnavigationavoizumizakibigawamswatch-and-clockeretr" + - "osnubaltimore-og-romsdalpha-myqnapcloud66xn--lgrd-poacctrysiljan" + - "xn--lhppi-xqaxn--linds-pramericanartunespeedpartnersortlandxn--l" + - "ns-qlavagiskexn--loabt-0qaxn--lrdal-sraxn--lrenskog-54axn--lt-li" + - "acnpyatigorskodjeepsondriodejaneirodoyxn--lten-granexn--lury-ira" + - "xn--m3ch0j3axn--mely-iraxn--merker-kuaxn--mgb2ddesuzukananiikapp" + - "uboliviajessheimpertrixcdn77-secureggiocalabriaxn--mgb9awbfbx-os" + - "trowwlkpmgujoinvilleirvikashiwazakiyokawaraxn--mgba3a3ejtunkommu" + - "nalforbundxn--mgba3a4f16axn--mgba3a4fra1-deltaiwanairforcechirea" + - "dthedocscbgxn--mgba7c0bbn0axn--mgbaakc7dvfbxosaves-the-whalessan" + - "dria-trani-barletta-andriatranibarlettaandriaxn--mgbaam7a8hakuis" + - "-a-hard-workershimokitayamayfirstockholmestrandxn--mgbab2bdxn--m" + - "gbah1a3hjkrdxn--mgbai9a5eva00bellunord-frontierxn--mgbai9azgqp6j" + - "ejuniperxn--mgbayh7gpalermomahachijolsterxn--mgbbh1a71exn--mgbc0" + - "a9azcgxn--mgbca7dzdoxn--mgbcpq6gpa1axn--mgberp4a5d4a87gxn--mgber" + - "p4a5d4arxn--mgbgu82axn--mgbi4ecexposedxn--mgbpl2fhskydivingxn--m" + - "gbqly7c0a67fbcnsantacruzsewhalingrongausdaluxuryxn--mgbqly7cvafr" + - "-1xn--mgbt3dhdxn--mgbtf8flapymnturystykaneyamazoexn--mgbtx2benev" + - "entodayombolzano-altoadigeometre-experts-comptables3-us-gov-west" + - "-1xn--mgbx4cd0abbvieeexn--mix082fedorainfraclouderaxn--mix891fed" + - "orapeoplegallodingenxn--mjndalen-64axn--mk0axin-dsldxn--mk1bu44c" + - "ntoyotsukaidoxn--mkru45is-leetrentino-s-tirolxn--mlatvuopmi-s4ax" + - "n--mli-tlavangenxn--mlselv-iuaxn--moreke-juaxn--mori-qsakuragawa" + - "xn--mosjen-eyawatahamaxn--mot-tlazioxn--mre-og-romsdal-qqbuseran" + - "ishiaritakurashikis-lostre-toteneis-a-nursembokukitauraxn--msy-u" + - "la0hakusanagochijiwadefinimamateramobaraxn--mtta-vrjjat-k7afedor" + - "aprojectrani-andria-barletta-trani-andriaxn--muost-0qaxn--mxtq1m" + - "isakis-an-actresshiraois-a-musicianxn--ngbc5azdxn--ngbe9e0axn--n" + - "gbrxn--41axn--nit225kooris-a-personaltrainerxn--nmesjevuemie-tcb" + - "alsan-sudtirollagdenesnaaseinet-freaksuzukis-certifiedunetlifyis" + - "-a-nascarfanxn--nnx388axn--nodessakurais-not-certifiedxn--nqv7fs" + - "00emaxn--nry-yla5gxn--ntso0iqx3axn--ntsq17gxn--nttery-byaeserveg" + - "ame-serverxn--nvuotna-hwaxn--nyqy26axn--o1achernihivgubsvalbardu" + - "nloppacificivilaviationissayokkaichiropractichocolatelevisionthe" + - "wifiatmparmatsuzakinfinitintelligencexn--o3cw4haldenxn--o3cyx2ax" + - "n--od0algxn--od0aq3bentleyomitanocelotenkawavoues3-eu-west-1xn--" + - "ogbpf8flatangerxn--oppegrd-ixaxn--ostery-fyaxn--osyro-wuaxn--otu" + - "796dxn--p1acfeiraquarelleaseeklogesavonarutolgaxn--p1ais-savedxn" + - "--pgbs0dhlxn--porsgu-sta26fermochizukirkenesaxoxn--pssu33lxn--ps" + - "sy2uxn--q7ce6axn--q9jyb4collectionxn--qcka1pmckinseyxn--qqqt11mi" + - "sasaguris-an-anarchistoricalsocietyxn--qxa6axn--qxamsterdamnserv" + - "erbaniaxn--rady-iraxn--rdal-poaxn--rde-ulaxn--rdy-0nabaris-slick" + - "autokeinoticeablevangerxn--rennesy-v1axn--rhkkervju-01aferraraxn" + - "--rholt-mragowoltlab-democraciaxn--rhqv96gxn--rht27zxn--rht3dxn-" + - "-rht61exn--risa-5naturalsciencesnaturellesvcivilisationissedaluc" + - "ernexn--risr-iraxn--rland-uuaxn--rlingen-mxaxn--rmskog-byaxn--rn" + - "y31halsaintlouis-a-anarchistoireggio-emilia-romagnakayamannorthf" + - "lankatsushikabeebyteapplinzis-a-hunterxn--rovu88beppublishproxyo" + - "nagoyaxarnetflixilovecollegefantasyleaguernseyokozeatonsbergivin" + - "gjemnes3-eu-west-2xn--rros-granvindafjordxn--rskog-uuaxn--rst-0n" + - "aturbruksgymnxn--rsta-framercanvasveioxn--rvc1e0am3exn--ryken-vu" + - "axn--ryrvik-byaxn--s-1faithammarfeastafricapitalonewportrentino-" + - "a-adigexn--s9brj9colognexus-3xn--sandnessjen-ogbeskidyn-ip24xn--" + - "sandy-yuaxn--sdtirol-n2axn--seral-lraxn--ses554gxn--sgne-graphox" + - "n--42c2d9axn--skierv-utazasvelvikomforbarcelonagawakuyachimataij" + - "iitatebayashiibahccavuotnagaragusarts3-eu-west-3utilities-1xn--s" + - "kjervy-v1axn--skjk-soaxn--sknit-yqaxn--sknland-fxaxn--slat-5natu" + - "rhistorischesvizzeraxn--slt-elabcn-north-1xn--smla-hraxn--smna-g" + - "ratangentlentapisa-geekopervikazunoticiashitaramaxn--snase-nraxn" + - "--sndre-land-0cbestbuyshouses3-us-west-1xn--snes-poaxn--snsa-roa" + - "xn--sr-aurdal-l8axn--sr-fron-q1axn--sr-odal-q1axn--sr-varanger-g" + - "gbetainaboxfusejnyanagawalmartaxihuanhktcmembers3-us-west-2xn--s" + - "rfold-byaxn--srreisa-q1axn--srum-gratis-a-bulls-fanxn--stfold-9x" + - "axn--stjrdal-s1axn--stjrdalshalsen-sqbhzcasertairaholtalenhlfanh" + - "s3-website-ap-northeast-1xn--stre-toten-zcbieidskoguchikuzenviro" + - "nmentalconservationionjukudoyamaizuruhrxn--t60b56axn--tckwebthin" + - "gsvn-reposouthwest1-uslivinghistoryxn--tiq49xqyjelasticbeanstalk" + - "azoologyxn--tjme-hraxn--tn0agrinetbankoryokamikawanehonbetsuruta" + - "haraxn--tnsberg-q1axn--tor131oxn--trany-yuaxn--trentin-sd-tirol-" + - "rzbielawaltervistainaioirasebastopologyeongnamegawafaicloudinebr" + - "askaunicommbankarasjohkameyamatotakadazurewebsiteshikagamiishibu" + - "kawakkanaibetsubamericanfamilydsmynasushiobaracingjerdrumcpebets" + - "uikiraurskog-holandingivestbytemark12xn--trentin-sdtirol-7vbiell" + - "ahppiacenzachpomorskienikonanporocpanamatsuuraxn--trentino-sd-ti" + - "rol-c3bieszczadygeyachiyodaejeonbukcoalwaysdatabaseballangenkain" + - "anaejrietisalatinabenonicasinorddalivornowtv-infolldalombardiade" + - "mbroideryonagunicloudivtasvuodnakamagayahooguyoriikarasjokarasuy" + - "amarriottcp4xn--trentino-sdtirol-szbievat-band-campaniaxn--trent" + - "inosd-tirol-rzbifukagawashingtondclk3xn--trentinosdtirol-7vbigva" + - "lledaostargetmyipanasonicateringebuildingladedyn-berlincolninohe" + - "kinannestadivttasvuotnakamuratajimidsundiyoshiokanumazuryukin-th" + - "e-bandain-vpncatholicaxiaskimitsubatamibudejjuedischesapeakebaye" + - "rnuorochesterxn--trentinsd-tirol-6vbihorologyukuhashimoichinosek" + - "igaharaxn--trentinsdtirol-nsbikedaemonmoutheworkpccweddinglassas" + - "sinationalheritagets-itgoryurihonjournalistjohninomiyakonojorpel" + - "andrangedalombardynalias3-website-ap-southeast-1xn--trgstad-r1ax" + - "n--trna-woaxn--troms-zuaxn--tysvr-vraxn--uc0atvestre-totennishia" + - "wakuraxn--uc0ay4axn--uist22hamurakamigoris-a-knightpointtohnosho" + - "ooshikamaishimodatexn--uisz3gxn--unjrga-rtashkentuscanyxn--unup4" + - "yxn--uuwu58axn--vads-jraxn--valle-aoste-ebbtushuissier-justicexn" + - "--valle-d-aoste-ehbodoes-itvedestrandxn--valleaoste-e7axn--valle" + - "daoste-ebbvadsobetsuitaikikuchikuseihicampobassociatest-iserveco" + - "unterstrikeymachinewhampshirealtydalvdalaskanittedallasalleangav" + - "iikaasdaburxn--vard-jraxn--vegrshei-c0axn--vermgensberater-ctbit" + - "swidnicartoonartdecologiaxn--vermgensberatung-pwblogoiplatter-ap" + - "pinkhplaystation-cloudyclusterxn--vestvgy-ixa6oxn--vg-yiabkhazia" + - "xn--vgan-qoaxn--vgsy-qoa0jelenia-goraxn--vgu402colonialwilliamsb" + - "urgrossetouchihayaakasakawaharaxn--vhquvestvagoyxn--vler-qoaxn--" + - "vre-eiker-k8axn--vrggt-xqadxn--vry-yla5gxn--vuq861bilbaokinawash" + - "irosatobishimagentositechnologyusuharaxn--w4r85el8fhu5dnraxn--w4" + - "rs40lxn--wcvs22dxn--wgbh1coloradoplateaudiopsysantafedjeffersonx" + - "n--wgbl6axn--xhq521billustrationredumbrellair-traffic-controlley" + - "usuisservehalflifeinsuranceu-3xn--xkc2al3hye2axn--xkc2dl3a5ee0ha" + - "ndsonyxn--y9a3aquariumisawaxn--yer-znatuurwetenschappenginexn--y" + - "fro4i67oxn--ygarden-p1axn--ygbi2ammxn--45br5cylxn--ystre-slidre-" + - "ujbioddaxn--zbx025dxn--zf0ao64axn--zf0avxlxn--zfr164biparachutin" + - "gleezeu-4xnbayxz" +const text = "9guacuiababia-goracleaningroks-theatree164-balsfjordd-dnshome-we" + + "bserverdal-o-g-i-n4t3l3p0rtashkentatamotorsitestinggfarmerseinea" + + "stasiaetnaamesjevuemielnoboribetsucks3-ap-northeast-2ix4432-bals" + + "an-suedtirolkuszczytnoopencraftrainingdyniabruzzoologicalabamaga" + + "sakishimabaraogashimadachicagoboats3-ap-northeast-1kappchizip611" + + "6-b-datacentermezproxyzgorabogadobeaemcloud-fr1337birdartcenterp" + + "risecloudaccesscambridgeiseiroumuencheninohekinannestaditchyouri" + + "parachutingleezebirkenesoddtangenovaranzanquannefrankfurtcmember" + + "s3-website-ap-southeast-2birthplacebitbucketrzyninomiyakonojorpe" + + "landivtasvuodnakamagayahooguyurihonjournalistjohnirasakin-vpncas" + + "inord-odalombardynalias3-website-eu-west-1bjarkoyusuharabjerkrei" + + "mbamblebesbyenvironmentalconservationionjukudoyamaintenancebizen" + + "akanojohanamakinoharaustinnaumburgjerdrumcpeatonsbergjerstadotsu" + + "ruokakamigaharamswatch-and-clockerevistarnbergivestbytemark12bju" + + "gnieznord-frontierblackfridayusuisservehttpbin-butterbloombergba" + + "uernishiazaincheonishigovtcp4bloxcms3-website-sa-east-1bluebitem" + + "p-dnswedenishiharabmoattachments3-website-us-east-1bms3-website-" + + "us-west-1bmwedeployuufcfanishiizunazukindianapolis-a-bloggerbnrw" + + "egroweibolognagareyamakeuparaglidinglitcheltenham-radio-opensoci" + + "alomzaporizhzhegurindianmarketingliwicebomloabathsbcateringebuil" + + "dingloboavistanbulsan-sudtirolondonetskaratsuginamikatagamilanos" + + "hiroomglogoweirbondigitaloceanographicsxboxfordellogliastradingl" + + "oppenzaolbia-tempio-olbiatempioolbialystokkeliwebhostinglugsjcbn" + + "pparibashkiriabonnishikatakazakindielddanuorrindigenaklodzkodair" + + "abookinghostedpictetgoryuzawabookonlinewjerseyboomlajollamerican" + + "expressexyboschaefflerdalondrinamsskoganeindowapblogsiteleafamil" + + "ycompany-2bostik-serverrankoshigayachts3-website-us-west-2boston" + + "akijinsekikogentappsselfiparisor-fronishikatsuragit-reposts-and-" + + "telecommunicationsakyotanabellevuelosangelesjabbottjeldsundivtta" + + "svuotnakamurataiwanairforcechireadthedocscbgmbhartipschlesisches" + + "alangenishikawazukamisatohoboleslawieconomiastalowa-wolawabotani" + + "calgardeno-stagingminakamichiharabotanicgardenishimerabotanycath" + + "olicaxiaskimitsubatamibudejjuegoshikievennodesabaerobaticketsalo" + + "n-1bouncemerckmsdnipropetrovskjervoyageometre-experts-comptables" + + "altdalorenskogmodellingmxenishinomiyashironoddabounty-fullensake" + + "rrypropertiesaludiyboutiquebecommerce-shopitsitempurlotteboutire" + + "serve-onlinewmexicodyn-o-saurlandesalvadordalibabalena-devicesal" + + "zburgretakamatsukawabozen-sudtirolottokonamegatakatsukindustriab" + + "ozen-suedtirolouvrehabmerbplaceducatorprojectjmaxxxeroxfinitybra" + + "ndywinevalleybrasiliabresciabrindisibenikikugawashtenawdevcdnacc" + + "essobetsuitaijindustriesteamfamberkeleybristoloseyouriparliament" + + "jomelhusgardenishinoomotegohtawaramotoineppubtlsamegawabritishco" + + "lumbialowiezaganishinoshimatsunowruzhgorodeomniweatherchannelpus" + + "ercontentjxjampalacebroadcastlebtimnetzjavaldaostathelleluxembou" + + "rgrimstadrangedalublindesnesamnangerbroadwaybroke-itvedestrandra" + + "y-dnstracebrokerbronnoysundrayddns5ybrothermesaverdealerbrowsers" + + "afetymarketsampaleomurabrumunddalucaniabrunelastxn--0trq7p7nnish" + + "iokoppegardraydnsupdaterbrusselsamsclubartowellbeingzonebruxelle" + + "samsungripebryanskodjedugit-pagespeedmobilizeroticagliaricoharuh" + + "rbrynewportkmaxxn--11b4c3drivegarsheiheijinfinitinsureggioemilia" + + "romagnamsosnowiechernivtsiciliabuskerudrobaknoluoktachikawafflec" + + "elluciancrmadviseharag-cloud-charitychyattorneyagawakayamagazine" + + "kobayashikaoirmitakeharagusartsandnessjoenishitosashimizunaminam" + + "ibosognebuzentsujiiebuzzlgriwataraidrrbwesteuropenairbusantiques" + + "t-a-la-maisondre-landroidrudupontariobranconavstackareliancebzhi" + + "tomirbzzwestfalenishiwakintelligencecoloradoplateaudiopsysanokar" + + "umaifarsundyndns-homednsantabarbaracolumbusheycommunecommunity-p" + + "rochowicecomobaracomparemarkerryhotelsantacruzsantafedjeffersonc" + + "omsecaaskoyabearalvahkihokumakogenebakkeshibechambagriculturenne" + + "bugattiffanyaarborteaches-yogasawaracingrpartinternationalfirear" + + "msantamariakecondoshichinohealth-carereformemergencyahikobeardub" + + "aiduckdnsncfdyndns-ipartsantoandreamhostersanukintuitoyosatoyoka" + + "waconferenceconstructionconsuladoesntexisteingeekasaokamikitayam" + + "atsurinuyamashinatsukigatakasagotpantheonsiteconsultanthropology" + + "consultingruenoharacontactoyotapartycontagematsubaracontemporary" + + "arteducationalchikugodogadollsaobernardocontractorskenconventure" + + "shinodearthruherecifedexetercookingchannelsdvrdnsdojoburguidefen" + + "seljordyndns-mailcoolcooperativano-frankivskygearappasadenarashi" + + "nocopenhagencyclopedichofunatoriginstantcloudfrontdoorcoproducti" + + "onsaogoncarriercorporationcorsicahcesuoloansaotomeiwamashikokuch" + + "uocorvettenrissadonnagatorogersvp4cosenzakopanelblagrarchaeology" + + "eongbuk0cosidnsfor-better-thanawatchesapporocostumedicaltanisset" + + "taishinomakindlefrakkestadyndns-office-on-the-webercouchpotatofr" + + "iesardegnaroycoukashibatakasugainvestmentsardiniacouncilcouponsa" + + "rlcozoracqcxn--12cfi8ixb8lcranbrookuwanalyticsarpsborguitarsaruf" + + "utsunomiyawakasaikaitabashijonawatecrdyndns-picsasayamatta-varjj" + + "atoyotomiyazakinzais-a-candidatecreditcardyndns-remotewdyndns-se" + + "rverisigncreditunioncremonashgabadaddjaguarqhachinohedmarkashiha" + + "racrewhalingujoinvilleirvikashiwaracricketoyotsukaidocrimeast-ka" + + "zakhstanangercrotonecrownipassagensasebofagemologicallynxn--12co" + + "0c3b4evalled-aostamayufuettertdasnetzcrsaskatchewancruisesassari" + + "s-a-caterercuisinellancashirecipescaracalvinklein-berlindaskvoll" + + "pagesaudaculturalcentertainmentoyouracuneocupcakecuritibaghdadul" + + "toystre-slidrettozawacurvalledaostaobaomoriguchiharahkkeravjuedi" + + "schesapeakebayernuorochestercymruovatmallorcafederationcilla-spe" + + "ziacyonabarumemorialcyouthachiojiyaizuwakamatsubushikusakadogawa" + + "ferrarivneferrerotikagoshimalopolskanlandyndns-workshoparenakani" + + "ikawatanagurafetsundyndns1fgushikamifuranordreisa-hockeynutsirac" + + "usaintlouis-a-anarchistoireggio-emilia-romagnakatombetsumitakagi" + + "izefhvalerfidoomdnsiskinkyotobetsulikes-piedmonticellocalzonefie" + + "ldynnsauheradyndns-webhareidsbergentingulenfigueresinstagingwidd" + + "leitungsenfilateliafilegear-audnedalnfilegear-dealstahaugesunder" + + "seaportsinfolionetworkangerfilegear-gbizfilegear-iefilegear-jpmo" + + "rganfilegear-sg-1filminamiechizenfinalfinancefineartschulefinlan" + + "dynservebbsavannahgafinnoyfirebaseappatriafirenetrani-andria-bar" + + "letta-trani-andriafirenzefirestonefirewebhopocznordre-landynulme" + + "msettlersaveincloudyndns-wikirafirmdalegnicapebretonamicrolighti" + + "ngxn--1ctwolominamatargithubusercontentraniandriabarlettatranian" + + "driafishingokasellfylkesbiblackbaudcdn-edgestackhero-networkingg" + + "roupowiathletajimageandsoundandvision-riopretochigiessensiositel" + + "evision-webpaashorokanaiefitjarvodkagaminogatagajobojis-a-chefas" + + "tly-terrariumetacentrumeteorappassenger-associationfitnessettlem" + + "entranoyfjalerflekkefjordynv6flesbergflickragerokunohealthcareer" + + "schulserverflirfloginlinefloraflorencefloridatsunanjoetsuwanouch" + + "ikujogaszkolancasterfloripaderbornfloristanohatajimidsundynvpnpl" + + "us-4floromskogflowerschwarzgwangjuifminamifuranowtvallee-aostero" + + "yfltranslateflynnhosting-clusterfndyroyrvikingunmaniwakuratefnwk" + + "asukabedzin-addrammenuniversityfoodnetworkdalfor-ourfor-somedio-" + + "campidano-mediocampidanomediofor-theaterforexrothachirogatakamor" + + "iokakudamatsueforgotdnschweizforli-cesena-forlicesenaforlikescan" + + "dyn53forsalegoldpoint2thisamitsukeforsandasuoloftransportefortal" + + "fortextileikangerfortmissoulanciafortworthadanore-og-uvdalfosnes" + + "ciencecentersciencehistoryfotransurlfoxafozfranamizuhobby-sitefr" + + "ancaiserniafranziskanerimaringatlantajiris-a-conservativegascien" + + "tistordalfredrikstadtvscjohnsonfreeddnsfreebox-oscrapper-sitefre" + + "edesktoppdalfreemasonryfreemyiphosteurovisionfreesitefreetlscrap" + + "pingfreiburgfreseniusculturecreationfribourgfriuli-v-giuliafriul" + + "i-ve-giuliafriuli-vegiuliafriuli-venezia-giuliafriuli-veneziagiu" + + "liafriuli-vgiuliafriuliv-giuliafriulive-giuliafriulivegiuliafriu" + + "livenezia-giuliafriuliveneziagiuliafriulivgiuliafrlfroganscrysec" + + "uritytacticservehumourfrognfrolandfrom-akrehamnfrom-alfrom-arfro" + + "m-azimuthatogayabukijobservableusercontentrapaniizafrom-capetown" + + "news-stagingfrom-coffeedbackplaneappaviancargodaddyn-vpndnservei" + + "rchonanbulsan-suedtirolucernefrom-ctravelchannelfrom-dchoseikaru" + + "gamvikarlsoyfrom-deatnunjargafrom-flanderserveminecraftravelersi" + + "nsurancefrom-gaulardalfrom-hichisodegaurafrom-iafrom-idfrom-ilfr" + + "om-in-brbar1from-kservemp3from-kyowariasahikawafrom-langevagrige" + + "ntomologyeonggiehtavuoatnabudapest-a-la-masion-rancherkasydneyfr" + + "om-malselvendrelluciancrmadvancefrom-mdfrom-medizinhistorischese" + + "rvep2pfizerfrom-mifunefrom-mnfrom-modalenfrom-mservepicservequak" + + "efrom-mtnfrom-nctulanservesarcasmatartanddesignfrom-ndfrom-nefro" + + "m-nhktrdfrom-njservicesevastopolefrom-nminamiiseoullensvanguardf" + + "rom-nvallee-d-aosteigenfrom-nynysagaeroclubmedecincinnativeameri" + + "canantiquest-mon-blogueurodirumaceratabuseating-organichoshibuya" + + "habackyardsandvikcoromantovalle-daostavangerfrom-ohdattorelayfro" + + "m-oketogolffansevenassisicilyfrom-orfrom-padoval-daostavalleyfro" + + "m-pratogurafrom-ris-a-cpadualstackasumigaurayasudafrom-schoenbru" + + "nnfrom-sdscloudfrom-tnfrom-txn--1lqs03nfrom-utazurestaticappspac" + + "eusercontentrendhostingfrom-vald-aostarostwodzislawhoswholdingsm" + + "all-webredirectmeeresistancefrom-vtrentin-sud-tirolfrom-wafrom-w" + + "iardwebspacefrom-wvalleeaosteinkjerusalembroideryfrom-wyfrosinon" + + "efrostaplesewienfroyaitakahamalvikasuyanaizuerichardlillesandefj" + + "ordfruskydivingfstcgroupgfoggiafujiiderafujikawaguchikonefujimin" + + "okamoenairguardiannakadomarinebraskaunicommbankaszubyfujinomiyad" + + "attowebcampinashikiminohostfoldnavyfujiokayamamurogawafujisatosh" + + "onairlinedre-eikerfujisawafujishiroishidakabiratoridebianfujitsu" + + "rugashimandalfujiyoshidavvenjargap-northeast-3fukayabeatsharis-a" + + "-cubicle-slavellinodeobjectsharpharmacienshawaiijimarburgfukuchi" + + "yamadavvesiidappnodebalancertificationfukudomigawafukuis-a-democ" + + "ratrentin-sudtirolfukumitsubishigakirovogradoyfukuokazakiryuohku" + + "rafukuroishikarikaturindalfukusakisarazure-mobileirfjordfukuyama" + + "gatakaharussiafunabashiriuchinadazaifudaigojomedicinaharimalbork" + + "atowicefunagatakahashimamakishiwadafunahashikamiamakusatsumasend" + + "aisennangonohejis-a-designerfundaciofunkfeuerfuoiskujukuriyamang" + + "ooglecodespotrentin-sued-tirolfuosskoczowiiheyakumodernfurniture" + + "ggio-calabriafurubirafurudonostiaafurukawairportland-4-salernodu" + + "minamiizukaminokawanishiaizubangefusoftwarezzoologyfussagamihara" + + "futabayamaguchinomihachimanagementrentin-suedtirolfutboldlygoing" + + "nowhere-for-morenakasatsunairtelebitbridgestoneen-rootaruis-a-do" + + "ctorfuttsurugimperiafuturecmshellaspeziafuturehostingfuturemaili" + + "ngfvghangglidinghangoutsystemscloudsitehannanmokuizumodenakayama" + + "nnorth-kazakhstanhannorthflankautokeinotairestaurantrentino-a-ad" + + "igehanyuzenhapmircloudletshimojis-a-hard-workershimokawahappounz" + + "enharstadharvestcelebrationhasamansionshimokitayamattelekommunik" + + "ationhasaminami-alpshimonitayanagitappharmacyshimonosekikawahash" + + "banghasudahasura-apphdfcbankazohasvikazteleportlligatrentino-aad" + + "igehatoyamazakitahiroshimanxn--1lqs71dhatsukaichikaiseiyoichippu" + + "betsubetsugarusrcfastlylbanzaicloudappspotagerhattfjelldalhayash" + + "imamotobungotakadagestangeorgeorgiahazuminobusells-for-lesshimos" + + "uwalkis-a-hunterhelsinkitakamiizumisanofidelitysvardontexistmein" + + "-iservebeero-stagehembygdsforbundhemneshimotsukehemsedalhepforge" + + "blockshimotsumayfirstockholmestrandherokusslattuminamimakis-a-kn" + + "ightpointtohnoshoooshikamaishimodateheroyhgtvalleedaostehidorahi" + + "gashiagatsumagoianiahigashichichibunkyonanaoshimakanegasakilatir" + + "onthewifiatlassian-dev-myqnapcloudcontrolledogawarabikomaezakiru" + + "nogiftshinichinanhigashihiroshimanehigashiizumozakitakatakanezaw" + + "ahigashikagawahigashikagurasoedahigashikawakitaaikitakyushuaiahi" + + "gashikurumeetrentino-alto-adigehigashimatsushimaoris-a-landscape" + + "rugiahigashimatsuyamakitaakitadaitoigawahigashimurayamamotorcycl" + + "eshinjournalismailillehammerfeste-iphiladelphiaareadmyblogsytehi" + + "gashinarusells-for-ustkanmakitchenhigashinehigashiomitamamurausu" + + "kitamihamadahigashiosakasayamanakakogawahigashishirakawamatakaok" + + "almykiahigashisumiyoshikawaminamiaikitamotosumy-gatewayhigashits" + + "unorthwesternmutualhigashiurawa-mazowszexnetrentino-altoadigehig" + + "ashiyamatokoriyamanashifteditorxn--1qqw23ahigashiyodogawahigashi" + + "yoshinogaris-a-lawyerhiraizumisatohmapartmentshinjukumamotoyamas" + + "hikehirakatashinagawahiranairtrafficplexus-1hirarahiratsukaerutw" + + "entehirayakagehistorichouseshinkamigototalhitachiomiyagildeskali" + + "szhitachiotagophilatelyhitraeumtgeradegreehjartdalhjelmelandhole" + + "ckochikushinonsenergyholidayhomegoodshinshinotsurgeonshalloffame" + + "lbournehomeiphilipsynology-diskstationhomelinkyard-cloudjiffyres" + + "dalhomelinuxn--2m4a15ehomeofficehomesecuritymacaparecidahomesecu" + + "ritypchoyodobashichikashukujitawaravpagexlukowestus2homesenseeri" + + "nghomesklepphoenixn--2scrj9christiansburgrondarhomeunixn--30rr7y" + + "hondahongotembaixadahonjyoitakarazukaluganskazunoticeablevangerh" + + "ornindalhorsells-itrentino-s-tirolhortendofinternet-dnshinshiroh" + + "ospitalhoteleshintokushimahotelwithflightshintomikasaharahotmail" + + "hoyangerhoylandetroitskddiamondshinyoshitomiokamishihoronobeauxa" + + "rtsandcraftshiojirishirifujiedahumanitieshioyandexcloudhurdalhur" + + "umajis-a-liberalhyllestadhyogoris-a-libertarianhyugawarahyundaiw" + + "afuneis-uberleetrentino-sudtirolis-very-badajozis-a-painteractiv" + + "estfoldis-very-evillageis-very-goodyearis-very-niceis-very-sweet" + + "pepperis-with-thebandownloadisleofmanaustdaljenv-arubajddarchite" + + "cturealtorlandjeonnamerikawauejetztrentino-sued-tiroljevnakershu" + + "sdecorativeartshopwarendalenugjewelryjewishartgalleryjfkharkovao" + + "jgorajlljls-sto1jls-sto2jls-sto3jmphxn--32vp30hadselburgjnjaworz" + + "nosegawajoyentrentino-suedtiroljoyokaichibalashovhaebaruericsson" + + "gdalenviknakatsugawajpnjprshoujis-a-personaltrainerjurkoshimizum" + + "akiyosatokaizukamikoaniihamatamakawajimaritimoldell-ogliastrader" + + "koshunantankhmelnitskiyamarugame-hostyhostingkosugekotohiradomai" + + "nstitutekotourakouhokutamakiyosemitekounosupabasembokukiyosunnda" + + "lkouyamarylhurstjordalshalsenkouzushimasfjordenkozagawakozakizun" + + "okunimilitarykozowildlifestylekpnkppspdnshowtimeldalkrasnikahoku" + + "tokamachintaifun-dnsaliashwilliamhillkrasnodarkredstonekrelliank" + + "ristiansandcatsienarutolgakristiansundkrodsheradkrokstadelvalle-" + + "aostatic-accessigdalkryminamioguni5kumanotogawakumatorinotteroyk" + + "umejimashikis-a-republicancerresearchaeologicaliforniakumenantok" + + "igawakunisakis-a-rockstarachowicekunitachiarailwaykunitomigusuku" + + "leuvenetokashikis-a-socialistdlibestadkunneppuboliviajessheimper" + + "trixcdn77-secureggiocalabriakunstsammlungkunstunddesignkuokgroup" + + "ilotsilkhmelnytskyivaporcloudkuregruhostingkurgankurobeepilepsyk" + + "kylvenicekurogimimatakatoris-a-soxfankuroisogndalkuromatsunais-a" + + "-studentalkurotakikawasakis-a-teacherkassyno-dshiraois-a-linux-u" + + "sershirahamatonbetsurgerykushirogawakustanais-a-techietis-a-llam" + + "archeapigeelvinckfh-muensterkusuppliesimple-urlkutchanelverumina" + + "misanrikubetsupplykutnovecoregontrailroadkuzumakis-a-therapistoi" + + "akvafjordkvalsundkvamlidlugolekafjordvagsoygardendoftheinterneth" + + "nologykvanangenkvinesdalkvinnheradkviteseidatingkvitsoykwpspectr" + + "uminamitanekzmisakis-an-accountantshiraokamitondabayashiogamagor" + + "iziamisasaguris-an-actormisawamisconfusedmishimassivegridmissile" + + "wismillermisugitokorozawamitourismilezajskhplaystation-cloudyclu" + + "stermitoyoakemiuramiyazurecontainerdpolicemiyotamanomjondalenmlb" + + "fanmontrealestatefarmequipmentrentinoa-adigemonza-brianzapposird" + + "almonza-e-della-brianzaptokuyamasudamonzabrianzaramonzaebrianzam" + + "onzaedellabrianzamoonscaleforcemordoviamoriyamatsumaebashikshack" + + "netrentinoaadigemoriyoshiminamiashigaramormonstermoroyamatsumoto" + + "fukemortgagemoscowinbarclaycards3-external-1moseushistorymosjoen" + + "moskeneslupsklabudhabikinokawabarthagakhanamigawamosslzmosvikmps" + + "pbar2moteginowaniigatakahatakaishimogosenmoviemovimientokyotango" + + "uvichungnamdalseidfjordynathomebuiltwithdarkarmoymozilla-iotrent" + + "inoalto-adigemtranbymuginozawaonsenmuikaminoyamaxunispacemukoebe" + + "nhavnmulhouservegame-servermunakatanemuncienciamuosattemupimient" + + "aketomisatomobelementoraymurmansknx-serversicherungmurotorcraftr" + + "entinoaltoadigemusashinoharamuseetrentinos-tirolmuseumvereniging" + + "musicarbonia-iglesias-carboniaiglesiascarboniamutsuzawamy-vigorg" + + "emy-wanggoupilemyactivedirectorymyasustor-elvdalmycdmycloudnsmol" + + "arvikomaganemydattolocalhistorymyddnsgeekgalaxymydissentrentinos" + + "tirolmydobisshikis-an-actresshiratakahagithubpreviewsaikisofukus" + + "himangyshlakasamatsudopaashishikuis-a-musicianmydroboehringerike" + + "mydsmushcdn77-sslingmyeffectrentinosud-tirolmyfastblogermyfirewa" + + "llonieruchomoscienceandindustrynmyforuminamiuonumasoymyfritzmyft" + + "paccessnoasakakinokiamyhome-servermyjinomykolaivarggatrentinosud" + + "tirolmymailermymediapchurchaseljeepsondriodejaneirodoymyokohamam" + + "atsudamypepinbarclays3-fips-us-gov-west-1mypetsokndalmyphotoshib" + + "alatinombrendlyngeniwaizumiotsukumiyamazonawsglobalacceleratorah" + + "imeshimabaridagawakuyachimataikikonaikawachinaganoharamcoachampi" + + "onshiphoptobamadridnbloggerimo-siemenscaledekaasdaburmypictureso" + + "larssonmypsxn--3ds443gmysecuritycamerakermyshopblocksolognemysho" + + "pifymyspreadshoppingmythic-beastsolundbeckomakiyokawaramytis-a-b" + + "ookkeeperspectakasakitashiobaramytuleap-partnersomamyvncircustom" + + "er-ocimdbananarepublic66mywireitrentinosued-tirolplatterpioneerp" + + "lazaplcube-serverplumbingoplurinacionalpodhalepodlasiellaktyubin" + + "skiptveterinairealmpmnpodzonepohlpoivronpokerpokrovskommunalforb" + + "undpoliticarrdpolitiendapolkowicepoltavalle-d-aostaticsopotrenti" + + "nosuedtirolpomorzeszowindmillponpesaro-urbino-pesarourbinopesaro" + + "masvuotnaritakoelnponypordenonepornporsangerporsangugeporsgrunna" + + "nyokoshibahikariwanumatakinouepoznanpraxis-a-bruinsfanprdpresidi" + + "oprgmrprimetelemarkommuneprincipeprivatizehealthinsuranceprofesi" + + "onalprogressivestnesor-odalpromombetsupportrentinsud-tirolproper" + + "typrotectionprotonetrentinsudtirolprudentialpruszkowindowskrakow" + + "innersor-varangerprvcyberlevagangaviikanonjis-an-artistgstageprz" + + "eworskogpugliapulawypupippueblockbusterniiminamiawajikis-an-anar" + + "chistoricalsocietypvhagebostadpvtrentinsued-tirolpwcistrondheimm" + + "obilienissayokkaichiropractichernovtsyncloudurbanamexhibitioniss" + + "andiegomutashinainterhostsolutionsandoypythonanywherepaircraftin" + + "gvollolipopittsburghofficialpzqldqotoyohashimotoolsorfoldqponiat" + + "owadaqslgbtrentinsuedtirolqualifioappiwatequickconnectrentoyonak" + + "agyokutoyakolobrzegersundquicksytesorocabalestrandabergamoarekey" + + "machineustargardquipelementsorreisahayakawakamiichikawamisatotto" + + "ris-an-engineeringqvcitadeliverydyndns-at-homedepotenzamamidorit" + + "togitsumidatlantichirurgiens-dentistes-en-franceswidnikkokonoesw" + + "iebodzin-dsldswiftcoverswinoujscienceandhistoryswissmarterthanyo" + + "usynology-dsouthwest1-uslivinghistorytushuissier-justicetuvallea" + + "ostaverntuxfamilytwmailvevelstadvibo-valentiavibovalentiavideovi" + + "llasphinxn--3e0b707evinnicasacamdvrcampinagrandebuilderschmidtre" + + "-gauldalvinnytsiavipsinaappixolinovirginiavirtual-userveexchange" + + "virtualcloudvirtualservervirtualuserveftpizzavirtueeldomein-vigo" + + "rlicevirtuelvisakegawaviterboknowsitallvivolkenkundenvixn--3hcrj" + + "9civilisationisshingucciprianidyndns-at-workisboringrongausdalut" + + "skarpaczeladzvlaanderenvladikavkazimierz-dolnyvladimirvlogintoyo" + + "nezawavminanovologdanskongsvingervolvolkswagentspjelkavikomorots" + + "ukagawavolyngdalvoorlopervossevangenvotevotingvotoyonovps-hostro" + + "wiecivilizationiyodogawawithyoutuberspacekitagatargetmyipkomforb" + + "arcelonagawalbrzycharternopilawalesundgcanonoichinomiyakehimejib" + + "igawaustraliamuneues3-ap-south-1wiwatsukiyonortonwixsitewloclawe" + + "konskowolayangroupiemontewmcloudwmflabsrhtrevisojamisonwnextdire" + + "ctromsakatakkofuefukihabororosowawoodsideloittevaksdalworse-than" + + "dawowiospydebergwpdevcloudwpenginepoweredwphostedmailwpmucdnplan" + + "tsomnarviikamiokameokamakurazakitaurawpmudeveloperauniterois-cer" + + "tifiedunetlifyis-a-nascarfanwritesthisblogwroclawitdkoninjambylw" + + "tcirclerkstagets-itromsokamogawawtfastvps-serveronakanotoddenwuo" + + "zuwzmiuwajimaxn--45brj9civilwarmiasakuchinotsuchiurakawatchandcl" + + "ockaruizawaxn--45q11clanbibaidarmeniaxn--4gbriminingxn--4it168dx" + + "n--4it797konyvelohmusashimurayamarylandxn--4pvxs4allxn--54b7fta0" + + "ccldmailuxuryxn--55qw42gxn--55qx5dxn--5js045dxn--5rtp49cleverapp" + + "stmnxn--5rtq34kooris-a-photographerokuapphotographysioxn--5su34j" + + "936bgsgxn--5tzm5gxn--6btw5axn--6frz82gxn--6orx2rxn--6qq986b3xlxn" + + "--7t0a264clic20001wwwfarmsteadyndns-blogdnsanfranciscofreakunemu" + + "rorangecloudplatform0xn--80aaa0cvacationsrlxn--80adxhksrvaroyxn-" + + "-80ao21axn--80aqecdr1axn--80asehdbarefootballooningjovikaraganda" + + "ustrheimatunduhrennesoyokosukanramusementdllclstagehirnrtatarant" + + "ours3-ap-southeast-1xn--80aswgxn--80augustowithgoogleapiszxn--8l" + + "tr62kopervikhersonxn--8pvr4uxn--8y0a063axn--90a1aflakstadaokagak" + + "icks-assnasaarlandxn--90a3academiamicable-modemoneyxn--90aeropor" + + "talaheadjudaicadaquestorebaselectritonxn--90aishobarakawagoexn--" + + "90amcdirxn--90azhytomyravendbargainstancempresashibetsukuibmdisc" + + "ourses3-sa-east-1xn--9dbhblg6dietrusteexn--9dbq2axn--9et52uxn--9" + + "krt00axn--andy-iraxn--aroport-byaotsurnadalxn--asky-iraxn--aursk" + + "og-hland-jnbarreauctionfabricafjs3-us-east-2xn--avery-yuasakuhok" + + "ksundxn--b-5gaxn--b4w605ferdxn--balsan-sdtirol-nsbstorfjordxn--b" + + "ck1b9a5dre4clicketcloudcontrolappgafanxn--bdddj-mrabdxn--bearalv" + + "hki-y4axn--berlevg-jxaxn--bhcavuotna-s4axn--bhccavuotna-k7axn--b" + + "idr-5nachikatsuuraxn--bievt-0qa2xn--bjarky-fyasakaiminatoyookana" + + "zawaxn--bjddar-ptarnobrzegyptianxn--blt-elabourxn--bmlo-grainger" + + "xn--bod-2natalxn--bozen-sdtirol-2obanazawaxn--brnny-wuacademy-fi" + + "rewall-gatewayxn--brnnysund-m8accident-investigation-aptibleadpa" + + "gesquare7xn--brum-voagatrvestre-slidreportrogstadxn--btsfjord-9z" + + "axn--bulsan-sdtirol-nsbarrel-of-knowledgeappleborkarasjohkameyam" + + "atotakadauthgear-stagingjesdalimanowarudaukraanghkembuchikumagay" + + "agawakepnoipirangalsaceobiragrocerybnikeisenbahnatuurwetenschapp" + + "engineastcoastaldefenceastus2xn--c1avgxn--c2br7gxn--c3s14mincomc" + + "astresindevicenzaporizhzhiaxn--cck2b3barrell-of-knowledgecompute" + + "rhistoryofscience-fictionredumbrellaakesvuemieleccemrxn--cckwcxe" + + "tdxn--cesena-forl-mcbremangerxn--cesenaforl-i8axn--cg4bkis-found" + + "ationxn--ciqpnxn--clchc0ea0b2g2a9gcdxn--comunicaes-v6a2oxn--corr" + + "eios-e-telecomunicaes-ghc29axn--czr694barsycenterprisesakikuchik" + + "useihicampobassociatest-iservecounterstrikeu-1xn--czrs0try-snowp" + + "lowiczest-le-patronxn--czru2dxn--czrw28barsyonlinewhampshirealty" + + "dalpha-myqnapcloud66xn--d1acj3basicservercelliguriauthgearappspa" + + "cehosted-by-previderhclouddnslivefsnillfjorddnss3-ca-central-1xn" + + "--d1alfaromeoxn--d1atrycloudflareplantationxn--d5qv7z876clickris" + + "inglesangoxn--davvenjrga-y4axn--djrs72d6uyxn--djty4koryokamikawa" + + "nehonbetsurutaharaxn--dnna-grajewolterskluwerxn--drbak-wuaxn--dy" + + "ry-iraxn--e1a4clinichitachinakagawassamukawatarikuzentakatairave" + + "nnagasakimobetsuldaluccaravantaarparmatsuuraxn--eckvdtc9dxn--efv" + + "n9storjcloud-ver-jpchristmasakinderoyxn--efvy88haibarakitahataka" + + "nabeautysfjordxn--ehqz56nxn--elqq16hair-surveillancexn--eveni-0q" + + "a01gaxn--f6qx53axn--fct429kosaigawaxn--fhbeiarnxn--finny-yuaxn--" + + "fiq228c5hstpetersburgxn--fiq64basilicataniauthordalandds3-eu-cen" + + "tral-1xn--fiqs8streamscompute-1xn--fiqz9studioxn--fjord-lraxn--f" + + "jq720axn--fl-ziaxn--flor-jraxn--flw351exn--forl-cesena-fcbsstudy" + + "namisches-dnsortlandxn--forlcesena-c8axn--fpcrj9c3dxn--frde-gran" + + "drapidstuff-4-salexn--frna-woaraisaijosoyrovigotsukisosakitagawa" + + "xn--frya-hraxn--fzc2c9e2cliniquedapliernewyorkshirebungoonordest" + + "e-idchitosetoeigersundurhamburgroks-thisayamanobeokakegawaxn--fz" + + "ys8d69uvgmailxn--g2xx48clintonoshoesanjotelulubindaluzernxn--gck" + + "r3f0fauskedsmokorsetagayaseralingenoamishirasatogliattis-a-celti" + + "csfanxn--gecrj9clothingdustdatadetectksatxn--12c1fe0bradescotlan" + + "dyndns-freeboxosascoli-picenordkapparochernigovernmentlon-2xn--g" + + "gaviika-8ya47hakatanorfolkebibleksvikatsushikabeebyteapplinzis-a" + + "-financialadvisor-aurdalxn--gildeskl-g0axn--givuotna-8yasugitlab" + + "orxn--gjvik-wuaxn--gk3at1exn--gls-elacaixaxn--gmq050is-gonexn--g" + + "mqw5axn--gnstigbestellen-zvbrplsbxn--3oq18vl8pn36axn--gnstiglief" + + "ern-wobihirosakikamijimatsusakahoginankokubunjis-into-animegurow" + + "nproviderxn--h-2failxn--h1aeghakodatexn--h1ahnxn--h1alizxn--h2br" + + "eg3evenestufftoread-booksnesoruminamiyamashirokawanabelaudibleas" + + "ingxn--h2brj9c8cn-northwest-1xn--h3cuzk1discountysnestuttgartroa" + + "ndinosaurepbodynamic-dnsoundcastronomy-routerxn--hbmer-xqaxn--hc" + + "esuolo-7ya35basketballfinanzgorzeleccogladedyn-berlincolnavigati" + + "onavoizumizakiitatebayashiibahccavuotnagaraholtalenglandiscovery" + + "ggeeu-2xn--hery-iraxn--hgebostad-g3axn--hkkinen-5waxn--hmmrfeast" + + "a-s4accident-prevention-k3surreyxn--hnefoss-q1axn--hobl-iraxn--h" + + "oltlen-hxaxn--hpmir-xqaxn--hxt814exn--hyanger-q1axn--hylandet-54" + + "axn--i1b6b1a6a2exn--imr513nxn--indery-fyasuokannamiharuxn--io0a7" + + "is-into-carshisohugheshisuifuelluciancrmrecruitrentino-stirolxn-" + + "-j1adplatformshangrilaquilanxessooxn--j1aefbsbxn--1ck2e1bar0emma" + + "fann-arboretumbriamallamaceiobbcg12038xn--j1ael8batochiokinoshim" + + "aizurugbyglandroverhallahppiacenzachpomorskienavuotnapleskns3-us" + + "-gov-west-1xn--j1amhakonexn--j6w193gxn--jlq480n2rgxn--jlq61u9w7b" + + "atsfjordishakotanayorovnobserverxn--jlster-byatominamidaitomanch" + + "esterxn--jrpeland-54axn--jvr189miniserverxn--k7yn95exn--karmy-yu" + + "axn--kbrq7oxn--kcrx77d1x4axn--kfjord-iuaxn--klbu-woaxn--klt787dx" + + "n--kltp7dxn--kltx9axn--klty5xn--3pxu8konsulatrobeeldengeluidvare" + + "servdxn--koluokta-7ya57hakubahcavuotnagaivuotnagaokakyotambabydg" + + "oszczecinemagnetnedalipaywhirlxn--kprw13dxn--kpry57dxn--kput3is-" + + "into-cartoonshitaramaxn--krager-gyatsukanoyaltakashimarnardalxn-" + + "-kranghke-b0axn--krdsherad-m8axn--krehamn-dxaxn--krjohka-hwab49j" + + "devcloudfunctionshizukuishimofusaitoshimatsuzakis-a-patsfanxn--k" + + "snes-uuaxn--kvfjord-nxaxn--kvitsy-fyatsushiroxn--kvnangen-k0axn-" + + "-l-1fairwindsusakis-an-entertainerxn--l1accentureklamborghinikol" + + "aeventsusonoxn--laheadju-7yawaraxn--langevg-jxaxn--lcvr32dxn--ld" + + "ingen-q1axn--leagaviika-52bauhauspostman-echocolatemasekd1xn--le" + + "sund-huaxn--lgbbat1ad8jdfaststacksaves-the-whalessandria-trani-b" + + "arletta-andriatranibarlettaandriaxn--lgrd-poacctrysiljanxn--lhpp" + + "i-xqaxn--linds-pramericanartunespeedpartnerxn--lns-qlavagiskexn-" + + "-loabt-0qaxn--lrdal-sraxn--lrenskog-54axn--lt-liacngrossetouchih" + + "ayaakasakawaharaxn--lten-granexn--lury-iraxn--m3ch0j3axn--mely-i" + + "raxn--merker-kuaxn--mgb2ddesuzakanagawaxn--mgb9awbfbx-oslocuscou" + + "ntryestateofdelawareclaimsavonarusawaxn--mgba3a3ejtunkongsbergxn" + + "--mgba3a4f16axn--mgba3a4fra1-deltaitogakushimotoganexn--mgba7c0b" + + "bn0axn--mgbaakc7dvfbxostrowwlkpmguovdageaidnulvikashiwazakiwielu" + + "nnerxn--mgbaam7a8hakuis-a-geekatsuyamarshallstatebankaufentigerx" + + "n--mgbab2bdxn--mgbah1a3hjkrdxn--mgbai9a5eva00bellunord-aurdalvda" + + "laskanittedallasalleangaviikadenagahamaroyerxn--mgbai9azgqp6jeju" + + "niperxn--mgbayh7gpalermomahachijolsterxn--mgbbh1a71exn--mgbc0a9a" + + "zcgxn--mgbca7dzdoxn--mgbcpq6gpa1axn--mgberp4a5d4a87gxn--mgberp4a" + + "5d4arxn--mgbgu82axn--mgbi4ecexposedxn--mgbpl2fhskypexn--mgbqly7c" + + "0a67fbcnpyatigorskolecznagasukexn--mgbqly7cvafr-1xn--mgbt3dhdxn-" + + "-mgbtf8flapymnturystykaneyamazoexn--mgbtx2beneventodayombolzano-" + + "altoadigeologyomitanoceanographiqueu-3xn--mgbx4cd0abbvieeexn--mi" + + "x082fedorainfraclouderaxn--mix891fedorapeoplegallodingenxn--mjnd" + + "alen-64axn--mk0axin-the-bandais-into-gamessinazawaxn--mk1bu44cns" + + "annanxn--mkru45is-leetrentino-sud-tirolxn--mlatvuopmi-s4axn--mli" + + "-tlavangenxn--mlselv-iuaxn--moreke-juaxn--mori-qsakuragawaxn--mo" + + "sjen-eyawatahamaxn--mot-tlazioxn--mre-og-romsdal-qqbuseranishiar" + + "itakurashikis-lostre-toteneis-a-nursellsyourhomeftphonefosshirak" + + "okamiminershiranukamisunagawaxn--msy-ula0hakusanagochijiwadefini" + + "mamateramochizukinkobierzycexn--mtta-vrjjat-k7afedoraprojectozsd" + + "elmenhorstalbansaxoxn--muost-0qaxn--mxtq1minisitexn--ngbc5azdxn-" + + "-ngbe9e0axn--ngbrxn--41axn--nit225kosakaerodromegallupaascolipic" + + "eno-ipifony-1xn--nmesjevuemie-tcbalsan-sudtirollagdenesnaaseinet" + + "-freaksuzukananiikappudoxn--nnx388axn--nodessakurais-not-certifi" + + "edxn--nqv7fs00emaxn--nry-yla5gxn--ntso0iqx3axn--ntsq17gxn--ntter" + + "y-byaeservehalflifeinsurancexn--nvuotna-hwaxn--nyqy26axn--o1ache" + + "rnihivgubsuzukis-bytomaritimekeepingxn--o3cw4haldenxn--o3cyx2axn" + + "--od0algxn--od0aq3bentleyonagoyautomotivelandeportexasnesoddenma" + + "rkhangelskjakdnepropetrovskiervaapsteiermarkanzakiwakunigamihokk" + + "aidovre-eikerxn--ogbpf8flatangerxn--oppegrd-ixaxn--ostery-fyaxn-" + + "-osyro-wuaxn--otu796dxn--p1acfeiraquarelleaseeklogeschokokekscho" + + "koladenxn--p1ais-savedxn--pgbs0dhlx3xn--porsgu-sta26fermockasser" + + "versaillescholarshipschoolsztynsettsurfashionxn--pssu33lxn--pssy" + + "2uxn--q7ce6axn--q9jyb4cntmparsannohelplfinancialvivanovoldaxn--q" + + "cka1pmckinseyxn--qqqt11minnesotaketakayamassa-carrara-massacarra" + + "ramassabusinessebykleclerchromediatechnologyxn--qxa6axn--qxamste" + + "rdamnserverbaniaxn--rady-iraxn--rdal-poaxn--rde-ulaxn--rdy-0naba" + + "ris-slickhakassiaxn--rennesy-v1axn--rhkkervju-01aferraraxn--rhol" + + "t-mragowoltlab-democraciaxn--rhqv96gxn--rht27zxn--rht3dxn--rht61" + + "exn--risa-5naturalhistorymuseumcenterxn--risr-iraxn--rland-uuaxn" + + "--rlingen-mxaxn--rmskog-byaxn--rny31halsaitamatsukuris-a-greenxn" + + "--rovu88beppublishproxyonagunicloudiskussionsbereichattanooganor" + + "ddalimitedisrechtranakaiwamizawawsmpplanetariumcpreservationfsho" + + "strodawarautoscanadaeguambulancentralus-2xn--rros-granvindafjord" + + "xn--rskog-uuaxn--rst-0naturalsciencesnaturellesvalbardunloppacif" + + "icitichiryukyuragifuchungbukharaumalatvuopmicrosoftbankariyamein" + + "forumzxn--rsta-framercanvasvcivilaviationissedaluroyxn--rvc1e0am" + + "3exn--ryken-vuaxn--ryrvik-byaxn--s-1faithammarfeastafricapitalon" + + "ewspaperxn--s9brj9collectionxn--sandnessjen-ogbeskidyn-ip24lima-" + + "cityeatselinogradimo-i-rana4u2-localhostrolekaniepce12hpalmasera" + + "ti234xn--sandy-yuaxn--sdtirol-n2axn--seral-lraxn--ses554gxn--sgn" + + "e-graphoxn--42c2d9axn--skierv-utazasveioxn--skjervy-v1axn--skjk-" + + "soaxn--sknit-yqaxn--sknland-fxaxn--slat-5naturbruksgymnxn--slt-e" + + "labcieszynh-serveblogspotaribeiraogakibichuoxn--smla-hraxn--smna" + + "-gratangentlentapisa-geekoseis-a-playershiftcryptonomichigangwon" + + "xn--snase-nraxn--sndre-land-0cbestbuyshouses3-us-west-1xn--snes-" + + "poaxn--snsa-roaxn--sr-aurdal-l8axn--sr-fron-q1axn--sr-odal-q1axn" + + "--sr-varanger-ggbetainaboxfusejnyanagawalmartattoolforgerockartu" + + "zyoriikarasjokarasuyamarriottaxihuanhlfanhs3-us-west-2xn--srfold" + + "-byaxn--srreisa-q1axn--srum-gratis-a-bulls-fanxn--stfold-9xaxn--" + + "stjrdal-s1axn--stjrdalshalsen-sqbhzcasadelamonedanceu-4xn--stre-" + + "toten-zcbieidskoguchikuzenikonanporocelotenkawaveroykenflfanpach" + + "igasakids3-eu-west-1xn--t60b56axn--tckwebthingsvelvikomvuxn--3bs" + + "t00minamiminowaxn--tiq49xqyjelasticbeanstalkharkivanylvenneslask" + + "errylogisticshizuokamitsuexn--tjme-hraxn--tn0agrinetbankosherbro" + + "okegawaxn--tnsberg-q1axn--tor131oxn--trany-yuaxn--trentin-sd-tir" + + "ol-rzbielawaltervistainaioirasebastopologyeongnamegawafaicloudin" + + "eat-urlimoliseminevje-og-hornnes3-website-ap-northeast-1xn--tren" + + "tin-sdtirol-7vbiellair-traffic-controlleyoshiokanumazuryukiiyama" + + "nouchikuhokuryugasakitanakagusukumodumeloyalistoragextraspace-to" + + "-rentalstomakomaibaravocatanzarowbq-aurskog-holandingivingjemnes" + + "3-ap-southeast-2xn--trentino-sd-tirol-c3bieszczadygeyachiyodaeje" + + "onbukcoalwaysdatabaseballangenkainanaejrietisalatinabenonicbcn-n" + + "orth-1xn--trentino-sdtirol-szbievat-band-campaniavoues3-eu-west-" + + "2xn--trentinosd-tirol-rzbifukagawashingtondclk3xn--trentinosdtir" + + "ol-7vbigv-infolldalivornow-dns3-website-ap-southeast-1xn--trenti" + + "nsd-tirol-6vbihorologyukuhashimoichinosekigaharaxarnetflixilovec" + + "ollegefantasyleaguernseyokotebetsuikirkenes3-eu-west-3utilities-" + + "1xn--trentinsdtirol-nsbikedaemonmoutheworkpccweddinglassassinati" + + "onalheritagexn--trgstad-r1axn--trna-woaxn--troms-zuaxn--tysvr-vr" + + "axn--uc0atvestre-totennishiawakuraxn--uc0ay4axn--uist22hamurakam" + + "igoris-a-gurunusualpersonxn--uisz3gxn--unjrga-rtarumizusawaxn--u" + + "nup4yxn--uuwu58axn--vads-jraxn--valle-aoste-ebbtuscanyxn--valle-" + + "d-aoste-ehbodoes-itcouldbeworldxn--valleaoste-e7axn--valledaoste" + + "-ebbvadsoccertmgrazerbaijan-mayengerdalcesvizzeraxn--vard-jraxn-" + + "-vegrshei-c0axn--vermgensberater-ctbitsvn-reposouthcarolinarviko" + + "monoticiashowaxn--vermgensberatung-pwblogoiplatter-appinkomatsus" + + "himarumorimachidaxn--vestvgy-ixa6oxn--vg-yiabkhaziaxn--vgan-qoax" + + "n--vgsy-qoa0jelenia-goraxn--vgu402colognexus-3xn--vhquvestvagoyx" + + "n--vler-qoaxn--vre-eiker-k8axn--vrggt-xqadxn--vry-yla5gxn--vuq86" + + "1bilbaokinawashirosatobishimagentositecnologiazurewebsiteshikaga" + + "miishibukawakkanaibetsubamericanfamilydsmynasushiobarackmazeplay" + + "okozebinagisochildrensgardenaval-d-aosta-valleyolasitebinordland" + + "evelopmentatsunobninskaracoldwarszawaustevollillyboltateshinanom" + + "achimkentateyamajudygarlanddnskingitpagefrontappalmspringsakeret" + + "rosnubaltimore-og-romsdalp1xn--w4r85el8fhu5dnraxn--w4rs40lxn--wc" + + "vs22dxn--wgbh1colonialwilliamsburgroundhandlingroznyxn--wgbl6axn" + + "--xhq521billustrationrenderxn--xkc2al3hye2axn--xkc2dl3a5ee0hands" + + "onyxn--y9a3aquariumintereisenxn--yer-znaturhistorischeswidnicart" + + "oonartdecologiaxn--yfro4i67oxn--ygarden-p1axn--ygbi2ammxn--45br5" + + "cylxn--ystre-slidre-ujbiocpanamatsushigexn--zbx025dxn--zf0ao64ax" + + "n--zf0avxlxn--zfr164bipanasonicasertaipeidsvollombardiadembetsuk" + + "ubankaratexnbayxz" // nodes is the list of nodes. Each node is represented as a uint32, which // encodes the node's children, wildcard bit and node type (as an index into @@ -542,9307 +546,9337 @@ const text = "9guacuiababia-goracleaningroks-theatree12hpalmasfjorden4tatarant" // [15 bits] text index // [ 6 bits] text length var nodes = [...]uint32{ - 0x329b43, - 0x2f0784, - 0x31f886, - 0x21a5c3, - 0x21a5c6, - 0x399386, - 0x3bf783, - 0x277104, - 0x2029c7, - 0x31f4c8, + 0x3346c3, + 0x358784, + 0x2ed746, + 0x21cb43, + 0x21cb46, + 0x399c86, + 0x3c3043, + 0x221ec4, + 0x205687, + 0x2ed388, 0x1a000c2, - 0x1f3cd07, - 0x37f349, - 0x2ddb4a, - 0x2ddb4b, - 0x23d883, - 0x23f745, - 0x2202ac2, - 0x28c4c4, - 0x2c9743, - 0x3734c5, - 0x2602c02, - 0x354743, - 0x2a85584, - 0x374945, - 0x2e0f242, - 0x229d8e, - 0x260543, - 0x3b9946, - 0x3205b42, - 0x378ac7, - 0x242446, - 0x36041c2, - 0x293b03, - 0x232946, - 0x38ec88, - 0x298246, - 0x359944, - 0x3a00ac2, - 0x34b549, - 0x22d607, - 0x2094c6, - 0x3679c9, - 0x224748, - 0x210204, - 0x2f9546, - 0x207b46, - 0x3e03742, - 0x239b06, - 0x216b8f, - 0x3cd40e, - 0x22ff04, - 0x311205, - 0x32dbc5, - 0x3aec89, - 0x2494c9, - 0x233147, - 0x221b46, - 0x21da43, - 0x420b602, - 0x233843, - 0x2b200a, - 0x4602043, - 0x3402c5, - 0x30c842, - 0x3ab409, - 0x4e00ec2, - 0x207e84, - 0x346706, - 0x2c54c5, - 0x376bc4, - 0x5646644, - 0x2030c3, - 0x23a844, - 0x5a00b82, - 0x3e3104, - 0x5f35d04, - 0x3e1b0a, + 0x1f44d87, + 0x385a09, + 0x2e460a, + 0x2e460b, + 0x238883, + 0x241b45, + 0x2204502, + 0x204504, + 0x2cdbc3, + 0x252f05, + 0x2602142, + 0x36c683, + 0x2a20c04, + 0x202145, + 0x2e03702, + 0x219e8e, + 0x267743, + 0x3bdcc6, + 0x3203f42, + 0x2ed8c7, + 0x244206, + 0x3603802, + 0x2979c3, + 0x235c86, + 0x21d4c8, + 0x29e686, + 0x3aa2c4, + 0x3a00b02, + 0x354109, + 0x224ac7, + 0x3804c6, + 0x3704c9, + 0x391a48, + 0x24fcc4, + 0x349446, + 0x3d4146, + 0x3e01902, + 0x2fe906, + 0x218e0f, + 0x3e960e, + 0x311c44, + 0x228685, + 0x339845, + 0x3b1ec9, + 0x24a949, + 0x236487, + 0x207a06, + 0x207943, + 0x4204302, + 0x216183, + 0x2b990a, + 0x4604d03, + 0x347a45, + 0x314102, + 0x3ac849, + 0x4e01d42, + 0x20ad44, + 0x2ffcc6, + 0x258405, + 0x37ce44, + 0x5721084, + 0x205d83, + 0x241004, + 0x5a016c2, + 0x300b84, + 0x5e02084, + 0x35030a, 0x6200882, - 0x2b82c7, - 0x36f9c8, - 0x7a01e02, - 0x335087, - 0x2f5404, - 0x2f5407, - 0x3ea985, - 0x381247, - 0x340886, - 0x349f84, - 0x3544c5, - 0x26d147, - 0x9205202, - 0x239c83, - 0x961a7c2, - 0x3b6143, - 0x9a04142, - 0x26e645, + 0x2631c7, + 0x2339c8, + 0x7a0c502, + 0x33e407, + 0x237c44, + 0x36ddc7, + 0x237c45, + 0x387787, + 0x35ca86, + 0x2a1784, + 0x3b9245, + 0x27a907, + 0x9218682, + 0x2fea83, + 0x9620102, + 0x3dabc3, + 0x9a0f202, + 0x289b85, 0x9e00202, - 0x379b84, - 0x239305, - 0x22fe47, - 0x2f78ce, - 0x2c4ac4, - 0x219684, - 0x207e43, - 0x3bc989, - 0x2e700b, - 0x2f8288, - 0x32acc8, - 0x330248, - 0x3d0bc8, - 0xa36780a, - 0x381147, - 0x3d7f06, - 0xa61a602, - 0x271d03, - 0x3dfa43, - 0x3e1204, - 0x271d43, - 0x396303, - 0x17385c2, - 0xaa02b82, - 0x28ffc5, - 0x266446, - 0x2a59c4, - 0x3a94c7, - 0x24f486, - 0x2d64c4, - 0x3c13c7, - 0x2194c3, - 0xb6e29c2, - 0xbb27082, - 0xbe27bc2, - 0x227bc6, + 0x37fe84, + 0x23cfc5, + 0x311b87, + 0x30420e, + 0x2ca444, + 0x28fac4, + 0x204243, + 0x324fc9, + 0x2ec50b, + 0x2fd348, + 0x335848, + 0x33b708, + 0x3d6448, + 0xa37030a, + 0x387687, + 0x2542c6, + 0xa61cb82, + 0x378743, + 0x3e0b43, + 0x3e2084, + 0x378783, + 0x397143, + 0x1740a82, + 0xaa02742, + 0x292d05, + 0x35a086, + 0x2aa1c4, + 0x3a9487, + 0x251c86, + 0x2da804, + 0x3c5787, + 0x202743, + 0xb6e7fc2, + 0xba1da82, + 0xbe16c02, + 0x21db46, 0xc200282, - 0x269185, - 0x339b03, - 0x3d9704, - 0x2fe784, - 0x2fe785, - 0x3ef083, - 0xc658843, - 0xca06f02, - 0x20d3c5, - 0x20d3cb, - 0x20e18b, - 0x2045c4, - 0x20d7c9, - 0x20fcc4, - 0xce10602, - 0x210e43, - 0x2113c3, - 0xd20a182, - 0x21e78a, - 0xd602a02, - 0x28c745, - 0x2f348a, - 0x2510c4, - 0x212a43, - 0x213104, - 0x2151c3, - 0x2151c4, - 0x2151c7, - 0x217005, - 0x217c06, - 0x2183c6, - 0x21a643, - 0x21ffc8, - 0x213743, - 0xda037c2, - 0x230d08, - 0x2984cb, - 0x2284c8, - 0x229146, - 0x22a187, - 0x22d208, - 0xf205f42, - 0xf6272c2, - 0x27c848, - 0x2370c7, - 0x314b85, - 0xfb14b88, - 0xfe23848, - 0x2551c3, - 0x2319c4, - 0x399402, - 0x10232002, - 0x106083c2, - 0x10e32382, - 0x232383, - 0x11203702, - 0x30e183, - 0x220ec4, - 0x207243, - 0x2101c4, - 0x24f18b, - 0x203703, - 0x2fa346, - 0x28cfc4, - 0x2d06ce, - 0x384b05, - 0x277848, - 0x3b9a47, - 0x3b9a4a, - 0x223203, - 0x2f0587, - 0x2e71c5, - 0x238b84, - 0x25fc86, - 0x25fc87, - 0x36d4c4, - 0x117145c4, - 0x3c5a04, - 0x24ed84, - 0x3d1606, - 0x224dc3, - 0x3d5608, - 0x3d7348, - 0x29e303, - 0x21e743, - 0x343a04, - 0x356943, - 0x11e035c2, - 0x122b79c2, - 0x202546, - 0x2f9643, - 0x3b2fc4, - 0x12648fc2, - 0x29ed03, - 0x381a43, - 0x21ce82, - 0x12a02102, - 0x2dd246, - 0x21e247, - 0x36f747, - 0x2ef505, - 0x348b84, - 0x2fbb05, - 0x2d1bc7, - 0x2ba349, - 0x2bbdc6, - 0x2ef406, - 0x13a12fc2, - 0x318508, - 0x321246, - 0x30a6c5, - 0x309f47, - 0x310244, - 0x310245, - 0x373104, - 0x373108, - 0x13e0d482, - 0x14200482, - 0x254206, - 0x200488, - 0x328205, - 0x34c246, - 0x34ea08, - 0x35d3c8, - 0x14602cc5, - 0x17243244, - 0x285687, - 0x1760f742, - 0x17ab90c2, - 0x18e05842, - 0x346805, - 0x19a96945, - 0x277e86, - 0x3b6547, - 0x3ba447, - 0x19e29f43, - 0x33f007, - 0x3cc1c8, - 0x27635149, - 0x229f47, - 0x235887, - 0x342548, - 0x236086, - 0x238686, - 0x23b74c, - 0x23cd0a, - 0x23d8c7, - 0x23f60b, - 0x240307, - 0x24030e, - 0x27a40ec4, - 0x241284, - 0x244887, - 0x253c47, - 0x248706, - 0x248707, - 0x32b4c7, - 0x261c03, - 0x27e0f1c2, - 0x249ec6, - 0x249eca, - 0x24ab0b, - 0x24c887, - 0x24d305, - 0x24d783, - 0x24df46, - 0x24df47, - 0x38f183, - 0x28200102, - 0x24eaca, - 0x28729c42, - 0x28ba8ac2, - 0x28e48e02, - 0x29238fc2, - 0x251805, - 0x252204, - 0x29e01bc2, - 0x3e3185, - 0x24b103, - 0x2a4585, - 0x202444, - 0x216384, - 0x2dfb06, - 0x2608c6, - 0x20d5c3, - 0x3d4804, - 0x340b43, - 0x2ae00d02, - 0x22a504, - 0x22a506, - 0x257a85, - 0x2b5a46, - 0x30a048, - 0x2138c4, - 0x31de08, - 0x38ea45, - 0x281d88, - 0x2d9f06, - 0x21ba87, - 0x27f784, - 0x2c27f786, - 0x2c605483, - 0x3ac1c3, - 0x2cc488, - 0x333444, - 0x2ca131c7, - 0x24c106, - 0x2f1289, - 0x366948, - 0x330988, - 0x332384, - 0x3d69c3, - 0x24b1c2, - 0x2d25d9c2, - 0x2d61c982, - 0x31f383, - 0x2da02b02, - 0x38f104, - 0x288c46, - 0x23eb43, - 0x2cd707, - 0x385d43, - 0x2c4b88, - 0x229545, - 0x26c9c3, - 0x239285, - 0x2393c4, - 0x3a6f86, - 0x22bb06, - 0x22fd86, - 0x25db84, - 0x2406c3, - 0x2de46882, - 0x2e23fd85, - 0x200843, - 0x2ea03402, - 0x220203, - 0x205a45, - 0x2ee24d03, - 0x2f63e6c9, - 0x2fa00942, - 0x30204f42, - 0x29bc85, - 0x21ecc6, - 0x29d146, - 0x308d88, - 0x308d8b, - 0x345ecb, - 0x38a445, - 0x2e2f49, - 0x1602642, - 0x31fb88, - 0x20dac4, - 0x30a03642, - 0x33dfc3, - 0x31253e06, - 0x3160ea82, - 0x3d11c8, - 0x31a06cc2, - 0x26f54a, - 0x322771c3, - 0x32b7f986, - 0x315d88, - 0x398846, - 0x3957c7, - 0x216d87, - 0x2076ca, - 0x251144, - 0x364a84, - 0x37ee49, - 0x32fb9585, - 0x229dc6, - 0x22e783, - 0x282a04, - 0x3320a6c4, - 0x20a6c7, - 0x33656c07, - 0x29ed44, - 0x2400c5, - 0x277f48, - 0x252d07, - 0x252f87, - 0x33a18b02, - 0x3a8084, - 0x2a51c8, - 0x2547c4, - 0x259344, - 0x259745, - 0x259887, - 0x34689bc9, - 0x25a444, - 0x25b309, - 0x25b9c8, - 0x25c604, - 0x25c607, - 0x25d7c3, - 0x25e587, - 0x34a00c02, - 0x16c7402, - 0x25f746, - 0x2bf047, - 0x2600c4, - 0x261687, - 0x263287, - 0x263883, - 0x34e62642, - 0x213802, - 0x2649c3, - 0x2649c4, - 0x2649cb, - 0x32adc8, - 0x213804, - 0x265e85, - 0x2676c7, - 0x2f4d05, - 0x31b2ca, - 0x26ac43, - 0x35202e42, - 0x215a44, - 0x271f49, - 0x275843, - 0x275907, - 0x330689, - 0x3929c8, - 0x20f283, - 0x28f107, - 0x27e1c3, - 0x295f04, - 0x2975c9, - 0x29a286, - 0x3a3f03, - 0x202a82, - 0x26dc83, - 0x2c7207, - 0x39a245, - 0x2ca6c6, - 0x29e6c4, - 0x37bf05, - 0x28fa83, - 0x21c186, - 0x218143, - 0x20d9c2, - 0x258804, - 0x356a5c02, - 0x35b10a03, - 0x35e038c2, - 0x2574c3, - 0x218844, - 0x242047, - 0x21f406, - 0x20a682, - 0x36204682, - 0x330bc4, - 0x36a15342, - 0x36e05d02, - 0x205d04, - 0x205d05, - 0x3ce545, - 0x3b6ec6, - 0x37208442, - 0x3d5a05, - 0x3d9e45, - 0x296883, - 0x239d46, - 0x212005, - 0x227b42, - 0x35d005, - 0x227b44, - 0x230783, - 0x2309c3, - 0x3760ccc2, - 0x26d347, - 0x267884, - 0x267889, - 0x282904, - 0x2967c3, - 0x2c3e48, - 0x37a967c4, - 0x2967c6, - 0x2b5543, - 0x266803, - 0x2e9c43, - 0x37f003c2, - 0x392ec2, - 0x38200642, - 0x33b848, - 0x213508, - 0x3c4846, - 0x2916c5, - 0x234b85, - 0x209fc7, - 0x3868a905, - 0x21e682, - 0x38aa71c2, - 0x38e00042, - 0x321ec8, - 0x318445, - 0x302d04, - 0x24da05, - 0x2562c7, - 0x295d04, - 0x262442, - 0x3922cf82, - 0x351b84, - 0x230607, - 0x29c207, - 0x381204, - 0x3e0443, - 0x29e244, - 0x29e248, - 0x396389c6, - 0x25fb0a, - 0x35b6c4, - 0x2a4c08, - 0x23ff44, - 0x22a286, - 0x2a7184, - 0x346b06, - 0x267b49, - 0x223d07, - 0x3a6c43, - 0x39a04d02, - 0x3c3943, - 0x210802, - 0x39e0a442, - 0x26e406, - 0x24bc88, - 0x2b6347, - 0x233549, - 0x2b6509, - 0x2b9a05, - 0x2bb609, - 0x2bc705, - 0x2bd545, - 0x2be748, - 0x3a207304, - 0x3a634307, - 0x235c43, - 0x2be947, - 0x235c46, - 0x2bf5c7, - 0x2b4445, - 0x2354c3, - 0x3aa3cac2, - 0x212c84, - 0x3ae05302, - 0x3b21d7c2, - 0x30db46, - 0x36f945, - 0x2c2507, - 0x383d03, - 0x238404, - 0x20f583, - 0x236e03, - 0x3b603842, - 0x3be075c2, - 0x399484, - 0x262603, - 0x308a45, - 0x3c209c42, - 0x3ca08102, - 0x39f646, - 0x2f7804, - 0x2fd3c4, - 0x2fd3ca, - 0x3d2005c2, - 0x203e83, - 0x310f0a, - 0x3a8488, - 0x3d658104, - 0x2005c3, - 0x249bc3, - 0x34c689, - 0x27ddc9, - 0x2cd806, - 0x3da5e043, - 0x2baf8d, - 0x328846, - 0x35c70b, - 0x3de0f002, - 0x2f9388, - 0x42a200c2, - 0x42e019c2, - 0x2c0c85, - 0x43203382, - 0x2b2507, - 0x2121c3, - 0x2121c8, - 0x43605fc2, - 0x39ec44, - 0x3e0643, - 0x24b206, - 0x2274c4, - 0x21e703, - 0x44a06702, - 0x38a3c4, - 0x2c6045, - 0x2c6e07, - 0x28d743, - 0x2c7dc3, - 0x161a742, - 0x2c8483, - 0x2c8803, - 0x44e00c42, - 0x276f44, - 0x2408c6, - 0x328cc3, - 0x2c8c83, - 0x45258e02, - 0x258e08, - 0x2c9a44, - 0x204ec6, - 0x393047, - 0x2a2046, - 0x2cc404, - 0x53604842, - 0x235b0b, - 0x2e894e, - 0x21fa8f, - 0x2e1803, - 0x53e6dc42, - 0x161d942, - 0x54203e42, - 0x2a94c3, - 0x28d243, - 0x2bc506, - 0x34efc6, - 0x2d8bc7, - 0x3835c4, - 0x5461ee02, - 0x54a17682, - 0x240d85, - 0x31a707, - 0x2cb806, - 0x54e78102, - 0x38d184, - 0x2d12c3, - 0x55208042, - 0x5577c743, - 0x2d2684, - 0x2d8149, - 0x55adfe42, - 0x55e19f42, - 0x254b45, - 0x562e0602, - 0x56a065c2, - 0x362607, - 0x37f5cb, - 0x216b45, - 0x2610c9, - 0x268b06, - 0x56e08484, - 0x208489, - 0x36e507, - 0x3e2d07, - 0x225903, - 0x2f9206, - 0x352a87, - 0x21b643, - 0x2ab186, - 0x5762cbc2, - 0x57a2b342, - 0x215703, - 0x3ab5c5, - 0x223b47, - 0x241886, - 0x39a1c5, - 0x267804, - 0x2b3985, - 0x30c904, - 0x57e04442, - 0x2deb84, - 0x2d1084, - 0x3ec38d, - 0x2d1089, - 0x25c088, - 0x267384, - 0x209c05, - 0x32b287, - 0x3470c4, - 0x3d5d07, - 0x242f45, - 0x582b7144, - 0x2b2b85, - 0x20c444, - 0x3c8586, - 0x3b6345, - 0x58601a82, - 0x22b303, - 0x3018c3, - 0x244bc4, - 0x244bc5, - 0x386dc6, - 0x255d45, - 0x2680c4, - 0x58b0b703, - 0x58e12686, - 0x222705, - 0x222bc5, - 0x3b6444, - 0x2fde43, - 0x35b74c, - 0x592c5b02, - 0x59601742, - 0x59a0b982, - 0x2280c3, - 0x2280c4, - 0x59e0fd02, - 0x3619c8, - 0x227904, - 0x396a86, - 0x5a22d442, - 0x5a609cc2, - 0x5aa00b42, - 0x28ae85, - 0x286446, - 0x35bc04, - 0x232e86, - 0x211c46, - 0x2097c3, - 0x5ae99c0a, - 0x296705, - 0x2b1fc3, - 0x20e986, - 0x5b20e989, - 0x22a9c7, - 0x3d3048, - 0x224609, - 0x2ba4c8, - 0x2503c6, - 0x208143, - 0x5b602c82, - 0x3adb08, - 0x5ba54902, - 0x5be026c2, - 0x2335c3, - 0x2f7305, - 0x24c284, - 0x245489, - 0x238dc4, - 0x2472c8, - 0x5c610843, - 0x5ca643c4, - 0x21ed08, - 0x5ce08f02, - 0x23f002, - 0x32db45, - 0x270a09, - 0x219c03, - 0x319ac4, - 0x376504, - 0x267c43, - 0x29190a, - 0x5d20bdc2, - 0x5d612ac2, - 0x2e2943, - 0x39c503, - 0x1635002, - 0x271503, - 0x5da1dfc2, - 0x5de0dec2, - 0x5e292e44, - 0x292e46, - 0x27e5c4, - 0x28bc83, - 0x3d8d43, - 0x5e706943, - 0x24ae86, - 0x32df05, - 0x2e6707, - 0x2e6646, - 0x2e6c08, - 0x2e6e06, - 0x20dec4, - 0x2abf8b, - 0x2e9703, - 0x2e9705, - 0x226e42, - 0x362902, - 0x5ea51882, - 0x5ee0f782, - 0x21ee43, - 0x5f27eec2, - 0x27eec3, - 0x2ea783, - 0x5fa03b02, - 0x5feedcc6, - 0x29d686, - 0x60246542, - 0x60611402, - 0x60a30a02, - 0x60e05582, - 0x6120d082, - 0x61604342, - 0x21a083, - 0x3b6006, - 0x61a22d84, - 0x33bc86, - 0x28d5c4, - 0x20a383, - 0x62603bc2, - 0x2048c2, - 0x2350c3, - 0x62a127c3, - 0x3c97c7, - 0x3b6247, - 0x67e582c7, - 0x348507, - 0x2166c3, - 0x68277a44, - 0x31d704, - 0x31d70a, - 0x3ba585, - 0x6863b542, - 0x261643, - 0x68a00602, - 0x25c743, - 0x3c3903, - 0x69200582, - 0x3cc144, - 0x20a1c4, - 0x3cf585, - 0x32c5c5, - 0x2fd606, - 0x3a7586, - 0x69616602, - 0x69a01242, - 0x2f9bc5, - 0x29d392, - 0x2af9c6, - 0x209843, - 0x2dd486, - 0x3d19c5, - 0x161e7c2, - 0x71e09f02, - 0x209f03, - 0x211683, - 0x3a5bc3, - 0x72214542, - 0x21d343, - 0x7261c682, - 0x249c83, - 0x3856c8, - 0x25d543, - 0x2b9886, - 0x3e8dc7, - 0x34d686, - 0x34d68b, - 0x28d507, - 0x30b684, - 0x72e07c42, - 0x2ca605, - 0x73212783, - 0x22d043, - 0x3c7445, - 0x2165c3, - 0x73a165c6, - 0x3ddfc3, - 0x20f0c4, - 0x2003c6, - 0x30aac6, - 0x73e1f483, - 0x2382c7, - 0x34c587, - 0x2ad945, - 0x31cec6, - 0x21a683, - 0x76ac9683, - 0x76e00a82, - 0x7723e044, - 0x3d5409, - 0x218b85, - 0x30a444, - 0x388b08, - 0x328b05, - 0x7775e205, - 0x24d489, - 0x209583, - 0x3d9c04, - 0x77a0f102, - 0x21f043, - 0x77e78302, - 0x278306, - 0x162e6c2, - 0x782135c2, - 0x28ad88, - 0x29e203, - 0x2b2ac7, - 0x2bd9c5, - 0x2cb045, - 0x2cb48b, - 0x2f8f86, - 0x2cb686, - 0x27ea44, - 0x215506, - 0x786f9788, - 0x293ec3, - 0x26b483, - 0x26b484, - 0x3e5004, - 0x2fe047, - 0x316985, - 0x78b1f402, - 0x78e06582, - 0x79606585, - 0x298f04, - 0x3e514b, - 0x2fe688, - 0x253b44, - 0x79a58e42, - 0x79e53ac2, - 0x3d72c3, - 0x2ff984, - 0x2ffc45, - 0x3006c7, - 0x7a302844, - 0x381304, - 0x7a602782, - 0x3885c9, - 0x303d45, - 0x216e05, - 0x3045c5, - 0x7aa02783, - 0x244084, - 0x24408b, - 0x305d44, - 0x30600b, - 0x306885, - 0x21fbca, - 0x307048, - 0x30724a, - 0x307ac3, - 0x307aca, - 0x7b2189c2, - 0x7b685042, - 0x7baa31c3, - 0x7bed2102, - 0x309ec3, - 0x7c30afc2, - 0x7c73a282, - 0x30c584, - 0x220106, - 0x232bc5, - 0x3101c3, - 0x3cdb06, - 0x20ef45, - 0x255884, - 0x7ca00902, - 0x2a1b84, - 0x2e2bca, - 0x2c5747, - 0x3e26c6, - 0x24eec7, - 0x249f03, - 0x2d26c8, - 0x3eb80b, - 0x2282c5, - 0x376645, - 0x376646, - 0x2fd9c4, - 0x21cb08, - 0x207a43, - 0x207a44, - 0x207a47, - 0x30b2c6, - 0x33e886, - 0x2d050a, - 0x25b384, - 0x27d94a, - 0x7cf83846, - 0x383847, - 0x265f07, - 0x2696c4, - 0x2696c9, - 0x220a45, - 0x36e343, - 0x22bcc3, - 0x7d225f83, - 0x298ac4, - 0x7d600682, - 0x2f08c6, - 0x7dad3105, - 0x2dd6c5, - 0x245d86, - 0x2c8b44, - 0x7de01082, - 0x245e84, - 0x7e209942, - 0x237a05, - 0x3c78c4, - 0x7f62cac3, - 0x7fa116c2, - 0x2116c3, - 0x21d486, - 0x7fe01782, - 0x32d608, - 0x22a844, - 0x22a846, - 0x39cd86, - 0x80267784, - 0x21fe05, - 0x243148, - 0x255547, - 0x350587, - 0x35058f, - 0x2a50c6, - 0x248083, - 0x24d684, - 0x215c83, - 0x22a3c4, - 0x3acac4, - 0x80608382, - 0x2b76c3, - 0x337703, - 0x80a036c2, - 0x2036c3, - 0x38f1c3, - 0x21708a, - 0x314d47, - 0x25cbcc, - 0x25ce86, - 0x25e406, - 0x262287, - 0x80e65507, - 0x269d89, - 0x81230e44, - 0x81a1ee82, - 0x81e033c2, - 0x2d08c6, - 0x2380c4, - 0x38c746, - 0x26cb88, - 0x3ab684, - 0x32ea46, - 0x29d105, - 0x82280408, - 0x24e043, - 0x282ac5, - 0x396603, - 0x216f03, - 0x216f04, + 0x3676c5, + 0x341fc3, + 0x3dc584, + 0x305544, + 0x305545, + 0x3f2583, + 0xc60bec3, + 0xca0aa82, + 0x20e485, + 0x20e48b, + 0x30f70b, + 0x211d44, + 0x20ed49, + 0x20fdc4, + 0xce10482, + 0x210cc3, + 0x211243, + 0xd211f02, + 0x216f8a, + 0xd602642, + 0x204785, + 0x2f8cca, + 0x24f984, + 0x2139c3, + 0x2153c4, + 0x218043, + 0x218044, + 0x218047, + 0x219285, + 0x21a286, + 0x21ae86, + 0x21cbc3, + 0x2234c8, 0x215a03, - 0x82639d02, - 0x82a04082, - 0x36e209, - 0x28ac85, - 0x28af84, - 0x28c845, - 0x204084, - 0x2e43c7, - 0x35b485, - 0x8324a3c4, - 0x2d1548, - 0x2d2e86, - 0x2d4204, - 0x2d53c8, - 0x83605f82, - 0x2e7cc4, - 0x315484, - 0x337f87, - 0x83a05f84, - 0x21a542, - 0x83e12882, - 0x254a43, - 0x254a44, - 0x2ae6c3, - 0x2bfcc5, - 0x8420c402, - 0x2f8dc5, - 0x246f82, - 0x312685, - 0x2e15c5, - 0x8460c582, - 0x3819c4, - 0x84a04942, - 0x208d46, - 0x25b846, - 0x270b48, - 0x2da1c8, - 0x30dac4, - 0x2fb0c5, - 0x2ba8c9, - 0x31fcc4, - 0x3ed084, - 0x224b03, - 0x207803, - 0x84e07805, - 0x268285, - 0x2800c4, - 0x29ec82, - 0x329e83, - 0x85203682, - 0x85601402, - 0x32d0c5, - 0x289807, - 0x286f44, - 0x224809, - 0x2e2d09, - 0x28a843, - 0x28a848, - 0x3917c9, - 0x222207, - 0x85b2e885, - 0x354f06, - 0x355546, - 0x356a05, - 0x2d1185, - 0x85e01882, - 0x375005, - 0x2cf188, - 0x2dcac6, - 0x862d4807, - 0x306ac4, - 0x2bde47, - 0x3a3946, - 0x866088c2, - 0x386ac6, - 0x311d0a, - 0x312585, - 0x86a136c2, - 0x86e14cc2, - 0x27cfc6, - 0x8729c3c7, - 0x87601b42, - 0x237fc3, - 0x2f0206, - 0x2d9fc4, - 0x36f086, - 0x3d51c6, - 0x37378a, - 0x200e05, - 0x384046, - 0x3c3743, - 0x3c3744, - 0x87a03142, - 0x321203, - 0x87e28102, - 0x320e43, - 0x88311184, - 0x2db744, - 0x887e954a, - 0x229c83, - 0x34c847, - 0x3dcdc6, - 0x268644, - 0x243502, - 0x2b5902, - 0x88a007c2, - 0x231403, - 0x265cc7, - 0x2007c7, - 0x297f84, - 0x2fcd07, - 0x3007c6, - 0x237207, - 0x227cc4, - 0x221705, - 0x201985, - 0x88e15642, - 0x21a706, - 0x226243, - 0x228882, - 0x228886, - 0x89227202, - 0x89608ec2, - 0x220d05, - 0x89a01c82, - 0x89e00fc2, - 0x398085, - 0x2e9a45, - 0x30c185, - 0x8a66e003, - 0x224e45, - 0x2f9047, - 0x2b6985, - 0x200fc5, - 0x277944, - 0x328986, - 0x24c344, - 0x8aa008c2, - 0x8b6dc005, - 0x213b47, - 0x20f2c8, - 0x278606, - 0x27860d, - 0x27db89, - 0x27db92, - 0x333505, - 0x33e543, - 0x8ba10702, - 0x31be44, - 0x3288c3, - 0x3888c5, - 0x3dfac5, - 0x8be6ca02, - 0x26ca03, - 0x8c231342, - 0x8ca27442, - 0x8ce00082, - 0x219645, - 0x3a6d43, - 0x8d205182, - 0x8d609e42, - 0x3cc106, - 0x27988a, - 0x24e2c3, - 0x244b43, - 0x2f1c43, - 0x8f201b02, - 0x9da55202, - 0x9e20d682, - 0x204c02, - 0x329c89, - 0x2df244, - 0x2eb948, - 0x9e708602, - 0x9ee08602, - 0x35f645, - 0x23fa48, - 0x23b2c8, - 0x30010c, - 0x2450c3, - 0x9f273ec2, - 0x9f612182, - 0x38c146, - 0x313dc5, - 0x2eef43, - 0x256186, - 0x313f06, - 0x24f243, - 0x3153c3, - 0x315806, - 0x317284, - 0x26f646, - 0x240fc4, - 0x317944, - 0x318c4a, - 0x9fa52ec2, - 0x25d945, - 0x31a20a, - 0x31a145, - 0x31b804, - 0x31b906, - 0x31ba84, - 0x21f306, - 0x9fe08902, - 0x21a246, - 0x23ab05, - 0x3c35c7, - 0x3cb1c6, - 0x262484, - 0x2ef1c7, - 0x224045, - 0x323447, - 0x21e087, - 0x21e08e, - 0x28cf06, - 0x3266c5, - 0x205ec7, - 0x3d9cc7, - 0x211845, - 0x213e04, - 0x325f42, - 0x24bb47, - 0x287304, - 0x249b04, - 0x2d77cb, - 0xa0225103, - 0x307f07, - 0x225104, - 0x308207, - 0x22f403, - 0x34de8d, - 0x31dc88, - 0xa06348c4, - 0x24a2c5, - 0x31e145, - 0x31e583, - 0xa0a2a742, - 0x3211c3, - 0x321743, - 0x213704, - 0x2262c5, - 0x2263c7, - 0x3c37c6, - 0x39ab03, - 0x22b7cb, - 0x27114b, - 0x2b6d8b, - 0x2bbb4b, - 0x2c858a, - 0x2dcc8b, - 0x2f9e0b, - 0x31418c, - 0x317d4b, - 0x363911, - 0x37848a, - 0x3bbfcb, - 0x3ee8cc, - 0x322a0b, - 0x32370a, - 0x323d8a, - 0x324c0e, - 0x32520b, - 0x3254ca, - 0x326d51, - 0x32718a, - 0x32768b, - 0x327bce, - 0x329f4c, - 0x32a3cb, - 0x32a68e, - 0x32aa0c, - 0x32b94a, - 0x32ca8c, - 0xa0f2d80a, - 0x32e048, - 0x32f4c9, - 0x3336ca, - 0x33394a, - 0x333bcb, - 0x336e8e, - 0x3379d1, - 0x340f89, - 0x3411ca, - 0x341dcb, - 0x34328d, - 0x34410a, - 0x344756, - 0x345acb, - 0x34748a, - 0x347dca, - 0x34980b, - 0x34b3c9, - 0x34e809, - 0x34f3cd, - 0x350e0b, - 0x3526cb, - 0x353309, - 0x35394e, - 0x353f8a, - 0x354cca, - 0x35530a, - 0x355a0b, - 0x35624b, - 0x35784d, - 0x35af8d, - 0x35cc90, - 0x35d14b, - 0x35e34c, - 0x35fc0b, - 0x36210b, - 0x36548e, - 0x36614b, - 0x36614d, - 0x36b54b, - 0x36bfcf, - 0x36c38b, - 0x36d08a, - 0x36e789, - 0x370b09, - 0xa1370e8b, - 0x37114e, - 0x3714ce, - 0x37628b, - 0x37704f, - 0x379e4b, - 0x37a10b, - 0x37a3ca, - 0x37f1c9, - 0x38248f, - 0x38b98c, - 0x38cbcc, - 0x38dace, - 0x38e28f, - 0x38e64e, - 0x38f2d0, - 0x38f6cf, - 0x390b4e, - 0x391bcc, - 0x391ed1, - 0x392312, - 0x392bd1, - 0x39320e, - 0x393a4b, - 0x393a4e, - 0x393dcf, - 0x39418e, - 0x394510, - 0x394913, - 0x394dd1, - 0x39520c, - 0x39550e, - 0x39598c, - 0x395ed3, - 0x396c10, - 0x39708c, - 0x39738c, - 0x397c4b, - 0x39908e, - 0x39958b, - 0x399ccb, - 0x39ad0c, - 0x3a0d8a, - 0x3a18cc, - 0x3a1bcc, - 0x3a1ec9, - 0x3a430b, - 0x3a45c8, - 0x3a4d89, - 0x3a4d8f, - 0x3a664b, - 0xa17a894a, - 0x3a9f0c, - 0x3aae4b, - 0xa1bab109, - 0x3abbc8, - 0x3abf8b, - 0x3ace8a, - 0x3ad10a, - 0x3ad38b, - 0x3ad88c, - 0x3ae8c9, - 0x3aeb08, - 0x3b17cb, - 0x3b598b, - 0x3b898e, - 0x3ba1cb, - 0x3bb94b, - 0x3c79cb, - 0x3c7c89, - 0x3c88cd, - 0x3dedca, - 0x3e39d7, - 0x3e4658, - 0x3e77c9, - 0x3e8a0b, - 0x3e9994, - 0x3e9e8b, - 0x3ea40a, - 0x3eafca, - 0x3eb24b, - 0x3ec790, - 0x3ecb91, - 0x3ed18a, - 0x3edecd, - 0x3ee5cd, - 0x3efa8b, - 0x21a803, - 0xa1e02843, - 0x2181c6, - 0x3d2985, - 0x2eaf47, - 0x2c2006, - 0xa2209302, - 0x2700c9, - 0x237744, - 0x2f7d08, - 0x225ec3, - 0x31bd87, - 0xa2601c42, - 0x2c2543, - 0xa2a04182, - 0x2e3786, - 0x2e4d84, - 0x2efc44, - 0x2021c3, - 0xa32e0642, - 0xa3632284, - 0x269607, - 0xa3a32642, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x10bb08, - 0x20bc03, - 0x2000c2, - 0x7ffc8, - 0x205842, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x217083, - 0x33d716, - 0x369b53, - 0x2fcb89, - 0x285588, - 0x2ca489, - 0x31a386, - 0x351bd0, - 0x3eba93, - 0x30b388, - 0x28bd87, - 0x28de87, - 0x2b36ca, - 0x354849, - 0x335dc9, - 0x29f80b, - 0x340886, - 0x32aeca, - 0x229146, - 0x2361c3, - 0x26d285, - 0x3d5608, - 0x290e4d, - 0x3468cc, - 0x23a7c7, - 0x3a728d, - 0x243244, - 0x23b4ca, - 0x23c84a, - 0x23cd0a, - 0x205847, - 0x248547, - 0x24ba84, - 0x27f786, - 0x384a84, - 0x224d08, - 0x238e09, - 0x308d86, - 0x308d88, - 0x24fa4d, - 0x2e2f49, - 0x315d88, - 0x216d87, - 0x220f4a, - 0x2bf046, - 0x33ed44, - 0x211e87, - 0x2f0aca, - 0x23cf4e, - 0x28a905, - 0x29bf4b, - 0x231149, - 0x27ddc9, - 0x2b2347, - 0x3da84a, - 0x2f5547, - 0x2e8a89, - 0x346d88, - 0x37078b, - 0x2f7305, - 0x25bf4a, - 0x2307c9, - 0x38638a, - 0x3efd8b, - 0x211d8b, - 0x29f595, - 0x2d8345, - 0x216e05, - 0x24408a, - 0x2722ca, - 0x32ee87, - 0x216e43, - 0x2d0848, - 0x2ece4a, - 0x22a846, - 0x266949, - 0x280408, - 0x2d4204, - 0x395c89, - 0x2da1c8, - 0x2d9e47, - 0x2dc006, - 0x213b47, - 0x3a2947, - 0x24ac85, - 0x2b7f0c, - 0x24a2c5, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x205842, - 0x229f43, - 0x2127c3, - 0x20bc03, - 0x21f483, - 0x229f43, - 0x2127c3, - 0xbc03, - 0x25d543, - 0x21f483, - 0x1df183, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x7ffc8, - 0x205842, - 0x229f43, - 0x234f87, - 0x98704, - 0x2127c3, - 0x37344, - 0x21f483, - 0xef45, - 0x205842, - 0x201902, - 0x30b602, - 0x205fc2, - 0x202a42, - 0x229ac2, - 0x164ca, - 0x14244b, - 0x5b547, - 0x1b8586, - 0xa1606, - 0x60209, - 0xebb49, - 0x1a3dc7, - 0x15b4e8a, - 0x1314e, - 0x10ad89, - 0x482cac3, - 0x98307, - 0x149c86, - 0x5ec3, - 0x11d6c5, - 0xc1, - 0x5229f43, - 0x224d03, - 0x28c6c3, - 0x2e9c43, - 0x25e043, - 0x219c03, - 0x2ee0c6, - 0x2127c3, - 0x21f483, + 0xda03ac2, + 0x365d08, + 0x29e90b, + 0x22c908, + 0x22d286, + 0x22d907, + 0x22f608, + 0xf201002, + 0xf629b02, + 0x27f688, + 0x23b007, + 0x213f05, + 0xfb1cc08, + 0xffb11c8, + 0x285f03, + 0x235504, + 0x399d02, + 0x10235982, + 0x1060b282, + 0x10e36f02, 0x236f03, - 0x7ffc8, - 0x20a944, - 0x264187, - 0x202203, - 0x261a44, - 0x225f43, - 0x2455c3, - 0x2e9c43, - 0xf1a47, - 0x9c4, - 0x14c3, - 0x172f85, - 0x66000c2, - 0x58843, - 0x6a05842, - 0x6e96109, - 0x709b3c9, - 0x9b80d, - 0x9bb4d, - 0x30b602, - 0x58104, - 0x172fc9, - 0x2003c2, - 0x7658008, - 0x105744, - 0x320a03, - 0x7ffc8, - 0x87304, - 0x14076c2, - 0x14005c2, - 0x14076c2, - 0x1517b46, - 0x23d9c3, - 0x2c9ec3, - 0x7e29f43, - 0x23b4c4, - 0x8624d03, - 0x8ee9c43, - 0x203842, - 0x258104, - 0x2127c3, - 0x239503, - 0x200f82, - 0x21f483, - 0x222402, - 0x30bd83, - 0x201782, - 0x2b32c3, - 0x221943, - 0x205242, - 0x7ffc8, - 0x829db89, - 0x22003, - 0x23d9c3, - 0x3d7348, - 0x8a39503, - 0x200f82, - 0x30bd83, - 0x201782, - 0x2b32c3, - 0x221943, - 0x205242, - 0x25ce87, - 0x30bd83, - 0x201782, - 0x2b32c3, - 0x221943, - 0x205242, - 0x229f43, - 0x2b82, - 0x24dc3, - 0x3642, - 0x6cc2, - 0x4682, - 0x2c82, - 0x1b02, - 0x2842, - 0x258843, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x25e043, - 0x219c03, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x202082, - 0x202783, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x9a03, - 0x1c682, - 0x258843, - 0x205842, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x2127c3, - 0x21f483, - 0x32e885, - 0x26ca02, + 0x11203d82, + 0x315983, + 0x254ac4, + 0x203d83, + 0x24fc84, + 0x25198b, + 0x2063c3, + 0x301806, + 0x26c004, + 0x2d85ce, + 0x3259c5, + 0x279e08, + 0x3bddc7, + 0x3bddca, + 0x23c843, + 0x358587, + 0x2ec6c5, + 0x23c844, + 0x266e86, + 0x266e87, + 0x376204, + 0x1171c644, + 0x3f3784, + 0x251584, + 0x209f46, + 0x213cc3, + 0x213cc8, + 0x21ff08, + 0x2a55c3, + 0x216f43, + 0x34d4c4, + 0x35ee03, + 0x11e06282, + 0x12227e82, + 0x205206, + 0x349543, + 0x27b604, + 0x12611582, + 0x211583, + 0x23d283, + 0x21f9c2, + 0x12a045c2, + 0x2e0c86, + 0x22ad87, + 0x233747, + 0x2fc645, + 0x3b7c84, + 0x2e0085, + 0x2d5187, + 0x3594c9, + 0x3b1646, + 0x2fc546, + 0x13a12f82, + 0x320588, + 0x32c046, + 0x333c45, + 0x317507, + 0x3bb044, + 0x3bb045, + 0x3bf004, + 0x3bf008, + 0x13e02882, + 0x14200482, + 0x38e506, + 0x200488, + 0x3402c5, + 0x357386, + 0x361608, + 0x3653c8, + 0x14605985, + 0x1722f8c4, + 0x2849c7, + 0x17607e42, + 0x17b6e3c2, + 0x18e0b642, + 0x2ffdc5, + 0x19a9a145, + 0x27a446, + 0x3dafc7, + 0x3e6887, + 0x19e1a043, + 0x34af07, + 0x28f9c8, + 0x27a38d49, + 0x21a047, + 0x239447, + 0x34be48, + 0x239fc6, + 0x23c346, + 0x23e30c, + 0x24000a, + 0x2404c7, + 0x241a0b, + 0x242707, + 0x24270e, + 0x27e43444, + 0x243544, + 0x245687, + 0x38df47, + 0x249e06, + 0x249e07, + 0x33bfc7, + 0x288583, + 0x28203682, + 0x24c806, + 0x24c80a, + 0x24d24b, + 0x24e8c7, + 0x24f505, + 0x250943, + 0x250cc6, + 0x250cc7, + 0x21d9c3, + 0x28600102, + 0x2512ca, + 0x28b347c2, + 0x28fa8a82, + 0x2924a282, + 0x2963cc82, + 0x254705, + 0x255504, + 0x2a203402, + 0x300c05, + 0x24d843, + 0x3cabc5, + 0x205104, + 0x22f4c4, + 0x2e3a86, + 0x267ac6, + 0x20e683, + 0x3d8a84, + 0x35cd43, + 0x2b2101c2, + 0x22dc84, + 0x22dc86, + 0x25bb85, + 0x2bc906, + 0x317608, + 0x215b84, + 0x3289c8, + 0x38f745, + 0x294ec8, + 0x2de106, + 0x318747, + 0x282a44, + 0x2c682a46, + 0x2ca24dc3, + 0x3ad7c3, + 0x2c5608, + 0x33c744, + 0x2ce15487, + 0x28b246, + 0x2f55c9, + 0x36ea08, + 0x371dc8, + 0x37b1c4, + 0x223403, + 0x2304c2, + 0x2d664842, + 0x2da30902, + 0x329e83, + 0x2de057c2, + 0x21d944, + 0x29ef86, + 0x241543, + 0x2d1ec7, + 0x20cec3, + 0x2ca508, + 0x231645, + 0x2724c3, + 0x23cf45, + 0x23d084, + 0x3bad46, + 0x2366c6, + 0x311ac6, + 0x2e2904, + 0x242ac3, + 0x2e217e02, + 0x2e642185, + 0x200843, + 0x2ee060c2, + 0x21c0c3, + 0x300a45, + 0x2f226783, + 0x2fa410c9, + 0x2fe00942, + 0x30612002, + 0x29fe85, + 0x221206, + 0x2bd3c6, + 0x3171c8, + 0x3171cb, + 0x34fb0b, + 0x2fc845, + 0x2e8549, + 0x1601082, + 0x2cee08, + 0x20f044, + 0x30e01b42, + 0x346043, + 0x316e82c6, + 0x31a02182, + 0x3d6a48, + 0x31e0a842, + 0x2738ca, + 0x32679783, + 0x32f86046, + 0x31de08, + 0x221b86, + 0x396707, + 0x219007, + 0x3d3cca, + 0x24fa04, + 0x36c404, + 0x385109, + 0x333bd905, + 0x219ec6, + 0x2115c3, + 0x2872c4, + 0x33601d04, + 0x201d07, + 0x33bae987, + 0x264f44, + 0x2424c5, + 0x27a508, + 0x256007, + 0x256287, + 0x33e1b5c2, + 0x2ae1c4, + 0x2a99c8, + 0x259284, + 0x25d444, + 0x25d845, + 0x25d987, + 0x34b68049, + 0x23be84, + 0x25f649, + 0x2607c8, + 0x262104, + 0x262107, + 0x264643, + 0x265cc7, + 0x34e00bc2, + 0x16ccd82, + 0x266946, + 0x2c48c7, + 0x2672c4, + 0x268887, + 0x269387, + 0x26a303, + 0x352698c2, + 0x215ac2, + 0x26b7c3, + 0x26b7c4, + 0x26b7cb, + 0x335948, + 0x215ac4, + 0x26ca05, + 0x26e147, + 0x2fa885, + 0x34deca, + 0x270903, + 0x35605b02, + 0x2727c4, + 0x274309, + 0x277c03, + 0x277cc7, + 0x244b49, + 0x20e288, + 0x203743, + 0x291e47, + 0x244603, + 0x299704, + 0x29adc9, + 0x29dc86, + 0x32b303, + 0x203f82, + 0x2ccb83, + 0x2ccb87, + 0x39ab45, + 0x3a3c06, + 0x2d1704, + 0x39b945, + 0x2927c3, + 0x21f0c6, + 0x2094c3, + 0x20ef42, + 0x25c904, + 0x35a03942, + 0x35f339c3, + 0x36206582, + 0x243b43, + 0x21b304, + 0x25a807, + 0x2a8606, + 0x201cc2, + 0x36601c82, + 0x372004, + 0x36e181c2, + 0x37203d02, + 0x2af084, + 0x2af085, + 0x20db45, + 0x3d4d06, + 0x37607282, + 0x370985, + 0x3dccc5, + 0x207283, + 0x2feb46, + 0x2140c5, + 0x21dac2, + 0x363205, + 0x21dac4, + 0x222343, + 0x222583, + 0x37a0e002, + 0x27ab07, + 0x26e304, + 0x26e309, + 0x2871c4, + 0x299fc3, + 0x2c97c8, + 0x37e99fc4, + 0x299fc6, + 0x2bc303, + 0x23f783, + 0x20f583, + 0x3830f1c2, + 0x317442, + 0x38600642, + 0x343e08, + 0x2157c8, + 0x3c9706, + 0x3b6e45, + 0x230185, + 0x349707, + 0x38a62fc5, + 0x216e82, + 0x38eaca82, + 0x39200042, + 0x28f288, + 0x3204c5, + 0x309c84, + 0x242e05, + 0x24ad47, + 0x3df244, + 0x25aec2, + 0x3963ff82, + 0x35a8c4, + 0x362607, + 0x2a0407, + 0x387744, + 0x3e1243, + 0x2a5504, + 0x2a5508, + 0x39a3c686, + 0x266d0a, + 0x3af884, + 0x2a9408, + 0x242344, + 0x22da06, + 0x2aca44, + 0x3000c6, + 0x26e5c9, + 0x2bba87, + 0x3a80c3, + 0x39e01742, + 0x2830c3, + 0x210682, + 0x3a209bc2, + 0x257c86, + 0x28adc8, + 0x2bd547, + 0x317a89, + 0x2bd709, + 0x2bf805, + 0x2c0d09, + 0x2c2005, + 0x2c3205, + 0x2c3fc8, + 0x3a616c44, + 0x3aa16c47, + 0x239803, + 0x2c41c7, + 0x239806, + 0x2c4e47, + 0x2bb585, + 0x2390c3, + 0x3ae30fc2, + 0x213c04, + 0x3b20e9c2, + 0x3b607142, + 0x376406, + 0x233945, + 0x2c7e07, + 0x33be43, + 0x3d6e44, + 0x213903, + 0x23ad43, + 0x3ba06502, + 0x3c202502, + 0x399d84, + 0x269883, + 0x30e905, + 0x3c613f82, + 0x3ce04182, + 0x3a0fc6, + 0x304144, + 0x310f44, + 0x310f4a, + 0x3d6005c2, + 0x20f2c3, + 0x22838a, + 0x231a48, + 0x3da5c204, + 0x2005c3, + 0x251a83, + 0x2d1fc9, + 0x27cfc9, + 0x231c06, + 0x3de0bc83, + 0x23bb4d, + 0x23dbc6, + 0x2497cb, + 0x3e20b882, + 0x349288, + 0x432235c2, + 0x43603202, + 0x2c6405, + 0x43a040c2, + 0x2b3307, + 0x209a83, + 0x214288, + 0x43e01ac2, + 0x32a7c4, + 0x22cc83, + 0x24d946, + 0x22b9c4, + 0x216f03, + 0x45202382, + 0x2fc7c4, + 0x2cb785, + 0x2cc787, + 0x290943, + 0x2cd143, + 0x1626b42, + 0x2cd803, + 0x2cde03, + 0x45600c02, + 0x279504, + 0x242cc6, + 0x363983, + 0x2ce203, + 0x45a5cf02, + 0x25cf08, + 0x2cf5c4, + 0x2206c6, + 0x393f87, + 0x391d06, + 0x2c5584, + 0x53e01782, + 0x2396cb, + 0x3cdfce, + 0x222f8f, + 0x2e0403, + 0x546dbe82, + 0x164f082, + 0x54a04082, + 0x2b6103, + 0x3cc144, + 0x220243, + 0x359746, + 0x248286, + 0x2b46c7, + 0x390e44, + 0x54e21342, + 0x55232ac2, + 0x309345, + 0x3e4e07, + 0x3cedc6, + 0x5567a6c2, + 0x390744, + 0x2d4783, + 0x55a0af02, + 0x55f82443, + 0x2d5b84, + 0x2dbdc9, + 0x562e3dc2, + 0x5661c4c2, + 0x259605, + 0x56ae42c2, + 0x57203e02, + 0x3698c7, + 0x385c8b, + 0x218dc5, + 0x2682c9, + 0x26f6c6, + 0x57609004, + 0x379289, + 0x377647, + 0x393347, + 0x237b43, + 0x2fe046, + 0x37ea87, + 0x21e803, + 0x2b93c6, + 0x57e16202, + 0x5820b602, + 0x21cd43, + 0x3aca05, + 0x3b14c7, + 0x248386, + 0x39aac5, + 0x26e284, + 0x2ba945, + 0x3141c4, + 0x58609a42, + 0x2e2544, + 0x2d4544, + 0x3a73cd, + 0x2d4549, + 0x260e88, + 0x259884, + 0x3ebb05, + 0x3b80c7, + 0x3d1184, + 0x370c87, + 0x22c4c5, + 0x58abea84, + 0x2be3c5, + 0x58e768c4, + 0x31a606, + 0x3dadc5, + 0x592032c2, + 0x336a83, + 0x251f83, + 0x2459c4, + 0x2459c5, + 0x20d706, + 0x38de05, + 0x26eb44, + 0x59713103, + 0x59a14746, + 0x223d05, + 0x225845, + 0x3daec4, + 0x304c03, + 0x3af90c, + 0x59ecc882, + 0x5a200b42, + 0x5a612a82, + 0x222043, + 0x222044, + 0x5aa0fe02, + 0x302888, + 0x22be04, + 0x3301c6, + 0x5ae24902, + 0x5b216902, + 0x5b603f02, + 0x2a4a45, + 0x300346, + 0x238044, + 0x2361c6, + 0x212506, + 0x26ac03, + 0x5ba9d60a, + 0x299f05, + 0x2b98c3, + 0x213606, + 0x5be13609, + 0x22e147, + 0x3c8548, + 0x391909, + 0x3bfe88, + 0x2a3c46, + 0x20a2c3, + 0x5c205942, + 0x3b0148, + 0x5c6593c2, + 0x5ca00ec2, + 0x2384c3, + 0x2fc3c5, + 0x2b1244, + 0x2bdf89, + 0x23ca84, + 0x255308, + 0x5d20b4c3, + 0x5d66b484, + 0x221248, + 0x5da15142, + 0x23d8c2, + 0x3397c5, + 0x3bba89, + 0x214e43, + 0x32eb84, + 0x3f0484, + 0x2202c3, + 0x29558a, + 0x5df9b302, + 0x5e213a42, + 0x2e7f43, + 0x39d383, + 0x161c182, + 0x377f43, + 0x5e62ab02, + 0x5ea01942, + 0x5ee30944, + 0x296ac6, + 0x281884, + 0x28f0c3, + 0x3da783, + 0x5f30c783, + 0x24d5c6, + 0x339b85, + 0x2eba87, + 0x2eb9c6, + 0x2ec108, + 0x2ec306, + 0x201944, + 0x2b2dcb, + 0x2eea43, + 0x2eea45, + 0x5f60ffc2, + 0x369bc2, + 0x5fa54782, + 0x5fe0d3c2, + 0x221383, + 0x60282182, + 0x282183, + 0x2f0343, + 0x60a067c2, + 0x60ef3c06, + 0x2f4005, + 0x2b7346, + 0x6127c082, + 0x61611282, + 0x61a225c2, + 0x61e736c2, + 0x622130c2, + 0x62602202, + 0x21c603, + 0x3a9686, + 0x62a25a04, + 0x3b52c6, + 0x2907c4, + 0x2ec4c3, + 0x63603642, + 0x201f42, + 0x238cc3, + 0x63a14883, + 0x3cec47, + 0x3dacc7, + 0x6965c3c7, + 0x316147, + 0x218943, + 0x69a7a004, + 0x327e04, + 0x327e0a, + 0x3e69c5, + 0x69e31a82, + 0x268843, + 0x6a200602, + 0x262243, + 0x283083, + 0x6aa00582, + 0x28f944, + 0x349904, + 0x3cb645, + 0x32bd85, + 0x311f06, + 0x311186, + 0x6ae18882, + 0x6b2025c2, + 0x2fb405, + 0x2b7052, + 0x326ac6, + 0x22a783, + 0x22a786, + 0x269b85, + 0x1616fc2, + 0x73611f42, + 0x336783, + 0x211f43, + 0x2ac1c3, + 0x73a17a02, + 0x21fe83, + 0x73e07982, + 0x230983, + 0x37b608, + 0x248803, + 0x248806, + 0x3e8187, + 0x3271c6, + 0x3271cb, + 0x290707, + 0x313084, + 0x74600e82, + 0x3a3b45, + 0x74a14843, + 0x247043, + 0x20b8c5, + 0x218843, + 0x75218846, + 0x2ac403, + 0x203584, + 0x2003c6, + 0x334046, + 0x7564acc3, + 0x285c07, + 0x244747, + 0x2b54c5, + 0x24eb06, + 0x21cc03, + 0x782cebc3, + 0x78607002, + 0x78a30704, + 0x3f3589, + 0x21b645, + 0x3af684, + 0x303a08, + 0x23d505, + 0x78e407c5, + 0x24f689, + 0x380583, + 0x3dca84, + 0x792035c2, + 0x221583, + 0x79681142, + 0x281146, + 0x168e5c2, + 0x79a15882, + 0x2a4948, + 0x2a54c3, + 0x2be307, + 0x39fc85, + 0x2fddc5, + 0x331a0b, + 0x2fddc6, + 0x331c06, + 0x24bb04, + 0x218386, + 0x79f00dc8, + 0x26c0c3, + 0x274003, + 0x274004, + 0x3e4d44, + 0x304e07, + 0x31ea05, + 0x7a324e02, + 0x7a608782, + 0x7ae08785, + 0x2e6ac4, + 0x2e6acb, + 0x305448, + 0x268f84, + 0x7b25cf42, + 0x7b609ec2, + 0x209ec3, + 0x306744, + 0x306a05, + 0x307387, + 0x7bb097c4, + 0x21bd84, + 0x7be05442, + 0x38a3c9, + 0x30a905, + 0x219085, + 0x30b185, + 0x7c205443, + 0x244e04, + 0x244e0b, + 0x30be44, + 0x30c10b, + 0x30c6c5, + 0x2230ca, + 0x30ce88, + 0x30d08a, + 0x30d883, + 0x30d88a, + 0x7ca1b482, + 0x7ce21e42, + 0x7d229a83, + 0x7d6cc442, + 0x310c43, + 0x7db129c2, + 0x7df42742, + 0x313e44, + 0x223606, + 0x235f05, + 0x317483, + 0x23b886, + 0x212c85, + 0x235804, + 0x7e200902, + 0x21d784, + 0x2e81ca, + 0x2cb0c7, + 0x351e86, + 0x2516c7, + 0x24c843, + 0x2d5bc8, + 0x34c64b, + 0x226445, + 0x3f05c5, + 0x3f05c6, + 0x304704, + 0x236d08, + 0x2221c3, + 0x28b8c4, + 0x3d4047, + 0x312cc6, + 0x346906, + 0x2d840a, + 0x25f6c4, + 0x2a1a8a, + 0x7e6f7b86, + 0x2f7b87, + 0x26ca87, + 0x28db44, + 0x28db49, + 0x230dc5, + 0x377483, + 0x236883, + 0x7ea06f83, + 0x234344, + 0x7ee00682, + 0x366906, + 0x7f2d9445, + 0x22a9c5, + 0x246646, + 0x215084, + 0x7f601a42, + 0x246744, + 0x7fe03b02, + 0x379105, + 0x230f44, + 0x8122ea03, + 0x81611f82, + 0x211f83, + 0x3bb206, + 0x81a02fc2, + 0x339288, + 0x22dfc4, + 0x22dfc6, + 0x39dc06, + 0x81e6e204, + 0x220f05, + 0x22f7c8, + 0x230007, + 0x286287, + 0x28628f, + 0x2a98c6, + 0x247943, + 0x249f84, + 0x234c03, + 0x22db44, + 0x3a23c4, + 0x8220b242, + 0x2625c3, + 0x33fc03, + 0x82606382, + 0x206383, + 0x21da03, + 0x21930a, + 0x31cdc7, + 0x3ae24c, + 0x3ae506, + 0x25dd06, + 0x269507, + 0x82a6ffc7, + 0x272589, + 0x82f65e44, + 0x836213c2, + 0x83a01042, + 0x2d87c6, + 0x285a04, + 0x2db286, + 0x277f48, + 0x3acac4, + 0x33a6c6, + 0x2bd385, + 0x842833c8, + 0x250dc3, + 0x287385, + 0x28d283, + 0x219183, + 0x219184, + 0x272983, + 0x846291c2, + 0x84a00e02, + 0x377349, + 0x2936c5, + 0x293a44, + 0x29f705, + 0x20f144, + 0x2eadc7, + 0x3637c5, + 0x85223984, + 0x302308, + 0x2cf686, + 0x2d4a04, + 0x2d4a08, + 0x85601a82, + 0x2dc104, + 0x31d504, + 0x354fc7, + 0x85a01a84, + 0x202342, + 0x85e14942, + 0x220203, + 0x259504, + 0x243a83, + 0x396bc5, + 0x8621e7c2, + 0x2f93c5, + 0x2827c2, + 0x319cc5, + 0x2e6805, + 0x8662c602, + 0x23d204, + 0x86a075c2, + 0x3e21c6, + 0x212f06, + 0x3bbbc8, + 0x29c8c8, + 0x376384, + 0x300f85, + 0x312649, + 0x2cef44, + 0x3effc4, + 0x27c243, + 0x289f03, + 0x86e89f05, + 0x26ed05, + 0x29a244, + 0x2a7382, + 0x334a03, + 0x87206342, + 0x87601b82, + 0x338d45, + 0x28d107, + 0x20d944, + 0x391b09, + 0x2e8309, + 0x28e403, + 0x28e408, + 0x2ab4c9, + 0x3d3b47, + 0x87b3a505, + 0x35d3c6, + 0x35da06, + 0x35eec5, + 0x2d4645, + 0x87e02802, + 0x202805, + 0x2e0788, + 0x2e1306, + 0x8830c907, + 0x3ae8c4, + 0x2df487, + 0x3a8246, + 0x88609202, + 0x20d406, + 0x31934a, + 0x319bc5, + 0x88a15982, + 0x88e37dc2, + 0x27fe06, + 0x892a05c7, + 0x89603382, + 0x221e83, + 0x3f38c6, + 0x2de1c4, + 0x253846, + 0x324bc6, + 0x20184a, + 0x336e05, + 0x3c7b06, + 0x3c8703, + 0x3c8704, + 0x89a05e02, + 0x32c003, + 0x89e22082, + 0x32bc83, + 0x8a228604, + 0x2dfc04, + 0x8a7b188a, + 0x219d83, + 0x387c47, + 0x3de4c6, + 0x328b44, + 0x2372c2, + 0x2184c2, + 0x8aa007c2, + 0x2ef983, + 0x26c847, + 0x2007c7, + 0x29b784, + 0x220d87, + 0x307486, + 0x23b147, + 0x21dc44, + 0x223f05, + 0x2031c5, + 0x8ae09b02, + 0x226b06, + 0x22b203, + 0x231282, + 0x231286, + 0x8b229b42, + 0x8b649902, + 0x254905, + 0x8ba021c2, + 0x8be019c2, + 0x398c45, + 0x2eed85, + 0x313b85, + 0x8c673143, + 0x2f2505, + 0x2fde87, + 0x2bb945, + 0x336fc5, + 0x279f04, + 0x240646, + 0x253004, + 0x8ca008c2, + 0x8d6d0e85, + 0x215e07, + 0x203788, + 0x27b8c6, + 0x27b8cd, + 0x27cd89, + 0x27cd92, + 0x33c805, + 0x3465c3, + 0x8da0ea02, + 0x3247c4, + 0x23dc43, + 0x38a6c5, + 0x31a945, + 0x8de2ccc2, + 0x272503, + 0x8e25c442, + 0x8ea2b942, + 0x8ee00082, + 0x3f4005, + 0x3a81c3, + 0x8f20dfc2, + 0x8f60ba42, + 0x28f906, + 0x26b54a, + 0x22a743, + 0x245943, + 0x2ed243, + 0x91203342, + 0x9fa096c2, + 0xa0203b42, + 0x207882, + 0x334809, + 0x2e31c4, + 0x283dc8, + 0xa0627e42, + 0xa0e01102, + 0x271dc5, + 0x241e48, + 0x24d048, + 0x2f29cc, + 0x246143, + 0xa1276282, + 0xa160b382, + 0x2dac86, + 0x31be45, + 0x2f4e83, + 0x26aa06, + 0x31bf86, + 0x251a43, + 0x31d443, + 0x31d886, + 0x31f304, + 0x2637c6, + 0x3afc04, + 0x31f9c4, + 0x32134a, + 0xa1a561c2, + 0x2647c5, + 0x32290a, + 0x322845, + 0x323904, + 0x323a06, + 0x323b84, + 0x221846, + 0xa1e02402, + 0x21c7c6, + 0x325785, + 0x3c7987, + 0x3d0286, + 0x269704, + 0x2f5107, + 0x20d445, + 0x2477c7, + 0x22abc7, + 0x22abce, + 0x290106, + 0x248b85, + 0x2080c7, + 0x3dcb47, + 0x212105, + 0x2152c4, + 0x333502, + 0x28ac87, + 0x28d304, + 0x260644, + 0x2d568b, + 0xa22270c3, + 0x30dcc7, + 0x2270c4, + 0x30dfc7, + 0x224303, + 0x35680d, + 0x328848, + 0xa2656bc4, + 0x256bc5, + 0x3e1685, + 0x329083, + 0xa2a2dec2, + 0x32bfc3, + 0x32c803, + 0x2159c4, + 0x226c85, + 0x226d87, + 0x3c8786, + 0x39b403, + 0x2313cb, + 0x377b8b, + 0x2b87cb, + 0x2c144b, + 0x2c1d8a, + 0x3cce4b, + 0x3012cb, + 0x31c20c, + 0x31fdcb, + 0x36a851, + 0x37e70a, + 0x3c120b, + 0x3f1dcc, + 0x32d34b, + 0x32e2ca, + 0x32e94a, + 0x32fd0e, + 0x33034b, + 0x33060a, + 0x331d91, + 0x3321ca, + 0x3326cb, + 0x332c0e, + 0x334acc, + 0x334f4b, + 0x33520e, + 0x33558c, + 0x33750a, + 0x33870c, + 0xa2f3948a, + 0x339cc8, + 0x33a989, + 0x33c9ca, + 0x33cc4a, + 0x33cecb, + 0x33f38e, + 0x33fed1, + 0x34a749, + 0x34a98a, + 0x34b6cb, + 0x34cd4d, + 0x34dbca, + 0x34e396, + 0x34f70b, + 0x350b8a, + 0x3514ca, + 0x35250b, + 0x353f89, + 0x357189, + 0x358b0d, + 0x35994b, + 0x35b40b, + 0x35b8c9, + 0x35bf0e, + 0x35c54a, + 0x35d18a, + 0x35d7ca, + 0x35decb, + 0x35e70b, + 0x35f98d, + 0x36130d, + 0x362e90, + 0x36334b, + 0x363e4c, + 0x36514b, + 0x3693cb, + 0x36ce0e, + 0x36e0cb, + 0x36e0cd, + 0x3745cb, + 0x37504f, + 0x37540b, + 0x375dca, + 0x377889, + 0x37a2c9, + 0xa337a64b, + 0x37a90e, + 0x37ac8e, + 0x37c54b, + 0x37d2cf, + 0x38078b, + 0x380a4b, + 0x380d0a, + 0x385889, + 0x38820f, + 0x38d40c, + 0x38d9cc, + 0x38e94e, + 0x38ef8f, + 0x38f34e, + 0x38fd10, + 0x39010f, + 0x39110e, + 0x391fcc, + 0x3922d1, + 0x392712, + 0x393b11, + 0x39414e, + 0x39498b, + 0x39498e, + 0x394d0f, + 0x3950ce, + 0x395450, + 0x395853, + 0x395d11, + 0x39614c, + 0x39644e, + 0x3968cc, + 0x396d13, + 0x3977d0, + 0x397c4c, + 0x397f4c, + 0x39880b, + 0x39998e, + 0x399e8b, + 0x39a5cb, + 0x39bc8c, + 0x3a280a, + 0x3a2c4c, + 0x3a2f4c, + 0x3a3249, + 0x3a560b, + 0x3a58c8, + 0x3a6089, + 0x3a608f, + 0x3a7acb, + 0xa37a890a, + 0x3ab34c, + 0x3ac28b, + 0xa3bac549, + 0x3ad1c8, + 0x3ad58b, + 0x3aee0a, + 0x3af08a, + 0x3af30b, + 0x3afecc, + 0x3b1b09, + 0x3b1d48, + 0x3b464b, + 0x3b6f8b, + 0x3bcd0e, + 0x3be20b, + 0x3c0b8b, + 0x3cc50b, + 0x3cc7c9, + 0x3cd3cd, + 0x3dfeca, + 0x3e3357, + 0x3e4398, + 0x3e6b89, + 0x3e7dcb, + 0x3ed6d4, + 0x3edbcb, + 0x3ee14a, + 0x3eed0a, + 0x3eef8b, + 0x3ef6d0, + 0x3efad1, + 0x3f00ca, + 0x3f13cd, + 0x3f1acd, + 0x3f328b, + 0x226c03, + 0xa3e05503, + 0x21a846, + 0x209545, + 0x2f0b07, + 0x2c6b06, + 0xa420b2c2, + 0x2c0209, + 0x23b684, + 0x2fcdc8, + 0x206ec3, + 0x324707, + 0xa4603482, + 0x2c7e43, + 0xa4a079c2, + 0x2e8dc6, + 0x2e9b84, + 0x230ac4, + 0x204e83, + 0xa52e4302, + 0xa562fd04, + 0x28da87, + 0xa5a371c2, + 0x21a043, + 0x358c3, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x113508, + 0x208c43, 0x2000c2, - 0x7ffc8, - 0xaeba692, - 0xb2d6d88, - 0x1475dc8, - 0x3424a, - 0x2cc5, - 0x2707, - 0x2e9c43, - 0x228ac1, + 0x1c3448, + 0x20b642, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x219303, + 0x345796, + 0x373113, + 0x220c09, + 0x2848c8, + 0x3a39c9, + 0x322a86, + 0x35a910, + 0x3d24d3, + 0x312d88, + 0x291087, + 0x29ba47, + 0x2ba68a, + 0x3b95c9, + 0x336809, + 0x265a0b, + 0x35ca86, + 0x335a4a, + 0x22d286, + 0x23a103, + 0x27aa45, + 0x213cc8, + 0x29464d, + 0x2ffe8c, + 0x325447, + 0x3bc70d, + 0x22f8c4, + 0x23e08a, + 0x23fb4a, + 0x24000a, + 0x2ae887, + 0x249c47, + 0x24e084, + 0x282a46, + 0x325944, + 0x226788, + 0x23cac9, + 0x3171c6, + 0x3171c8, + 0x25248d, + 0x2e8549, + 0x31de08, + 0x219007, + 0x254b4a, + 0x2c48c6, + 0x3766c4, + 0x212747, + 0x366b0a, + 0x3ee84e, + 0x262fc5, + 0x2a014b, + 0x2ef6c9, + 0x27cfc9, + 0x2098c7, + 0x2098ca, + 0x36df07, + 0x3ce109, + 0x233e08, + 0x20bc0b, + 0x2fc3c5, + 0x260d4a, + 0x222389, + 0x370e0a, + 0x20700b, + 0x21264b, + 0x265795, + 0x2dbfc5, + 0x219085, + 0x244e0a, + 0x27468a, + 0x36f207, + 0x2190c3, + 0x2d8748, + 0x2f2d4a, + 0x22dfc6, + 0x271ec9, + 0x2833c8, + 0x2d4a04, + 0x28e189, + 0x29c8c8, + 0x2de047, + 0x2d0e86, + 0x215e07, + 0x2cfb07, + 0x24d3c5, + 0x262e0c, + 0x256bc5, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x20b642, + 0x21a043, + 0x214883, + 0x208c43, + 0x24acc3, + 0x21a043, + 0x214883, + 0x248803, + 0x24acc3, + 0x1e0283, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x1c3448, + 0x20b642, + 0x21a043, + 0x238b87, + 0x33f84, + 0x214883, + 0x3b284, + 0x24acc3, + 0x12c85, + 0x20b642, + 0x203142, + 0x313002, + 0x201ac2, + 0x203cc2, + 0x20ea82, + 0x1874a, + 0x12c105, + 0x12c10a, + 0x152aa49, + 0x14bd4b, + 0x5f887, + 0x1bc3c6, + 0xa5286, + 0x67409, + 0x12b1c7, + 0x3504, + 0x14a150a, + 0x1540e, + 0x134309, + 0x482ea03, + 0x9e747, + 0x152986, + 0xf83, + 0x127dc5, + 0xc1, + 0x521a043, + 0x226783, + 0x204703, + 0x20f583, + 0x20bc83, + 0x214e43, + 0x2f4006, + 0x214883, + 0x24acc3, + 0x23ae43, + 0x1c3448, + 0x200984, + 0x26b247, + 0x204ec3, + 0x271984, + 0x206f43, + 0x209943, + 0x20f583, + 0xf5d87, + 0x1bfd04, + 0x2d03, + 0x1bee85, + 0x66000c2, + 0xbec3, + 0x6a0b642, + 0x6e99909, + 0x709f509, + 0x9fa0d, + 0x9fd4d, + 0x313002, + 0x5c204, + 0x1beec9, + 0x10210c, + 0x2003c2, + 0x765c108, + 0x10b844, + 0x32b843, + 0x1c3448, + 0x8d304, + 0x1419002, + 0x14005c2, + 0x1419002, + 0x151fbc6, + 0x2405c3, + 0x2507c3, + 0x7e1a043, + 0x23e084, + 0x8626783, + 0x8e0f583, + 0x206502, + 0x25c204, + 0x214883, + 0x2100c3, + 0x201802, + 0x24acc3, + 0x225542, + 0x313783, + 0x202fc2, + 0x201683, + 0x224e43, + 0x20d442, + 0x1c3448, + 0x82a2449, + 0x10210c, + 0x29083, + 0x2405c3, + 0x21ff08, + 0x8a100c3, + 0x201802, + 0x313783, + 0x202fc2, + 0x201683, + 0x224e43, + 0x20d442, + 0x3ae507, + 0x313783, + 0x202fc2, + 0x201683, + 0x224e43, + 0x20d442, + 0x21a043, + 0x2742, + 0x13cc3, + 0x1b42, + 0xa842, + 0x1c82, + 0x5942, + 0x3342, + 0x5502, + 0x20bec3, + 0x21a043, + 0x226783, + 0x20f583, + 0x25c204, + 0x20bc83, + 0x214e43, + 0x225a04, + 0x214883, + 0x24acc3, + 0x204d42, + 0x205443, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x1a42, + 0xc503, + 0x7982, + 0x20bec3, + 0x20b642, + 0x21a043, + 0x226783, + 0x20f583, + 0x25c204, + 0x214883, + 0x24acc3, + 0x33a505, + 0x22ccc2, + 0x2000c2, + 0x1c3448, + 0xaf12412, + 0xb2d9f88, + 0x10210c, + 0x1470708, + 0x16b8a, + 0x5985, + 0x53c7, + 0x20f583, + 0x201601, 0x2009c1, + 0x202d01, + 0x201501, + 0x200a41, + 0x22d881, 0x200a01, - 0x201101, - 0x200dc1, - 0x218341, - 0x202281, - 0x202f81, - 0x249081, + 0x205c41, + 0x24a501, 0x200001, 0x2000c1, 0x200201, - 0x145d45, - 0x7ffc8, + 0x14f985, + 0x1c3448, 0x200101, - 0x200d01, + 0x200cc1, 0x200501, - 0x200c01, + 0x200bc1, 0x200041, 0x200801, 0x200181, - 0x200c41, + 0x200c01, 0x200701, 0x2004c1, - 0x200b41, + 0x200ec1, 0x200581, 0x2003c1, - 0x200a81, - 0x205601, + 0x2015c1, + 0x207a81, 0x200401, 0x200741, 0x2007c1, 0x200081, - 0x204c01, - 0x205241, - 0x201541, - 0x201c41, - 0x201b81, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x205842, - 0x229f43, - 0x224d03, + 0x201101, + 0x200f81, + 0x202d81, + 0x203481, + 0x2033c1, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x20b642, + 0x21a043, + 0x226783, 0x2003c2, - 0x21f483, - 0xf1a47, - 0x84447, - 0x332c6, - 0x46aca, - 0x9a808, - 0x64f08, - 0x65bc7, - 0xc3184, - 0x71506, - 0xf58c5, - 0xcab05, - 0xb0e03, - 0x18a46, - 0x5b646, - 0x29f804, - 0x334f47, - 0x7ffc8, - 0x2ef2c4, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x5842, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x32da08, - 0x209f84, - 0x23a844, - 0x2045c4, - 0x38c047, - 0x2ec207, - 0x229f43, - 0x24128b, - 0x3b154a, - 0x34a2c7, - 0x3e4448, - 0x220208, - 0x224d03, - 0x2886c7, - 0x28c6c3, - 0x214688, - 0x22f089, - 0x258104, - 0x25e043, - 0x247608, - 0x219c03, - 0x2e984a, - 0x2ee0c6, - 0x33bc87, - 0x2127c3, - 0x30eec6, - 0x3c0848, - 0x21f483, - 0x25a6c6, - 0x2fe8cd, - 0x300408, - 0x305d4b, - 0x20e0c6, - 0x385887, - 0x22ab45, - 0x2b904a, - 0x22b685, - 0x26818a, - 0x26ca02, - 0x205ec3, - 0x249b04, - 0x200006, - 0x3bf783, - 0x2a1c03, - 0x289e03, - 0x209f83, - 0x20c083, - 0x203742, - 0x38bd85, - 0x2b9dc9, - 0x202043, - 0x24b303, - 0x2030c3, - 0x219243, - 0x200201, - 0x31fa87, - 0x219385, - 0x3c5943, - 0x269183, - 0x3ef083, - 0x2045c4, - 0x383d43, - 0x2120c8, - 0x36e9c3, - 0x31484d, - 0x28cfc8, - 0x3d7506, - 0x2f77c3, - 0x366443, - 0x39afc3, - 0xde29f43, - 0x23dc08, - 0x241284, - 0x248c03, - 0x24c883, - 0x200106, - 0x250bc8, - 0x24dac3, - 0x22f903, - 0x2bfb03, - 0x205483, - 0x2b9083, - 0x220203, - 0x224d03, - 0x233a43, - 0x254583, - 0x209343, - 0x296a03, - 0x328343, - 0x20ea83, - 0x20a6c3, - 0x3ab305, - 0x2601c4, - 0x261307, - 0x262642, - 0x263d83, - 0x268406, - 0x269fc3, - 0x26ad43, - 0x28a803, - 0x271dc3, - 0x21f403, - 0x20a643, - 0x2a7a87, - 0xeae9c43, - 0x2421c3, - 0x208103, - 0x204203, - 0x258103, - 0x21a583, - 0x226dc5, - 0x382803, - 0x38d2c9, - 0x200c43, - 0x3dfdc3, - 0xee57443, - 0x227883, - 0x204603, - 0x217388, - 0x2b9d06, - 0x271b86, - 0x2c4f06, - 0x26bf87, - 0x22ea83, - 0x2335c3, - 0x219c03, - 0x29a906, - 0x226e42, - 0x2ed403, - 0x366005, - 0x2127c3, - 0x31b087, - 0x160bc03, - 0x219d03, - 0x2058c3, - 0x23eb03, - 0x22d043, - 0x21f483, - 0x215c46, - 0x200a86, - 0x387c83, - 0x22e683, - 0x202783, - 0x227d43, - 0x315443, - 0x309743, - 0x30c883, - 0x20ef45, - 0x23ffc3, - 0x23ffc6, - 0x21ad03, - 0x28c148, - 0x22bcc3, - 0x22bcc9, - 0x2b8a88, - 0x22d3c8, - 0x310ac5, - 0x235d8a, - 0x23ed4a, - 0x24430b, - 0x244cc8, - 0x31c843, - 0x21e6c3, - 0x30c8c3, - 0x2f3883, - 0x30e088, - 0x32a203, - 0x3c3744, - 0x203142, - 0x23c7c3, - 0x253f03, - 0x2007c3, - 0x3a8143, - 0x280183, - 0x236f03, - 0x26ca02, - 0x2f5443, - 0x2450c3, - 0x317cc3, - 0x319684, - 0x249b04, - 0x231a83, - 0x7ffc8, - 0xe315f8c, - 0xe6e5745, - 0xc1e05, - 0x2000c2, - 0x200ac2, - 0x203742, - 0x201182, - 0x200202, - 0x202542, - 0x25a282, - 0x203642, - 0x200382, - 0x200b42, - 0x208f02, - 0x20f782, - 0x27eec2, - 0x200a82, - 0x229ac2, - 0x20f102, - 0x215502, - 0x202782, - 0x2bbd02, - 0x206902, - 0x200682, - 0x214602, - 0x201082, - 0x2036c2, - 0x2033c2, - 0x207802, - 0x200fc2, - 0xc2, - 0xac2, - 0x3742, - 0x1182, - 0x202, - 0x2542, - 0x5a282, - 0x3642, - 0x382, - 0xb42, - 0x8f02, - 0xf782, - 0x7eec2, - 0xa82, - 0x29ac2, - 0xf102, - 0x15502, - 0x2782, - 0xbbd02, - 0x6902, - 0x682, - 0x14602, - 0x1082, - 0x36c2, - 0x33c2, - 0x7802, - 0xfc2, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x5ec2, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x9c589, - 0x5842, - 0x205842, - 0x21f483, - 0x10a29f43, - 0x2e9c43, - 0x219c03, - 0xf19c7, - 0x81983, - 0x247f42, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x1e683, - 0x2127c3, - 0xbc03, - 0x81983, - 0x21f483, - 0x4182, - 0x2001c2, - 0x1405405, - 0x145d45, - 0x212d02, - 0x7ffc8, - 0x5842, - 0x240482, - 0x203782, - 0x20a382, - 0x23b542, - 0x216602, - 0xcab05, - 0x20ad82, - 0x200f82, - 0x214542, - 0x203fc2, - 0x20f102, - 0x248dc2, - 0x212882, - 0x223ac2, - 0x11a7c7c4, - 0x142, - 0xf1a47, - 0x13683, - 0x1b670d, - 0xf5949, - 0x1a5fcb, - 0xf8f08, - 0x6b349, - 0x1133c6, - 0x2e9c43, - 0x7ffc8, - 0x9c4, - 0x14c3, - 0x172f85, - 0x7ffc8, - 0xf2447, - 0x12c5a847, - 0x13263284, - 0x66806, - 0x172fc9, - 0xb714e, - 0x13e007, - 0x15b2a43, - 0x13602c02, - 0x1edc89, - 0x1f04, - 0x2000c2, - 0x29f804, - 0x205842, - 0x229f43, - 0x201902, - 0x224d03, - 0x26403, - 0x200382, - 0x2ef2c4, - 0x25e043, - 0x254902, - 0x2127c3, - 0x16602, - 0x2003c2, - 0x21f483, - 0x216e06, - 0x33418f, - 0x725ec3, - 0x2fc58a, - 0x7ffc8, - 0x205842, - 0x28c6c3, - 0x2e9c43, - 0x219c03, - 0xbc03, - 0x14bb6147, - 0x1582a46, - 0x1d1ec6, - 0x14fc8bc8, - 0x1e6644, - 0x152c518a, - 0x15c34147, - 0xd6d88, - 0xb7148, - 0x15e930b, - 0x147ccca, - 0x1606ac83, - 0xfb6c9, - 0x165045c8, - 0x16a54187, - 0x14b8e4a, - 0x1500f47, - 0xb378b, - 0x16e81f4c, - 0xaa845, - 0xfc185, - 0x11adc9, - 0x1bddc4, - 0x1153c3, - 0x156c52c5, - 0x124283, - 0x15a32783, - 0x124283, - 0x13682, - 0x1c82, - 0x9e42, - 0x9e42, - 0x3702, - 0x9e42, - 0x1b02, - 0x2102, - 0xd02, - 0x145d45, - 0xf1a47, - 0x1e6644, - 0x102504, - 0x205842, - 0x229f43, - 0x2e9c43, - 0x2127c3, - 0x2000c2, - 0x204cc2, - 0x206f02, - 0x17e29f43, - 0x248d82, - 0x224d03, - 0x200c02, - 0x2a5c02, - 0x2e9c43, - 0x21e682, - 0x271102, - 0x232242, - 0x2086c2, - 0x2a1342, - 0x200802, - 0x202142, - 0x204d02, - 0x227e02, - 0x20a442, - 0x13038c, - 0x2c7dc2, - 0x2803c2, - 0x226282, - 0x240e42, - 0x219c03, - 0x20dec2, - 0x2127c3, - 0x20e942, - 0x2a28c2, - 0x21f483, - 0x24b382, - 0x2036c2, - 0x21ee82, - 0x204082, - 0x20c582, - 0x2136c2, - 0x215642, - 0x231342, - 0x226d82, - 0x3254ca, - 0x36d08a, - 0x3a8fca, - 0x3f0382, - 0x2102c2, - 0x227482, - 0x18239b09, - 0x187bf80a, - 0x1542547, - 0x18a05f02, - 0x142cb83, - 0x10c2, - 0x1bf80a, - 0x15fe8e, - 0x259b44, - 0x100585, - 0x19229f43, - 0x498c3, - 0x224d03, - 0x25b9c4, - 0x2e9c43, - 0x258104, - 0x25e043, - 0x13de09, - 0x136086, - 0x219c03, - 0xf9704, - 0xd83, - 0x2127c3, - 0x8e345, - 0x20bc03, - 0x21f483, - 0x1528a44, - 0x23ffc3, - 0x1954bc04, - 0x205ec3, - 0x7ffc8, - 0x3842, - 0x154d603, - 0x125e06, - 0x1471484, - 0x1fc5, - 0x1bdbca, - 0x86a42, - 0x1a002acd, - 0x1b9946, - 0x187591, - 0x1a639b09, - 0x15500a, - 0x2048, - 0x1b5508, - 0x6e90e, - 0x182d13, - 0x21121487, - 0xec2, - 0x39c94, - 0x46f07, - 0x2d74e, - 0x145d4b, - 0x1482cb, - 0x1c304a, - 0x110947, - 0x7ffc8, - 0xa1d08, - 0xf647, - 0x2141f6cb, - 0x21646, - 0x24bc7, - 0x37c2, - 0x3124d, - 0x142e85, - 0x18ee07, - 0x10a6ca, - 0x12820c, - 0x1283cf, - 0x570f, - 0xb90c2, - 0x5842, - 0x96948, - 0x218f754c, - 0x1aee0a, - 0xf1f4a, - 0x8240a, - 0x8cdc8, - 0x15948, - 0x6da88, - 0xf2408, - 0xc348, - 0xd02, - 0x548f, - 0x152038d, - 0x181acb, - 0xd1e88, - 0x40787, - 0x5494a, - 0x3bc0b, - 0xa54c9, - 0x54847, - 0x159286, - 0x15848, - 0x3ef0c, - 0x1cd787, - 0x2f5ca, - 0x1db408, - 0x332ce, - 0x3464e, - 0x11078b, - 0x5594b, - 0x15024b, - 0x10a249, - 0x11870b, - 0x12618d, - 0x15be4b, - 0x3accd, - 0x3b04d, - 0x41b4a, - 0x4994b, - 0x4a10b, - 0x50ec5, - 0x21dc8c10, - 0x32c4f, - 0x7c98f, - 0x147a8d, - 0x85f10, - 0x6cc2, - 0x222fc8c8, - 0x1cd608, - 0x9ed50, - 0x1217ce, - 0x2276e985, - 0x5a44b, - 0x13cf10, - 0xa650b, - 0x1b858c, - 0x15a4a, - 0x55b09, - 0x6f248, - 0x762c7, - 0x76607, - 0x767c7, - 0x77707, - 0x78487, - 0x78947, - 0x79607, - 0x79b07, - 0x7a007, - 0x7a387, - 0x7aa47, - 0x7ac07, - 0x7adc7, - 0x7af87, - 0x7b307, - 0x7b847, - 0x7d147, - 0x7d587, - 0x7e007, - 0x7e2c7, - 0x7e487, - 0x7e787, - 0x7ed87, - 0x7ef87, - 0x7f907, - 0x7fac7, - 0x7fc87, - 0x80247, - 0x80887, - 0x81247, - 0x82247, - 0x82687, - 0x82e87, - 0x83047, - 0x83687, - 0x83a07, - 0x83ec7, - 0x842c7, - 0x84607, - 0x847c7, - 0x85187, - 0x86c47, - 0x87407, - 0x879c7, - 0x87b87, - 0x88007, - 0x89347, - 0xd9c2, - 0x6db8a, - 0x18848, - 0x1c014c, - 0x1d5287, - 0x9ae85, - 0x17ac91, - 0x1f0006, - 0x12c00a, - 0x967ca, - 0x66806, - 0xbcf4b, - 0x642, - 0x389d1, - 0xcb289, - 0xa6a09, - 0xa7546, - 0x4d02, - 0x6b04a, - 0xb92c9, - 0xb9a0f, - 0xba00e, - 0xbb988, - 0x22a6eb12, - 0x15388, - 0x22e6f447, - 0xbee0f, - 0x1d7c2, - 0x719c9, - 0x8654a, - 0x23217d09, - 0x18c389, - 0x18c38c, - 0x2994b, - 0x1b438e, - 0x448c, - 0xfb3cf, - 0x1c494e, - 0x3f30c, - 0x56a09, - 0x15f291, - 0x61ac8, - 0x6a152, - 0x81c4d, - 0x83b8d, - 0x88b0b, - 0x89a95, - 0x90249, - 0x9158a, - 0x95bc9, - 0x190f90, - 0x1b56cb, - 0xa0dcf, - 0xab04b, - 0xb194c, - 0xc1390, - 0xdb90a, - 0x1a158d, - 0x1a3f8e, - 0x19e84a, - 0xc324c, - 0x1a2614, - 0xcaf11, - 0xce00b, - 0xd03cf, - 0xd2fcd, - 0xd608e, - 0xd9d0c, - 0xda74c, - 0xdb60b, - 0xdc60e, - 0xdd9d0, - 0x141b0b, - 0x1a110d, - 0x1ae1cf, - 0xf2ecc, - 0x108c0e, - 0x10fd91, - 0x1a3a8c, - 0x144347, - 0x162a4d, - 0x16d2cc, - 0x17a610, - 0x17bd0d, - 0x19b5c7, - 0x1a4990, - 0x1afe08, - 0xc284b, - 0xc480f, - 0x1c03c8, - 0x6e30d, - 0x112610, - 0x17d2c9, - 0x237c8bc8, - 0x23ac8c86, - 0xc9983, - 0x61ec9, - 0x25889, - 0xd0e85, - 0x8042, - 0x14a749, - 0x6738a, - 0x23e6a606, - 0x146a60d, - 0x242ff684, - 0x1e4c46, - 0x25dca, - 0x2c60d, - 0x246e034b, - 0x98e08, - 0x2489f389, - 0x2f443, - 0x119aca, - 0xebb49, - 0xf1091, - 0xf14c9, - 0xf1ec7, - 0xf2c08, - 0xf3347, - 0x6f348, - 0x558b, - 0x130049, - 0xfa0d0, - 0xfa58c, - 0xfaa09, - 0x24efadcd, - 0xfc408, - 0xfd045, - 0x146f08, - 0x1a370a, - 0x1325c7, - 0x1242, - 0x25276f95, - 0x13dc0a, - 0x142cc9, - 0x25a48, - 0x1a7ec9, - 0x1d2a45, - 0x11af0a, - 0x173947, - 0x9c30f, - 0xaa8cb, - 0x16154c, - 0xef892, - 0x3e046, - 0x1409588, - 0x7b645, - 0x115608, - 0x1e4d8b, - 0x1e5151, - 0x17587, - 0x6798a, - 0x25704485, - 0x1b5ccc, - 0x2590afce, - 0x13a283, - 0x19de06, - 0x48dc2, - 0x10d2cb, - 0x10de4a, - 0x150f14c, - 0x98d08, - 0x3ae88, - 0x25e25ac6, - 0x152f8e, - 0x132207, - 0x9942, - 0x1782, - 0x18fb50, - 0x6ca87, - 0x6cb8f, - 0x18a46, - 0x5c88e, - 0xa494b, - 0x566c8, - 0xa5889, - 0x1e1e52, - 0x115c4d, - 0x1167c8, - 0x1a5e89, - 0x1ec14d, - 0x6cf09, - 0x6d6cb, - 0x6fe48, - 0x79e08, - 0x7b488, - 0x7e909, - 0x7eb0a, - 0x7f28c, - 0xcf34a, - 0xe808a, - 0x115487, - 0xae6ca, - 0xf8ac8, - 0x780d, - 0xb7bd1, - 0x262d6386, - 0x16588b, - 0x3754c, - 0x45188, - 0x1d9a49, - 0x15d48d, - 0x77950, - 0x1476cc, - 0x14b94d, - 0x9e42, - 0x8a4cd, - 0x1b02, - 0x55202, - 0x1153ca, - 0x267cbc4a, - 0x2b10a, - 0x26a87cc8, - 0x12bf0a, - 0x11bc8b, - 0x11c9c7, - 0x1b134c, - 0x348cc, - 0x11e90a, - 0x26d1eb8f, - 0x11ef4c, - 0x11f247, - 0x1208ce, - 0x271f0245, - 0x184588, - 0x4182, - 0x1405483, - 0x1ab751ce, - 0x1b20118e, - 0x1ba0c98a, - 0x1c332dce, - 0x1ca060ce, - 0x1d340c8c, - 0x1542547, - 0x15550c9, - 0x142cb83, - 0x1db6890c, - 0x1e206cc9, - 0x1ebb7249, - 0x1f3bd9c9, - 0x10c2, - 0x175111, - 0x10d1, - 0xc8cd, - 0x132d11, - 0x1361d1, - 0x140bcf, - 0x16884f, - 0x1a9c0c, - 0x1b718c, - 0x1bd90c, - 0xe72cd, - 0xf8455, - 0x12b64c, - 0x142f8c, - 0x198c90, - 0x1c170c, - 0x1c3bcc, - 0x1c6019, - 0x1db5d9, - 0x5e19, - 0x6a14, - 0xf7d4, - 0x10954, - 0x10ed4, - 0x17714, - 0x1fa0fa89, - 0x20010c09, - 0x20b43049, - 0x1ae61cc9, - 0x10c2, - 0x1b661cc9, - 0x10c2, - 0x5e0a, - 0x10c2, - 0x1be61cc9, - 0x10c2, - 0x5e0a, - 0x10c2, - 0x1c661cc9, - 0x10c2, - 0x1ce61cc9, - 0x10c2, - 0x1d661cc9, - 0x10c2, - 0x5e0a, - 0x10c2, - 0x1de61cc9, - 0x10c2, - 0x5e0a, - 0x10c2, - 0x1e661cc9, - 0x10c2, - 0x1ee61cc9, - 0x10c2, - 0x5e0a, - 0x10c2, - 0x1f661cc9, - 0x10c2, - 0x5e0a, - 0x10c2, - 0x1fe61cc9, - 0x10c2, - 0x20661cc9, - 0x10c2, - 0x20e61cc9, - 0x10c2, - 0x5e0a, - 0x10c2, - 0x1400401, - 0x187585, - 0x1c3044, - 0x145b883, - 0x15cf803, - 0x158f143, - 0x1751ce, - 0x118e, - 0x8face, - 0xc98a, - 0x132dce, - 0x60ce, - 0x140c8c, - 0x16890c, - 0x6cc9, - 0x1b7249, - 0x1bd9c9, - 0xfa89, - 0x10c09, - 0x143049, - 0xf864d, - 0x11189, - 0x179c9, - 0x147384, - 0x170a04, - 0x1ec684, - 0x1f0144, - 0xb3a44, - 0x154bc4, - 0x1ba644, - 0x55e04, - 0x18944, - 0x212c4, - 0x16f4c9, - 0x16f4cc, - 0x14fa46, - 0x14fa4e, - 0x81d84, - 0x1596343, - 0x1c3a47, - 0x1490c0c, - 0x2043, - 0x212c4, - 0x6cc2, - 0x4f087, - 0xf7548, - 0xa2108, - 0xdcbc4, - 0x1a9806, - 0x1351c7, - 0xe3504, - 0x114046, - 0x1f182, - 0x1541, - 0x22104, - 0x6e786, - 0x1a883, - 0x6cc2, - 0x2043, - 0xdc843, - 0xef683, - 0x12683, - 0x10a1c3, - 0xef885, - 0x803c2, - 0x7102, - 0x7108, - 0xf4c87, - 0x1300c7, - 0xd02, - 0x2000c2, - 0x205842, - 0x201902, - 0x218b02, - 0x200382, - 0x2003c2, - 0x201782, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x258103, - 0x2127c3, - 0x21f483, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2127c3, - 0x21f483, - 0x12c03, - 0x2e9c43, - 0x58104, - 0x2000c2, - 0x258843, - 0x29629f43, - 0x3ab707, - 0x2e9c43, - 0x2280c3, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x22600a, - 0x216e05, - 0x202783, - 0x208ec2, - 0x7ffc8, - 0x29ae574a, - 0xc41, - 0x7ffc8, - 0x5842, - 0x137d42, - 0x2a29f10b, - 0x2a635204, - 0xff5c5, - 0x1402cc5, - 0xf7546, - 0x2aa02cc5, - 0x635c3, - 0x9ec43, - 0x9c4, - 0x14c3, - 0x172f85, - 0x145d45, - 0x7ffc8, - 0x24bc7, - 0x29f43, - 0x3514d, - 0x2b246907, - 0xac86, - 0x2b40c7c5, - 0x148792, - 0xad47, - 0x1624a, - 0x14e88, - 0x16147, - 0x1d5b4a, - 0x1bad08, - 0x6d487, - 0x156acf, - 0x4dd87, - 0x539c6, - 0x13cf10, - 0xc9c8f, - 0x1ac09, - 0x1e4cc4, - 0x2b80ae0e, - 0x4f3c9, - 0x7b0c6, - 0x111ac9, - 0x19ab46, - 0x1d71c6, - 0xbe24c, - 0x3be0a, - 0xa5647, - 0x1e224a, - 0xb209, - 0xfe38c, - 0x2724a, - 0x6b68a, - 0x172fc9, - 0x1e4c46, - 0xa570a, - 0x116d4a, - 0xaf4ca, - 0x157189, - 0xeee88, - 0xef106, - 0xf644d, - 0x5fe0b, - 0xd1445, - 0x2bf889cc, - 0x13e007, - 0x1c8049, - 0xdab07, - 0xb2c54, - 0x112a0b, - 0xd1cca, - 0x1e1cca, - 0xb578d, - 0x151be89, - 0x115a0c, - 0x1165cb, - 0x163217, - 0x163d55, - 0x2f5c3, - 0x2f5c3, - 0x332c6, - 0x2f5c3, - 0xf7548, - 0x156983, - 0x51384, - 0x1c244, - 0x1c24c, - 0x63883, - 0x14af587, - 0xa5845, - 0x142b343, - 0x142b348, - 0x60209, - 0xef885, - 0x1e4d8b, - 0xce2cb, - 0x14f3143, - 0x14f3148, - 0x149c86, - 0x1441d07, - 0x191207, - 0x2cd82bc9, - 0x12686, - 0x58843, - 0x7ffc8, - 0x5842, - 0x5b9c4, - 0x97783, - 0x12e885, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x2030c3, - 0x229f43, - 0x224d03, - 0x28c6c3, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x39ac43, - 0x205ec3, - 0x2030c3, - 0x29f804, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x2043c3, - 0x208d43, - 0x208ec2, - 0x2e582cc5, - 0x14325c3, - 0x229f43, - 0x224d03, - 0x226403, - 0x28c6c3, - 0x2e9c43, - 0x258104, - 0x3ce883, - 0x2335c3, - 0x219c03, - 0x2127c3, - 0x81983, - 0x21f483, - 0x202783, - 0x2f2265c3, - 0xef789, - 0x5842, - 0x2f0243, - 0x2fe29f43, - 0x224d03, - 0x255f03, - 0x2e9c43, - 0x22d643, - 0x2335c3, - 0x21f483, - 0x203303, - 0x3d2bc4, - 0x7ffc8, - 0x30629f43, - 0x224d03, - 0x2bba43, - 0x2e9c43, - 0x219c03, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x265503, - 0x7ffc8, - 0x30e29f43, - 0x224d03, - 0x28c6c3, - 0x20bc03, - 0x21f483, - 0x7ffc8, - 0x1542547, - 0x258843, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x145d45, - 0xf1a47, - 0xb2e8b, - 0x31e3eb46, - 0xf18c4, - 0xd1445, - 0x1475dc8, - 0x3204d, - 0x1c8bc8, - 0x3275e205, - 0x2c684, - 0x5842, - 0xb8c3, - 0x14f945, - 0x47f42, - 0x340a45, - 0x7ffc8, - 0x33f0ac4d, - 0x3420244a, - 0xc142, - 0x5083, - 0x16934f, - 0x18b02, - 0x81d84, - 0x212c4, - 0x5842, - 0x2000c2, - 0x258843, - 0x229f43, - 0x2e9c43, - 0x258104, - 0x219c03, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x202783, - 0x229f43, - 0x224d03, - 0x2127c3, - 0x21f483, - 0xef45, - 0x32e1c8, - 0x29f804, - 0x371f86, - 0x3a9ac6, - 0x7ffc8, - 0x3184c3, - 0x236c09, - 0x21b795, - 0x1b79f, - 0x229f43, - 0x8bf47, - 0x398852, - 0x18ce86, - 0x18fa45, - 0x15a4a, - 0x55b09, - 0x39860f, - 0x2ef2c4, - 0x231b05, - 0x3dfb90, - 0x285787, - 0x20bc03, - 0x219d08, - 0x21146, - 0x28aa0a, - 0x257fc4, - 0x3041c3, - 0x208ec2, - 0x2ff38b, - 0x224d03, - 0x2e9c43, - 0xbc03, - 0x18a044, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x309a43, - 0x205842, - 0x38fc3, - 0x1e3084, - 0x2127c3, - 0x21f483, - 0x36426b85, - 0x1d9806, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2280c3, - 0x2307c3, - 0x21f483, - 0x58843, - 0x205842, - 0x229f43, - 0x224d03, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x1a802, - 0x2000c2, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x2cc5, - 0x63649, - 0x2043, - 0x29f804, - 0x229f43, - 0x224d03, - 0x292e44, - 0x2127c3, - 0x21f483, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x81983, - 0x21f483, - 0x12b409, - 0x45c4, - 0x229f43, - 0xd02, - 0x224d03, - 0x28c6c3, - 0x204203, - 0x219c03, - 0x2127c3, - 0xbc03, - 0x21f483, - 0xfc2, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x3547c4, - 0x258104, - 0x2127c3, - 0x21f483, - 0x205ec3, - 0x2b82, - 0x205842, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x81983, - 0x21f483, - 0x15aec3, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x352e83, - 0x3e83, - 0x280c3, - 0x2127c3, - 0x81983, - 0x21f483, - 0x36146, - 0x3254ca, - 0x344509, - 0x3627cb, - 0x362f8a, - 0x36d08a, - 0x38068b, - 0x39a90a, - 0x3a0d8a, - 0x3a8fca, - 0x3a924b, - 0x3c9509, - 0x3dc94a, - 0x3dd18b, - 0x3ea14b, - 0x3ef7ca, - 0x35c2, - 0x229f43, - 0x224d03, - 0x28c6c3, - 0x219c03, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x344b, - 0x1217c7, - 0x6f7c8, - 0x1ec284, - 0x1e6644, - 0x9dac8, - 0xf3f86, - 0x56c6, - 0x11df87, - 0x120287, - 0xf0c9, - 0x7ffc8, - 0x229f43, - 0x15a44, - 0x2762c4, - 0x202182, - 0x222d84, - 0x3734c5, - 0x2030c3, - 0x29f804, - 0x229f43, - 0x241284, - 0x224d03, - 0x25b9c4, - 0x2ef2c4, - 0x258104, - 0x2335c3, - 0x2127c3, - 0x21f483, - 0x28a685, - 0x2043c3, - 0x202783, - 0x21cb03, - 0x24a3c4, - 0x325d84, - 0x22cc85, - 0x7ffc8, - 0x20b904, - 0x3d1606, - 0x373104, - 0x205842, - 0x2efc87, - 0x253087, - 0x259344, - 0x2f4d05, - 0x37bf05, - 0x235c45, - 0x258104, - 0x26c048, - 0x260ec6, - 0x35a148, - 0x358fc5, - 0x2f7305, - 0x277a44, - 0x21f483, - 0x305744, - 0x37f506, - 0x216f03, - 0x24a3c4, - 0x268285, - 0x34a6c4, - 0x2affc4, - 0x208ec2, - 0x24fd46, - 0x3bc546, - 0x313dc5, - 0x2000c2, - 0x258843, - 0xf4106, - 0x3ba05842, - 0x22f904, - 0x197604, - 0x68585, - 0x200382, - 0x219c03, - 0x205582, - 0x2127c3, - 0x2003c2, - 0x301946, - 0x217083, - 0x1e4bc5, - 0x205ec3, - 0x7ffc8, - 0x7ffc8, - 0x2e9c43, - 0x81983, - 0x2000c2, - 0x3c605842, - 0x2e9c43, - 0x27ad43, - 0x3ce883, - 0x235204, - 0x2127c3, - 0x21f483, - 0x7ffc8, - 0x3df87, - 0x2000c2, - 0x3ce05842, - 0x229f43, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x682, - 0x210702, - 0x26ca02, - 0x2280c3, - 0x2fe343, - 0x2000c2, - 0x145d45, - 0x7ffc8, - 0xf1a47, - 0x205842, - 0x224d03, - 0x25b9c4, - 0x204b03, - 0x2e9c43, - 0x204203, - 0x219c03, - 0x2127c3, - 0x21c043, - 0x21f483, - 0x216e43, - 0x5ec3, - 0x13fe13, - 0x142054, - 0x145d45, - 0xf1a47, - 0x16249, - 0x114786, - 0x12efcb, - 0x332c6, - 0x64d47, - 0x162e06, - 0x649, - 0x78e0a, - 0x9a6cd, - 0x1b640c, - 0x1176ca, - 0x191648, - 0xcab05, - 0x16288, - 0x18a46, - 0x1d1ac6, - 0x5b646, - 0x206cc2, - 0x71e44, - 0xfbbc6, - 0x14e1f4e, - 0x23c6, - 0x7804c, - 0x3e382a4b, - 0x145d45, - 0x149a8b, - 0x3e7b5347, - 0x3ebb534a, - 0x3efd4ec4, - 0x1c3207, - 0x2a691, - 0x12130a, - 0x229f43, - 0x3f290b08, - 0x1d5ac5, - 0x19f508, - 0x2ba44, - 0x67585, - 0xb0d07, - 0x3f5d14c6, - 0xe184b, - 0x3fb84209, - 0x15345, - 0x17ac86, - 0x11c306, - 0xa160a, - 0x9e80c, - 0x1c5983, - 0x1e6644, - 0x3ffeba44, - 0x60209, - 0x10b707, - 0x10e60a, - 0x14e5649, - 0x605, - 0x118683, - 0x4023fcc7, - 0x8e345, - 0x1569f86, - 0x14b89c6, - 0xbd00c, - 0x1074c8, - 0x40448dc3, - 0x10be44, - 0x18ef4b, - 0x2178b, - 0x40b3f1cc, - 0x1418303, - 0xd2cc8, - 0xce2cb, - 0xb0bc9, - 0xd7743, - 0x11bf88, - 0x1425d06, - 0x98307, - 0x40f5d489, - 0x422eb088, - 0xa3b47, - 0xfc18a, - 0x42763748, - 0x11628d, - 0x1c7e49, - 0x11448, - 0x2043, - 0x1455349, - 0x212c4, - 0x14c945, - 0x2d143, - 0x332c6, - 0xf7548, - 0x1403842, - 0x18944, - 0x2b405, - 0x149c3c3, - 0x2d907, - 0x41205483, - 0x41771a06, - 0x41a44084, - 0x41f73a47, - 0xf7544, - 0xf7544, - 0xf7544, - 0xf7544, - 0x2cc9, - 0x41, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x2000c2, - 0x205842, - 0x2e9c43, - 0x203842, - 0x2127c3, - 0x21f483, - 0x217083, - 0x38e28f, - 0x38e64e, - 0x7ffc8, - 0x229f43, - 0x50a07, - 0x224d03, - 0x2e9c43, - 0x25e043, - 0x2127c3, - 0x21f483, - 0x2304, - 0x1604, - 0xa9c4, - 0x225543, - 0x373d07, - 0x205b42, - 0x27c049, - 0x200ac2, - 0x38fe4b, - 0x2b038a, - 0x2e9f09, - 0x200542, - 0x22be06, - 0x3a0355, - 0x38ff95, - 0x25ab13, - 0x390513, - 0x20b602, - 0x20b605, - 0x20b60c, - 0x2833cb, - 0x251605, - 0x201182, - 0x30c842, - 0x36e406, - 0x200ec2, - 0x2da306, - 0x215ccd, - 0x2ca88c, - 0x3c8c84, - 0x200882, - 0x204e42, - 0x26a508, - 0x200202, - 0x2016c6, - 0x3a2fcf, - 0x2016d0, - 0x23a404, - 0x3a0515, - 0x25ac93, - 0x21e943, - 0x3541ca, - 0x392747, - 0x397ec9, - 0x30e4c7, - 0x327082, - 0x200282, - 0x3ceec6, - 0x2045c2, - 0x7ffc8, - 0x20a182, - 0x202a02, - 0x211907, - 0x398247, - 0x398251, - 0x2223c5, - 0x2223ce, - 0x22284f, - 0x2037c2, - 0x30ef87, - 0x225588, - 0x205f42, - 0x2272c2, - 0x212306, - 0x21230f, - 0x242910, - 0x232382, - 0x203702, - 0x2efdc8, - 0x207243, - 0x297948, - 0x2bbfcd, - 0x203703, - 0x3d3bc8, - 0x293e0f, - 0x2941ce, - 0x3e198a, - 0x2ee1d1, - 0x2ee650, - 0x22320d, - 0x22354c, - 0x3c5a07, - 0x354347, - 0x372049, - 0x21e742, - 0x202542, - 0x266e4c, - 0x26714b, - 0x202102, - 0x2db7c6, - 0x212fc2, - 0x200482, - 0x2b90c2, - 0x205842, - 0x235644, - 0x2456c7, - 0x20f1c2, - 0x24adc7, - 0x24d147, - 0x213682, - 0x215582, - 0x2508c5, - 0x201bc2, - 0x2dbd4e, - 0x2138cd, - 0x224d03, - 0x3b494e, - 0x2cda8d, - 0x332183, - 0x200d42, - 0x2958c4, - 0x29e2c2, - 0x220f42, - 0x3ac685, - 0x3b0dc7, - 0x254482, - 0x218b02, - 0x25b147, - 0x260588, - 0x262642, - 0x27b6c6, - 0x266ccc, - 0x26700b, - 0x202e42, - 0x27274f, - 0x272b10, - 0x272f0f, - 0x2732d5, - 0x273814, - 0x273d0e, - 0x27408e, - 0x27440f, - 0x2747ce, - 0x274b54, - 0x275053, - 0x27550d, - 0x289509, - 0x29be83, - 0x2038c2, - 0x35ed05, - 0x204b06, - 0x200382, - 0x36dc47, - 0x2e9c43, - 0x200642, - 0x3e7088, - 0x2ee411, - 0x2ee850, - 0x208102, - 0x29b207, - 0x203382, - 0x262807, - 0x208042, - 0x335309, - 0x36e3c7, - 0x28c948, - 0x3d1306, - 0x2fe243, - 0x39d7c5, - 0x22b342, - 0x2004c2, - 0x208a85, - 0x367d45, - 0x204442, - 0x25c083, - 0x349e07, - 0x3d1887, - 0x202d02, - 0x39a304, - 0x20d003, - 0x3d1d49, - 0x3db288, - 0x20b982, - 0x20fd02, - 0x243e47, - 0x2f04c5, - 0x237e48, - 0x350847, - 0x20e983, - 0x2fba46, - 0x22308d, - 0x22340c, - 0x39f706, - 0x203782, - 0x202c82, - 0x2026c2, - 0x293c8f, - 0x29408e, - 0x37bf87, - 0x205c02, - 0x219c05, - 0x219c06, - 0x21dfc2, - 0x20dec2, - 0x29cb06, - 0x210043, - 0x347146, - 0x2e34c5, - 0x2e34cd, - 0x2e3a55, - 0x2e4b0c, - 0x2e4e8d, - 0x2e51d2, - 0x20f782, - 0x27eec2, - 0x204342, - 0x217506, - 0x204346, - 0x43a8bec4, - 0x201242, - 0x204b86, - 0x214542, - 0x3d8045, - 0x202a42, - 0x2139c9, - 0x23388c, - 0x233bcb, - 0x2003c2, - 0x261708, - 0x20df02, - 0x200a82, - 0x283186, - 0x261c45, - 0x393507, - 0x3a81c5, - 0x26d105, - 0x2020c2, - 0x216342, - 0x20f102, - 0x2a10c7, - 0x301a0d, - 0x301d8c, - 0x24efc7, - 0x22e6c2, - 0x215502, - 0x3cf0c8, - 0x34a8c8, - 0x34d908, - 0x3c0384, - 0x2dc887, - 0x2ff703, - 0x253ac2, - 0x2043c2, - 0x302609, - 0x2336c7, - 0x202782, - 0x2837c5, - 0x285042, - 0x20e0c2, - 0x3095c3, - 0x3095c6, - 0x309742, - 0x30bd02, - 0x200402, - 0x3bd706, - 0x34ed07, - 0x21e202, - 0x200902, - 0x29778f, - 0x3b478d, - 0x38c84e, - 0x2cd90c, - 0x20a602, - 0x203342, - 0x3d1145, - 0x323f46, - 0x202682, - 0x206902, - 0x200682, - 0x2cdc04, - 0x2bbe44, - 0x358906, - 0x201782, - 0x28e207, - 0x248883, - 0x248888, - 0x2496c8, - 0x256887, - 0x3ab886, - 0x205f82, - 0x212f43, - 0x212f47, - 0x282d06, - 0x2d8485, - 0x285348, - 0x204942, - 0x38a4c7, - 0x207802, - 0x29ec82, - 0x203682, - 0x201889, - 0x2088c2, - 0x14cc8, - 0x200e02, - 0x2aa083, - 0x200e87, - 0x202602, - 0x233a0c, - 0x233d0b, - 0x39f786, - 0x20e385, - 0x43e27303, - 0x201c82, - 0x200fc2, - 0x2d5146, - 0x243783, - 0x354547, - 0x26d0c2, - 0x2008c2, - 0x3a01d5, - 0x390155, - 0x25a9d3, - 0x390693, - 0x277487, - 0x287591, - 0x288f50, - 0x296b12, - 0x299e51, - 0x2ac948, - 0x3b9dd0, - 0x2ac94f, - 0x2b0153, - 0x37b092, - 0x39b750, - 0x2c2acf, - 0x2c6152, - 0x2c7851, - 0x2c8dd3, - 0x2ccf12, - 0x2d498f, - 0x2e314e, - 0x2e4692, - 0x2e9d11, - 0x2ea3cf, - 0x2ed08e, - 0x2ed891, - 0x2f2810, - 0x2f3b12, - 0x2f6c51, - 0x2fda90, - 0x3064cf, - 0x307691, - 0x309ad0, - 0x30c9c6, - 0x30d987, - 0x311047, - 0x205dc2, - 0x292805, - 0x3dec07, - 0x26ca02, - 0x202d82, - 0x3cbe45, - 0x20a503, - 0x2718c6, - 0x301bcd, - 0x301f0c, - 0x204c02, - 0x20b48b, - 0x28328a, - 0x286d8a, - 0x227549, - 0x2d3d0b, - 0x300ccd, - 0x35098c, - 0x312e0a, - 0x36ee0c, - 0x3d4f8b, - 0x25144c, - 0x2813ce, - 0x28818b, - 0x2a724c, - 0x2ecd03, - 0x352f06, - 0x363742, - 0x308602, - 0x25f183, - 0x208602, - 0x23fa43, - 0x2d6ec6, - 0x273487, - 0x2d9706, - 0x3aefc8, - 0x349c88, - 0x321a86, - 0x212182, - 0x31378d, - 0x313acc, - 0x221947, - 0x317507, - 0x228282, - 0x21f182, - 0x212ec2, - 0x28f8c2, - 0x337216, - 0x33c315, - 0x33f8d6, - 0x3435d3, - 0x343c92, - 0x356513, - 0x3573d2, - 0x3bb24f, - 0x3caad8, - 0x3ce957, - 0x3cfb99, - 0x3d3318, - 0x3d3dd8, - 0x3d4957, - 0x3d8357, - 0x3d91d6, - 0x3df613, - 0x3dff95, - 0x3e0952, - 0x3e0dd3, - 0x1e702, - 0x4420f0c4, - 0x447c8bc8, - 0x2cc5, - 0x205842, - 0x2127c3, - 0x47f42, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x217083, - 0x2000c2, - 0x202ac2, - 0x456a2d45, - 0x45a3d685, - 0x45f6f186, - 0x7ffc8, - 0x462c9445, - 0x205842, - 0x201902, - 0x46730c85, - 0x46a91485, - 0x46e91f07, - 0x47358c49, - 0x4761d684, - 0x200382, - 0x200642, - 0x47a5c245, - 0x47ea2689, - 0x4836cc48, - 0x486c19c5, - 0x48b51107, - 0x48e1b008, - 0x4930d585, - 0x49623f46, - 0x49a531c9, - 0x49f7fbc8, - 0x4a2db448, - 0x4a6aa18a, - 0x4aa39104, - 0x4ae9cdc5, - 0x4b2b4708, - 0x4b654b45, - 0x21c142, - 0x4ba089c3, - 0x4beb4ec6, - 0x4c328ec8, - 0x4c746546, - 0x4cb4ee48, - 0x4cfb6006, - 0x4d3854c4, - 0x4d6048c2, - 0x4dee9287, - 0x4e2bcd44, - 0x4e68d7c7, - 0x4ebe8dc7, - 0x2003c2, - 0x4eead945, - 0x4f2854c4, - 0x4f7839c7, - 0x4fa48087, - 0x4fe95706, - 0x50218085, - 0x506a8b87, - 0x50ae8c88, - 0x50eb8c07, - 0x512bebc9, - 0x516e9a45, - 0x51b0fc07, - 0x51ea2386, - 0x2c68b, - 0x5236fc88, - 0x2289cd, - 0x284949, - 0x2a290b, - 0x2b0e8b, - 0x2b94cb, - 0x37880b, - 0x32414b, - 0x32440b, - 0x3248c9, - 0x32574b, - 0x325a0b, - 0x32680b, - 0x32740a, - 0x32794a, - 0x327f4c, - 0x32c2cb, - 0x32c80a, - 0x34144a, - 0x34bf0e, - 0x34cf0e, - 0x34d28a, - 0x34f70a, - 0x35164b, - 0x35190b, - 0x35240b, - 0x3767cb, - 0x376dca, - 0x377a8b, - 0x377d4a, - 0x377fca, - 0x37824a, - 0x39b34b, - 0x3a228b, - 0x3a548e, - 0x3a580b, - 0x3acbcb, - 0x3add0b, - 0x3b1a8a, - 0x3b1d09, - 0x3b1f4a, - 0x3b3e8a, - 0x3ca4cb, - 0x3dd44b, - 0x3de4ca, - 0x3df04b, - 0x3e694b, - 0x3ef20b, - 0x52693288, - 0x52a99789, - 0x52eb0a49, - 0x532f7d08, - 0x358685, - 0x20c003, - 0x260a44, - 0x34f285, - 0x21d3c6, - 0x223cc5, - 0x299004, - 0x36db48, - 0x31e445, - 0x2a46c4, - 0x3d5f87, - 0x2afb4a, - 0x384c8a, - 0x37c087, - 0x329087, - 0x2f2d47, - 0x25c3c7, - 0x207505, - 0x224346, - 0x37bb87, - 0x3ce084, - 0x2ced86, - 0x3048c6, - 0x3cf605, - 0x3324c4, - 0x2ad586, - 0x2aed87, - 0x2301c6, - 0x318287, - 0x240903, - 0x3c6c46, - 0x220b05, - 0x292007, - 0x27ba0a, - 0x310484, - 0x21a988, - 0x2be509, - 0x3c0a07, - 0x3c9f86, - 0x26c248, - 0x3e9149, - 0x310504, - 0x282884, - 0x304b45, - 0x222c88, - 0x2e1b87, - 0x30bec9, - 0x2f0e88, - 0x319806, - 0x328986, - 0x2aadc8, - 0x375846, - 0x23d685, - 0x2957c6, - 0x28db88, - 0x293b86, - 0x26608b, - 0x29eb06, - 0x2ac4cd, - 0x3da785, - 0x2bcc06, - 0x21b0c5, - 0x304d09, - 0x2d86c7, - 0x219a88, - 0x3c0746, - 0x2ab709, - 0x2ca346, - 0x27b985, - 0x219186, - 0x2dd006, - 0x2e6089, - 0x2d1846, - 0x2c8a07, - 0x364e85, - 0x202a43, - 0x266205, - 0x39ea47, - 0x335ac6, - 0x3da689, - 0x36f186, - 0x295a06, - 0x24b3c9, - 0x2951c9, - 0x2b3587, - 0x3642c8, - 0x29df09, - 0x292488, - 0x3ed546, - 0x2eec45, - 0x3220ca, - 0x295a86, - 0x3cb586, - 0x2e91c5, - 0x25f988, - 0x35b587, - 0x2387ca, - 0x25c686, - 0x303605, - 0x30c706, - 0x2a3407, - 0x3c9e47, - 0x30eb45, - 0x27bb45, - 0x242786, - 0x246246, - 0x255046, - 0x2b4bc4, - 0x294549, - 0x29afc6, - 0x378bca, - 0x22de48, - 0x30f908, - 0x384c8a, - 0x23c3c5, - 0x2aecc5, - 0x3d2808, - 0x3206c8, - 0x248307, - 0x23c286, - 0x339dc8, - 0x3d7687, - 0x292b88, - 0x2d0286, - 0x296488, - 0x2a8046, - 0x359147, - 0x245906, - 0x2ad586, - 0x243aca, - 0x39f886, - 0x2eec49, - 0x3bd606, - 0x211a4a, - 0x3854c9, - 0x240c06, - 0x2d2544, - 0x35edcd, - 0x2912c7, - 0x3c7506, - 0x2db305, - 0x2ca3c5, - 0x39cd86, - 0x2cc849, - 0x2dddc7, - 0x28ea46, - 0x2c9b06, - 0x299089, - 0x23d5c4, - 0x240d04, - 0x20bec8, - 0x35dac6, - 0x3dde08, - 0x219108, - 0x264787, - 0x3bcd49, - 0x3d0487, - 0x2c930a, - 0x3030cf, - 0x39b0ca, - 0x3d0f45, - 0x28ddc5, - 0x218f45, - 0x23a347, - 0x28f6c3, - 0x3644c8, - 0x236606, - 0x236709, - 0x2fc746, - 0x2e6a47, - 0x2ab4c9, - 0x219988, - 0x304ec7, - 0x322683, - 0x358705, - 0x2a2f45, - 0x2b4a0b, - 0x254c04, - 0x37a8c4, - 0x28b806, - 0x322847, - 0x39d30a, - 0x259587, - 0x2297c7, - 0x291485, - 0x3d9745, - 0x29e409, - 0x2ad586, - 0x25940d, - 0x346cc5, - 0x2b4c83, - 0x21df03, - 0x2fcac5, - 0x33a6c5, - 0x26c248, - 0x28f207, - 0x24e486, - 0x2b06c6, - 0x2316c5, - 0x23e987, - 0x331047, - 0x260d87, - 0x29ce4a, - 0x3c6d08, - 0x2b4bc4, - 0x293907, - 0x290647, - 0x360686, - 0x2a76c7, - 0x2f50c8, - 0x278fc8, - 0x280b46, - 0x3292c8, - 0x22ec44, - 0x37bb86, - 0x2693c6, - 0x38d946, - 0x20a246, - 0x2add04, - 0x25c486, - 0x2d9886, - 0x2aa686, - 0x20e506, - 0x3dac86, - 0x239a46, - 0x24e388, - 0x2cbd48, - 0x2ebec8, - 0x223ec8, - 0x3d2786, - 0x204005, - 0x372b86, - 0x2c1a45, - 0x32d207, - 0x280d85, - 0x215243, - 0x310c85, - 0x396884, - 0x3dadc5, - 0x20df03, - 0x2ca187, - 0x3ae008, - 0x318346, - 0x2c004d, - 0x28dd86, - 0x2a9c05, - 0x201883, - 0x2d6749, - 0x23d746, - 0x2a9146, - 0x21b404, - 0x39b047, - 0x3cdf86, - 0x303845, - 0x239803, - 0x3ec004, - 0x290806, - 0x224444, - 0x3c3448, - 0x3d8b09, - 0x281009, - 0x2b1d0a, - 0x25258d, - 0x3e7507, - 0x3d7086, - 0x216384, - 0x358c49, - 0x297d48, - 0x299606, - 0x246dc6, - 0x2a76c7, - 0x37aa06, - 0x21de46, - 0x3bd006, - 0x3e8e4a, - 0x21b008, - 0x2bae85, - 0x3866c9, - 0x3ccd0a, - 0x397988, - 0x2ae188, - 0x2a90c8, - 0x3296cc, - 0x3a2505, - 0x2b0948, - 0x2cfd86, - 0x2a3a06, - 0x2e0947, - 0x259485, - 0x295945, - 0x280ec9, - 0x20db47, - 0x2366c5, - 0x228e87, - 0x21df03, - 0x2e2545, - 0x22e248, - 0x294e47, - 0x2ae049, - 0x2d4205, - 0x36e684, - 0x31cf48, - 0x2bc287, - 0x305088, - 0x22c1c8, - 0x39e745, - 0x276dc6, - 0x2b07c6, - 0x35c509, - 0x2694c7, - 0x2c2306, - 0x3684c7, - 0x205383, - 0x21d684, - 0x22ed45, - 0x23eac4, - 0x38d244, - 0x293507, - 0x27a4c7, - 0x28ec04, - 0x2ade90, - 0x3868c7, - 0x3d9745, - 0x385f4c, - 0x207504, - 0x2bf3c8, - 0x359049, - 0x2c5ec6, - 0x31c0c8, - 0x205c04, - 0x28bb08, - 0x298b06, - 0x243948, - 0x2af346, - 0x31ffcb, - 0x3745c5, - 0x22ebc8, - 0x2186c4, - 0x3d8f4a, - 0x2ae049, - 0x3d6746, - 0x222f08, - 0x26a045, - 0x2d5cc4, - 0x2bf2c6, - 0x260c48, - 0x293288, - 0x3344c6, - 0x331c84, - 0x322046, - 0x3d0507, - 0x28d6c7, - 0x2a76cf, - 0x346087, - 0x39e187, - 0x36ca85, - 0x209e85, - 0x2b3249, - 0x31f7c6, - 0x292145, - 0x2954c7, - 0x2e4288, - 0x2244c5, - 0x245906, - 0x22dc88, - 0x34654a, - 0x24a588, - 0x29c887, - 0x303506, - 0x386686, - 0x2003c3, - 0x219d43, - 0x3ccec9, - 0x29dd89, - 0x2beac6, - 0x2d4205, - 0x329548, - 0x222f08, - 0x2ad1c8, - 0x3bd08b, - 0x2c0287, - 0x31c609, - 0x2a7948, - 0x34eb84, - 0x3d6a48, - 0x2a07c9, - 0x2c2605, - 0x2b83c7, - 0x21d705, - 0x293188, - 0x2a2bcb, - 0x2a88d0, - 0x2bc845, - 0x21860c, - 0x24e645, - 0x288a83, - 0x2d4d46, - 0x2d8d84, - 0x299486, - 0x2aed87, - 0x223ec4, - 0x2ce548, - 0x36438d, - 0x341805, - 0x22ebc4, - 0x2ba544, - 0x39dec9, - 0x2ac208, - 0x32f6c7, - 0x298b88, - 0x294608, - 0x28ed45, - 0x3cd207, - 0x28ecc7, - 0x2369c7, - 0x27bb49, - 0x288849, - 0x221346, - 0x223746, - 0x295586, - 0x323a45, - 0x3c6a84, - 0x3d4386, - 0x3d88c6, - 0x28ed88, - 0x2a30cb, - 0x310347, - 0x216384, - 0x3cdec6, - 0x219447, - 0x239645, - 0x286745, - 0x269984, - 0x2887c6, - 0x3d4408, - 0x358c49, - 0x25f5c6, + 0x24acc3, + 0xf5d87, + 0x89207, + 0x38286, + 0x473ca, + 0x9e208, + 0x6bd08, + 0x6c747, + 0xc8b04, + 0x177f46, + 0xfaf05, + 0x1a4045, + 0xb8743, + 0x1b506, + 0x5f986, + 0x265a04, + 0x33e2c7, + 0x1c3448, + 0x2eef84, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0xb642, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x339688, + 0x3496c4, + 0x241004, + 0x211d44, + 0x2dab87, + 0x2f1a07, + 0x21a043, + 0x24354b, + 0x3b43ca, + 0x3a9b07, + 0x3f11c8, + 0x21e908, + 0x226783, + 0x33ba07, + 0x204703, + 0x217b48, + 0x225d89, + 0x25c204, + 0x20bc83, 0x297b48, - 0x303906, - 0x364dc8, - 0x2dadcc, - 0x28ec06, - 0x2a98cd, - 0x2a9d4b, - 0x2c8ac5, - 0x331187, - 0x2d1946, - 0x3c9d08, - 0x2213c9, - 0x2c0588, - 0x3d9745, - 0x2a82c7, - 0x292588, - 0x371d89, - 0x38eb86, - 0x262d4a, - 0x3c9a88, - 0x2c03cb, - 0x2de38c, - 0x28bc08, - 0x28fec6, - 0x3725c8, - 0x3461c7, - 0x2a8589, - 0x2a258d, - 0x2ad486, - 0x3049c8, - 0x2cbc09, - 0x2d7488, - 0x296588, - 0x2da48c, - 0x2dc187, - 0x2dd187, - 0x27b985, - 0x2cf707, - 0x2e4148, - 0x2bf346, - 0x25f44c, - 0x306948, - 0x2e7608, - 0x220846, - 0x30aa07, - 0x221544, - 0x223ec8, - 0x321b8c, - 0x29aa0c, - 0x3d0fc5, - 0x3cf687, - 0x331c06, - 0x30a986, - 0x38be48, - 0x225804, - 0x2301cb, - 0x374dcb, - 0x303506, - 0x364207, - 0x374845, - 0x2827c5, - 0x230306, - 0x26a005, - 0x254bc5, - 0x2e5ec7, - 0x20df09, - 0x203a84, - 0x248c45, - 0x309505, - 0x217f48, - 0x35de45, - 0x2d4649, - 0x2c0cc7, - 0x2c0ccb, - 0x302106, - 0x24e0c9, - 0x332408, - 0x289985, - 0x236ac8, - 0x288888, - 0x3b5207, - 0x298907, - 0x293589, - 0x243887, - 0x29b5c9, - 0x2bdbcc, - 0x2beac8, - 0x2de1c9, - 0x3a1407, - 0x2946c9, - 0x3e1347, - 0x2de488, - 0x3e1545, - 0x37bb06, - 0x2db348, - 0x2ec7c8, - 0x3ccbc9, - 0x254c07, - 0x2b1f05, - 0x207c09, - 0x36a346, - 0x2a2384, - 0x30ce06, - 0x328d48, - 0x23da47, - 0x2a32c8, - 0x329389, - 0x323307, - 0x2ad306, - 0x331244, - 0x310d09, - 0x3cd088, - 0x220707, - 0x297346, - 0x2a3006, - 0x3cb504, - 0x2fb8c6, - 0x207cc3, - 0x374149, - 0x374586, - 0x2bce85, - 0x2b06c6, - 0x20e685, - 0x292a08, - 0x204f87, - 0x247806, - 0x330cc6, - 0x30f908, - 0x2b33c7, - 0x2ad4c5, - 0x2adc88, - 0x3dd848, - 0x3c9a88, - 0x24e505, - 0x37bb86, - 0x280dc9, - 0x35c384, - 0x20e50b, - 0x21db4b, - 0x2bad89, - 0x21df03, - 0x267ec5, - 0x338106, - 0x250248, - 0x3a7644, - 0x318346, - 0x29cf89, - 0x2c6c05, - 0x2e5e06, - 0x2bc286, - 0x222f04, - 0x2ae30a, - 0x2bcdc8, - 0x2ec7c6, - 0x379ac5, - 0x383187, - 0x33a907, - 0x276dc4, - 0x21dd87, - 0x2c9304, - 0x2f0f06, - 0x205bc3, - 0x27bb45, - 0x2c4ac5, - 0x3e1708, - 0x293ac5, - 0x28e949, - 0x223d07, - 0x223d0b, - 0x2b4ccc, - 0x2b52ca, - 0x351107, - 0x208c03, - 0x28d0c8, - 0x240cc5, - 0x224545, - 0x3587c4, - 0x2de386, - 0x359046, - 0x2fb907, - 0x26458b, - 0x2add04, - 0x36cbc4, - 0x2e1404, - 0x2e5bc6, - 0x223ec4, - 0x222d88, - 0x3585c5, - 0x252bc5, - 0x2ad107, - 0x331289, - 0x33a6c5, - 0x39cd8a, - 0x3de289, - 0x2a678a, - 0x3e8f89, - 0x312c84, - 0x2c9bc5, - 0x37ab08, - 0x383a8b, - 0x304b45, - 0x219286, - 0x24d204, - 0x28ee86, - 0x323189, - 0x219547, - 0x36f348, - 0x252906, - 0x3d0487, - 0x293288, - 0x380146, - 0x3d6e04, - 0x26ae87, - 0x390e85, - 0x39f0c7, - 0x205b04, - 0x2d18c6, - 0x33aa48, - 0x2a9f08, - 0x31a707, - 0x385088, - 0x2a8105, - 0x21dc84, - 0x384b88, - 0x320fc4, - 0x218ec5, - 0x38bc44, - 0x3d7787, - 0x29b087, - 0x294808, - 0x305206, - 0x293a45, - 0x28e748, - 0x24a788, - 0x2b1c49, - 0x21de46, - 0x238848, - 0x3d8dca, - 0x2396c8, - 0x30d585, - 0x372d86, - 0x3de148, - 0x2a838a, - 0x35bb07, - 0x298185, - 0x2a4d88, - 0x270504, - 0x25fa06, - 0x2dd808, - 0x3dac86, - 0x33b048, - 0x231cc7, - 0x3d5e86, - 0x2d2544, - 0x34c407, - 0x2cc184, - 0x323147, - 0x2eff4d, - 0x248385, - 0x2cc64b, - 0x29ac86, - 0x261808, - 0x2ce504, - 0x255246, - 0x290806, - 0x372907, - 0x2a958d, - 0x308a87, - 0x2cd508, - 0x3b4dc5, - 0x29e5c8, - 0x2e1b06, - 0x2a8188, - 0x23f1c6, - 0x385cc7, - 0x2e93c9, - 0x35b387, - 0x2998c8, - 0x26e5c5, - 0x231748, - 0x30a8c5, - 0x245845, - 0x370505, - 0x2191c3, - 0x20a2c4, - 0x239785, - 0x2531c9, - 0x37b946, - 0x2f51c8, - 0x249b85, - 0x2cf5c7, - 0x2d89ca, - 0x2e5d49, - 0x2dcf0a, - 0x2ebf48, - 0x228ccc, - 0x29554d, - 0x303b03, - 0x33af48, - 0x3ebfc5, - 0x346306, - 0x219806, - 0x35ea85, - 0x3685c9, - 0x208b85, - 0x28e748, - 0x268e86, - 0x370d06, - 0x2b3cc9, - 0x26ba87, - 0x2a2e86, - 0x2d8948, - 0x38d848, - 0x2f7f07, - 0x2e62ce, - 0x2e1d45, - 0x371c85, - 0x3dab88, - 0x3327c7, - 0x20df82, - 0x2da144, - 0x29938a, - 0x2207c8, - 0x2889c6, - 0x2ab608, - 0x2b07c6, - 0x209d08, - 0x2c2308, - 0x245804, - 0x2cf985, - 0x773104, - 0x773104, - 0x773104, - 0x203e03, - 0x2038c6, - 0x28ec06, - 0x2af74c, - 0x205c43, - 0x205b06, - 0x21b284, - 0x23d6c8, - 0x29cdc5, - 0x299486, - 0x2b4808, - 0x2ecdc6, - 0x247786, - 0x3d6548, - 0x22edc7, - 0x243649, - 0x33824a, - 0x27a644, - 0x280d85, - 0x30be85, - 0x358a46, - 0x3e7546, - 0x3316c6, - 0x36a0c6, - 0x243784, - 0x24378b, - 0x23da44, - 0x24e245, - 0x2c1285, - 0x264846, - 0x3e9788, - 0x295407, - 0x374504, - 0x26f0c3, - 0x270005, - 0x30ccc7, - 0x29530b, - 0x3e1607, - 0x2b4708, - 0x2cfac7, - 0x27e146, - 0x284c08, - 0x2a6d4b, - 0x34f1c6, - 0x2103c9, - 0x2a6ec5, - 0x322683, - 0x2e5e06, - 0x231bc8, - 0x214283, - 0x2d1a03, - 0x293286, - 0x2b07c6, - 0x37e60a, - 0x28ff05, - 0x29064b, - 0x2b060b, - 0x24da83, - 0x20a8c3, - 0x2c9284, - 0x2d8807, - 0x231c44, - 0x23d6c4, - 0x2cfc04, - 0x2399c8, - 0x379a08, - 0x219f49, - 0x2e9ac8, - 0x3c7787, - 0x20e506, - 0x2f4e0f, - 0x2e1e86, - 0x2eb284, - 0x37984a, - 0x30cbc7, - 0x2cc286, - 0x2a23c9, - 0x219ec5, - 0x246305, - 0x21a006, - 0x231883, - 0x270549, - 0x21b186, - 0x329149, - 0x39d306, - 0x27bb45, - 0x3d13c5, - 0x203383, - 0x3cc588, - 0x32f887, - 0x236604, - 0x23d548, - 0x2a3784, - 0x320ec6, - 0x2d4d46, - 0x249406, - 0x22ea89, - 0x2244c5, - 0x2ad586, - 0x262689, - 0x2e1006, - 0x239a46, - 0x3afcc6, - 0x22e9c5, - 0x38bc46, - 0x385cc4, - 0x3e1545, - 0x2db344, - 0x2cec86, - 0x346c84, - 0x219543, - 0x297e05, - 0x23fb48, - 0x255787, - 0x3a76c9, - 0x298088, - 0x2aab91, - 0x2bc30a, - 0x303447, - 0x279306, - 0x21b284, - 0x2db448, - 0x2f6088, - 0x2aad4a, - 0x2d440d, - 0x219186, - 0x3d6646, - 0x34c4c6, - 0x30e9c7, - 0x2cd5c5, - 0x3bcb07, - 0x23d605, - 0x2c0e04, - 0x347246, - 0x23c0c7, - 0x27024d, - 0x3de087, - 0x36da48, - 0x28ea49, - 0x372c86, - 0x38eb05, - 0x245404, - 0x328e46, - 0x3bcc46, - 0x220946, - 0x2abe88, - 0x233803, - 0x218183, - 0x384745, - 0x25c786, - 0x2c22c5, - 0x252b08, - 0x2aef4a, - 0x276ec4, - 0x23d6c8, - 0x2a90c8, - 0x39ec07, - 0x298789, - 0x2d6a88, - 0x2bec47, - 0x2d9a06, - 0x3dac8a, - 0x328ec8, - 0x31ce09, - 0x2ac2c8, - 0x21d009, - 0x2791c7, - 0x2cca05, - 0x3bd286, - 0x2bf1c8, - 0x28a308, - 0x2662c8, - 0x341948, - 0x24e245, - 0x20bcc4, - 0x23dd08, - 0x24cf84, - 0x3e8d84, - 0x27bb45, - 0x2a4707, - 0x331049, - 0x372707, - 0x238885, - 0x28ba06, - 0x3792c6, - 0x210504, - 0x2b3fc6, - 0x290a84, - 0x28b0c6, - 0x330e06, - 0x2140c6, - 0x3d9745, - 0x2529c7, - 0x208c03, - 0x270d09, - 0x30f708, - 0x23d544, - 0x358b4d, - 0x2aa008, - 0x3012c8, - 0x31cd86, - 0x2e94c9, - 0x2e5d49, - 0x322e85, - 0x2af04a, - 0x281a0a, - 0x28e44c, - 0x28e5c6, - 0x28ccc6, - 0x2e2486, - 0x3ac749, - 0x346546, - 0x2b3406, - 0x208c46, - 0x223ec8, - 0x24a586, - 0x2eaa4b, - 0x2a4885, - 0x252bc5, - 0x28d7c5, - 0x20bc46, - 0x219143, - 0x249386, - 0x3de007, - 0x2db305, - 0x28c085, - 0x2ca3c5, - 0x2f9a46, - 0x322f44, - 0x336946, - 0x2a0b09, - 0x20bacc, - 0x2c0b48, - 0x260bc4, - 0x37fac6, - 0x29ad86, - 0x231bc8, - 0x222f08, - 0x20b9c9, - 0x383187, - 0x35d809, - 0x283886, - 0x219104, - 0x20fd44, - 0x293884, - 0x293288, - 0x330e8a, - 0x33a646, - 0x36c947, - 0x39f347, - 0x24e1c5, - 0x2b6904, - 0x2a0786, - 0x2cd606, - 0x205083, - 0x30f547, - 0x22c0c8, - 0x322fca, - 0x3cf988, - 0x34ee48, - 0x346cc5, - 0x229005, - 0x310445, - 0x24e586, - 0x250fc6, - 0x3e1845, - 0x374389, - 0x2b670c, - 0x34a587, - 0x2aadc8, - 0x295dc5, - 0x773104, - 0x2bb4c4, - 0x294f84, - 0x24b586, - 0x2b150e, - 0x246387, - 0x301285, - 0x35c30c, - 0x2a3647, - 0x23c047, - 0x247a89, - 0x21aa49, - 0x298185, - 0x30f708, - 0x280dc9, - 0x3c9945, - 0x2db248, - 0x2e8e86, - 0x384e06, - 0x3854c4, - 0x31c7c8, - 0x252483, - 0x2034c4, - 0x270085, - 0x3a4807, - 0x3235c5, - 0x3d8c89, - 0x39138d, - 0x2b2246, - 0x3d5504, - 0x23c208, - 0x20dd4a, - 0x3a9947, - 0x34a405, - 0x203503, - 0x2b07ce, - 0x3cc68c, - 0x397a87, - 0x2b16c7, - 0x4dba3607, - 0x2b4c6, - 0x2c684, - 0x205b43, - 0x346585, - 0x294f85, - 0x2ab9c8, - 0x2a8f09, - 0x260ac6, - 0x231c44, - 0x303386, - 0x38d60b, - 0x2e00cc, - 0x267c47, - 0x2ead05, - 0x3dd748, - 0x2f7cc5, - 0x379847, - 0x2e9287, - 0x252485, - 0x219143, - 0x245ac4, - 0x328c05, - 0x203985, - 0x203986, - 0x2a0588, - 0x23c0c7, - 0x219b06, - 0x3cb406, - 0x370446, - 0x2d1a49, - 0x3cd307, - 0x260946, - 0x2e0246, - 0x239006, - 0x2bcd05, - 0x20d646, - 0x3b5c05, - 0x35dec8, - 0x2a434b, - 0x2a0106, - 0x39f384, - 0x23a1c9, - 0x223d04, - 0x2e8e08, - 0x311707, - 0x296484, - 0x2d5ec8, - 0x2dca44, - 0x2bcd44, - 0x23d485, - 0x341846, - 0x239907, - 0x22eb83, - 0x2ad3c5, - 0x33ecc4, - 0x371cc6, - 0x322f08, - 0x384f85, - 0x2a4009, - 0x207e05, - 0x205b08, - 0x35c1c7, - 0x374688, - 0x2d5b07, - 0x39e249, - 0x25c306, - 0x3a0fc6, - 0x208c44, - 0x20e445, - 0x3dce8c, - 0x28d7c7, - 0x28dc87, - 0x3e7188, - 0x2b2246, - 0x3ddf44, - 0x31da44, - 0x293409, - 0x2e2586, - 0x29e487, - 0x372a44, - 0x2b40c6, - 0x3d22c5, - 0x2e9107, - 0x2ea9c6, - 0x262c09, - 0x31f9c7, - 0x2a76c7, - 0x2b3b46, - 0x297285, - 0x291a88, - 0x21b008, - 0x375b46, - 0x384fc5, - 0x2dedc6, - 0x203e43, - 0x2ab849, - 0x33144e, - 0x2d5848, - 0x2a3888, - 0x37594b, - 0x2a4246, - 0x39f244, - 0x247784, - 0x33154a, - 0x218507, - 0x260a05, - 0x2103c9, - 0x2d9945, - 0x3e8dc7, - 0x245b84, - 0x2900c7, - 0x219008, - 0x3c0ac6, - 0x2d6fc9, - 0x2d6b8a, - 0x218486, - 0x2a9b46, - 0x2c1205, - 0x3a5dc5, - 0x3a9647, - 0x251a88, - 0x3d2208, - 0x245806, - 0x3d1445, - 0x3e72ce, - 0x2b4bc4, - 0x2ab945, - 0x28b389, - 0x31f5c8, - 0x29c7c6, - 0x2ad78c, - 0x2aeb50, - 0x2b114f, - 0x2b3148, - 0x351107, - 0x3d9745, - 0x239785, - 0x239789, - 0x2a4f89, - 0x322146, - 0x304bc7, - 0x38bd45, - 0x248309, - 0x360706, - 0x34638d, - 0x293749, - 0x23d6c4, - 0x2d5048, - 0x23ddc9, - 0x33a806, - 0x28d2c5, - 0x3a0fc6, - 0x36f209, - 0x36fb08, - 0x204005, - 0x2a0504, - 0x2ad94b, - 0x33a6c5, - 0x2502c6, - 0x295886, - 0x25d146, - 0x24e80b, - 0x2a4109, - 0x3e1485, - 0x32d107, - 0x2bc286, - 0x261986, - 0x294d08, - 0x2d9b09, - 0x36d80c, - 0x30cac8, - 0x31bb06, - 0x3344c3, - 0x235f06, - 0x240c45, - 0x291188, - 0x3d0e46, - 0x304f88, - 0x259605, - 0x26bf45, - 0x2ddf88, - 0x383487, - 0x219747, - 0x2fb907, - 0x31c0c8, - 0x351248, - 0x2f5f86, - 0x2ceac7, - 0x21d547, - 0x39dfca, - 0x205cc3, - 0x20bc46, - 0x260d05, - 0x2854c4, - 0x28ea49, - 0x39e1c4, - 0x200e84, - 0x2af3c4, - 0x2b16cb, - 0x32f7c7, - 0x2f9a05, - 0x2a7e08, - 0x28ba06, - 0x28ba08, - 0x28fe46, - 0x29d2c5, - 0x29d805, - 0x2a1486, - 0x276c48, - 0x2a2308, - 0x28ec06, - 0x2a7c4f, - 0x2ab310, - 0x3da785, - 0x208c03, - 0x286385, - 0x31c548, - 0x2a4e89, - 0x3c9a88, - 0x21b288, - 0x263f08, - 0x32f887, - 0x28b6c9, - 0x305188, - 0x3c8fc4, - 0x2af248, - 0x218009, - 0x2cf047, - 0x39eb84, - 0x3727c8, - 0x25278a, - 0x32f346, - 0x219186, - 0x21dd09, - 0x2aed87, - 0x2e68c8, - 0x245c08, - 0x3cbac8, - 0x2775c5, - 0x348d85, - 0x252bc5, - 0x294f45, - 0x2cba47, - 0x21dcc5, - 0x2db305, - 0x21da06, - 0x3c99c7, - 0x3839c7, - 0x252a86, - 0x2ec485, - 0x2502c6, - 0x205005, - 0x36d588, - 0x320644, - 0x2e1086, - 0x398084, - 0x2d5cc8, - 0x2e118a, - 0x28f20c, - 0x2afd05, - 0x30ea86, - 0x36d9c6, - 0x3b6b46, - 0x31bb84, - 0x3d2b45, - 0x28f707, - 0x2aee09, - 0x2e6187, - 0x773104, - 0x773104, - 0x32f645, - 0x30e584, - 0x2acf4a, - 0x28b886, - 0x2ddf04, - 0x3cf605, - 0x2cae05, - 0x2cd504, - 0x2954c7, - 0x207d87, - 0x2e5bc8, - 0x2deec8, - 0x204009, - 0x320fc8, - 0x299a0b, - 0x2398c4, - 0x34a4c5, - 0x2921c5, - 0x2fb889, - 0x2d9b09, - 0x23a0c8, - 0x2f0d08, - 0x264844, - 0x29adc5, - 0x20c003, - 0x358a05, - 0x2ad606, - 0x2a8d4c, - 0x21b086, - 0x28d1c6, - 0x29ca45, - 0x2f9ac8, - 0x2e0a86, - 0x279486, - 0x219186, - 0x22e80c, - 0x282384, - 0x37058a, - 0x29c988, - 0x2a8b87, - 0x33ebc6, - 0x260b87, - 0x302f85, - 0x297346, - 0x361386, - 0x37b807, - 0x255844, - 0x3d7885, - 0x28b384, - 0x2c0e87, - 0x28b5c8, - 0x28cb4a, - 0x292407, - 0x2bc907, - 0x351087, - 0x2f7e09, - 0x2a8d4a, - 0x232443, - 0x255745, - 0x214103, - 0x2cfc49, - 0x231e08, - 0x36ca87, - 0x3c9b89, - 0x21b106, - 0x2050c8, - 0x2ca105, - 0x24a88a, - 0x3a8289, - 0x280a09, - 0x2e0947, - 0x2f6189, - 0x213fc8, - 0x3d6c46, - 0x30ec48, - 0x28c3c7, - 0x243887, - 0x3de287, - 0x2e8c88, - 0x37f046, - 0x252545, - 0x28f707, - 0x2a9648, - 0x3703c4, - 0x378a84, - 0x2a2d87, - 0x2c2687, - 0x280c4a, - 0x3d6bc6, - 0x3d2e4a, - 0x2da087, - 0x2b4987, - 0x3d7944, - 0x29b684, - 0x2e9006, - 0x3cd884, - 0x3cd88c, - 0x311645, - 0x218e49, - 0x205c84, - 0x2cd5c5, - 0x20dcc8, - 0x2a23c5, - 0x39cd86, - 0x2a50c4, - 0x2a5fca, - 0x2c1f06, - 0x3513ca, - 0x2b8c07, - 0x2a3405, - 0x231885, - 0x24e20a, - 0x28a245, - 0x239746, - 0x24cf84, - 0x2c9406, - 0x3a9705, - 0x3d0f06, - 0x31a70c, - 0x36464a, - 0x281b04, - 0x20e506, - 0x2aed87, - 0x2ea944, - 0x223ec8, - 0x3ab986, - 0x39f1c9, - 0x37d709, - 0x2bebc9, - 0x20e6c6, - 0x28c4c6, - 0x30ed87, - 0x3742c8, - 0x28c2c9, - 0x32f7c7, - 0x2a7f86, - 0x3d0507, - 0x34c385, - 0x2b4bc4, - 0x30e947, - 0x21d705, - 0x2992c5, - 0x393747, - 0x252348, - 0x3dd6c6, - 0x2aa4cd, - 0x2abbcf, - 0x2b060d, - 0x21dc04, - 0x23fc46, - 0x2ed548, - 0x208c05, - 0x24e6c8, - 0x3b50ca, - 0x23d6c4, - 0x2cbec6, - 0x2b6187, - 0x2cde87, - 0x22ee89, - 0x30ec05, - 0x2cd504, - 0x2cf8ca, - 0x2d6649, - 0x2f6287, - 0x2aa786, - 0x33a806, - 0x29ad06, - 0x26af46, - 0x35a38f, - 0x2ed409, - 0x24a586, - 0x26be86, - 0x237789, - 0x2cebc7, - 0x20ae43, - 0x22e986, - 0x219d43, - 0x35e948, - 0x255107, - 0x2b3349, - 0x2b4588, - 0x219888, - 0x254d46, - 0x22af49, - 0x35d745, - 0x235e44, - 0x2ccac7, - 0x3ac7c5, - 0x21dc04, - 0x3e75c8, - 0x2187c4, - 0x2ce907, - 0x3adf86, - 0x242845, - 0x2ac2c8, - 0x33a6cb, - 0x30fc07, - 0x24e486, - 0x2e1f04, - 0x3b5f86, - 0x27bb45, - 0x21d705, - 0x291809, - 0x2950c9, - 0x2438c4, - 0x243905, - 0x20e545, - 0x24a706, - 0x30f808, - 0x2d9286, - 0x22bf0b, - 0x2c5d4a, - 0x2d5c05, - 0x29d886, - 0x236305, - 0x3c5b45, - 0x2a9247, - 0x20bec8, - 0x276cc4, - 0x25be46, - 0x2a2386, - 0x214187, - 0x322644, - 0x290806, - 0x23a445, - 0x23a449, - 0x28c6c4, - 0x30bfc9, - 0x28ec06, - 0x2dc248, - 0x20e545, - 0x39f445, - 0x3d0f06, - 0x36d709, - 0x21aa49, - 0x28d246, - 0x31f6c8, - 0x35c408, - 0x2362c4, - 0x2d0084, - 0x2d0088, - 0x3c7608, - 0x35d909, - 0x2ad586, - 0x219186, - 0x339c8d, - 0x318346, - 0x2dac89, - 0x3bcf05, - 0x21a006, - 0x36fc88, - 0x336885, - 0x21d584, - 0x27bb45, - 0x294a08, - 0x2acd09, - 0x28b444, - 0x2d18c6, - 0x2eadca, - 0x397988, - 0x280dc9, - 0x28d90a, - 0x3c9b06, - 0x2abd88, - 0x379605, - 0x3b4c48, - 0x303005, - 0x21afc9, - 0x33c7c9, - 0x23bc42, - 0x2a6ec5, - 0x292286, - 0x28eb47, - 0x2854c5, - 0x33eac6, - 0x317308, - 0x2b2246, - 0x37a9c9, - 0x28dd86, - 0x294b88, - 0x2be0c5, - 0x24c706, - 0x385dc8, - 0x293288, - 0x2790c8, - 0x319888, - 0x20d644, - 0x223803, - 0x37ac04, - 0x292606, - 0x34c3c4, - 0x2a37c7, - 0x279389, - 0x2e1405, - 0x245c06, - 0x22e986, - 0x2a03cb, - 0x2cc1c6, - 0x237fc6, - 0x2e3fc8, - 0x328986, - 0x2a3203, - 0x207083, - 0x2b4bc4, - 0x238745, - 0x303747, - 0x28b5c8, - 0x28b5cf, - 0x28f60b, - 0x30f608, - 0x2d1946, - 0x30f90e, - 0x24e643, - 0x3036c4, - 0x2cc145, - 0x2cd386, - 0x2a088b, - 0x2a47c6, - 0x22dd09, - 0x242845, - 0x248a08, - 0x203cc8, - 0x21a90c, - 0x2b1706, - 0x358a46, - 0x2d4205, - 0x299688, - 0x28f205, - 0x34eb88, - 0x2adb0a, - 0x2b0a49, - 0x773104, + 0x214e43, + 0x2eeb8a, + 0x2f4006, + 0x3b52c7, + 0x214883, + 0x2fe146, + 0x3e4088, + 0x24acc3, + 0x25e906, + 0x30568d, + 0x3070c8, + 0x30be4b, + 0x30f646, + 0x20d847, + 0x223305, + 0x3e890a, + 0x365905, + 0x26ec0a, + 0x22ccc2, + 0x200f83, + 0x260644, + 0x200006, + 0x3c3043, + 0x2b3c83, + 0x2332c3, + 0x23ac83, + 0x3ec3c3, + 0x201902, + 0x3a52c5, + 0x2bfbc9, + 0x204d03, + 0x24da43, + 0x205d83, + 0x20cb03, + 0x200201, + 0x2ced07, + 0x2f2345, + 0x3ca803, + 0x262603, + 0x3f2583, + 0x211d44, + 0x33be83, + 0x214188, + 0x377ac3, + 0x31c8cd, + 0x2901c8, + 0x2200c6, + 0x304103, + 0x38bc43, + 0x3af583, + 0xde1a043, + 0x240908, + 0x243544, + 0x24a083, + 0x24e8c3, + 0x200106, + 0x252c48, + 0x242ec3, + 0x220ac3, + 0x2c5383, + 0x224dc3, + 0x3e8943, + 0x21c0c3, + 0x226783, + 0x20ff83, + 0x25aa43, + 0x265883, + 0x2307c3, + 0x340403, + 0x213703, + 0x201d03, + 0x3ac745, + 0x2673c4, + 0x268507, + 0x2698c2, + 0x26a803, + 0x26ee86, + 0x270683, + 0x270a03, + 0x28e3c3, + 0x378803, + 0x221943, + 0x201c83, + 0x2ad347, + 0xea0f583, + 0x240243, + 0x20afc3, + 0x211983, + 0x231a43, + 0x21cb03, + 0x22b2c5, + 0x388583, + 0x24e349, + 0x200c03, + 0x31ac43, + 0xee5b543, + 0x22bd83, + 0x203c83, + 0x219608, + 0x2bfb06, + 0x3785c6, + 0x2ca886, + 0x271607, + 0x2252c3, + 0x2384c3, + 0x214e43, + 0x29e306, + 0x20ffc2, + 0x2f33c3, + 0x344245, + 0x214883, + 0x32ad07, + 0x1608c43, + 0x2a1943, + 0x241a83, + 0x241503, + 0x247043, + 0x24acc3, + 0x366386, + 0x3bfdc6, + 0x389a83, + 0x3407c3, + 0x205443, + 0x21dcc3, + 0x31d4c3, + 0x310483, + 0x314143, + 0x212c85, + 0x2423c3, + 0x2423c6, + 0x21bd03, + 0x3c3688, + 0x236883, + 0x236889, + 0x263988, + 0x224888, + 0x22e2c5, + 0x23c04a, + 0x23d60a, + 0x24174b, + 0x245088, + 0x2ce083, + 0x216ec3, + 0x314183, + 0x2edd03, + 0x315888, + 0x334d83, + 0x3c8704, + 0x205e02, + 0x23fac3, + 0x265603, + 0x2007c3, + 0x3af603, + 0x283143, + 0x23ae43, + 0x22ccc2, + 0x2233c3, + 0x246143, + 0x31fd43, + 0x321d84, + 0x260644, + 0x2355c3, + 0x1c3448, + 0xe31e00c, + 0xe6ea545, + 0xdefc5, 0x2000c2, - 0x53a05842, + 0x200b02, + 0x201902, + 0x2029c2, + 0x200202, + 0x205202, + 0x244b02, + 0x201b42, 0x200382, - 0x258104, - 0x2026c2, - 0x292e44, - 0x2048c2, - 0xbc03, - 0x2003c2, - 0x2036c2, - 0x7ffc8, - 0x45c4, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0xf002, - 0x58e02, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x6ca02, - 0x9e42, - 0x1b02, - 0x258843, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x2127c3, - 0x21f483, - 0x220743, - 0x29f804, - 0x229f43, - 0x241284, - 0x224d03, - 0x2ef2c4, - 0x2e9c43, - 0x285787, - 0x219c03, - 0x20bc03, - 0x219d08, - 0x21f483, - 0x28aa0b, - 0x3041c3, - 0x216e06, - 0x208ec2, - 0x2ff38b, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x21f483, - 0x21ad03, - 0x207743, - 0x2000c2, - 0x7ffc8, - 0x232a05, - 0x21d788, - 0x34fd88, - 0x205842, - 0x354705, - 0x3d0647, - 0x203642, - 0x2ce747, - 0x200382, - 0x262447, - 0x22cf89, - 0x27c388, - 0x3cb949, - 0x212c82, - 0x203e87, - 0x392fc4, - 0x3d0707, - 0x2c5c47, - 0x26dc42, - 0x219c03, - 0x20f782, - 0x2048c2, - 0x2003c2, - 0x20f102, - 0x200902, - 0x2036c2, - 0x2eb705, - 0x212345, - 0x5842, - 0x24d03, - 0x229f43, - 0x224d03, - 0x219443, - 0x2e9c43, - 0x204203, - 0x2127c3, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x14fa46, - 0x566c744b, - 0x219c03, - 0x2127c3, - 0x81983, - 0x21f483, - 0xca7c5, - 0x11643, - 0x101, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x25e043, - 0x2127c3, - 0x81983, - 0x21f483, - 0x21fc83, - 0x5706e786, - 0x5483, - 0x1739c5, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x205842, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x81983, - 0x21f483, - 0x7042, - 0x7ffc8, - 0x361c3, - 0xbc03, - 0x81983, - 0x51a44, - 0x1487dc4, - 0xf80c5, - 0x2000c2, - 0x32d4c4, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x240a03, - 0x235c45, - 0x25e043, - 0x2280c3, - 0x2127c3, - 0x25c743, - 0x21f483, - 0x217083, - 0x208d43, - 0x205ec3, - 0xc8bc3, - 0x5c2, - 0x47f42, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x2000c2, - 0x258843, - 0x205842, - 0xd02, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x2127c3, - 0x21f483, - 0x2036c2, - 0x7ffc8, - 0x2e9c43, - 0x81983, - 0x7ffc8, - 0x81983, - 0x2c9ec3, - 0x229f43, - 0x23b4c4, - 0x224d03, - 0x2e9c43, - 0x203842, - 0x219c03, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x203842, - 0x2335c3, - 0x2127c3, - 0x21f483, - 0x2fe343, - 0x217083, - 0x2000c2, - 0x205842, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x216e05, - 0x157246, - 0x762c4, - 0x31384, - 0x29f804, - 0x208ec2, - 0x882, - 0x7ffc8, - 0xd02, - 0x58e02, - 0xfc2, - 0x2000c2, - 0x145d45, - 0x25388, - 0xf7c03, - 0x205842, - 0x48244, - 0x5c149406, - 0xc344, - 0xb2e8b, - 0x46a06, - 0x84447, - 0xb7ac9, - 0x224d03, - 0x573c8, - 0x573cb, - 0x5784b, - 0x585cb, - 0x5890b, - 0x58bcb, - 0x5900b, - 0xeb86, - 0x2e9c43, - 0x146bc5, - 0x172ec4, - 0x267c83, - 0x1196c7, - 0x15a2c6, - 0x12fc05, - 0x1cde04, - 0xf37c4, - 0x7f0c4, - 0x2127c3, - 0x8d346, - 0xf9304, - 0x81983, - 0x21f483, - 0x305744, - 0x1300c7, - 0x156e49, - 0xb2c48, - 0x1e3f05, - 0x1d3204, - 0x1d0844, - 0x172283, - 0x5b646, - 0x11448, - 0x198185, - 0x71c9, - 0x13803, - 0x10b2c6, - 0x145d45, - 0x205842, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x20bc03, - 0x21f483, - 0x3041c3, - 0x208ec2, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x258103, - 0x222d84, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2ef2c4, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x216e06, - 0x224d03, - 0x2e9c43, - 0x1d343, - 0x81983, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x145d45, - 0x84447, - 0x84c3, - 0x13803, - 0x7ffc8, - 0x2e9c43, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x979c3, - 0x2127c3, - 0x21f483, - 0x5f629f43, - 0x224d03, - 0x2127c3, - 0x21f483, - 0x7ffc8, - 0x2000c2, - 0x205842, - 0x229f43, - 0x2e9c43, - 0x2127c3, - 0x2003c2, - 0x21f483, - 0x33cd07, - 0x236d4b, - 0x219dc3, - 0x321e08, - 0x374047, - 0x3e2986, - 0x3112c5, - 0x354849, - 0x216b88, - 0x285b89, - 0x285b90, - 0x38864b, - 0x3aec89, - 0x2084c3, - 0x221c49, - 0x23ca06, - 0x23ca0c, - 0x232ac8, - 0x3ed388, - 0x271709, - 0x2d094e, - 0x22cd4b, - 0x2c54cc, - 0x2030c3, - 0x27f60c, - 0x2030c9, - 0x3e4347, - 0x23e60c, - 0x2c714a, - 0x259b44, - 0x2c084d, - 0x27f4c8, - 0x3d9ecd, - 0x282c06, - 0x29f80b, - 0x356fc9, - 0x26c107, - 0x386206, - 0x332949, - 0x349f8a, - 0x3a73c8, - 0x303dc4, - 0x2c3087, - 0x250d47, - 0x20a3c4, - 0x22d744, - 0x387109, - 0x3bc989, - 0x3d0bc8, - 0x32e9c5, - 0x212bc5, - 0x20da06, - 0x2c0709, - 0x352bcd, - 0x21a108, - 0x20d907, - 0x311348, - 0x24f486, - 0x2443c4, - 0x269185, - 0x3e8c86, - 0x3eb4c4, - 0x202fc7, - 0x20644a, - 0x213f04, - 0x2183c6, - 0x21bf49, - 0x21bf4f, - 0x21cd0d, - 0x21d246, - 0x224f90, - 0x225386, - 0x225c47, - 0x226587, - 0x22658f, - 0x227009, - 0x22ca86, - 0x22d207, - 0x22d208, - 0x22e049, - 0x3d5848, - 0x30b9c7, - 0x20e2c3, - 0x234e06, - 0x32e6c8, - 0x2d0c0a, - 0x203709, - 0x216cc3, - 0x354606, - 0x25bc8a, - 0x244e47, - 0x3e418a, - 0x34910e, - 0x227146, - 0x33f0c7, - 0x24b806, - 0x202546, - 0x348b8b, - 0x20ec8a, - 0x3d7c8d, - 0x28c587, - 0x27a688, - 0x27a689, - 0x27a68f, - 0x3a784c, - 0x3a7b09, - 0x278ace, - 0x28588a, - 0x237d46, - 0x2f7486, - 0x3b2acc, - 0x317fcc, - 0x322c88, - 0x35b287, - 0x224245, - 0x3d08c4, - 0x34aece, - 0x22f544, - 0x3405c7, - 0x3ad60a, - 0x3e6bd4, - 0x3ea64f, - 0x226748, - 0x234cc8, - 0x38168d, - 0x38168e, - 0x235149, - 0x342548, - 0x34254f, - 0x23e30c, - 0x23e30f, - 0x23f987, - 0x2422ca, - 0x2445cb, - 0x245008, - 0x2474c7, - 0x253c4d, - 0x366a06, - 0x2c0a06, - 0x249209, - 0x272348, - 0x24f808, - 0x24f80e, - 0x236e47, - 0x308645, - 0x251805, - 0x209484, - 0x3e2c46, - 0x3d0ac8, - 0x264283, - 0x2c68ce, - 0x254008, - 0x24fe4b, - 0x359547, - 0x233645, - 0x27f786, - 0x2bfb07, - 0x32ecc8, - 0x330989, - 0x23ec45, - 0x297e48, - 0x230546, - 0x3b984a, - 0x34adc9, - 0x23e6c9, - 0x23e6cb, - 0x284f88, - 0x20a289, - 0x2c9806, - 0x26c4ca, - 0x3d1fca, - 0x2424cc, - 0x379c87, - 0x27c18a, - 0x3c6e8b, - 0x3c6e99, - 0x2d9408, - 0x216e85, - 0x253e06, - 0x36ff09, - 0x240186, - 0x22ff8a, - 0x229dc6, - 0x20a6c4, - 0x2e2e4d, - 0x20a6c7, - 0x325f89, - 0x255f05, - 0x256dc8, - 0x257189, - 0x259344, - 0x259a47, - 0x259a48, - 0x25a107, - 0x279c48, - 0x260787, - 0x2e5885, - 0x26888c, - 0x268c89, - 0x31b2ca, - 0x26b909, - 0x221d49, - 0x26bc4c, - 0x26ef8b, - 0x270f48, - 0x272548, - 0x275904, - 0x295f08, - 0x2975c9, - 0x2c7207, - 0x21c186, - 0x2af587, - 0x2fbc89, - 0x20ffcb, - 0x2511c7, - 0x21f507, - 0x2b8d47, - 0x3d9e44, - 0x3d9e45, - 0x2eefc5, - 0x357dcb, - 0x208f44, - 0x3b6988, - 0x25d44a, - 0x230607, - 0x3ecf87, - 0x29fc92, - 0x28afc6, - 0x2389c6, - 0x33564e, - 0x28c886, - 0x2a4c08, - 0x2a5acf, - 0x3da288, - 0x3b4608, - 0x3ae48a, - 0x3ae491, - 0x2b424e, - 0x26524a, - 0x26524c, - 0x265a07, - 0x342750, - 0x3d8948, - 0x2b4445, - 0x2bfe0a, - 0x3eb50c, - 0x2b84cd, - 0x204206, - 0x204207, - 0x20420c, - 0x20e80c, - 0x3a864c, - 0x2c340b, - 0x3ab384, - 0x21de84, - 0x2c4d89, - 0x31dac7, - 0x3ead89, - 0x288509, - 0x2c6e07, - 0x2c6fc6, - 0x2c6fc9, - 0x2c73c3, - 0x2b234a, - 0x32e587, - 0x20c0cb, - 0x3d7b0a, - 0x262584, - 0x2128c6, - 0x292689, - 0x368784, - 0x2eb30a, - 0x240d85, - 0x2d7a85, - 0x2d7a8d, - 0x2d7dce, - 0x31c3c5, - 0x33b486, - 0x216a07, - 0x24ecca, - 0x22f846, - 0x27f1c4, - 0x2fb147, - 0x2e0d4b, - 0x3d5d07, - 0x3b55c4, - 0x3c8586, - 0x3c858d, - 0x2f208c, - 0x212686, - 0x21a30a, - 0x2281c6, - 0x222088, - 0x3b2f47, - 0x22790a, - 0x23e186, - 0x286443, - 0x286446, - 0x220d48, - 0x375c0a, - 0x2a0207, - 0x2a0208, - 0x2a2844, - 0x28b1c7, - 0x36a3c8, - 0x2dbb08, - 0x31a988, - 0x35a6ca, - 0x2f7305, - 0x2bbec7, - 0x265093, - 0x27d886, - 0x2472c8, - 0x22a349, - 0x2ce608, - 0x254dcb, - 0x2cfe88, - 0x2e0e84, - 0x2de086, - 0x323fc6, - 0x341689, - 0x2e0c07, - 0x268988, - 0x297446, - 0x393644, - 0x32df05, - 0x3d98c8, - 0x34a9ca, - 0x2e2ac8, - 0x2e6e06, - 0x2abf8a, - 0x203b08, - 0x2e1908, - 0x2eb588, - 0x2ec146, - 0x2ed746, - 0x33c00c, - 0x2edcd0, - 0x2ee0c5, - 0x2bb0c8, - 0x2bb0d0, - 0x3da090, - 0x285a0e, - 0x33bc8e, - 0x33bc94, - 0x3b244f, - 0x3b2806, - 0x3bef11, - 0x3ed913, - 0x20a488, - 0x20b405, - 0x3cbf08, - 0x332c05, - 0x3e244c, - 0x2166c9, - 0x22f389, - 0x3b9c47, - 0x3495c9, - 0x35dbc7, - 0x207586, - 0x268f87, - 0x201245, - 0x211683, - 0x21d343, - 0x23d384, - 0x21338d, - 0x331e0f, - 0x393685, - 0x2165c6, - 0x22bbc7, - 0x232847, - 0x2c5886, - 0x2c588b, - 0x2b5485, - 0x213786, - 0x3a7107, - 0x261449, - 0x226e86, - 0x310b85, - 0x381d4b, - 0x3cf886, - 0x218b85, - 0x240a88, - 0x28ad88, - 0x2a184c, - 0x2a1850, - 0x2ae909, - 0x2b6c07, - 0x2cb48b, - 0x2d8346, - 0x30b88a, - 0x24704b, - 0x34bc8a, - 0x361806, - 0x2fe205, - 0x32e2c6, - 0x28df48, - 0x2c760a, - 0x38131c, - 0x33194c, - 0x304288, - 0x216e05, - 0x288dc7, - 0x2d0586, - 0x38bfc5, - 0x220106, - 0x2c5a48, - 0x2d68c7, - 0x2d0848, - 0x256f0a, - 0x38a5cc, - 0x3d8109, - 0x384347, - 0x2cdc04, - 0x2518c6, - 0x3b418a, - 0x288605, - 0x22d3cc, - 0x22da88, - 0x2fd6c8, - 0x30a50c, - 0x35c98c, - 0x3963c9, - 0x3eab87, - 0x251f0c, - 0x22b704, - 0x306dca, - 0x227d8c, - 0x28400b, - 0x259e4b, - 0x25ce86, - 0x263407, - 0x265507, - 0x34298f, - 0x312151, - 0x2f47d2, - 0x26550d, - 0x26550e, - 0x26584e, - 0x3b2608, - 0x3b2612, - 0x230e48, - 0x257f07, - 0x25e70a, - 0x251d48, - 0x28c845, - 0x2cb88a, - 0x225707, - 0x2e7cc4, - 0x254a43, - 0x2417c5, - 0x3ae707, - 0x2fce87, - 0x2b86ce, - 0x365d4d, - 0x3c8249, - 0x207805, - 0x31e6c3, - 0x33e006, - 0x26c905, - 0x250088, - 0x385989, - 0x224805, - 0x253e4f, - 0x2b2f87, - 0x311145, - 0x359f0a, - 0x3daa46, - 0x3917c9, - 0x353c8c, - 0x366c49, - 0x3ec046, - 0x25d24c, - 0x3345c6, - 0x3bf308, - 0x239546, - 0x27cfc6, - 0x2cc344, - 0x3c39c3, - 0x3e954a, - 0x250491, - 0x3a7cca, - 0x26b245, - 0x26f947, - 0x265cc7, - 0x2d54c4, - 0x36a4cb, - 0x3cb7c8, - 0x2d5146, - 0x3e7205, - 0x277944, - 0x268189, - 0x2008c4, - 0x3ebe47, - 0x333505, - 0x333507, - 0x335885, - 0x25f3c3, - 0x257dc8, - 0x27988a, - 0x22eb83, - 0x232a4a, - 0x3bd7c6, - 0x253bcf, - 0x272109, - 0x2c6850, - 0x2d5648, - 0x2e7709, - 0x2aa307, - 0x3c850f, - 0x3c9f44, - 0x2ef344, - 0x20b786, - 0x2f0686, - 0x26204a, - 0x256186, - 0x2c3a87, - 0x315808, - 0x315a07, - 0x3170c7, - 0x318c4a, - 0x3179cb, - 0x23ab05, - 0x2f4408, - 0x2098c3, - 0x3d458c, - 0x386b0f, - 0x22404d, - 0x29d4c7, - 0x243449, - 0x396687, - 0x2d0f88, - 0x3e6dcc, - 0x301748, - 0x24a2c8, - 0x33314e, - 0x344cd4, - 0x3451e4, - 0x364b8a, - 0x388ecb, - 0x35dc84, - 0x35dc89, - 0x2cbf48, - 0x252245, - 0x373e4a, - 0x3c9047, - 0x285584, - 0x258843, - 0x229f43, - 0x241284, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x25e043, - 0x219c03, - 0x2edcc6, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x202783, - 0x2000c2, - 0x258843, - 0x205842, - 0x229f43, - 0x241284, - 0x224d03, - 0x2e9c43, - 0x25e043, - 0x2edcc6, - 0x2127c3, - 0x21f483, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x28c6c3, - 0x2127c3, - 0x81983, - 0x21f483, - 0x258843, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x2000c2, - 0x289e03, - 0x205842, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x203702, + 0x203f02, + 0x215142, + 0x20d3c2, + 0x282182, + 0x207002, + 0x20ea82, 0x2035c2, - 0x205842, - 0x229f43, - 0x208542, - 0x2005c2, - 0x258104, - 0x292e44, - 0x230a02, - 0x222d84, + 0x216402, + 0x205442, + 0x24bf42, + 0x209982, + 0x200682, + 0x217ac2, + 0x201a42, + 0x206382, + 0x201042, + 0x230802, + 0x2019c2, + 0xc2, + 0xb02, + 0x1902, + 0x29c2, + 0x202, + 0x5202, + 0x44b02, + 0x1b42, + 0x382, + 0x3f02, + 0x15142, + 0xd3c2, + 0x82182, + 0x7002, + 0xea82, + 0x35c2, + 0x16402, + 0x5442, + 0x4bf42, + 0x9982, + 0x682, + 0x17ac2, + 0x1a42, + 0x6382, + 0x1042, + 0x30802, + 0x19c2, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0xf82, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0xa0789, + 0xb642, + 0x20b642, + 0x24acc3, + 0x10a1a043, + 0x20f583, + 0x1b1749, + 0x214e43, + 0xf5d07, + 0x2445c2, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x16e83, + 0x214883, + 0x24acc3, + 0x79c2, + 0x2001c2, + 0x1427d45, + 0x14f985, + 0x213c82, + 0x1c3448, + 0xb642, + 0x242882, + 0x206442, + 0x10210c, + 0x20da42, + 0x231a82, + 0x218882, + 0x1a4045, + 0x200dc2, + 0x201802, + 0x217a02, + 0x208e02, + 0x2035c2, + 0x24a242, + 0x214942, + 0x2b60c2, + 0x11a7f604, + 0x142, + 0xf5d87, + 0x15943, + 0x1db18d, + 0xfaf89, + 0xf140b, + 0xfdd48, + 0x73ec9, + 0x11b446, + 0x20f583, + 0x1c3448, + 0x1bfd04, + 0x2d03, + 0x1bee85, + 0x1c3448, + 0x1ec6c7, + 0x12c5ea87, + 0x13269384, + 0x6d446, + 0x1beec9, + 0xbea8e, + 0x10210c, + 0x146087, + 0x15bc683, + 0x13602142, + 0x149f49, + 0x1ed5c4, + 0x2000c2, + 0x265a04, + 0x20b642, + 0x21a043, + 0x203142, + 0x226783, + 0x26dc3, + 0x200382, + 0x2eef84, + 0x20bc83, + 0x2593c2, + 0x214883, + 0x18882, 0x2003c2, - 0x21f483, - 0x202783, - 0x25ce86, - 0x26ca02, + 0x24acc3, + 0x219086, + 0x33d48f, + 0x733483, + 0x1c3448, + 0x20b642, + 0x204703, + 0x20f583, + 0x214e43, + 0x14bdabc7, + 0x14a7606, + 0x1f3d06, + 0xf2389, + 0x14fcd6c8, + 0x1e6304, + 0x152cab0a, + 0x163988, + 0x15c16a87, + 0xd9f88, + 0xbea88, + 0x15e86cb, + 0x147fb0a, + 0x16070943, + 0x103189, + 0x1650b188, + 0x16b8e487, + 0x1463d4a, + 0x1507c07, + 0xba74b, + 0x16e8a2cc, + 0x16bf05, + 0xdc4c5, + 0x123409, + 0x1dbf44, + 0x11d443, + 0x156cac45, + 0x12ee43, + 0x15a35ac3, + 0x12ee43, + 0x15942, + 0x21c2, + 0xba42, + 0xba42, + 0x3d82, + 0xba42, + 0x3342, + 0x45c2, + 0x101c2, + 0x14f985, + 0xf5d87, + 0x1e6304, + 0x109484, + 0x20b642, + 0x21a043, + 0x20f583, + 0x214883, + 0x2000c2, + 0x209582, + 0x20aa82, + 0x17e1a043, + 0x24a202, + 0x226783, + 0x200bc2, + 0x203942, + 0x20f583, + 0x216e82, + 0x261042, + 0x22fcc2, + 0x20ad02, + 0x2a4fc2, + 0x200802, + 0x204142, + 0x201742, + 0x21dd82, + 0x209bc2, + 0x4484c, + 0x2cd142, + 0x283382, + 0x22b242, + 0x202582, + 0x214e43, + 0x201942, + 0x214883, + 0x20b482, + 0x24fdc2, + 0x24acc3, + 0x24dac2, + 0x206382, + 0x2213c2, + 0x200e02, + 0x22c602, + 0x215982, + 0x209b02, + 0x25c442, + 0x22b282, + 0x33060a, + 0x375dca, + 0x3a8f8a, + 0x3f43c2, + 0x2039c2, + 0x22b982, + 0x182fe909, + 0x187d6f0a, + 0x154be47, + 0x18a00fc2, + 0x1446b83, + 0x2902, + 0x1d6f0a, + 0x16e3ce, + 0x2346c4, + 0x107245, + 0x1921a043, + 0x4b8c3, + 0x226783, + 0x2607c4, + 0x20f583, + 0x25c204, + 0x20bc83, + 0x145e89, + 0x51fc6, + 0x214e43, + 0x100d44, + 0x1443, + 0x214883, + 0x9bf05, + 0x208c43, + 0x24acc3, + 0x1440704, + 0x2423c3, + 0x195547c4, + 0xd2a48, + 0x200f83, + 0x1c3448, + 0x6502, + 0x1527143, + 0x1333c6, + 0x1577ec4, + 0x4c85, + 0x1dbd4a, + 0x138682, + 0x1a00578d, + 0x1bdcc6, + 0x152051, + 0x1a6fe909, + 0x15d4ca, + 0x4d08, + 0x167d48, + 0x152e8e, + 0x89e53, + 0x210a78c7, + 0x1d42, + 0x148210, + 0x152c8c, + 0xfea94, + 0x1b87c7, + 0x24c0e, + 0x14f98b, + 0x1519cb, + 0x1c740a, + 0x133907, + 0x1c3448, + 0xb3d88, + 0xf747, + 0x21422bcb, + 0x23e46, + 0x26647, + 0x3ac2, + 0xef7cd, + 0x13e705, + 0x1d647, + 0x133c4a, + 0x1402cc, + 0x14048f, + 0xae74f, + 0x16e3c2, + 0xb642, + 0x9a148, + 0x21903e8c, + 0x1b204a, + 0x21f656ca, + 0xf638a, + 0x86cca, + 0x8ffc8, + 0x2d785, + 0x728c8, + 0xf6848, + 0x1ec688, + 0x153648, + 0x101c2, + 0xae4cf, + 0x1427dcd, + 0x6d8b, + 0xd5448, + 0x42b87, + 0x5940a, + 0x3e7cb, + 0xa9cc9, + 0x59307, + 0xf8506, + 0x2d688, + 0x3d7cc, + 0x1e9987, + 0x244ca, + 0xa3c8, + 0x11780e, + 0x12078e, + 0x13374b, + 0x16600b, + 0x3828b, + 0x3d309, + 0x4318b, + 0x4864d, + 0x4b94b, + 0x4ca4d, + 0x4cdcd, + 0x5a30a, + 0x6048b, + 0x56a0b, + 0x5a045, + 0x221cd710, + 0x80392, + 0x33011, + 0x176752, + 0x35f8f, + 0x7f7cf, + 0x15118d, + 0x85250, + 0xa842, + 0x22620948, + 0x1e9808, + 0x64f50, + 0x12c88e, + 0x22b77a85, + 0x5e68b, + 0x144f90, + 0xaaecb, + 0x1bc3cc, + 0x729ca, + 0x1661c9, + 0x735c8, + 0x78887, + 0x78bc7, + 0x78d87, + 0x79cc7, + 0x7b747, + 0x7bc07, + 0x7c307, + 0x7c747, + 0x7d207, + 0x7d587, + 0x7da47, + 0x7dc07, + 0x7ddc7, + 0x7df87, + 0x7e307, + 0x7e687, + 0x7ff87, + 0x80807, + 0x812c7, + 0x81587, + 0x81747, + 0x81a47, + 0x82047, + 0x82247, + 0x82bc7, + 0x82d87, + 0x82f47, + 0x83207, + 0x83847, + 0x83fc7, + 0x86b07, + 0x86f47, + 0x87747, + 0x87907, + 0x87f47, + 0x882c7, + 0x88c87, + 0x89087, + 0x893c7, + 0x89587, + 0x899c7, + 0x8a5c7, + 0x8b707, + 0x8bcc7, + 0x8be87, + 0x8c307, + 0x8cc47, + 0xef42, + 0xf694a, + 0x1b308, + 0x1c41cc, + 0x124c87, + 0x58f85, + 0x61591, + 0x7286, + 0x137bca, + 0x99fca, + 0x6d446, + 0x3f78b, + 0x642, + 0x3c691, + 0x131809, + 0xab8c9, + 0xace06, + 0x1742, + 0x70d0a, + 0xbf0c9, + 0xbf80f, + 0xbfe0e, + 0xc1bc8, + 0x22f53092, + 0x18208, + 0x232737c7, + 0xc468f, + 0x7142, + 0x178409, + 0x10044a, + 0x2361a389, + 0xdaec9, + 0xdaecc, + 0x19a4b, + 0x5824e, + 0x11c0c, + 0x102e8f, + 0x1c980e, + 0x50fcc, + 0x64d49, + 0x71a11, + 0x88448, + 0x92f12, + 0x94d8d, + 0x993cd, + 0x9ee4b, + 0x167f15, + 0x191549, + 0x1b6d0a, + 0x1df109, + 0xa27d0, + 0xa914b, + 0xb1c8f, + 0xb928b, + 0xc710c, + 0xc77d0, + 0xdfdca, + 0xf884d, + 0x12b38e, + 0x19f6ca, + 0xc8bcc, + 0xcf7d4, + 0x131491, + 0x1c470b, + 0xd82cf, + 0xd930d, + 0xda3ce, + 0xddf0c, + 0xde64c, + 0xdfacb, + 0xe1c0e, + 0xe4490, + 0xe534b, + 0xf740d, + 0x10fd8f, + 0x10eacc, + 0x11704e, + 0x185451, + 0x12ae8c, + 0x169d07, + 0x16bb8d, + 0x17600c, + 0x180f50, + 0x19b74d, + 0x19c3c7, + 0x1a5c90, + 0x1b3048, + 0xc814b, + 0xca18f, + 0x1c4448, + 0x57b8d, + 0x119c50, + 0x182fc9, + 0x23bcd6c8, + 0x23ece206, + 0xcf503, + 0x1ade89, + 0xade49, + 0xd4345, + 0xaf02, + 0x59889, + 0x6de0a, + 0x242933c6, + 0x14933cd, + 0x24706444, + 0x1e4986, + 0x28b4a, + 0x2af0d, + 0x24ae5b8b, + 0x1e9e08, + 0x24c65589, + 0x24343, + 0x17c7ca, + 0xf53d1, + 0xf5809, + 0xf6307, + 0xf7148, + 0xf8b87, + 0x736c8, + 0xae5cb, + 0x13b509, + 0x101590, + 0x101a4c, + 0x101ec9, + 0x10210c, + 0x2530250d, + 0x1037c8, + 0x103cc5, + 0x1d0fc8, + 0x1a4f4a, + 0x1b8ec7, + 0x25c2, + 0x25679555, + 0x145c8a, + 0x13e549, + 0x1ef4c8, + 0xae009, + 0x9605, + 0x12ab8a, + 0x1a07, + 0xa050f, + 0x16bf8b, + 0x1ec90c, + 0x30712, + 0xc0906, + 0x1580588, + 0x8e5c5, + 0x11d688, + 0x1e4acb, + 0xe6ad1, + 0x179d47, + 0x6e40a, + 0x18784c, + 0x25b0b045, + 0x1b72cc, + 0x25d129ce, + 0x142743, + 0x19ec86, + 0x4a242, + 0x11468b, + 0x11564a, + 0x151640c, + 0x1e9d08, + 0x4cc08, + 0x263ef546, + 0x17ef87, + 0x23f8e, + 0x1534c7, + 0x3b02, + 0x2fc2, + 0x188850, + 0x77e47, + 0x77f4f, + 0x1b506, + 0xa8b4e, + 0xb424b, + 0x5e0c8, + 0xaa089, + 0x150652, + 0x11dccd, + 0x11e848, + 0xf12c9, + 0x1a718d, + 0xe889, + 0x782cb, + 0x7ae88, + 0x7e488, + 0x80f88, + 0x81bc9, + 0x81dca, + 0x8254c, + 0x2398a, + 0xe094a, + 0x11d507, + 0x43a8a, + 0xf90c8, + 0x1d3e0d, + 0x62ad1, + 0x266da6c6, + 0x16d20b, + 0x3b48c, + 0xff48, + 0x1dc8c9, + 0x16548d, + 0x79f10, + 0x150dcc, + 0x15450d, + 0x10384f, + 0xba42, + 0x1df30d, + 0x3342, + 0x96c2, + 0x11d44a, + 0x26bd0d0a, + 0x32e4a, + 0x26e8bfc8, + 0x137aca, + 0x12460b, + 0x126c47, + 0x1b41cc, + 0x120a0c, + 0x12940a, + 0x2712968f, + 0x129a4c, + 0x129d47, + 0x12b70e, + 0x275f4285, + 0x1eab88, + 0x79c2, + 0x1424dc3, + 0x1aa0494e, + 0x1b2029ce, + 0x1bb2658a, + 0x1c33718e, + 0x1ca082ce, + 0x1d353c8c, + 0x154be47, + 0x155d589, + 0x1446b83, + 0x1db5ce8c, + 0x1e20a849, + 0x1ebd7e09, + 0x1f3dbb49, + 0x2902, + 0x4891, + 0x2911, + 0x1264cd, + 0x1370d1, + 0x1d4fd1, + 0x153bcf, + 0x15cdcf, + 0x1cc20c, + 0x1d7d4c, + 0x1dba8c, + 0xec7cd, + 0xfd515, + 0x13c14c, + 0x13e80c, + 0x179ed0, + 0x1c5acc, + 0x1c8a8c, + 0x1d17d9, + 0x1d9759, + 0x8019, + 0xa594, + 0xf8d4, + 0x107d4, + 0x10d54, + 0x1a994, + 0x1fa0fb89, + 0x20010a89, + 0x20b3e8c9, + 0x1ae88649, + 0x2902, + 0x1b688649, + 0x2902, + 0x800a, + 0x2902, + 0x1be88649, + 0x2902, + 0x800a, + 0x2902, + 0x1c688649, + 0x2902, + 0x1ce88649, + 0x2902, + 0x1d688649, + 0x2902, + 0x800a, + 0x2902, + 0x1de88649, + 0x2902, + 0x800a, + 0x2902, + 0x1e688649, + 0x2902, + 0x1ee88649, + 0x2902, + 0x800a, + 0x2902, + 0x1f688649, + 0x2902, + 0x800a, + 0x2902, + 0x1fe88649, + 0x2902, + 0x20688649, + 0x2902, + 0x20e88649, + 0x2902, + 0x800a, + 0x2902, + 0x1400401, + 0x152045, + 0x1c7404, + 0x1412f43, + 0x15f2603, + 0x141d983, + 0x94ec4, + 0x13b848, + 0x494e, + 0x29ce, + 0x9280e, + 0x12658a, + 0x13718e, + 0x82ce, + 0x153c8c, + 0x15ce8c, + 0xa849, + 0x1d7e09, + 0x1dbb49, + 0xfb89, + 0x10a89, + 0x13e8c9, + 0xfd70d, + 0x11009, + 0x1ac49, + 0x150a84, + 0x1720c4, + 0x199884, + 0x1cacc4, + 0xbaa04, + 0x1b9944, + 0x1e6a84, + 0x69004, + 0x1b404, + 0x642c4, + 0x334c9, + 0x334cc, + 0x159186, + 0x15918e, + 0x94ec4, + 0x159bf43, + 0x7e87, + 0x149440c, + 0x4d03, + 0x642c4, + 0xa842, + 0x51887, + 0x103e88, + 0x191dc8, + 0x4fd44, + 0x1cb8c6, + 0x54d47, + 0xe8b44, + 0x11c0c6, + 0x216c2, + 0x2d81, + 0x1d3a44, + 0x89cc6, + 0x22603, + 0xa842, + 0x4d03, + 0xe0143, + 0x30503, + 0x14743, + 0x117783, + 0x30705, + 0x83382, + 0x151682, + 0x1bf708, + 0xfa807, + 0x15743, + 0x13b587, + 0x101c2, + 0xf2389, + 0x2000c2, + 0x20b642, + 0x203142, + 0x21b5c2, + 0x200382, + 0x2003c2, + 0x202fc2, + 0x21a043, + 0x226783, + 0x20f583, + 0x231a43, + 0x214883, + 0x24acc3, + 0x1c3448, + 0x21a043, + 0x226783, + 0x214883, + 0x24acc3, + 0x13b83, + 0x20f583, + 0x5c204, + 0x2000c2, + 0x20bec3, + 0x29a1a043, + 0x3acb47, + 0x20f583, + 0x222043, + 0x225a04, + 0x214883, + 0x24acc3, + 0x228d8a, + 0x219085, + 0x205443, + 0x249902, + 0x1c3448, + 0x29eea54a, + 0xc01, + 0x1c3448, + 0xb642, + 0x140242, + 0x2a66530b, + 0x2aa1c1c4, + 0x106385, + 0x1405985, + 0x103e86, + 0x2ae05985, + 0x6a043, + 0xa7343, + 0x1bfd04, + 0x2d03, + 0x1bee85, + 0x14f985, + 0x1c3448, + 0x26647, + 0x1a043, + 0x38d4d, + 0x2b647207, + 0xcc6, + 0x2b953ac5, + 0x1b7892, + 0xd87, + 0x2f38a, + 0x2cf48, + 0x2f287, + 0x170aca, + 0x1becc8, + 0x7ac47, + 0x15ef8f, + 0x574c7, + 0x68e06, + 0x144f90, + 0x148e0c6, + 0x5058f, + 0x1bc09, + 0x1e4a04, + 0x2bc00e4e, + 0x51bc9, + 0x7e0c6, + 0xeb09, + 0x119186, + 0x9dc6, + 0xc3acc, + 0x3e9ca, + 0xa9e47, + 0x115f4a, + 0x1249, + 0x10514c, + 0x2b74a, + 0x5b00a, + 0x1beec9, + 0x1e4986, + 0xa9f0a, + 0x11edca, + 0xb6b4a, + 0x16f909, + 0xf4dc8, + 0xf5046, + 0xfb54d, + 0x10210c, + 0x6700b, + 0xd4905, + 0x2c38a7cc, + 0x146087, + 0x1e3989, + 0xdea07, + 0xbe494, + 0x11a04b, + 0xd528a, + 0x1504ca, + 0xbc64d, + 0x1524809, + 0x11da8c, + 0x11e64b, + 0x16a157, + 0x16ac95, + 0x3983, + 0x3983, + 0x38286, + 0x3983, + 0x103e88, + 0x15ee43, + 0x53544, + 0x1f184, + 0x1f18c, + 0x6a303, + 0x14b6c07, + 0xf79cd, + 0xaa045, + 0x151e183, + 0x1536ac8, + 0x67409, + 0x1b1749, + 0x30705, + 0x1e4acb, + 0x1c49cb, + 0x150ed43, + 0x150ed48, + 0x152986, + 0x145a4c7, + 0xa2a47, + 0x2d0a7789, + 0x14746, + 0xbec3, + 0x1c3448, + 0xb642, + 0x607c4, + 0x10210c, + 0x31d03, + 0x13a505, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x205d83, + 0x21a043, + 0x226783, + 0x204703, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x319283, + 0x200f83, + 0x205d83, + 0x265a04, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x211b43, + 0x212f03, + 0x249902, + 0x2e8a7885, + 0x1437143, + 0x21a043, + 0x226783, + 0x226dc3, + 0x204703, + 0x20f583, + 0x25c204, + 0x20de83, + 0x2384c3, + 0x214e43, + 0x214883, + 0x24acc3, + 0x205443, + 0x2f629e03, + 0x30609, + 0xb642, + 0x3f3903, + 0x3021a043, + 0x226783, + 0x259f43, + 0x20f583, + 0x224b03, + 0x2384c3, + 0x24acc3, + 0x205fc3, + 0x3c80c4, + 0x1c3448, + 0x30a1a043, + 0x226783, + 0x2c1c83, + 0x20f583, + 0x214e43, + 0x225a04, + 0x214883, + 0x24acc3, + 0x227603, + 0x1c3448, + 0x3121a043, + 0x226783, + 0x204703, + 0x10210c, + 0x208c43, + 0x24acc3, + 0x1c3448, + 0x154be47, + 0x20bec3, + 0x21a043, + 0x226783, + 0x20f583, + 0x25c204, + 0x225a04, + 0x214883, + 0x24acc3, + 0x14f985, + 0xf5d87, + 0xbe6cb, + 0x32241546, + 0xf5c04, + 0xd4905, + 0x1470708, + 0x2facd, + 0x1cd6c8, + 0x32a407c5, + 0x2af84, + 0xb642, + 0x18b43, + 0x159085, + 0x445c2, + 0x35cc45, + 0x1c3448, + 0x343341cd, + 0x3460510a, + 0x3982, + 0x20883, + 0x10210c, + 0x17290f, + 0x1b5c2, + 0x94ec4, + 0x642c4, + 0xb642, + 0x2000c2, + 0x20bec3, + 0x21a043, + 0x20f583, + 0x25c204, + 0x214e43, + 0x225a04, + 0x214883, + 0x24acc3, + 0x205443, + 0x21a043, + 0x226783, + 0x214883, + 0x24acc3, + 0x12c85, + 0x339e48, + 0x265a04, + 0x3d4506, + 0x3d7c06, + 0x1c3448, + 0x320543, + 0x23ab49, + 0x318455, + 0x11845f, + 0x21a043, + 0x9ebc7, + 0x221b92, + 0x18dc86, + 0x190485, + 0x729ca, + 0x1661c9, + 0x22194f, + 0xf5207, + 0x2eef84, + 0x225105, + 0x31aa10, + 0x284ac7, + 0x10210c, + 0x208c43, + 0x2a1948, + 0x64146, + 0x2937ca, + 0x2311c4, + 0x30ad83, + 0x249902, + 0x30614b, + 0x1c3203, + 0x226783, + 0x20f583, + 0x197184, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x310783, + 0x20b642, + 0x3cc83, + 0x100b04, + 0x214883, + 0x24acc3, + 0x36846ac5, + 0x1dc686, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x24acc3, + 0x21a043, + 0x226783, + 0x20f583, + 0x222043, + 0x222383, + 0x24acc3, + 0xbec3, + 0x20b642, + 0x21a043, + 0x226783, + 0x214883, + 0x24acc3, + 0x26c02, + 0x2000c2, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x5985, + 0x6a0c9, + 0x4d03, + 0x265a04, + 0x21a043, + 0x226783, + 0x230944, + 0x214883, + 0x24acc3, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x13bf09, + 0x11d44, + 0x21a043, + 0x101c2, + 0x226783, + 0x204703, + 0x211983, + 0x214e43, + 0x214883, + 0x24acc3, + 0x19c2, + 0x21a043, + 0x226783, + 0x20f583, + 0x3b9544, + 0x25c204, + 0x214883, + 0x24acc3, + 0x200f83, + 0x2742, + 0x20b642, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x161243, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x37ee83, + 0xf2c3, + 0x22043, + 0x214883, + 0x24acc3, + 0x3a086, + 0x33060a, + 0x34e149, + 0x369a8b, + 0x369eca, + 0x375dca, + 0x386bcb, + 0x39b20a, + 0x3a280a, + 0x3a8f8a, + 0x3a920b, + 0x3ce989, + 0x3de04a, + 0x3de88b, + 0x3ede8b, + 0x3f2fca, + 0x6282, + 0x21a043, + 0x226783, + 0x204703, + 0x214e43, + 0x214883, + 0x24acc3, + 0x610b, + 0x12c887, + 0x73b48, + 0x1a72c4, + 0x1e6304, + 0xa2388, + 0xf9b06, + 0xae706, + 0x23b87, + 0x12a947, + 0x3589, + 0x1c3448, + 0x21a043, + 0x727c4, + 0x278884, + 0x204e42, + 0x225a04, + 0x252f05, + 0x205d83, + 0x265a04, + 0x21a043, + 0x243544, + 0x226783, + 0x2607c4, + 0x2eef84, + 0x25c204, + 0x2384c3, + 0x214883, + 0x24acc3, + 0x2cf905, + 0x211b43, + 0x205443, + 0x236d03, + 0x223984, + 0x333344, + 0x246c85, + 0x1c3448, + 0x3ebc44, + 0x209f46, + 0x3bf004, + 0x20b642, + 0x230b07, + 0x256387, + 0x25d444, + 0x2fa885, + 0x39b945, + 0x239805, + 0x25c204, + 0x2716c8, + 0x2680c6, + 0x32f248, + 0x2f8245, + 0x2fc3c5, + 0x27a004, + 0x24acc3, + 0x30b844, + 0x385bc6, + 0x219183, + 0x223984, + 0x26ed05, + 0x259804, + 0x2b7944, + 0x249902, + 0x3a1ec6, + 0x3c1786, + 0x31be45, + 0x2000c2, + 0x20bec3, + 0xf9c86, + 0x3be0b642, + 0x220ac4, + 0x1981c4, + 0x6f005, + 0x200382, + 0x214e43, + 0x2736c2, + 0x214883, + 0x2003c2, + 0x308746, + 0x219303, + 0x1e4905, + 0x200f83, + 0x1c3448, + 0x1c3448, + 0x20f583, + 0x10210c, + 0x2000c2, + 0x3ca0b642, + 0x20f583, + 0x27dd43, + 0x20de83, + 0x21c1c4, + 0x214883, + 0x24acc3, + 0x1c3448, + 0xc0847, + 0x2000c2, + 0x3d20b642, + 0x21a043, + 0x214883, + 0x24acc3, + 0x682, + 0x20ea02, + 0x22ccc2, + 0x222043, + 0x305103, + 0x2000c2, + 0x14f985, + 0x1c3448, + 0xf5d87, + 0x20b642, + 0x226783, + 0x2607c4, + 0x207783, + 0x20f583, + 0x211983, + 0x214e43, + 0x214883, + 0x21c243, + 0x24acc3, + 0x2190c3, + 0xd2a48, + 0xf83, + 0x147593, + 0x14b954, + 0x14f985, + 0xf5d87, + 0x2f389, + 0x11c806, + 0x16f34b, + 0x38286, + 0x6bb47, + 0x1bc006, + 0x649, + 0x16278a, + 0x9e0cd, + 0x1dae8c, + 0x11f74a, + 0xab348, + 0x1a4045, + 0x2f3c8, + 0x1b506, + 0x1d9206, + 0x5f986, + 0x20a842, + 0x178884, + 0xe0146, + 0x14e754e, + 0x5086, + 0x7a60c, + 0x3e6a760b, + 0x14f985, + 0x15278b, + 0x3eb67b87, + 0x3ef67b8a, + 0x3f3d9144, + 0x88c9, + 0xfdc8, + 0x1c75c7, + 0x2de11, + 0x130dca, + 0x21a043, + 0x3f694308, + 0x170a45, + 0x1a0e88, + 0x36604, + 0x6e005, + 0xb8647, + 0x3f9d6d46, + 0xe044b, + 0x3ffc7cc9, + 0x181c5, + 0x61586, + 0x168e86, + 0xa528a, + 0xd184c, + 0x1ca843, + 0x1e6304, + 0x403d2484, + 0x67409, + 0x113107, + 0x10070a, + 0x14ea449, + 0x605, + 0x120703, + 0x406420c7, + 0x9bf05, + 0x1573546, + 0x14638c6, + 0x3f84c, + 0x10d308, + 0x40930fc5, + 0x40c4a243, + 0x113844, + 0x1d78b, + 0x14b0cb, + 0x4125ac0c, + 0x142d843, + 0xd61c8, + 0x1c49cb, + 0xb8509, + 0xd5603, + 0x124908, + 0x1428a86, + 0x9e747, + 0x41765489, + 0x42af0c48, + 0xbaf47, + 0xdc4ca, + 0x42f6a688, + 0x11e30d, + 0x1cc989, + 0x112c8, + 0x4d03, + 0x1486089, + 0x642c4, + 0x187d45, + 0x47143, + 0x38286, + 0x103e88, + 0x6502, + 0x1b404, + 0xaa345, + 0x1addc4, + 0x1437dc3, + 0x24dc7, + 0x41a24dc3, + 0x41fb8246, + 0x42244e04, + 0x42601b07, + 0x103e84, + 0x17ef87, + 0x103e84, + 0x17ef87, + 0x103e84, + 0x103e84, + 0x17ef87, + 0x5989, + 0x41, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x2000c2, + 0x20b642, + 0x20f583, + 0x206502, + 0x214883, + 0x24acc3, + 0x219303, + 0x38ef8f, + 0x38f34e, + 0x1c3448, + 0x21a043, + 0x52a87, + 0x226783, + 0x20f583, + 0x20bc83, + 0x214883, + 0x24acc3, + 0x4fc4, + 0x2e44, + 0xa04, + 0x203a83, + 0x203a87, + 0x203f42, + 0x27ee89, + 0x200b02, + 0x388b4b, + 0x2b154a, + 0x2b7d09, + 0x200542, + 0x2369c6, + 0x25ed95, + 0x388c95, + 0x261ad3, + 0x389213, + 0x204302, + 0x22bb45, + 0x3ea8cc, + 0x287c8b, + 0x269e45, + 0x2029c2, + 0x314102, + 0x377546, + 0x201d42, + 0x29ca06, + 0x36640d, + 0x3a3dcc, + 0x3cd784, + 0x200882, + 0x214202, + 0x2932c8, + 0x200202, + 0x202f06, + 0x3a480f, + 0x202f10, + 0x2ff204, + 0x25ef55, + 0x261c53, + 0x217143, + 0x35c78a, + 0x392b47, + 0x398a89, + 0x315cc7, + 0x21da82, + 0x200282, + 0x3d2386, + 0x20b102, + 0x1c3448, + 0x211f02, + 0x202642, + 0x2121c7, + 0x398e07, + 0x398e11, + 0x225505, + 0x22550e, + 0x225fcf, + 0x203ac2, + 0x227547, + 0x227708, + 0x201002, + 0x229b02, + 0x2143c6, + 0x2143cf, + 0x27b1d0, + 0x236f02, + 0x203d82, + 0x230c48, + 0x203d83, + 0x29b148, + 0x247d4d, + 0x2063c3, + 0x3d7a48, + 0x26c00f, + 0x26c3ce, + 0x35018a, + 0x2f4111, + 0x2f4590, + 0x3b0b8d, + 0x3b0ecc, + 0x3f3787, + 0x35c907, + 0x3d45c9, + 0x216f42, + 0x205202, + 0x26d8cc, + 0x26dbcb, + 0x2045c2, + 0x2dfc86, + 0x212f82, + 0x200482, + 0x36e3c2, + 0x20b642, + 0x239244, + 0x246887, + 0x203682, + 0x24d507, + 0x24f347, + 0x215942, + 0x218402, + 0x252945, + 0x203402, + 0x2d0bce, + 0x215b8d, + 0x226783, + 0x25880e, + 0x231e8d, + 0x34cc83, + 0x2017c2, + 0x2990c4, + 0x211542, + 0x22e042, + 0x3add05, + 0x3b3c47, + 0x257682, + 0x21b5c2, + 0x25f487, + 0x267788, + 0x2698c2, + 0x28e646, + 0x26d74c, + 0x26da8b, + 0x205b02, + 0x274b0f, + 0x274ed0, + 0x2752cf, + 0x275695, + 0x275bd4, + 0x2760ce, + 0x27644e, + 0x2767cf, + 0x276b8e, + 0x276f14, + 0x277413, + 0x2778cd, + 0x28ce09, + 0x2a0083, + 0x206582, + 0x364805, + 0x207786, + 0x200382, + 0x2e4f47, + 0x20f583, + 0x200642, + 0x38bcc8, + 0x2f4351, + 0x2f4790, + 0x204182, + 0x29f347, + 0x2040c2, + 0x271107, + 0x20af02, + 0x254e89, + 0x377507, + 0x29f808, + 0x3d6b86, + 0x305003, + 0x39e645, + 0x20b602, + 0x2004c2, + 0x34cb85, + 0x370845, + 0x209a42, + 0x237743, + 0x352b07, + 0x3d9487, + 0x203c82, + 0x39ac04, + 0x20a243, + 0x3f3b89, + 0x20a248, + 0x212a82, + 0x20fe02, + 0x22e807, + 0x3584c5, + 0x285788, + 0x286547, + 0x20ddc3, + 0x2dffc6, + 0x3b0a0d, + 0x3b0d8c, + 0x3a1086, + 0x206442, + 0x205942, + 0x200ec2, + 0x26be8f, + 0x26c28e, + 0x39b9c7, + 0x2024c2, + 0x214e45, + 0x214e46, + 0x22ab02, + 0x201942, + 0x2a0d06, + 0x24fb03, + 0x3d1206, + 0x2e8b05, + 0x2e8b0d, + 0x2e9095, + 0x2e990c, + 0x2e9c8d, + 0x2e9fd2, + 0x20d3c2, + 0x282182, + 0x10210c, + 0x202202, + 0x379cc6, + 0x211ac6, + 0x4429eb44, + 0x2025c2, + 0x207806, + 0x217a02, + 0x254405, + 0x203cc2, + 0x215c89, + 0x2161cc, + 0x21650b, + 0x2003c2, + 0x268908, + 0x201982, + 0x207002, + 0x287a46, + 0x2885c5, + 0x394447, + 0x358845, + 0x27a8c5, + 0x204d82, + 0x22f482, + 0x2035c2, + 0x2b1f87, + 0x30880d, + 0x308b8c, + 0x2517c7, + 0x28e5c2, + 0x216402, + 0x379688, + 0x259a08, + 0x327448, + 0x3c4404, + 0x2e1e87, + 0x3064c3, + 0x209ec2, + 0x211b42, + 0x309589, + 0x317c07, + 0x205442, + 0x288085, + 0x221e42, + 0x223c42, + 0x30f203, + 0x30f206, + 0x310482, + 0x313702, + 0x200402, + 0x234586, + 0x357f07, + 0x21d602, + 0x200902, + 0x29af8f, + 0x25864d, + 0x2db38e, + 0x231d0c, + 0x20c802, + 0x2026c2, + 0x3d69c5, + 0x32eb06, + 0x201d82, + 0x209982, + 0x200682, + 0x232004, + 0x354204, + 0x360a46, + 0x202fc2, + 0x29bdc7, + 0x234683, + 0x249088, + 0x249a48, + 0x250e47, + 0x38e646, + 0x201a82, + 0x232603, + 0x232607, + 0x2875c6, + 0x2d6385, + 0x257ec8, + 0x2075c2, + 0x2fc8c7, + 0x230802, + 0x2a7382, + 0x206342, + 0x2030c9, + 0x209202, + 0x111908, + 0x201682, + 0x2b0b43, + 0x336e87, 0x201b02, - 0x22a742, - 0x61e12d83, - 0x62265243, - 0x66746, - 0x66746, - 0x29f804, - 0x20bc03, - 0x2acd, - 0x1d094a, - 0x1d39cc, - 0x92ccc, - 0x62c6e64f, - 0x1cc94d, - 0x713c4, - 0x7b204, - 0x161cc4, - 0x145d45, - 0x98409, - 0xb778c, - 0x110947, - 0x16906, - 0x1eb88, - 0x24bc7, - 0x286c8, - 0x1c14ca, - 0x1145c7, - 0xb79c9, - 0x632f8c05, - 0xf8c09, - 0x634404cb, - 0x125c88, - 0x137dcb, - 0x344b, - 0x182bc8, - 0x13054a, - 0x17d3ce, - 0x638b738a, - 0x1e544d, - 0x3514d, - 0x14ce40b, - 0xf1f4a, - 0xc344, - 0x8ef86, - 0x19f508, - 0xd1e88, - 0x40787, - 0x16245, - 0x1e0507, - 0xa54c9, - 0x1cd787, - 0x1db408, - 0x31009, - 0x15f9c4, - 0x53705, - 0x3810e, - 0x1401c7, - 0x63e26c46, - 0xbe10d, - 0x1cd608, - 0xf4008, - 0x6429ed46, - 0x64d82888, - 0x106b8a, - 0xb2908, - 0x13cf10, - 0x6388c, - 0x76987, - 0x77d47, - 0x7bd87, - 0x81847, - 0xd9c2, - 0x1da407, - 0xee4c, - 0x1e1905, - 0xbd847, - 0xb6ac6, - 0xb92c9, - 0xbb988, - 0x1d7c2, + 0x21634c, + 0x21664b, + 0x3a1106, + 0x30f905, + 0x4462b803, + 0x2021c2, + 0x2019c2, + 0x2d7cc6, + 0x234b83, + 0x3b92c7, + 0x20ea42, + 0x2008c2, + 0x25ec15, + 0x388e55, + 0x261993, + 0x389393, + 0x279a47, + 0x28b891, + 0x295090, + 0x29a312, + 0x29d851, + 0x2a1cc8, + 0x2a1cd0, + 0x2a5d0f, + 0x2b1313, + 0x2b7ad2, + 0x2c3490, + 0x376b8f, + 0x39c552, + 0x2c83d1, + 0x2cb893, + 0x2ce352, + 0x2e874f, + 0x2eb08e, + 0x2efed2, + 0x2f2f91, + 0x2f384f, + 0x2f6dce, + 0x2f96d1, + 0x2fbd50, + 0x3047d2, + 0x307e91, + 0x30ca90, + 0x30d4cf, + 0x310811, + 0x314290, + 0x314d46, + 0x327a47, + 0x2284c7, + 0x2027c2, + 0x296485, + 0x3e0bc7, + 0x22ccc2, + 0x205a42, + 0x3d0f05, + 0x20c703, + 0x378306, + 0x3089cd, + 0x308d0c, + 0x207882, + 0x3ea74b, + 0x287b4a, + 0x28a70a, + 0x22ba49, + 0x2d6e8b, + 0x30798d, + 0x28668c, + 0x31ae8a, + 0x25018c, + 0x25360b, + 0x269c8c, + 0x28414e, + 0x28c48b, + 0x2acb0c, + 0x2ccf43, + 0x37ef06, + 0x36a682, + 0x227e42, + 0x26fd83, + 0x201102, + 0x220983, + 0x2da0c6, + 0x275847, + 0x2dd0c6, + 0x3b2208, + 0x352988, + 0x32cb46, + 0x20b382, + 0x31b80d, + 0x31bb4c, + 0x34b287, + 0x31f587, + 0x226402, + 0x2216c2, + 0x209142, + 0x292602, + 0x33f716, + 0x344395, + 0x347056, + 0x34d093, + 0x34d752, + 0x35e9d3, + 0x35f512, + 0x3c048f, + 0x3cfb98, + 0x3d1e17, + 0x3d5419, + 0x3d7198, + 0x3d8058, + 0x3d8bd7, + 0x3d9d97, + 0x3dc056, + 0x3e0713, + 0x3e0d95, + 0x3e17d2, + 0x3e1c53, + 0x16f02, + 0x44a03584, + 0x44fcd6c8, + 0x5985, + 0x20b642, + 0x214883, + 0x445c2, + 0x24acc3, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x225a04, + 0x214883, + 0x24acc3, + 0x219303, + 0x2000c2, + 0x204502, + 0x45ea6b05, + 0x462a6305, + 0x46653946, + 0x1c3448, + 0x46ace985, + 0x20b642, + 0x203142, + 0x46f25e05, + 0x47294c85, + 0x47695b87, + 0x47af7ec9, + 0x47fbb404, + 0x200382, + 0x200642, + 0x4826ab45, + 0x486a6449, + 0x48baaf08, + 0x48ec7645, + 0x49359c47, + 0x4961e1c8, + 0x49b14945, + 0x49eb0206, + 0x4a2564c9, + 0x4a78d7c8, + 0x4aade488, + 0x4aeb0c4a, + 0x4b23cdc4, + 0x4b6bd045, + 0x4bab9cc8, + 0x4be59605, + 0x21f082, + 0x4c2024c3, + 0x4c6bbc86, + 0x4ca4c1c8, + 0x4ceffb06, + 0x4d358048, + 0x4d7a9686, + 0x4da43e44, + 0x4de01f42, + 0x4e6ee3c7, + 0x4eac2644, + 0x4ee909c7, + 0x4f3e8187, + 0x2003c2, + 0x4f6b54c5, + 0x4fa84804, + 0x4ffb69c7, + 0x50247947, + 0x50698f06, + 0x50a1a705, + 0x50eaf707, + 0x513ce308, + 0x51663b07, + 0x51ac4449, + 0x51eeed85, + 0x52316ec7, + 0x526a6146, + 0x2af8b, + 0x52a33c88, + 0x22ec0d, + 0x261089, + 0x28970b, + 0x2a66cb, + 0x2bf2cb, + 0x2cd90b, + 0x32ed0b, + 0x32efcb, + 0x32f9c9, + 0x33088b, + 0x330b4b, + 0x33110b, + 0x33244a, + 0x33298a, + 0x332f8c, + 0x337e8b, + 0x33848a, + 0x34ac0a, + 0x354ace, + 0x35570e, + 0x355a8a, + 0x358e4a, + 0x35a38b, + 0x35a64b, + 0x35b14b, + 0x37ca4b, + 0x37d04a, + 0x37dd0b, + 0x37dfca, + 0x37e24a, + 0x37e4ca, + 0x39c14b, + 0x3a360b, + 0x3a678e, + 0x3a6b0b, + 0x3aeb4b, + 0x3b034b, + 0x3b490a, + 0x3b4b89, + 0x3b4dca, + 0x3b66ca, + 0x3cf58b, + 0x3deb4b, + 0x3df64a, + 0x3e014b, + 0x3e660b, + 0x3f2a0b, + 0x52e96f08, + 0x5329d189, + 0x536b8389, + 0x53afcdc8, + 0x3607c5, + 0x203ec3, + 0x267c44, + 0x397685, + 0x3bb146, + 0x3574c5, + 0x29c844, + 0x2e4e48, + 0x328f45, + 0x2a88c4, + 0x206a87, + 0x2b74ca, + 0x325b4a, + 0x39bac7, + 0x23f147, + 0x2f7287, + 0x26acc7, + 0x3bfb05, + 0x3bbd86, + 0x249647, + 0x2606c4, + 0x2d2d86, + 0x302a46, + 0x3cb6c5, + 0x37b304, + 0x2b5106, + 0x2b6407, + 0x22ef06, + 0x320307, + 0x242d03, + 0x3cb3c6, + 0x230e85, + 0x295c87, + 0x27e84a, + 0x362244, + 0x21b988, + 0x2c3d89, + 0x381307, + 0x356306, + 0x28d588, + 0x3e8509, + 0x3622c4, + 0x287144, + 0x2d01c5, + 0x225908, + 0x2e7187, + 0x3138c9, + 0x23de88, + 0x321f06, + 0x240646, + 0x2b1a08, + 0x37bb06, + 0x2a6305, + 0x298fc6, + 0x290d88, + 0x297a46, + 0x26cc0b, + 0x2a2e06, + 0x2b3f8d, + 0x209805, + 0x2c2506, + 0x21e285, + 0x2d0389, + 0x32a287, + 0x214cc8, + 0x2c2ac6, + 0x2b2549, + 0x3a3886, + 0x27e7c5, + 0x21e4c6, + 0x2e4146, + 0x2eb409, + 0x2d4e06, + 0x214f47, + 0x2ac7c5, + 0x204343, + 0x264a45, + 0x2d2bc7, + 0x3db5c6, + 0x209709, + 0x253946, + 0x299206, + 0x24db09, + 0x2989c9, + 0x2ba547, + 0x36b208, + 0x2a4649, + 0x296108, + 0x2e5606, + 0x2f4b85, + 0x28f48a, + 0x299286, + 0x3d0646, + 0x2ee305, + 0x266b88, + 0x3af747, + 0x23c48a, + 0x262186, + 0x328245, + 0x313fc6, + 0x2a71c7, + 0x3561c7, + 0x2aec85, + 0x27e985, + 0x27b046, + 0x27bd86, + 0x285d86, + 0x245f84, + 0x297389, + 0x29f106, + 0x2ed9ca, + 0x21f648, + 0x316bc8, + 0x325b4a, + 0x24c385, + 0x2b6345, + 0x2093c8, + 0x32c608, + 0x24e687, + 0x2dd546, + 0x342288, + 0x220247, + 0x296808, + 0x2d3dc6, + 0x299c88, + 0x2ad906, + 0x2f83c7, + 0x317e46, + 0x2b5106, + 0x234eca, + 0x2392c6, + 0x2f4b89, + 0x371946, + 0x21230a, + 0x243e49, + 0x3091c6, + 0x2d5a44, + 0x3648cd, + 0x294ac7, + 0x20b986, + 0x2de345, + 0x3a3905, + 0x39dc06, + 0x383609, + 0x39fe87, + 0x291786, + 0x376546, + 0x27d809, + 0x360d04, + 0x3092c4, + 0x3ec208, + 0x38fb86, + 0x2ac248, + 0x2f20c8, + 0x288a47, + 0x2ff509, + 0x3d5d07, + 0x2ce84a, + 0x30a04f, + 0x24eaca, + 0x3d67c5, + 0x290fc5, + 0x214c85, + 0x2ff147, + 0x292403, + 0x36b408, + 0x23a546, + 0x23a649, + 0x359646, + 0x22a647, + 0x2b2309, + 0x214bc8, + 0x2d0547, + 0x32cfc3, + 0x360845, + 0x2a6d05, + 0x245dcb, + 0x2596c4, + 0x381204, + 0x28ec46, + 0x32d187, + 0x39e18a, + 0x25d687, + 0x2318c7, + 0x294c85, + 0x3dc5c5, + 0x391749, + 0x2b5106, + 0x25d50d, + 0x300285, + 0x2d1d83, + 0x208e03, + 0x220b45, + 0x342b85, + 0x28d588, + 0x291f47, + 0x24b286, + 0x2b8006, + 0x235205, + 0x241387, + 0x3d30c7, + 0x267f87, + 0x2bd0ca, + 0x3cb488, + 0x245f84, + 0x2977c7, + 0x293e47, + 0x367346, + 0x2acf87, + 0x36da88, + 0x362948, + 0x29c146, + 0x23f388, + 0x2d4e84, + 0x249646, + 0x28d846, + 0x302c46, + 0x349986, + 0x2198c4, + 0x26ad86, + 0x2dd246, + 0x2b1146, + 0x234ec6, + 0x208cc6, + 0x2fe846, + 0x24b188, + 0x2cfec8, + 0x2f16c8, + 0x3576c8, + 0x209346, + 0x20f0c5, + 0x264a06, + 0x2c76c5, + 0x338e87, + 0x23df45, + 0x2180c3, + 0x312185, + 0x320d44, + 0x208e05, + 0x201983, + 0x35b707, + 0x2e5188, + 0x3203c6, + 0x2c57cd, + 0x290f86, + 0x2b06c5, + 0x2030c3, + 0x2d9949, + 0x360e86, + 0x2afcc6, + 0x21e5c4, + 0x24ea47, + 0x3db7c6, + 0x328485, + 0x258dc3, + 0x20e744, + 0x294006, + 0x3bbe84, + 0x3c7808, + 0x3da549, + 0x29c609, + 0x2b960a, + 0x25588d, + 0x38c147, + 0x39b606, + 0x22f4c4, + 0x2f7ec9, + 0x29b548, + 0x29d006, + 0x2476c6, + 0x2acf87, + 0x2f7746, + 0x222986, + 0x371346, + 0x3e820a, + 0x21e1c8, + 0x237505, + 0x371149, + 0x3e8f0a, + 0x398548, + 0x2b5d08, + 0x2afc48, + 0x3034cc, + 0x331385, + 0x2b8288, + 0x2d4046, + 0x375c46, + 0x2e5a47, + 0x25d585, + 0x299145, + 0x29c4c9, + 0x20f447, + 0x23a605, + 0x229507, + 0x208e03, + 0x2e7b45, + 0x229bc8, + 0x2ee7c7, + 0x2b5bc9, + 0x3e4245, + 0x303bc4, + 0x322fc8, + 0x248007, + 0x2d0708, + 0x257148, + 0x39f5c5, + 0x279386, + 0x2b8106, + 0x23ef49, + 0x28d947, + 0x2c7c06, + 0x3cbe87, + 0x20bd43, + 0x3bb404, + 0x36b845, + 0x2414c4, + 0x24e2c4, + 0x298447, + 0x27d6c7, + 0x291944, + 0x2b5a10, + 0x325f87, + 0x3dc5c5, + 0x20d0cc, + 0x256f04, + 0x2c4c48, + 0x2f82c9, + 0x2cb606, + 0x324a48, + 0x264984, + 0x28ef48, + 0x234386, + 0x234d48, + 0x2b69c6, + 0x2cf24b, + 0x3c3845, + 0x36b6c8, + 0x21b184, + 0x3da98a, + 0x2b5bc9, + 0x268b86, + 0x3b0888, + 0x29ed45, + 0x2d8f44, + 0x2c4b46, + 0x267e48, + 0x296f08, + 0x33d7c6, + 0x37b484, + 0x28f406, + 0x3d5d87, + 0x2908c7, + 0x2acf8f, + 0x34fcc7, + 0x39f007, + 0x375b05, + 0x336705, + 0x2ba209, + 0x2ed686, + 0x295dc5, + 0x298cc7, + 0x2eac88, + 0x245c05, + 0x317e46, + 0x21f488, + 0x2ffb0a, + 0x20bfc8, + 0x2a0a87, + 0x30a486, + 0x371106, + 0x2003c3, + 0x21c543, + 0x3e90c9, + 0x2a44c9, + 0x2c4346, + 0x3e4245, + 0x303348, + 0x3b0888, + 0x2b4d48, + 0x3713cb, + 0x2c5a07, + 0x326909, + 0x2ad208, + 0x2402c4, + 0x3d2a08, + 0x2a4189, + 0x2c7f05, + 0x2632c7, + 0x3bb485, + 0x296e08, + 0x2a698b, + 0x2af450, + 0x2c2145, + 0x21b0cc, + 0x24b445, + 0x294d03, + 0x2d78c6, + 0x2dc744, + 0x29ce86, + 0x2b6407, + 0x209344, + 0x3c4c48, + 0x36b2cd, + 0x3b0745, + 0x255d84, + 0x364644, + 0x39ed49, + 0x2af188, + 0x33ab87, + 0x234408, + 0x297448, + 0x291a85, + 0x3e9407, + 0x291a07, + 0x23a907, + 0x27e989, + 0x33bb89, + 0x264346, + 0x3b10c6, + 0x298d86, + 0x32e605, + 0x3cb204, + 0x3d8606, + 0x3da306, + 0x291ac8, + 0x2a6e8b, + 0x362107, + 0x22f4c4, + 0x3db706, + 0x3f3e07, + 0x2fe445, + 0x300645, + 0x28de04, + 0x33bb06, + 0x3d8688, + 0x2f7ec9, + 0x257906, + 0x29b348, + 0x328546, + 0x36c748, + 0x2df20c, + 0x291946, + 0x2b038d, + 0x2b080b, + 0x215005, + 0x3d3207, + 0x2d4f06, + 0x356088, + 0x2643c9, + 0x2c5d08, + 0x3dc5c5, + 0x2adb87, + 0x296208, + 0x3b85c9, + 0x21d3c6, + 0x25780a, + 0x355e08, + 0x2c5b4b, + 0x3a044c, + 0x28f048, + 0x292c06, + 0x348c48, + 0x2ff787, + 0x3581c9, + 0x2a634d, + 0x2b5006, + 0x2d0048, + 0x2cfd89, + 0x2da988, + 0x299d88, + 0x2ddc4c, + 0x2df647, + 0x2e0bc7, + 0x27e7c5, + 0x2b9f47, + 0x2eab48, + 0x2c4bc6, + 0x26990c, + 0x30c788, + 0x2ecb08, + 0x357986, + 0x333f87, + 0x264544, + 0x3576c8, + 0x29e40c, + 0x258b0c, + 0x3d6845, + 0x3cb747, + 0x37b406, + 0x333f06, + 0x3a5388, + 0x227984, + 0x22ef0b, + 0x2025cb, + 0x30a486, + 0x36b147, + 0x3495c5, + 0x287085, + 0x22f046, + 0x29ed05, + 0x259685, + 0x2ebf47, + 0x2298c9, + 0x206744, + 0x24a0c5, + 0x30f585, + 0x21a5c8, + 0x361c45, + 0x2e1149, + 0x2c6447, + 0x2c644b, + 0x308f06, + 0x24aec9, + 0x37b248, + 0x292e05, + 0x23aa08, + 0x33bbc8, + 0x367a47, + 0x234187, + 0x2984c9, + 0x234c87, + 0x2a2bc9, + 0x2bd90c, + 0x2c4348, + 0x3a0289, + 0x2deb87, + 0x297509, + 0x228087, + 0x3a0548, + 0x2ff6c5, + 0x2495c6, + 0x2de388, + 0x30a588, + 0x3e8dc9, + 0x2596c7, + 0x2b9805, + 0x3d4209, + 0x3a84c6, + 0x2a6144, + 0x315186, + 0x24c048, + 0x252787, + 0x2a7088, + 0x23f449, + 0x32dc47, + 0x2b4e86, + 0x3d2d44, + 0x312209, + 0x3e9288, + 0x357847, + 0x29ab46, + 0x2a6dc6, + 0x3d05c4, + 0x381b86, + 0x208d83, + 0x203ec9, + 0x3c3806, + 0x23f6c5, + 0x2b8006, + 0x2d0845, + 0x296688, + 0x220787, + 0x297d46, + 0x325e46, + 0x316bc8, + 0x2ba387, + 0x2b5045, + 0x2b5808, + 0x3def48, + 0x355e08, + 0x24b305, + 0x249646, + 0x29c3c9, + 0x23edc4, + 0x30fa8b, + 0x22268b, + 0x237409, + 0x208e03, + 0x26e945, + 0x39bfc6, + 0x24bbc8, + 0x311244, + 0x3203c6, + 0x2bd209, + 0x3762c5, + 0x2ebe86, + 0x248006, + 0x217604, + 0x2c26ca, + 0x23f608, + 0x30a586, + 0x37fdc5, + 0x3eb247, + 0x342dc7, + 0x279384, + 0x2228c7, + 0x23df04, + 0x23df06, + 0x20d183, + 0x27e985, + 0x2ca445, + 0x34ff08, + 0x297985, + 0x291689, + 0x2bba87, + 0x35750b, + 0x2bba8c, + 0x2bc08a, + 0x359c47, + 0x206b43, + 0x2902c8, + 0x309285, + 0x245c85, + 0x360904, + 0x3a0446, + 0x2f82c6, + 0x381bc7, + 0x28884b, + 0x2198c4, + 0x3aae84, + 0x2e4a84, + 0x2ea9c6, + 0x209344, + 0x225a08, + 0x360705, + 0x255ec5, + 0x2b4c87, + 0x3d3309, + 0x342b85, + 0x39dc0a, + 0x2ac6c9, + 0x2ab14a, + 0x3e8349, + 0x328744, + 0x376605, + 0x2f7848, + 0x3b6a8b, + 0x2d01c5, + 0x2f2246, + 0x24f404, + 0x291bc6, + 0x32dac9, + 0x3f3f07, + 0x253b08, + 0x255c06, + 0x3d5d07, + 0x296f08, + 0x386686, + 0x3d2dc4, + 0x270b47, + 0x391445, + 0x3a0a47, + 0x264884, + 0x2d4e86, + 0x342f08, + 0x2b09c8, + 0x3e4e07, + 0x32cc48, + 0x2ad9c5, + 0x208c44, + 0x325a48, + 0x2d79c4, + 0x2174c5, + 0x3a5184, + 0x220347, + 0x29f1c7, + 0x297648, + 0x2d0886, + 0x297905, + 0x291488, + 0x20c1c8, + 0x2b9549, + 0x222986, + 0x23c508, + 0x3da80a, + 0x2fe4c8, + 0x314945, + 0x264c06, + 0x2ac588, + 0x2adc4a, + 0x237f47, + 0x29b985, + 0x2a9588, + 0x2c0644, + 0x266c06, + 0x2e1a48, + 0x208cc6, + 0x3dfcc8, + 0x26cf47, + 0x206986, + 0x2d5a44, + 0x2445c7, + 0x2d1044, + 0x32da87, + 0x357b8d, + 0x237485, + 0x38340b, + 0x258d86, + 0x268a08, + 0x3636c4, + 0x285f86, + 0x294006, + 0x348f87, + 0x2b004d, + 0x30e947, + 0x2d1cc8, + 0x2a0f85, + 0x2d1608, + 0x2e7106, + 0x2ada48, + 0x23da86, + 0x20ce47, + 0x2251c9, + 0x3636c7, + 0x29d2c8, + 0x289b05, + 0x235288, + 0x333e45, + 0x317d85, + 0x378d45, + 0x21e503, + 0x299044, + 0x2a9785, + 0x2564c9, + 0x381986, + 0x36db88, + 0x3a13c5, + 0x2d3047, + 0x32a58a, + 0x2ebdc9, + 0x2e404a, + 0x2f1748, + 0x22934c, + 0x298d4d, + 0x3777c3, + 0x3dfbc8, + 0x20e705, + 0x2ff8c6, + 0x214a46, + 0x364585, + 0x3cbf89, + 0x3ea105, + 0x291488, + 0x26fa46, + 0x37a4c6, + 0x2bac89, + 0x233387, + 0x2a6c46, + 0x32a508, + 0x302b48, + 0x2fcfc7, + 0x2eb64e, + 0x2e7345, + 0x3b84c5, + 0x208bc8, + 0x3b90c7, + 0x229942, + 0x2dda04, + 0x29cd8a, + 0x357908, + 0x33bd06, + 0x2b2448, + 0x2b8106, + 0x336588, + 0x2c7c08, + 0x317d44, + 0x2d3805, + 0x7bf004, + 0x7bf004, + 0x7bf004, + 0x204043, + 0x206586, + 0x291946, + 0x2b6dcc, + 0x2069c3, + 0x264886, + 0x20d144, + 0x360e08, + 0x2bd045, + 0x29ce86, + 0x2b9dc8, + 0x2f2cc6, + 0x297cc6, + 0x21d148, + 0x36b8c7, + 0x234a49, + 0x32438a, + 0x263b44, + 0x23df45, + 0x313885, + 0x360b86, + 0x38c186, + 0x3d3746, + 0x385306, + 0x234b84, + 0x234b8b, + 0x23dd04, + 0x22a6c5, + 0x2c7005, + 0x288b06, + 0x20ac08, + 0x298c07, + 0x204284, + 0x273443, + 0x2c0145, + 0x315047, + 0x298b0b, + 0x34fe07, + 0x2b9cc8, + 0x2d8147, + 0x281406, + 0x261348, + 0x2d75cb, + 0x3975c6, + 0x210249, + 0x2d7745, + 0x32cfc3, + 0x2ebe86, + 0x26ce48, + 0x211903, + 0x2a17c3, + 0x233d86, + 0x2b8106, + 0x3848ca, + 0x292c45, + 0x293e4b, + 0x2b7f4b, + 0x242e83, + 0x201f03, + 0x2ce7c4, + 0x32a3c7, + 0x26cec4, + 0x23ee44, + 0x2d3ec4, + 0x2fe7c8, + 0x37fd08, + 0x21c4c9, + 0x2eee08, + 0x378fc7, + 0x234ec6, + 0x36d7cf, + 0x2e7486, + 0x2f0e44, + 0x37fb4a, + 0x314f47, + 0x2d1146, + 0x2a6189, + 0x21c445, + 0x27be45, + 0x21c586, + 0x2353c3, + 0x2c0689, + 0x21e346, + 0x23f209, + 0x39e186, + 0x27e985, + 0x3d6c45, + 0x206043, + 0x347e48, + 0x33ad47, + 0x23a544, + 0x360c88, + 0x3aac04, + 0x3e3f86, + 0x2d78c6, + 0x24a886, + 0x36b589, + 0x245c05, + 0x2b5106, + 0x2839c9, + 0x2e6246, + 0x2fe846, + 0x3b2f06, + 0x204105, + 0x3a5186, + 0x20ce44, + 0x2ff6c5, + 0x2de384, + 0x2d2586, + 0x300244, + 0x2027c3, + 0x29b605, + 0x241f48, + 0x235707, + 0x3112c9, + 0x29b888, + 0x2b17d1, + 0x24808a, + 0x30a3c7, + 0x26d086, + 0x20d144, + 0x2de488, + 0x3e5088, + 0x2b198a, + 0x2e0f0d, + 0x21e4c6, + 0x21d246, + 0x244686, + 0x2aeb07, + 0x2d1d85, + 0x325147, + 0x360d45, + 0x2c6584, + 0x3d1306, + 0x249487, + 0x2c038d, + 0x2ac4c7, + 0x2e4d48, + 0x291789, + 0x264b06, + 0x21d345, + 0x245b84, + 0x24c146, + 0x2ff406, + 0x357a86, + 0x2b2cc8, + 0x216143, + 0x209503, + 0x3ead45, + 0x262286, + 0x2c7bc5, + 0x255e08, + 0x2b65ca, + 0x279484, + 0x360e08, + 0x2afc48, + 0x32a787, + 0x234009, + 0x2d9c88, + 0x2c44c7, + 0x2dd3c6, + 0x208cca, + 0x24c1c8, + 0x322e89, + 0x2af248, + 0x21fb49, + 0x362b47, + 0x3837c5, + 0x3715c6, + 0x2c4a48, + 0x297088, + 0x359f08, + 0x217608, + 0x22a6c5, + 0x204584, + 0x240a08, + 0x24f184, + 0x3e8144, + 0x27e985, + 0x2a8907, + 0x3d30c9, + 0x348d87, + 0x23c545, + 0x28ee46, + 0x37f5c6, + 0x20ad04, + 0x2bb106, + 0x294284, + 0x293b86, + 0x3d2e86, + 0x211746, + 0x3dc5c5, + 0x255cc7, + 0x206b43, + 0x32e089, + 0x3169c8, + 0x2f7dc4, + 0x2f7dcd, + 0x2b0ac8, + 0x2f6108, + 0x322e06, + 0x2252c9, + 0x2ebdc9, + 0x32d7c5, + 0x2b66ca, + 0x2abc0a, + 0x3cd0cc, + 0x3cd246, + 0x28fec6, + 0x2e7a86, + 0x3a1209, + 0x2ffb06, + 0x2ba3c6, + 0x3ea1c6, + 0x3576c8, + 0x20bfc6, + 0x2f060b, + 0x2a8a85, + 0x255ec5, + 0x2909c5, + 0x3ebf86, + 0x208c83, + 0x24a806, + 0x2ac447, + 0x2de345, + 0x3c35c5, + 0x3a3905, + 0x2fb286, + 0x32d884, + 0x33ee46, + 0x2a8e89, + 0x3ebe0c, + 0x2c62c8, + 0x267dc4, + 0x38d6c6, + 0x258e86, + 0x26ce48, + 0x3b0888, + 0x3ebd09, + 0x3eb247, + 0x38f8c9, + 0x288146, + 0x237004, + 0x361784, + 0x2987c4, + 0x296f08, + 0x3d2f0a, + 0x342b06, + 0x3759c7, + 0x3a0cc7, + 0x24afc5, + 0x2bb8c4, + 0x2a4146, + 0x2d1dc6, + 0x220883, + 0x316807, + 0x257048, + 0x32d90a, + 0x358908, + 0x358048, + 0x300285, + 0x22e485, + 0x362205, + 0x24b386, + 0x24f886, + 0x350045, + 0x204109, + 0x2bb6cc, + 0x318007, + 0x2b1a08, + 0x2a2f45, + 0x7bf004, + 0x2ca484, + 0x2ee904, + 0x213346, + 0x2b8e4e, + 0x27bec7, + 0x2aed05, + 0x23ed4c, + 0x2b4587, + 0x249407, + 0x24de49, + 0x21ba49, + 0x29b985, + 0x3169c8, + 0x29c3c9, + 0x355cc5, + 0x2de288, + 0x3ce506, + 0x325cc6, + 0x243e44, + 0x2ce008, + 0x255783, + 0x206184, + 0x2c01c5, + 0x3a5b07, + 0x355145, + 0x3da6c9, + 0x2a398d, + 0x2b3046, + 0x3f3684, + 0x2dd4c8, + 0x22970a, + 0x3cba07, + 0x246205, + 0x2061c3, + 0x2b810e, + 0x347f4c, + 0x398647, + 0x2b9007, + 0x4e3a4e47, + 0x136c46, + 0x2af84, + 0x203f43, + 0x2ffb45, + 0x2ee905, + 0x2b2808, + 0x2afa89, + 0x267cc6, + 0x26cec4, + 0x30a306, + 0x390c0b, + 0x2fa98c, + 0x26e6c7, + 0x2f08c5, + 0x3dee48, + 0x2fcd85, + 0x37fb47, + 0x2ee3c7, + 0x255785, + 0x208c83, + 0x246384, + 0x3638c5, + 0x206645, + 0x206646, + 0x2a4d08, + 0x249487, + 0x214d46, + 0x3d04c6, + 0x378c86, + 0x2d5009, + 0x3e9507, + 0x267b46, + 0x2fab06, + 0x23ccc6, + 0x2c2605, + 0x2185c6, + 0x3b7205, + 0x361cc8, + 0x2a81cb, + 0x2a36c6, + 0x3a0d04, + 0x2fefc9, + 0x2bba84, + 0x3ce488, + 0x318dc7, + 0x299c84, + 0x2d9148, + 0x2e0704, + 0x2c2644, + 0x2f7d05, + 0x3b0786, + 0x2fe707, + 0x234643, + 0x2b4f45, + 0x250504, + 0x3b8506, + 0x32d848, + 0x20bec5, + 0x2a7e89, + 0x359c45, + 0x264888, + 0x23ec07, + 0x3c3908, + 0x2d8d87, + 0x39f0c9, + 0x26ac06, + 0x2e4346, + 0x2a4784, + 0x30f9c5, + 0x3de58c, + 0x2909c7, + 0x290e87, + 0x38bdc8, + 0x2b3046, + 0x2ac384, + 0x327b84, + 0x298349, + 0x2e7b86, + 0x2b2387, + 0x3490c4, + 0x2bb206, + 0x3b7645, + 0x2ee247, + 0x2f0586, + 0x2576c9, + 0x2cec47, + 0x2acf87, + 0x2bab06, + 0x29aa85, + 0x295708, + 0x21e1c8, + 0x37be06, + 0x20bf05, + 0x3936c6, + 0x206b03, + 0x2b2689, + 0x3d34ce, + 0x2d7fc8, + 0x3aad08, + 0x37bc0b, + 0x2a80c6, + 0x3a0bc4, + 0x297cc4, + 0x3d35ca, + 0x21afc7, + 0x267c05, + 0x210249, + 0x2dd305, + 0x3e8187, + 0x246444, + 0x2a2647, + 0x2f1fc8, + 0x3813c6, + 0x2da1c9, + 0x2d9d8a, + 0x21af46, + 0x2b0606, + 0x2c6f85, + 0x3a70c5, + 0x399347, + 0x255108, + 0x3b7588, + 0x317d46, + 0x3d6cc5, + 0x38bf0e, + 0x245f84, + 0x2b2785, + 0x28e7c9, + 0x2ed488, + 0x2a09c6, + 0x2b530c, + 0x2b61d0, + 0x2b8a8f, + 0x2ba108, + 0x359c47, + 0x3dc5c5, + 0x2a9785, + 0x2fe589, + 0x2a9789, + 0x28f506, + 0x2d0247, + 0x3a5285, + 0x24e689, + 0x3673c6, + 0x2ff94d, + 0x298689, + 0x23ee44, + 0x2d7bc8, + 0x240ac9, + 0x342cc6, + 0x2904c5, + 0x2e4346, + 0x2539c9, + 0x233b08, + 0x20f0c5, + 0x2a4c84, + 0x2b54cb, + 0x342b85, + 0x24bc46, + 0x299086, + 0x3ae7c6, + 0x24b60b, + 0x2a7f89, + 0x2281c5, + 0x338d87, + 0x248006, + 0x2718c6, + 0x2ee688, + 0x225b89, + 0x2e4b0c, + 0x314e48, + 0x323c06, + 0x33d7c3, + 0x23c1c6, + 0x309205, + 0x294988, + 0x3d66c6, + 0x2d0608, + 0x25d705, + 0x2715c5, + 0x3a0048, + 0x3aaac7, + 0x214987, + 0x381bc7, + 0x324a48, + 0x359d88, + 0x2d1506, + 0x2d23c7, + 0x3bb2c7, + 0x39ee4a, + 0x203cc3, + 0x3ebf86, + 0x267f05, + 0x284804, + 0x291789, + 0x39f044, + 0x235784, + 0x2b6a44, + 0x2b900b, + 0x33ac87, + 0x2fb245, + 0x2ad6c8, + 0x28ee46, + 0x28ee48, + 0x292b86, + 0x2a1445, + 0x2a20c5, + 0x2a5106, + 0x279208, + 0x2a60c8, + 0x291946, + 0x2ad50f, + 0x2b2150, + 0x209805, + 0x206b43, + 0x2856c5, + 0x326848, + 0x2a9689, + 0x355e08, + 0x21e448, + 0x26afc8, + 0x33ad47, + 0x28eb09, + 0x2d0808, + 0x2a56c4, + 0x2b68c8, + 0x21a689, + 0x2d2907, + 0x2d2d04, + 0x348e48, + 0x255a8a, + 0x3221c6, + 0x21e4c6, + 0x222849, + 0x2b6407, + 0x2ebc48, + 0x2464c8, + 0x3d0b88, + 0x279b85, + 0x3b7e85, + 0x255ec5, + 0x2ee8c5, + 0x3cf007, + 0x208c85, + 0x2de345, + 0x207906, + 0x355d47, + 0x3b69c7, + 0x255d86, + 0x2f1c85, + 0x24bc46, + 0x220805, + 0x2e4888, + 0x32c584, + 0x2e62c6, + 0x398c44, + 0x2d8f48, + 0x2e63ca, + 0x291f4c, + 0x2b7685, + 0x2aebc6, + 0x2e4cc6, + 0x3e9fc6, + 0x323c84, + 0x3c8045, + 0x292447, + 0x2b6489, + 0x2eb507, + 0x7bf004, + 0x7bf004, + 0x33ab05, + 0x315d84, + 0x2b4aca, + 0x28ecc6, + 0x39ffc4, + 0x3cb6c5, + 0x3c4605, + 0x2d1cc4, + 0x298cc7, + 0x3d4387, + 0x2ea9c8, + 0x3937c8, + 0x20f0c9, + 0x2d79c8, + 0x29d40b, + 0x20cf04, + 0x317f45, + 0x295e45, + 0x381b49, + 0x225b89, + 0x2feec8, + 0x23dd08, + 0x288b04, + 0x258ec5, + 0x203ec3, + 0x360b45, + 0x2b5186, + 0x2af8cc, + 0x21e246, + 0x2903c6, + 0x2a0c45, + 0x2fb308, + 0x2e9786, + 0x26d206, + 0x21e4c6, + 0x22a3cc, + 0x286c44, + 0x378dca, + 0x2a0b88, + 0x2af707, + 0x250406, + 0x267d87, + 0x309f05, + 0x29ab46, + 0x368d86, + 0x381847, + 0x2357c4, + 0x220445, + 0x28e7c4, + 0x2c6607, + 0x28ea08, + 0x28fd4a, + 0x296087, + 0x2c2207, + 0x359bc7, + 0x2fcec9, + 0x2af8ca, + 0x234b43, + 0x2356c5, + 0x211783, + 0x2d3f09, + 0x362c88, + 0x375b07, + 0x355f09, + 0x21e2c6, + 0x227a08, + 0x35b685, + 0x20c2ca, + 0x3839c9, + 0x29c009, + 0x2e5a47, + 0x3e5189, + 0x211648, + 0x3d2c06, + 0x2aed88, + 0x204407, + 0x234c87, + 0x2ac6c7, + 0x3ce308, + 0x386186, + 0x255845, + 0x292447, + 0x2b0108, + 0x378c04, + 0x2ed884, + 0x2a6b47, + 0x2c7f87, + 0x29c24a, + 0x3d2b86, + 0x3c834a, + 0x2dd947, + 0x245d47, + 0x220504, + 0x2a2c84, + 0x2ee146, + 0x3e9a84, + 0x3e9a8c, + 0x318d05, + 0x217449, + 0x2af004, + 0x2d1d85, + 0x229688, + 0x20bb45, + 0x39dc06, + 0x237e44, + 0x2aa98a, + 0x2c6a06, + 0x2afdca, + 0x263b07, + 0x2a71c5, + 0x2353c5, + 0x24b00a, + 0x28d4c5, + 0x2b9606, + 0x24f184, + 0x2ce946, + 0x399405, + 0x3d6786, + 0x3e4e0c, + 0x3f278a, + 0x2abd04, + 0x234ec6, + 0x2b6407, + 0x2f0504, + 0x3576c8, + 0x2d6446, + 0x3a0b49, + 0x2f8649, + 0x2c4449, + 0x30fc46, + 0x204506, + 0x2aeec7, + 0x204048, + 0x204309, + 0x33ac87, + 0x2ad846, + 0x3d5d87, + 0x244545, + 0x245f84, + 0x2aea87, + 0x3bb485, + 0x29ccc5, + 0x394687, + 0x255648, + 0x3dedc6, + 0x2b0f8d, + 0x2b2a0f, + 0x2b7f4d, + 0x222744, + 0x242046, + 0x2f3508, + 0x3ea185, + 0x24b4c8, + 0x36790a, + 0x23ee44, + 0x2d2686, + 0x217e87, + 0x2198c7, + 0x36b989, + 0x2aed45, + 0x2d1cc4, + 0x2d374a, + 0x2d9849, + 0x3e5287, + 0x36be46, + 0x342cc6, + 0x258e06, + 0x270c06, + 0x32f48f, + 0x2f33c9, + 0x20bfc6, + 0x271506, + 0x23b6c9, + 0x2d24c7, + 0x200e83, + 0x22a546, + 0x21c543, + 0x364448, + 0x285e47, + 0x2ba309, + 0x2b9b48, + 0x214ac8, + 0x318146, + 0x232c89, + 0x38f805, + 0x23c104, + 0x383887, + 0x3a1285, + 0x222744, + 0x38c208, + 0x21b284, + 0x2d2207, + 0x2e5106, + 0x27b105, + 0x2af248, + 0x342b8b, + 0x316ec7, + 0x24b286, + 0x2e7504, + 0x3a9606, + 0x27e985, + 0x3bb485, + 0x295489, + 0x2988c9, + 0x234cc4, + 0x234d05, + 0x214b85, + 0x20c146, + 0x316ac8, + 0x2dcc46, + 0x256e8b, + 0x2cb48a, + 0x2d8e85, + 0x2a2146, + 0x23a245, + 0x357e45, + 0x2b5e87, + 0x3ec208, + 0x279284, + 0x260c46, + 0x2a6146, + 0x211807, + 0x32cf84, + 0x294006, + 0x2ff245, + 0x2ff249, + 0x204704, + 0x3139c9, + 0x291946, + 0x2df708, + 0x214b85, + 0x3a0dc5, + 0x3d6786, + 0x2e4a09, + 0x21ba49, + 0x290446, + 0x2ed588, + 0x23ee48, + 0x23a204, + 0x2d3bc4, + 0x2d3bc8, + 0x20ba88, + 0x38f9c9, + 0x2b5106, + 0x21e4c6, + 0x34214d, + 0x3203c6, + 0x2df0c9, + 0x228285, + 0x21c586, + 0x233c88, + 0x33ed85, + 0x3bb304, + 0x27e985, + 0x2981c8, + 0x2b4889, + 0x28e884, + 0x2d4e86, + 0x2f098a, + 0x398548, + 0x29c3c9, + 0x290b0a, + 0x355e86, + 0x2b2bc8, + 0x37f905, + 0x2a0e08, + 0x309f85, + 0x21e189, + 0x344849, + 0x231e42, + 0x2d7745, + 0x295f06, + 0x291887, + 0x284805, + 0x328146, + 0x31f388, + 0x2b3046, + 0x2f7709, + 0x290f86, + 0x2ee508, + 0x2c3945, + 0x2533c6, + 0x20cf48, + 0x296f08, + 0x362a48, + 0x321f88, + 0x2185c4, + 0x232783, + 0x2f7944, + 0x296286, + 0x244584, + 0x3aac47, + 0x26d109, + 0x2e6645, + 0x2464c6, + 0x22a546, + 0x2a4b4b, + 0x2d1086, + 0x285906, + 0x2e9608, + 0x240646, + 0x2a6fc3, + 0x211483, + 0x245f84, + 0x23c405, + 0x328387, + 0x28ea08, + 0x28ea0f, + 0x29234b, + 0x3168c8, + 0x2d4f06, + 0x316bce, + 0x24b443, + 0x328304, + 0x2d1005, + 0x2d1b46, + 0x2a424b, + 0x2a89c6, + 0x21f509, + 0x27b105, + 0x38e748, + 0x209c08, + 0x21b90c, + 0x2b9046, + 0x360b86, + 0x3e4245, + 0x29d088, + 0x20cf45, + 0x2402c8, + 0x2b568a, + 0x2b8389, + 0x7bf004, + 0x2000c2, + 0x5420b642, + 0x200382, + 0x25c204, + 0x200ec2, + 0x230944, + 0x201f42, + 0x2003c2, + 0x206382, + 0x1c3448, + 0x11d44, + 0x21a043, + 0x226783, + 0x20f583, + 0xb882, + 0x5cf02, + 0x214e43, + 0x214883, + 0x24acc3, + 0x2ccc2, + 0xba42, + 0x3342, + 0x20bec3, + 0x21a043, + 0x226783, + 0x20f583, + 0x25c204, + 0x214883, + 0x24acc3, + 0x24f6c3, + 0x265a04, + 0x21a043, + 0x243544, + 0x226783, + 0x2eef84, + 0x20f583, + 0x284ac7, + 0x214e43, + 0x208c43, + 0x2a1948, + 0x24acc3, + 0x2937cb, + 0x30ad83, + 0x219086, + 0x249902, + 0x30614b, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x21a043, + 0x226783, + 0x20f583, + 0x24acc3, + 0x21bd03, + 0x203783, + 0x2000c2, + 0x1c3448, + 0x235d45, + 0x3bb508, + 0x2ef0c8, + 0x20b642, + 0x3b9485, + 0x3d5ec7, + 0x201b42, + 0x3c4e47, + 0x200382, + 0x2696c7, + 0x246f89, + 0x27f1c8, + 0x3d0a09, + 0x213c02, + 0x20f2c7, + 0x393f04, + 0x3d5f87, + 0x2cb387, + 0x2dbe82, + 0x214e43, + 0x20d3c2, + 0x201f42, + 0x2003c2, + 0x2035c2, + 0x200902, + 0x206382, + 0x283b85, + 0x214405, + 0xb642, + 0x26783, + 0x21a043, + 0x226783, + 0x207ec3, + 0x20f583, + 0x211983, + 0x214883, + 0x24acc3, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x21a043, + 0x226783, + 0x20f583, + 0x159186, + 0x56ea590b, + 0x214e43, + 0x214883, + 0x24acc3, + 0x1a3d05, + 0x11f03, + 0x101, + 0x21a043, + 0x226783, + 0x20f583, + 0x25c204, + 0x20bc83, + 0x214883, + 0x24acc3, + 0x221c03, + 0x57889cc6, + 0x24dc3, + 0x1a85, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x20b642, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0xabc2, + 0x1c3448, + 0x3a103, + 0x550c4, + 0x148c0c4, + 0xfd185, + 0x1ad803, + 0x2000c2, + 0x339144, + 0x21a043, + 0x226783, + 0x20f583, + 0x23b9c3, + 0x239805, + 0x20bc83, + 0x222043, + 0x214883, + 0x262243, + 0x24acc3, + 0x219303, + 0x212f03, + 0x200f83, + 0x15103, 0x5c2, - 0x19ab46, - 0x1d6ecb, - 0x1d71c6, - 0x71c84, - 0xcabc7, - 0x56a09, - 0x90249, - 0x1c03c8, - 0x58e02, - 0x12d349, - 0x15288, - 0xfff4a, - 0xd28c8, - 0x652e034b, - 0x162d09, - 0x51c86, - 0xe5649, - 0xf1ec7, - 0xf2609, - 0xf3948, - 0xf5707, - 0xf7289, - 0xf9d05, - 0xfa0d0, - 0x1c5e46, - 0xcab05, - 0xd5247, - 0x12634d, - 0x65ac9683, - 0x4d385, - 0x2e6c6, - 0xff7c7, - 0x105758, - 0x98d08, - 0x4c08a, - 0x152f8e, - 0x9942, - 0x65f5f74b, - 0x662e574a, - 0x59c0a, - 0x6a90d, - 0x33c2, - 0xdfa46, - 0x18a46, - 0xac788, - 0xbb70a, - 0x566c8, - 0x7fe89, - 0x1167c8, - 0x75a8e, - 0x29c08, - 0x13e007, - 0x6669ec84, - 0xd3f0d, - 0x10df85, - 0x1735c8, - 0x3fe48, - 0x66888d0a, - 0x66eb3dc8, - 0x1133c6, - 0x9e42, - 0xa6f44, - 0x6d586, - 0x67045f08, - 0x5b646, - 0x678c200b, - 0x4182, - 0x154a09, - 0x135c08, - 0x14b207, - 0x3268a, - 0x118a87, + 0x445c2, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x2000c2, + 0x20bec3, + 0x20b642, + 0x101c2, + 0x226783, + 0x20f583, + 0x25c204, + 0x214883, + 0x24acc3, + 0x206382, + 0x1c3448, + 0x20f583, + 0x1c3448, + 0x2507c3, + 0x21a043, + 0x23e084, + 0x226783, + 0x20f583, + 0x206502, + 0x214e43, + 0x214883, + 0x24acc3, + 0x21a043, + 0x226783, + 0x20f583, + 0x206502, + 0x2384c3, + 0x214883, + 0x24acc3, + 0x305103, + 0x219303, + 0x2000c2, + 0x20b642, + 0x20f583, + 0x214883, + 0x24acc3, + 0x219085, + 0x16f9c6, + 0x78884, + 0xc47c4, + 0x265a04, + 0x249902, + 0x882, + 0x1c3448, + 0x101c2, + 0x5cf02, + 0x19c2, + 0x2000c2, + 0x14f985, + 0x27348, + 0x104543, + 0x20b642, + 0x49344, + 0x5cd61806, + 0x2d784, + 0xbe6cb, + 0x47306, + 0x89207, + 0x629c9, + 0x226783, + 0x5b4c8, + 0x5b4cb, + 0x5b94b, + 0x5c6cb, + 0x5ca0b, + 0x5cccb, + 0x5d10b, + 0x128c6, + 0x20f583, + 0x100185, + 0x1c0044, + 0x220303, + 0x121dc7, + 0x12f3c6, + 0x13b0c5, + 0xca04, + 0xf9004, + 0x82384, + 0x214883, + 0x90546, + 0x149204, + 0x24acc3, + 0x30b844, + 0x13b587, + 0x16f5c9, + 0xbe488, + 0x1e3885, + 0xf644, + 0x1d60c4, + 0x467c3, + 0x1d4803, + 0x5f986, + 0x112c8, + 0x198d45, + 0x1bf7c9, + 0x15ac3, + 0x112cc6, + 0x14f985, + 0x20b642, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x208c43, + 0x24acc3, + 0x30ad83, + 0x249902, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x231a43, + 0x225a04, + 0x214883, + 0x24acc3, + 0x21a043, + 0x226783, + 0x2eef84, + 0x20f583, + 0x214883, + 0x24acc3, + 0x219086, + 0x226783, + 0x20f583, + 0x1fe83, + 0x24acc3, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x14f985, + 0x89207, + 0x9043, + 0x15ac3, + 0xba02, + 0x1c3448, + 0x20f583, + 0x21a043, + 0x226783, + 0x20f583, + 0x3e03, + 0x1a2a48, + 0x214883, + 0x24acc3, + 0x6061a043, + 0x226783, + 0x214883, + 0x24acc3, + 0x1c3448, + 0x2000c2, + 0x20b642, + 0x21a043, + 0x20f583, + 0x214883, + 0x2003c2, + 0x24acc3, + 0x344d87, + 0x23ac8b, + 0x217f43, + 0x28f1c8, + 0x203dc7, + 0x392fc6, + 0x228745, + 0x3b95c9, + 0x218e08, + 0x284ec9, + 0x284ed0, + 0x38a44b, + 0x3b1ec9, + 0x209043, + 0x207b09, + 0x23fd06, + 0x23fd0c, + 0x235e08, + 0x3f02c8, + 0x378149, + 0x2d884e, + 0x246d4b, + 0x2cae4c, + 0x205d83, + 0x2828cc, + 0x205d89, + 0x3f10c7, + 0x24100c, + 0x2ccaca, + 0x2346c4, + 0x2c5fcd, + 0x282788, + 0x3dcd4d, + 0x2874c6, + 0x265a0b, + 0x36f749, + 0x271787, + 0x20c506, + 0x326109, + 0x3a97ca, + 0x3bc848, + 0x30a984, + 0x2c8a07, + 0x252dc7, + 0x349b04, + 0x224c04, + 0x3ed149, + 0x324fc9, + 0x3d6448, + 0x33a645, + 0x213b45, + 0x20ef86, + 0x2c5e89, + 0x37ebcd, + 0x21c688, + 0x20ee87, + 0x2287c8, + 0x251c86, + 0x241804, + 0x3676c5, + 0x3e8046, + 0x3ef204, + 0x205c87, + 0x20864a, + 0x217384, + 0x21ae86, + 0x21ee89, + 0x21ee8f, + 0x21f84d, + 0x21fd86, + 0x226f50, + 0x227346, + 0x2289c7, + 0x229dc7, + 0x229dcf, + 0x22b509, + 0x22e9c6, + 0x22f607, + 0x22f608, + 0x22fe09, + 0x213f08, + 0x3133c7, + 0x2327c3, + 0x238a06, + 0x33a348, + 0x2d8b0a, + 0x2063c9, + 0x218f43, + 0x3b9386, + 0x260a8a, + 0x245207, + 0x3f0f0a, + 0x3ca8ce, + 0x22b646, + 0x34afc7, + 0x364ec6, + 0x205206, + 0x3b7c8b, + 0x2129ca, + 0x25404d, + 0x2045c7, + 0x3ea348, + 0x3ea349, + 0x3ea34f, + 0x31144c, + 0x387a89, + 0x2c16ce, + 0x284bca, + 0x380186, + 0x303dc6, + 0x32004c, + 0x3240cc, + 0x32d5c8, + 0x3635c7, + 0x20d6c5, + 0x3d6144, + 0x34a24e, + 0x224444, + 0x3eb647, + 0x3be48a, + 0x3ee394, + 0x23790f, + 0x229f88, + 0x2388c8, + 0x21c10d, + 0x21c10e, + 0x238d49, + 0x34be48, + 0x34be4f, + 0x240d0c, + 0x240d0f, + 0x241d87, + 0x24408a, + 0x2453cb, + 0x246088, + 0x247b07, + 0x38df4d, + 0x36eac6, + 0x2c6186, + 0x24a689, + 0x274708, + 0x252248, + 0x25224e, + 0x23ad87, + 0x30e505, + 0x254705, + 0x224a84, + 0x393286, + 0x3d6348, + 0x26b343, + 0x2cc04e, + 0x38e308, + 0x3a1fcb, + 0x3a9ec7, + 0x317b85, + 0x282a46, + 0x2c5387, + 0x36f048, + 0x371dc9, + 0x241645, + 0x29b648, + 0x362546, + 0x3bdbca, + 0x34a149, + 0x2410c9, + 0x2410cb, + 0x343608, + 0x3499c9, + 0x2cdc86, + 0x2801ca, + 0x28c9ca, + 0x24428c, + 0x371c47, + 0x27efca, + 0x20b30b, + 0x20b319, + 0x2dcdc8, + 0x219105, + 0x2e82c6, + 0x2e2f49, + 0x242586, + 0x311cca, + 0x219ec6, + 0x201d04, + 0x2e844d, + 0x201d07, + 0x333549, + 0x259f45, + 0x25aac8, + 0x25b289, + 0x25d444, + 0x25db47, + 0x25db48, + 0x25de87, + 0x27c888, + 0x267987, + 0x21d585, + 0x26f44c, + 0x26f849, + 0x34deca, + 0x270f89, + 0x207c09, + 0x2712cc, + 0x27330b, + 0x274108, + 0x274908, + 0x277cc4, + 0x299708, + 0x29adc9, + 0x2ccb87, + 0x21f0c6, + 0x2b6c07, + 0x2e0209, + 0x24fa8b, + 0x3991c7, + 0x2a8707, + 0x263c47, + 0x3dccc4, + 0x3dccc5, + 0x2f4f05, + 0x35ff0b, + 0x3e23c4, + 0x3db408, + 0x2bdd8a, + 0x362607, + 0x3efec7, + 0x2a3252, + 0x293a86, + 0x23c686, + 0x33610e, + 0x29f746, + 0x2a9408, + 0x2aa48f, + 0x3dd108, + 0x2584c8, + 0x31004a, + 0x310051, + 0x2bb38e, + 0x280cca, + 0x280ccc, + 0x2704c7, + 0x34c050, + 0x3da388, + 0x2bb585, + 0x2c67ca, + 0x3ef24c, + 0x2633cd, + 0x211986, + 0x211987, + 0x21198c, + 0x21348c, + 0x23760c, + 0x2c8d8b, + 0x3ac7c4, + 0x20b3c4, + 0x2ca709, + 0x327c07, + 0x239d89, + 0x28c809, + 0x2cc787, + 0x2cc946, + 0x2cc949, + 0x2ccd43, + 0x2b314a, + 0x33a207, + 0x3ec40b, + 0x253eca, + 0x269804, + 0x3f4106, + 0x296309, + 0x3cc144, + 0x2f0eca, + 0x309345, + 0x2db705, + 0x2db70d, + 0x2dba4e, + 0x368f45, + 0x343a46, + 0x218c87, + 0x2514ca, + 0x224746, + 0x282484, + 0x301007, + 0x2e5f8b, + 0x370c87, + 0x367e04, + 0x31a606, + 0x31a60d, + 0x2f64cc, + 0x214746, + 0x21c88a, + 0x226346, + 0x3d39c8, + 0x27b587, + 0x22be0a, + 0x363cc6, + 0x2044c3, + 0x300346, + 0x254948, + 0x37beca, + 0x2a37c7, + 0x2a37c8, + 0x2a6604, + 0x293c87, + 0x3a8548, + 0x2d0988, + 0x32f7c8, + 0x2d318a, + 0x2fc3c5, + 0x247c47, + 0x280b13, + 0x28b3c6, + 0x255308, + 0x22dac9, + 0x3c4d08, + 0x3181cb, + 0x2d4148, + 0x2e60c4, + 0x3a0146, + 0x32eb86, + 0x3b05c9, + 0x2e5e47, + 0x26f548, + 0x29ac46, + 0x394584, + 0x339b85, + 0x3dc748, + 0x259b0a, + 0x2e80c8, + 0x2ec306, + 0x2b2dca, + 0x2067c8, + 0x2e0508, + 0x2f1148, + 0x2f1946, + 0x2f3706, + 0x3b564c, + 0x2f3c10, + 0x2f4005, + 0x23bc88, + 0x23bc90, + 0x3dcf10, + 0x284d4e, + 0x3b52ce, + 0x3b52d4, + 0x3ba58f, + 0x3ba946, + 0x3f0991, + 0x349bd3, + 0x20c688, + 0x3ea6c5, + 0x28f708, + 0x3263c5, + 0x351c0c, + 0x218949, + 0x224289, + 0x231107, + 0x3bdfc9, + 0x3619c7, + 0x3bfb86, + 0x3674c7, + 0x202a85, + 0x211f43, + 0x21fe83, + 0x284704, + 0x21564d, + 0x39950f, + 0x3945c5, + 0x218846, + 0x236787, + 0x235b87, + 0x2e1686, + 0x2e168b, + 0x2bc245, + 0x215a46, + 0x3baec7, + 0x268649, + 0x22b386, + 0x22e385, + 0x3ecbcb, + 0x3f2686, + 0x21b645, + 0x243cc8, + 0x2a4948, + 0x2b38cc, + 0x2b38d0, + 0x2bc389, + 0x2c12c7, + 0x331a0b, + 0x2dbfc6, + 0x31328a, + 0x3b890b, + 0x35484a, + 0x329f06, + 0x304fc5, + 0x339f46, + 0x29bb08, + 0x2a5aca, + 0x21bd9c, + 0x3b8c0c, + 0x30ae48, + 0x219085, + 0x226987, + 0x2d8486, + 0x2dab05, + 0x223606, + 0x2e1848, + 0x2d9ac7, + 0x2d8748, + 0x28b48a, + 0x2fc9cc, + 0x2544c9, + 0x3c7e07, + 0x232004, + 0x297206, + 0x25804a, + 0x28c905, + 0x22488c, + 0x224f48, + 0x311fc8, + 0x333a8c, + 0x2385cc, + 0x239949, + 0x239b87, + 0x2509cc, + 0x365984, + 0x25e28a, + 0x21dd0c, + 0x288dcb, + 0x3acf0b, + 0x3ae506, + 0x26d587, + 0x26ffc7, + 0x34c28f, + 0x319791, + 0x2fa352, + 0x26ffcd, + 0x26ffce, + 0x27030e, + 0x3ba748, + 0x3ba752, + 0x365e48, + 0x25c007, + 0x265e4a, + 0x260048, + 0x29f705, + 0x3cee4a, + 0x227887, + 0x2dc104, + 0x220203, + 0x397405, + 0x3102c7, + 0x301d07, + 0x2635ce, + 0x3e3b8d, + 0x31a2c9, + 0x289f05, + 0x3291c3, + 0x346086, + 0x272405, + 0x3a2208, + 0x20d949, + 0x2e8305, + 0x38e14f, + 0x2be7c7, + 0x2285c5, + 0x3aa88a, + 0x209ac6, + 0x2ab4c9, + 0x35c24c, + 0x36ed09, + 0x20e786, + 0x2bdb8c, + 0x373686, + 0x3e2a48, + 0x210106, + 0x27fe06, + 0x2d1204, + 0x207e03, + 0x3b188a, + 0x2a3d11, + 0x263f4a, + 0x3a9c45, + 0x26f0c7, + 0x26c847, + 0x2d4b04, + 0x3a864b, + 0x3d0888, + 0x2d7cc6, + 0x38be45, + 0x279f04, + 0x26ec09, + 0x2008c4, + 0x3d2887, + 0x33c805, + 0x33c807, + 0x336345, + 0x25ff03, + 0x25bec8, + 0x26b54a, + 0x234643, + 0x235d8a, + 0x234646, + 0x38decf, + 0x2744c9, + 0x2cbfd0, + 0x229188, + 0x2ecc09, + 0x2b0dc7, + 0x31a58f, + 0x3562c4, + 0x2ef004, + 0x2271c6, + 0x358686, + 0x3ae00a, + 0x26aa06, + 0x2c9407, + 0x31d888, + 0x31da87, + 0x31f147, + 0x32134a, + 0x31fa4b, + 0x325785, + 0x2f9f88, + 0x229783, + 0x3d880c, + 0x20d44f, + 0x32dd8d, + 0x2b7187, + 0x237209, + 0x24e147, + 0x2d4448, + 0x3ee58c, + 0x308548, + 0x256bc8, + 0x33c44e, + 0x34e914, + 0x34ee24, + 0x36c50a, + 0x38aacb, + 0x361a84, + 0x361a89, + 0x2d2708, + 0x255545, + 0x203bca, + 0x29cb07, + 0x220c04, + 0x20bec3, + 0x21a043, + 0x243544, + 0x226783, + 0x20f583, + 0x25c204, + 0x20bc83, + 0x214e43, + 0x2f3c06, + 0x225a04, + 0x214883, + 0x24acc3, + 0x205443, + 0x2000c2, + 0x20bec3, + 0x20b642, + 0x21a043, + 0x243544, + 0x226783, + 0x20f583, + 0x20bc83, + 0x2f3c06, + 0x214883, + 0x24acc3, + 0x1c3448, + 0x21a043, + 0x226783, + 0x204703, + 0x214883, + 0x24acc3, + 0x20bec3, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x225a04, + 0x214883, + 0x24acc3, + 0x2000c2, + 0x2332c3, + 0x20b642, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x203d82, + 0x206282, + 0x20b642, + 0x21a043, + 0x20c942, + 0x2005c2, + 0x25c204, + 0x230944, + 0x2225c2, + 0x225a04, + 0x2003c2, + 0x24acc3, + 0x205443, + 0x3ae506, + 0x22ccc2, + 0x203342, + 0x22dec2, + 0x62e2acc3, + 0x632584c3, + 0x6d386, + 0x6d386, + 0x265a04, + 0x208c43, + 0x578d, + 0x1d61ca, + 0x1a5486, + 0x1d784c, + 0x63eae24d, + 0x9694c, + 0x64489b8f, + 0x1e8b4d, + 0x177e04, + 0x7e204, + 0xee044, + 0x14f985, + 0x9e849, + 0x6268c, + 0x133907, + 0x18b86, + 0x210c8, + 0x26647, + 0x2cb08, + 0x1c588a, + 0x11c647, + 0x628c9, + 0x64adb105, + 0xf9209, + 0x64c428cb, + 0x133248, + 0x154e0b, + 0x610b, + 0xa7788, + 0x44a0a, + 0x1830ce, + 0x650becca, + 0xe6dcd, + 0x38d4d, + 0x15c4b0b, + 0xf638a, + 0x2d784, + 0x91cc6, + 0x1a0e88, + 0xd5448, + 0x42b87, + 0x2f385, + 0x1e1307, + 0xa9cc9, + 0x1e9987, + 0xa3c8, + 0xef589, + 0x5fe44, + 0x66605, + 0x85a4e, + 0x147947, + 0x6562eac6, + 0xc398d, + 0x1e9808, + 0xf9b88, + 0x65a64f46, + 0x664a7448, + 0x18860a, + 0xb3708, + 0x144f90, + 0x6a30c, + 0x78f47, + 0x7a307, + 0x7ebc7, + 0x845c7, + 0xef42, + 0x12c307, + 0x12b8c, + 0x150105, + 0x19fb07, + 0xbe1c6, + 0xbf0c9, + 0xc1bc8, + 0x7142, + 0x5c2, + 0x119186, + 0x19b44b, + 0x9dc6, + 0x1786c4, + 0x1a4107, + 0x64d49, + 0x191549, + 0x1c4448, + 0x5cf02, + 0x138fc9, + 0x18108, + 0xf280a, + 0xd5dc8, + 0x66ae5b8b, + 0x1bbf09, + 0x5ff86, + 0xea449, + 0xf6307, + 0xf6bc9, + 0xf9508, + 0xfad47, + 0xfc349, + 0x1011c5, + 0x101590, + 0x10210c, + 0x1c88c6, + 0x1a4045, + 0x1d95c7, + 0x4880d, + 0x36a89, + 0x672cebc3, + 0x4f585, + 0x140806, + 0x106587, + 0x10b858, + 0x1e9d08, + 0x8b1ca, + 0x23f8e, + 0x3b02, + 0x6766020b, + 0x67aea54a, + 0x1accca, + 0x72c0d, + 0x1042, + 0xe39c6, + 0x1b506, + 0xc32c8, + 0xc0e0a, + 0x5e0c8, + 0x1c3309, + 0x11e848, + 0x7ca4e, + 0x19d08, + 0x146087, + 0x67ea7384, + 0xd708d, + 0xd2a48, + 0x115785, + 0x14c8, + 0x42248, + 0x680268ca, + 0x686bad88, + 0x11b446, + 0xba42, + 0xd77c4, + 0x7ad46, + 0x68923d88, + 0x5f986, + 0x690c6b0b, + 0x79c2, + 0x64244e04, + 0x27e83, + 0x1b9789, + 0x1f88, + 0x14a587, + 0x359ca, + 0xc0b47, 0x401, 0x81, - 0x18e907, - 0x1c8388, - 0xc7e88, - 0xc8088, - 0xc8288, - 0x6fcc7, - 0xb1fc3, - 0x64644084, - 0x64aa6b83, + 0x18f607, + 0x11a408, + 0xcd208, + 0xcd408, + 0xcd608, + 0x73d47, + 0xb98c3, + 0x65e44e04, + 0x662aba43, 0xc1, - 0x39d46, + 0xfeb46, 0xc1, 0x201, - 0x39d46, - 0xb1fc3, - 0x656212c4, - 0x196f84, - 0x1fe85, - 0x2c945, - 0xcad04, - 0x2a084, - 0x59244, - 0x1434307, - 0x1421207, - 0x1c8bc8, - 0x148e4c, - 0xc41, - 0x8d43, - 0x2c684, - 0xef885, - 0x1c8bc8, - 0x677c8bc8, - 0x54e83, - 0x80383, - 0x16c43, - 0x22207, - 0x5ec7, - 0x145e305, - 0x5d8c4, - 0x76ac7, - 0x5842, - 0x2c904, - 0x1b01ca, - 0x259b44, - 0x229f43, - 0x25b9c4, - 0x258104, - 0x2127c3, - 0x22a205, - 0x21fc83, - 0x23ffc3, - 0x32e885, - 0x205ec3, - 0x15d43, - 0x68e29f43, - 0x224d03, - 0x5b9c4, - 0x4b03, - 0x2e9c43, + 0xfeb46, + 0xb98c3, + 0x66e642c4, + 0x197b44, + 0x20f85, + 0x166d85, + 0x1a4244, + 0x1a184, + 0x5d344, + 0x1416c47, + 0x1464207, + 0x1cd6c8, + 0x161e4c, + 0xc01, + 0x12f03, + 0x2af84, + 0x30705, + 0x1cd6c8, + 0x68fcd6c8, + 0x71783, + 0x83343, + 0x18ec3, + 0x1d3b47, + 0x80c7, + 0x15e2945, + 0x64744, + 0x79087, + 0xb642, + 0x166d44, + 0xc2bca, + 0x2346c4, + 0x21a043, + 0x2607c4, + 0x25c204, + 0x214883, + 0x22d985, + 0x221c03, + 0x2423c3, + 0x33a505, + 0x200f83, + 0x29f83, + 0x6a61a043, + 0x226783, + 0x607c4, + 0x7783, + 0x20f583, 0x200181, - 0x280c3, - 0x219c03, - 0x292e44, - 0x222d84, - 0x2127c3, - 0x5c743, - 0x21f483, - 0x217083, - 0x7ffc8, + 0x22043, + 0x214e43, + 0x230944, + 0x225a04, + 0x214883, + 0x62243, + 0x24acc3, + 0x219303, + 0x1c3448, 0x2000c2, - 0x258843, - 0x205842, - 0x229f43, - 0x224d03, - 0x28c6c3, + 0x20bec3, + 0x20b642, + 0x21a043, + 0x226783, + 0x204703, 0x2005c2, - 0x258104, - 0x25e043, - 0x219c03, - 0x2127c3, - 0x20bc03, - 0x21f483, - 0x205ec3, - 0x186a44, - 0x7ffc8, - 0xfd147, - 0x5842, - 0x12de85, - 0x639cf, - 0x1e50c6, - 0x1475dc8, - 0x116ace, - 0x69e087c2, - 0x2373c8, - 0x3d1086, - 0x25da46, - 0x3a33c7, - 0x6a204cc2, - 0x6a6c66c8, - 0x22ad4a, - 0x276408, - 0x200ac2, - 0x32e3c9, - 0x23ab47, - 0x21c106, - 0x257b09, - 0x2bc004, - 0x3e2886, - 0x2deb04, - 0x20de84, - 0x267f09, - 0x314a86, - 0x2bb4c5, - 0x27a245, - 0x235987, - 0x2d2187, - 0x305344, - 0x35eb06, - 0x2e88c5, - 0x3d7605, - 0x236245, - 0x24f647, - 0x359385, - 0x257609, - 0x372385, - 0x32ee04, - 0x22f787, - 0x3ce14e, - 0x209a09, - 0x335509, - 0x3681c6, - 0x24b088, - 0x3793cb, - 0x3bd38c, - 0x323ac6, - 0x2c5387, - 0x2f9185, - 0x30e20a, - 0x3d0cc9, - 0x20aa89, - 0x208186, - 0x3a6ec5, - 0x251b85, - 0x371809, - 0x2363cb, - 0x239186, - 0x353486, - 0x20d904, - 0x241f86, - 0x3086c8, - 0x3d38c6, - 0x242d46, - 0x204788, - 0x206f07, - 0x207f49, - 0x20cc05, - 0x7ffc8, - 0x3e0484, - 0x317644, - 0x212a45, - 0x343a49, - 0x2292c7, - 0x2292cb, - 0x22c3ca, - 0x22f2c5, - 0x6aa0a582, - 0x3d79c7, - 0x6ae2fbc8, - 0x2083c7, - 0x223a85, - 0x2449ca, - 0x5842, - 0x28f84b, - 0x29090a, - 0x279746, - 0x2114c3, - 0x21438d, - 0x3d250c, - 0x3d628d, - 0x245b45, - 0x36cdc5, - 0x2642c7, - 0x3db089, - 0x22ac46, - 0x256005, - 0x30d0c8, - 0x241e83, - 0x350088, - 0x241e88, - 0x3c6b07, - 0x2f0308, - 0x310589, - 0x33edc7, - 0x2368c7, - 0x209348, - 0x25e1c4, - 0x25e1c7, - 0x282b08, - 0x365746, - 0x20668f, - 0x35bcc7, - 0x35e606, - 0x3eacc5, - 0x22a8c3, - 0x253847, - 0x395c03, - 0x25a2c6, - 0x25d7c6, - 0x25eac6, - 0x2a3e05, - 0x279c43, - 0x32cfc8, - 0x3aa189, - 0x25ec4b, - 0x25ef08, - 0x260445, - 0x2629c5, - 0x6b262642, - 0x269049, - 0x3d1bc7, - 0x213805, - 0x267e07, - 0x269c46, - 0x26ae05, - 0x26c74b, - 0x270f44, - 0x275fc5, - 0x276107, - 0x289746, - 0x28a185, - 0x296347, - 0x296f87, - 0x2cc984, - 0x2b758a, - 0x2fabc8, - 0x379689, - 0x2f9505, - 0x2464c6, - 0x30888a, - 0x27a146, - 0x396907, - 0x27c50d, - 0x2b4fc9, - 0x389205, - 0x3b7007, - 0x3cdc48, - 0x385b88, - 0x32b107, - 0x367e86, - 0x21c507, - 0x267883, - 0x314a04, - 0x38abc5, - 0x3b76c7, - 0x3bffc9, - 0x234488, - 0x396805, - 0x2421c4, - 0x2544c5, - 0x25f0cd, - 0x2086c2, - 0x228346, - 0x2c9706, - 0x3097ca, - 0x3a8b86, - 0x3b40c5, - 0x2defc5, - 0x2defc7, - 0x3b968c, - 0x2b278a, - 0x29da06, - 0x2ed645, - 0x241dc6, - 0x29fac7, - 0x2a1f06, - 0x2a3d0c, - 0x257c49, - 0x6b61c907, - 0x2a5e85, - 0x2a5e86, - 0x2a6248, - 0x256505, - 0x2b5705, - 0x2b5bc8, - 0x2b5dca, - 0x6ba27e02, - 0x6be10802, - 0x21b485, - 0x30bac3, - 0x336a48, - 0x24bc83, - 0x2b6044, - 0x39190b, - 0x3c5c88, - 0x2bda08, - 0x6c340949, - 0x2bd309, - 0x2be006, - 0x2bf788, - 0x2bf989, - 0x2c1046, + 0x25c204, + 0x20bc83, + 0x214e43, + 0x214883, + 0x208c43, + 0x24acc3, + 0x200f83, + 0xd384, + 0x1c3448, + 0x110cc7, + 0xb642, + 0x139b05, + 0x6a44f, + 0xe6a46, + 0x10210c, + 0x1470708, + 0x11eb4e, + 0x6b602242, + 0x23b308, + 0x3d6906, + 0x2e20c6, + 0x3a4c07, + 0x6ba09582, + 0x6becbe48, + 0x232a8a, + 0x2789c8, + 0x200b02, + 0x33a049, + 0x3257c7, + 0x21f046, + 0x25bc09, + 0x247d84, + 0x392ec6, + 0x2e24c4, + 0x201904, + 0x26e989, + 0x31cb06, + 0x312885, + 0x27d445, + 0x239547, + 0x2cc4c7, + 0x381d44, + 0x364606, + 0x3cdf45, + 0x2201c5, + 0x23a185, + 0x251e47, + 0x3a9d05, + 0x25b709, + 0x348a05, + 0x36f184, + 0x224687, + 0x3d490e, + 0x3eb909, + 0x335fc9, + 0x3cbb86, + 0x24d7c8, + 0x37f6cb, + 0x3716cc, + 0x32e686, + 0x2cad07, + 0x2fdfc5, + 0x315a0a, + 0x3d6549, + 0x200ac9, + 0x20b046, + 0x3bac85, + 0x255205, + 0x37afc9, + 0x23a30b, + 0x23ce46, + 0x35ba46, + 0x20cc44, + 0x25a746, + 0x30e588, + 0x3d7746, + 0x363b86, + 0x207408, + 0x20aa87, + 0x20ae09, + 0x20df45, + 0x1c3448, + 0x3e1284, + 0x31f6c4, + 0x2139c5, + 0x34d509, + 0x22d407, + 0x22d40b, + 0x22e5ca, + 0x231045, + 0x6c208982, + 0x220587, + 0x6c6327c8, + 0x3791c7, + 0x3b1405, + 0x2457ca, + 0xb642, + 0x29258b, + 0x29410a, + 0x27c446, + 0x211343, + 0x21784d, + 0x2090cc, + 0x21ce8d, + 0x246405, + 0x3ab085, + 0x26b387, + 0x22c209, + 0x232986, + 0x26a885, + 0x315448, + 0x25a643, + 0x2ef3c8, + 0x25a648, + 0x3cb287, + 0x3f39c8, + 0x362349, + 0x2e0d87, + 0x23a807, + 0x3e27c8, + 0x380384, + 0x380387, + 0x2873c8, + 0x36d0c6, + 0x3d144f, + 0x238107, + 0x364106, + 0x239cc5, + 0x22e043, + 0x257347, + 0x396b43, + 0x25e506, + 0x264646, + 0x266206, + 0x2a7c85, + 0x27c883, + 0x338c48, + 0x3ab5c9, + 0x26638b, + 0x266748, + 0x267645, + 0x269105, + 0x6ca698c2, + 0x367589, + 0x3d9307, + 0x215ac5, + 0x26e887, + 0x26fe86, + 0x270ac5, + 0x27224b, + 0x274104, + 0x278585, + 0x2786c7, + 0x28d046, + 0x28d405, + 0x299b47, + 0x29a787, + 0x383744, + 0x26248a, + 0x2beec8, + 0x37f989, + 0x349405, + 0x27c006, + 0x30e74a, + 0x27d346, + 0x320dc7, + 0x27f34d, + 0x2bbd89, + 0x38ae05, + 0x3d4e47, + 0x20c848, + 0x20cd08, + 0x3485c7, + 0x335c86, + 0x215f87, + 0x26e303, + 0x31ca84, + 0x38c645, + 0x3b9c87, + 0x3c4049, + 0x22c048, + 0x320cc5, + 0x240244, + 0x25a985, + 0x39080d, + 0x20ad02, + 0x2264c6, + 0x2cdb86, + 0x31050a, + 0x3a8b46, + 0x3b6905, + 0x3938c5, + 0x3938c7, + 0x3bda0c, + 0x2b358a, + 0x2a22c6, + 0x20d2c5, + 0x25a586, + 0x2a3087, + 0x2a57c6, + 0x2a7b8c, + 0x25bd49, + 0x6ce4dcc7, + 0x2aa845, + 0x2aa846, + 0x2aac08, + 0x25a205, + 0x2bc5c5, + 0x2bca88, + 0x2bcc8a, + 0x6d21dd82, + 0x6d610682, + 0x21e645, + 0x244583, + 0x33ef48, + 0x21ffc3, + 0x2bcf04, + 0x2ab60b, + 0x371ac8, + 0x39fcc8, + 0x6db5cb49, + 0x2c2fc9, + 0x2c3886, + 0x2c5008, + 0x2c5209, + 0x2c6dc6, + 0x2c6f45, + 0x259106, + 0x2c7409, + 0x2da7c7, + 0x253286, + 0x359787, + 0x3a9987, + 0x3a8104, + 0x6dfe2609, + 0x2dad48, + 0x2cbd48, + 0x3947c7, + 0x2e7d46, + 0x208ec9, + 0x2e2787, + 0x347c4a, + 0x3c8188, + 0x27c147, + 0x2efac6, + 0x2a174a, + 0x3db8c8, + 0x2ed305, 0x2c11c5, - 0x254646, - 0x2c1789, - 0x2d6487, - 0x24c5c6, - 0x2bc547, - 0x34a147, - 0x3a6c84, - 0x6c609189, - 0x38c208, - 0x2c65c8, - 0x393887, - 0x2e2746, - 0x3dae89, - 0x25da07, - 0x3cc38a, - 0x3d2c88, - 0x224a07, - 0x231546, - 0x3affca, - 0x3ac908, - 0x31f445, - 0x22e5c5, - 0x319f87, - 0x324689, - 0x326a8b, - 0x3c0588, - 0x372409, - 0x25f847, - 0x2d2acc, - 0x2d350c, - 0x2d380a, - 0x2d3a8c, - 0x2de688, - 0x2de888, - 0x2dea84, - 0x2df209, - 0x2df449, - 0x2df68a, - 0x2df909, - 0x2dfc87, - 0x20878c, - 0x3cefc6, - 0x27bec8, - 0x27a206, - 0x2f5c06, - 0x389107, - 0x39c208, - 0x3e2e4b, - 0x208287, - 0x26fa89, - 0x292f49, - 0x38d487, - 0x207484, - 0x269247, - 0x31fe46, - 0x217246, - 0x21a4c5, - 0x3b03c8, - 0x3494c4, - 0x3494c6, - 0x2b264b, - 0x269889, - 0x24f546, - 0x242f49, - 0x212b06, - 0x39a308, - 0x20d003, - 0x3a7045, - 0x21e3c9, - 0x3a98c5, - 0x3619c4, - 0x383706, - 0x3250c5, - 0x263c06, - 0x31ac07, - 0x210286, - 0x2707cb, - 0x26c3c7, - 0x27d286, - 0x28f486, - 0x235a46, - 0x305309, - 0x200b4a, - 0x2d59c5, - 0x2ccc0d, - 0x2b5ec6, - 0x25d646, - 0x2d5546, - 0x222005, - 0x2fa3c7, - 0x3d6847, - 0x314e0e, - 0x219c03, - 0x2e2709, - 0x286809, - 0x2356c7, - 0x27e5c7, - 0x3317c5, - 0x2dbc85, - 0x6cb8724f, - 0x2e7947, - 0x2e7b08, - 0x2e7fc4, - 0x2e8306, - 0x6ce51882, - 0x2ec3c6, - 0x2edcc6, - 0x374a0e, - 0x34feca, - 0x214806, - 0x2cdd4a, - 0x3d6089, - 0x3023c5, - 0x2d8548, - 0x301186, - 0x2c4f88, - 0x385348, - 0x32234b, - 0x3a34c5, - 0x359408, - 0x2048cc, - 0x223947, - 0x25e646, - 0x3b2d88, - 0x3e2b08, - 0x6d216602, - 0x201ccb, - 0x392889, - 0x20ce09, - 0x3d1707, - 0x35e048, - 0x6d615f88, - 0x38480b, - 0x26e189, - 0x262f4d, - 0x385188, - 0x2d4e48, - 0x6da00f82, - 0x3ef104, - 0x6de47f42, - 0x365c06, - 0x6e201a42, - 0x3021ca, - 0x2b5586, - 0x230388, - 0x2583c8, - 0x264bc6, - 0x330846, - 0x309186, - 0x250005, - 0x245704, - 0x6e655cc4, - 0x358806, - 0x251647, - 0x6ea8d407, - 0x39e54b, - 0x2085c9, - 0x36ce0a, - 0x2df104, - 0x25dcc8, - 0x24c38d, - 0x302949, - 0x302b88, - 0x302e09, - 0x305744, - 0x230d44, - 0x291dc5, - 0x204c8b, - 0x3c5c06, - 0x358645, - 0x241949, - 0x35ebc8, - 0x26ae44, - 0x30e389, - 0x270705, - 0x2d21c8, - 0x236f87, - 0x335908, - 0x292886, - 0x3d5707, - 0x2f3589, - 0x381ec9, - 0x218c05, - 0x245a05, - 0x6ee09702, - 0x32ebc4, - 0x38a845, - 0x3a32c6, - 0x33ea05, - 0x262a87, - 0x303a05, - 0x287004, - 0x368286, - 0x256087, - 0x220bc6, - 0x330b45, - 0x21ae08, - 0x3d1285, - 0x228047, - 0x22f989, - 0x2699ca, - 0x2baac7, - 0x2baacc, - 0x2bb486, - 0x24d809, - 0x254345, - 0x256448, - 0x218a43, - 0x2c97c5, - 0x2ef5c5, - 0x24dc07, - 0x6f200bc2, - 0x2fef07, - 0x2e38c6, - 0x387e86, - 0x2ebd46, - 0x3e2a46, - 0x253548, - 0x3cc045, - 0x35e6c7, - 0x35e6cd, - 0x254a43, - 0x3cf485, - 0x359cc7, - 0x2ff248, - 0x359885, - 0x21f1c8, - 0x38a2c6, - 0x2a6bc7, - 0x2f5b45, - 0x3a3546, - 0x32d545, - 0x20c58a, - 0x2f9946, - 0x243cc7, - 0x2c6cc5, - 0x2fa847, - 0x2fb0c4, - 0x361946, - 0x3010c5, - 0x232f4b, - 0x31fcc9, - 0x289f0a, - 0x218c88, - 0x308388, - 0x30c28c, - 0x30dc87, - 0x30f408, - 0x388cc8, - 0x32f245, - 0x31a4ca, - 0x31e6c9, - 0x6f601402, - 0x20fec6, - 0x224804, - 0x2276c9, - 0x350bc9, - 0x312fc7, - 0x281687, - 0x288389, - 0x35a8c8, - 0x35a8cf, - 0x234046, - 0x2f160b, - 0x266b05, - 0x266b07, - 0x337789, - 0x30e306, - 0x30e307, - 0x2f4b45, - 0x23bb04, - 0x2a8746, - 0x215784, - 0x2cee87, - 0x2db048, - 0x6fba6dc8, - 0x3b8845, - 0x3bc687, - 0x2d9589, - 0x21a004, - 0x24cf48, - 0x6ff04708, - 0x2d54c4, - 0x30b548, - 0x3862c4, - 0x215649, - 0x221f45, - 0x70208ec2, - 0x234085, - 0x3aba85, - 0x3b6d08, - 0x23f7c7, - 0x706008c2, - 0x371bc5, - 0x2ea7c6, - 0x25e946, - 0x32eb88, - 0x366e48, - 0x33e9c6, - 0x31d946, - 0x2fd209, - 0x387dc6, - 0x3e068b, - 0x3e27c5, - 0x25d086, - 0x266548, - 0x366b06, - 0x2a5346, - 0x21f8ca, - 0x2eb7ca, - 0x264485, - 0x286a87, - 0x2852c6, - 0x70a04c02, - 0x359e07, - 0x3e1285, - 0x308804, - 0x308805, - 0x25dbc6, - 0x2686c7, - 0x20b785, - 0x2eb944, - 0x2e85c8, - 0x2a5405, - 0x2f6ac7, - 0x32a285, - 0x20c4c5, - 0x229604, - 0x229609, - 0x2e8708, - 0x20b0c6, - 0x217e86, - 0x3ce5c6, - 0x70ec3648, - 0x306247, - 0x33e5cd, - 0x3dcb8c, - 0x3e79c9, - 0x313549, - 0x7137e082, - 0x3e6403, - 0x246583, - 0x31ff05, - 0x3b77ca, - 0x33e406, - 0x241145, - 0x31b544, - 0x31b54b, - 0x333e8c, - 0x33474c, - 0x334a55, - 0x33660d, - 0x3384cf, - 0x338892, - 0x338d0f, - 0x3390d2, - 0x339553, - 0x339a0d, - 0x339fcd, - 0x33a34e, - 0x33ac4e, - 0x33b24c, - 0x33b60c, - 0x33ba4b, - 0x33ca0e, - 0x33d312, - 0x33e1cc, - 0x33f4d0, - 0x34ca92, - 0x34db0c, - 0x34e1cd, - 0x34e50c, - 0x351fd1, - 0x35360d, - 0x3556cd, - 0x355cca, - 0x355f4c, - 0x357b8c, - 0x35834c, - 0x35ac8c, - 0x360213, - 0x360c10, - 0x361010, - 0x361dcd, - 0x3623cc, - 0x3648c9, - 0x36704d, - 0x367393, - 0x368f11, - 0x369713, - 0x36a78f, - 0x36ab4c, - 0x36ae4f, - 0x36b20d, - 0x36b80f, - 0x36bbd0, - 0x36c64e, - 0x37554e, - 0x375e90, - 0x376a8d, - 0x37740e, - 0x37778c, - 0x378e53, - 0x37b50e, - 0x37c250, - 0x37c651, - 0x37ca8f, - 0x37ce53, - 0x37dc0d, - 0x37df4f, - 0x37e30e, - 0x37e890, - 0x37ec89, - 0x37fdd0, - 0x3802cf, - 0x38094f, - 0x380d12, - 0x38210e, - 0x387a4d, - 0x38800d, - 0x38834d, - 0x38934d, - 0x38968d, - 0x3899d0, - 0x389dcb, - 0x38a98c, - 0x38ad0c, - 0x38b30c, - 0x38b60e, - 0x39a510, - 0x39bb52, - 0x39bfcb, - 0x39c40e, - 0x39c78e, - 0x39d00e, - 0x39d58b, - 0x7179d916, - 0x39edcd, - 0x39fa14, - 0x3a0a4d, - 0x3a2b15, - 0x3a514d, - 0x3a5acf, - 0x3a628f, - 0x3aa3cf, - 0x3aa78e, - 0x3aab0d, - 0x3ac291, - 0x3af1cc, - 0x3af4cc, - 0x3af7cb, - 0x3afa8c, - 0x3b05cf, - 0x3b0992, - 0x3b0f8d, - 0x3b21cc, - 0x3b310c, - 0x3b340d, - 0x3b374f, - 0x3b3b0e, - 0x3b748c, - 0x3b7a4d, - 0x3b7d8b, - 0x3b834c, - 0x3b8d0d, - 0x3b904e, - 0x3b93c9, - 0x3ba753, - 0x3baf0d, - 0x3bb60d, - 0x3bbc0c, - 0x3bc28e, - 0x3bdecf, - 0x3be28c, - 0x3be58d, - 0x3be8cf, - 0x3bec8c, - 0x3bf50c, - 0x3bfa8c, - 0x3bfd8c, - 0x3c0c4d, - 0x3c0f92, - 0x3c1a0c, - 0x3c1d0c, - 0x3c2011, - 0x3c244f, - 0x3c280f, - 0x3c2bd3, - 0x3c3ece, - 0x3c424f, - 0x3c460c, - 0x71bc4cce, - 0x3c504f, - 0x3c5416, - 0x3c6652, - 0x3c920c, - 0x3ca10f, - 0x3ca78d, - 0x3dbc0f, - 0x3dbfcc, - 0x3dc2cd, - 0x3dc60d, - 0x3de74e, - 0x3df30c, - 0x3e32cc, - 0x3e35d0, - 0x3e5791, - 0x3e5bcb, - 0x3e600c, - 0x3e630e, - 0x3e7f11, - 0x3e834e, - 0x3e86cd, - 0x3ed6cb, - 0x3ee20f, - 0x3eebd4, - 0x21e682, - 0x21e682, - 0x2048c3, - 0x21e682, - 0x2048c3, - 0x21e682, - 0x204fc2, - 0x254685, - 0x3e7c0c, - 0x21e682, - 0x21e682, - 0x204fc2, - 0x21e682, - 0x2a7045, - 0x2699c5, - 0x21e682, - 0x21e682, - 0x202a02, - 0x2a7045, - 0x336c49, - 0x368c0c, - 0x21e682, - 0x21e682, - 0x21e682, - 0x21e682, - 0x254685, - 0x21e682, - 0x21e682, - 0x21e682, - 0x21e682, - 0x202a02, - 0x336c49, - 0x21e682, - 0x21e682, - 0x21e682, - 0x2699c5, - 0x21e682, - 0x2699c5, - 0x368c0c, - 0x3e7c0c, - 0x258843, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x2127c3, - 0x21f483, - 0x31cf, - 0xa788, - 0x75bc4, - 0xbc03, - 0xe44c8, - 0x1df183, - 0x2000c2, - 0x72a05842, - 0x24c883, - 0x23bf84, - 0x204b03, - 0x2e9c44, - 0x2389c6, - 0x20f503, - 0x3835c4, - 0x2aaf45, - 0x219c03, - 0x2127c3, - 0x81983, - 0x21f483, - 0x22600a, - 0x25ce86, - 0x39cb0c, - 0x7ffc8, - 0x205842, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2335c3, - 0x2edcc6, - 0x2127c3, - 0x21f483, - 0x202783, - 0x13803, - 0xb7048, - 0x735eb785, - 0x80407, - 0x57dc5, - 0x1c387, - 0x145d45, - 0x3589, - 0x2c02, - 0x1cb20a, - 0x74332b45, - 0x145d45, - 0x110947, - 0x29b08, - 0x1060e, - 0x9a352, - 0x12dc8b, - 0x1146c6, - 0x746f8c05, - 0x74b8c5cc, - 0x8e07, - 0xf1a47, - 0x1b654a, - 0x47cd0, - 0xc7c5, - 0xb2e8b, - 0xd1e88, - 0x40787, - 0x3bc0b, - 0xa54c9, - 0x54847, - 0x1cd787, - 0x393c7, - 0x406c6, - 0x1db408, - 0x750332c6, - 0x56607, - 0xef6c6, - 0xbe10d, - 0x5de50, - 0x75406cc2, - 0x1cd608, - 0x199810, - 0x199f4c, - 0x75b9fecd, - 0x6d988, - 0x6de0b, - 0x7d747, - 0x9e6c9, - 0x66806, - 0xa6448, - 0x4d02, - 0x6b04a, - 0x150407, - 0xbd847, - 0xb92c9, - 0xbb988, - 0x146bc5, - 0x19ab46, - 0x1d71c6, - 0x103e4e, - 0x3c4ce, - 0x4b6cf, - 0x56a09, - 0x90249, - 0x1dda0b, - 0xc1b4f, - 0x17d90c, - 0xd71cb, - 0x11b208, - 0x19e447, - 0x1abd88, - 0xc2e8b, - 0xc384c, - 0xc3c4c, - 0xc404c, - 0xc434d, - 0x1c03c8, - 0x803c2, - 0x12d349, - 0x191648, - 0xe068b, - 0xe2946, - 0xea14b, - 0x13ce4b, - 0xf428a, - 0xf58c5, - 0xfa0d0, - 0xfd8c6, - 0x1683c6, - 0xcab05, - 0xd5247, - 0xec648, - 0xff7c7, - 0xffa87, - 0x121587, - 0xd7606, - 0x165a4a, - 0xa1b8a, - 0x18a46, - 0xbd60d, - 0x566c8, - 0x1167c8, - 0x1a5e89, - 0x4be49, - 0xd1445, - 0x15804c, - 0xc454b, - 0x184109, - 0x18de04, - 0x113189, - 0x1133c6, - 0x15fa86, - 0x1b02, - 0x5b646, - 0x4bfcb, - 0x11d147, - 0x11d307, - 0x4182, - 0xe3f05, - 0x29c84, - 0x101, - 0x5fdc3, - 0x74f4c586, - 0xa6b83, - 0x382, - 0xae04, - 0xac2, - 0x9f804, - 0x882, - 0x1e02, - 0x2b82, - 0x127082, - 0x3702, - 0xb79c2, - 0x2102, - 0xb90c2, - 0x38fc2, - 0x1bc2, - 0xd02, - 0x5d9c2, - 0x24d03, - 0x942, - 0x3642, - 0x18b02, - 0x2e42, - 0x642, - 0x3cac2, - 0x1d7c2, - 0x75c2, - 0x9c42, - 0x5c2, - 0x5e043, - 0x3382, - 0x5fc2, - 0x58e02, - 0x8042, - 0xb982, - 0xfd02, - 0x2d442, - 0x2c82, - 0x26c2, - 0xbdc2, - 0x7eec2, - 0x5582, - 0x127c3, - 0x602, - 0x16602, - 0x1242, - 0x1c682, - 0x18b85, - 0x6582, - 0x85042, - 0x172303, - 0x682, - 0x9942, - 0x33c2, - 0x5f82, - 0x12882, - 0x8c2, - 0x9e42, - 0x1b02, - 0x2cc5, - 0x75e04fc2, - 0x762f3143, - 0x2043, - 0x76604fc2, - 0x2043, - 0xe2207, - 0x2029c3, - 0x2000c2, - 0x229f43, - 0x224d03, - 0x28c6c3, - 0x2005c3, - 0x2335c3, - 0x2127c3, - 0x20bc03, - 0x21f483, - 0x39ac43, - 0x16fe06, - 0xd1484, - 0x17585, - 0x108585, - 0xb8c3, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x28c6c3, - 0x219c03, - 0x2127c3, - 0x20bc03, - 0x81983, - 0x21f483, - 0x229f43, - 0x224d03, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x200181, - 0x219c03, - 0x2127c3, - 0x25c743, - 0x21f483, - 0x2ec4, - 0x258843, - 0x229f43, - 0x224d03, - 0x229dc3, - 0x28c6c3, - 0x25c783, - 0x244d83, - 0x2b5543, - 0x204f83, - 0x2e9c43, - 0x258104, - 0x2127c3, - 0x21f483, - 0x205ec3, - 0x209f84, - 0x239343, - 0x30c3, - 0x220cc3, - 0x32bd48, - 0x349f84, - 0x20020a, - 0x264086, - 0xd9384, - 0x3babc7, - 0x22688a, - 0x233f09, - 0x3cb087, - 0x3d018a, - 0x258843, - 0x21b50b, - 0x237ac9, - 0x36a2c5, - 0x2384c7, - 0x5842, - 0x229f43, - 0x246747, - 0x347a05, - 0x2dec09, - 0x224d03, - 0x22cb86, - 0x2dd343, - 0xe3943, - 0x119e46, - 0x173bc6, - 0xf487, - 0x213cc6, - 0x22dc45, - 0x20ccc7, - 0x316f07, - 0x792e9c43, - 0x34dd47, - 0x24be03, - 0x23aa45, - 0x258104, - 0x2c8888, - 0x3e664c, - 0x2c7c85, - 0x2b5146, - 0x246607, - 0x384407, - 0x27d3c7, - 0x290448, - 0x3190cf, - 0x372ac5, - 0x24c987, - 0x29cc87, - 0x249c4a, - 0x30cf09, - 0x32c545, - 0x34d4ca, - 0x1080c6, - 0xd1747, - 0x2dd3c5, - 0x397644, - 0x340386, - 0x14f0c6, - 0x25bb47, - 0x2e1687, - 0x209748, - 0x20d005, - 0x347906, - 0x43288, - 0x242cc5, - 0x42e86, - 0x318985, - 0x29bcc4, - 0x247907, - 0x25338a, - 0x2afe88, - 0x3d6cc6, - 0x335c3, - 0x2f7305, - 0x220346, - 0x2089c6, - 0x374cc6, - 0x219c03, - 0x3b1207, - 0x29cc05, - 0x2127c3, - 0x2f454d, - 0x20bc03, - 0x209848, - 0x23d404, - 0x220645, - 0x2b6086, - 0x201a46, - 0x25cf87, - 0x26e047, - 0x280745, - 0x21f483, - 0x3326c7, - 0x207349, - 0x246049, - 0x38cf8a, - 0x2020c2, - 0x23aa04, - 0x32c1c4, - 0x2fec07, - 0x2fedc8, - 0x300949, - 0x3cf349, - 0x3014c7, - 0x10c5c9, - 0x2b81c6, - 0x103bc6, - 0x305744, - 0x2353ca, - 0x307d48, - 0x309049, - 0x309306, - 0x2cd685, - 0x2afd48, - 0x2e2bca, - 0x21cb03, - 0x20a106, - 0x3015c7, - 0x35c0c5, - 0x84408, - 0x3c3345, - 0x216f03, - 0x24a3c4, - 0x4a3c9, - 0x22e585, - 0x297087, - 0x2e8845, + 0x30b487, + 0x38ed49, + 0x32258b, + 0x338108, + 0x348a89, + 0x266a47, + 0x2d5fcc, + 0x2d668c, + 0x2d698a, + 0x2d6c0c, + 0x2e2048, + 0x2e2248, + 0x2e2444, + 0x2e3189, + 0x2e33c9, + 0x2e360a, + 0x2e3889, + 0x2e3c07, + 0x34c88c, + 0x379586, + 0x27ed08, + 0x27d406, + 0x2f5fc6, + 0x38ad07, + 0x39d088, + 0x39348b, + 0x20b147, + 0x26f209, + 0x296bc9, + 0x24e507, + 0x2e2704, + 0x367787, + 0x2cf0c6, + 0x2194c6, + 0x21ca45, + 0x2c2dc8, + 0x3618c4, + 0x3618c6, + 0x2b344b, + 0x28dd09, + 0x251d46, + 0x22c4c9, + 0x213a86, + 0x39ac08, + 0x20a243, + 0x3bae05, + 0x222149, + 0x3cb985, + 0x302884, + 0x390f86, + 0x3bcbc5, + 0x26a686, + 0x323247, + 0x2fe346, + 0x3bb84b, + 0x2800c7, + 0x28d706, + 0x2921c6, + 0x239606, + 0x381d09, + 0x2d394a, + 0x2fac05, + 0x24bd4d, + 0x2bcd86, + 0x2d4b86, + 0x229086, + 0x3d3945, + 0x301887, + 0x268c87, + 0x31ce8e, + 0x214e43, + 0x2e7d09, + 0x3bf489, + 0x315e07, + 0x281887, + 0x3d3845, + 0x2d0b05, + 0x6e3ed28f, + 0x2ece47, + 0x2ed008, + 0x2edc44, + 0x2eddc6, + 0x6e654782, 0x2f1bc6, - 0x1063c5, - 0x2148c3, - 0x2148c9, - 0x22040c, - 0x2d320c, - 0x3485c8, - 0x2a0c47, - 0x3e4008, - 0x111547, - 0x3118ca, - 0x311f8b, - 0x237c08, - 0x201b48, - 0x260fc6, - 0x31c245, - 0x284d8a, - 0x3da585, - 0x208ec2, - 0x2e1487, - 0x278606, - 0x37f485, - 0x3977c9, - 0x36f885, - 0x1d2348, - 0x2a3585, - 0x23a609, - 0x322dc6, - 0x3406c8, - 0x246ec3, - 0x211706, - 0x383646, - 0x31cb85, - 0x31cb89, - 0x287109, - 0x284b07, - 0x120c44, - 0x320c47, - 0x3cf249, - 0x221a85, - 0x26a88, - 0x372185, - 0x2028c5, - 0x367bc9, - 0x201182, - 0x2556c4, - 0x20f582, - 0x203382, - 0x361b85, - 0x352948, - 0x2d1385, - 0x2dfe43, - 0x2dfe45, - 0x2ec5c3, - 0x211402, - 0x298a44, - 0x203a83, - 0x200a82, - 0x2f81c4, - 0x30d543, - 0x2043c2, - 0x26e983, - 0x2189c4, - 0x309483, - 0x2623c4, - 0x201782, - 0x21ee83, - 0x21e503, - 0x204942, - 0x29ec82, - 0x286f49, - 0x205182, - 0x29b184, - 0x203ac2, - 0x264644, - 0x2b8184, - 0x2d4844, - 0x201b02, - 0x249442, - 0x396583, - 0x311d43, - 0x297204, - 0x2e6f44, - 0x31e604, - 0x320dc4, - 0x31c503, - 0x383983, - 0x308044, - 0x322604, - 0x322746, - 0x202742, - 0x5842, - 0x4d383, - 0x205842, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x14305, + 0x2f3c06, + 0x10210c, + 0x20220e, + 0x2ef20a, + 0x232146, + 0x21978a, + 0x206b89, + 0x249205, + 0x32a108, + 0x3e3e46, + 0x2ca908, + 0x379b48, + 0x2911cb, + 0x3a4d05, + 0x3a9d88, + 0x20754c, + 0x3b12c7, + 0x265d86, + 0x3bca08, + 0x393148, + 0x6ea18882, + 0x392c8b, + 0x20e149, + 0x20a049, + 0x3b7f47, + 0x3666c8, + 0x6efeae08, + 0x25fbcb, + 0x257a09, + 0x26fb4d, + 0x32cd48, + 0x2d7dc8, + 0x6f201802, + 0x222ac4, + 0x6f6445c2, + 0x36d586, + 0x6fa03282, + 0x308fca, + 0x273186, + 0x22f0c8, + 0x25c4c8, + 0x26b9c6, + 0x2cb206, + 0x30f086, + 0x3a2185, + 0x2468c4, + 0x6ff8dd84, + 0x360946, + 0x269e87, + 0x70290607, + 0x39f3cb, + 0x3793c9, + 0x3ab0ca, + 0x393a04, + 0x2e2a48, + 0x25304d, + 0x3098c9, + 0x309b08, + 0x309d89, + 0x30b844, + 0x2bc884, + 0x295a45, + 0x253c8b, + 0x371a46, + 0x360785, + 0x248449, + 0x3646c8, + 0x270b04, + 0x315b89, + 0x3bb785, + 0x2cc508, + 0x23aec7, + 0x3363c8, + 0x296506, + 0x213dc7, + 0x2f8dc9, + 0x3ecd49, + 0x21b6c5, + 0x2462c5, + 0x70623cc2, + 0x36ef44, + 0x2fcc45, + 0x3a4b06, + 0x328085, + 0x2691c7, + 0x328645, + 0x28a984, + 0x3cbc46, + 0x26a907, + 0x2547c6, + 0x371f85, + 0x21dfc8, + 0x3d6b05, + 0x221fc7, + 0x22c6c9, + 0x28de4a, + 0x234787, + 0x23478c, + 0x312846, + 0x24ab49, + 0x252105, + 0x25a148, + 0x21b503, + 0x2cdc45, + 0x2fc705, + 0x243007, + 0x70a00b82, + 0x305cc7, + 0x2d7386, + 0x389c86, + 0x2e8f06, + 0x393086, + 0x256848, + 0x28f845, + 0x3641c7, + 0x3641cd, + 0x220203, + 0x379a45, + 0x3aa647, + 0x306008, + 0x3aa205, + 0x221708, + 0x230406, + 0x2aba87, + 0x2f5f05, + 0x3a4d86, + 0x3391c5, + 0x35388a, + 0x2fb186, + 0x2dda87, + 0x2350c5, + 0x2fdb87, + 0x300f84, + 0x302806, + 0x32a045, + 0x23628b, + 0x2cef49, + 0x36838a, + 0x21b748, + 0x30c4c8, + 0x30e14c, + 0x313c87, + 0x3166c8, + 0x35f308, + 0x36d6c5, + 0x322bca, + 0x3291c9, + 0x70e01b82, + 0x2a8506, + 0x22bbc4, + 0x22bbc9, + 0x2868c9, + 0x31b047, + 0x284407, + 0x28c689, + 0x2d3388, + 0x2d338f, + 0x216986, + 0x2f594b, + 0x272085, + 0x272087, + 0x33fc89, + 0x22ce06, + 0x315b07, + 0x2fa6c5, + 0x23e6c4, + 0x358386, + 0x21cdc4, + 0x2d2e87, + 0x33d8c8, + 0x713bab88, + 0x3c18c5, + 0x3ccb87, + 0x2dcf49, + 0x21c584, + 0x24f148, + 0x7170b2c8, + 0x2d4b04, + 0x312f48, + 0x20c5c4, + 0x21cc89, + 0x228fc5, + 0x71a49902, + 0x2169c5, + 0x2d6545, + 0x20cb48, + 0x241bc7, + 0x71e008c2, + 0x3b8405, + 0x2f0386, + 0x266086, + 0x36ef08, + 0x346a48, + 0x328046, + 0x32c486, + 0x310d89, + 0x389bc6, + 0x22cccb, + 0x351f85, + 0x3ae706, + 0x35a188, + 0x36ebc6, + 0x2a9b46, + 0x222dca, + 0x283c4a, + 0x390b05, + 0x27c587, + 0x257e46, + 0x72207882, + 0x3aa787, + 0x3e2105, + 0x30e6c4, + 0x30e6c5, + 0x2e2946, + 0x328bc7, + 0x2271c5, + 0x283dc4, + 0x3cdc48, + 0x2a9c05, + 0x2fbbc7, + 0x334e05, + 0x3537c5, + 0x231704, + 0x231709, + 0x3cdd88, + 0x201106, + 0x21a506, + 0x20dbc6, + 0x726c8fc8, + 0x30c347, + 0x34664d, + 0x3de28c, + 0x3e6d89, + 0x31b5c9, + 0x72b84342, + 0x3e60c3, + 0x24e603, + 0x2cf185, + 0x3b9d8a, + 0x346486, + 0x3afd85, + 0x323644, + 0x32364b, + 0x33d18c, + 0x33dacc, + 0x33ddd5, + 0x33eb0d, + 0x34098f, + 0x340d52, + 0x3411cf, + 0x341592, + 0x341a13, + 0x341ecd, + 0x34248d, + 0x34280e, + 0x34310e, + 0x34380c, + 0x343bcc, + 0x34400b, + 0x344a8e, + 0x345392, + 0x34624c, + 0x346c50, + 0x355292, + 0x35648c, + 0x356b4d, + 0x356e8c, + 0x35ad11, + 0x35bbcd, + 0x35db8d, + 0x35e18a, + 0x35e40c, + 0x35fccc, + 0x36048c, + 0x36100c, + 0x366ed3, + 0x368610, + 0x368a10, + 0x36908d, + 0x36968c, + 0x36c249, + 0x36fb4d, + 0x36fe93, + 0x3724d1, + 0x372cd3, + 0x37380f, + 0x373bcc, + 0x373ecf, + 0x37428d, + 0x37488f, + 0x374c50, + 0x3756ce, + 0x37b80e, + 0x37c150, + 0x37cd0d, + 0x37d68e, + 0x37da0c, + 0x37f153, + 0x38154e, + 0x381f50, + 0x382351, + 0x38278f, + 0x382b53, + 0x383ecd, + 0x38420f, + 0x3845ce, + 0x384b50, + 0x384f49, + 0x386310, + 0x38680f, + 0x386e8f, + 0x387252, + 0x387e8e, + 0x38984d, + 0x389e0d, + 0x38a14d, + 0x38af4d, + 0x38b28d, + 0x38b5d0, + 0x38b9cb, + 0x38c40c, + 0x38c78c, + 0x38cd8c, + 0x38d08e, + 0x39ae10, + 0x39c9d2, + 0x39ce4b, + 0x39d28e, + 0x39d60e, + 0x39de8e, + 0x39e40b, + 0x72f9e796, + 0x3a074d, + 0x3a1714, + 0x3a24cd, + 0x3a4355, + 0x3a644d, + 0x3a6dcf, + 0x3a770f, + 0x3ab80f, + 0x3abbce, + 0x3abf4d, + 0x3ad911, + 0x3b240c, + 0x3b270c, + 0x3b2a0b, + 0x3b2ccc, + 0x3b344f, + 0x3b3812, + 0x3b3e0d, + 0x3b504c, + 0x3b594c, + 0x3b5c4d, + 0x3b5f8f, + 0x3b634e, + 0x3b9a4c, + 0x3ba00d, + 0x3ba34b, + 0x3bc18c, + 0x3bd08d, + 0x3bd3ce, + 0x3bd749, + 0x3be713, + 0x3c014d, + 0x3c084d, + 0x3c0e4c, + 0x3c14ce, + 0x3c1a0f, + 0x3c1dcc, + 0x3c20cd, + 0x3c240f, + 0x3c27cc, + 0x3c2dcc, + 0x3c3b0c, + 0x3c3e0c, + 0x3c500d, + 0x3c5352, + 0x3c5dcc, + 0x3c60cc, + 0x3c63d1, + 0x3c680f, + 0x3c6bcf, + 0x3c6f93, + 0x3c8d8e, + 0x3c910f, + 0x3c94cc, + 0x733c9b8e, + 0x3c9f0f, + 0x3ca2d6, + 0x3cadd2, + 0x3ce68c, + 0x3cf1cf, + 0x3cf84d, + 0x3dd30f, + 0x3dd6cc, + 0x3dd9cd, + 0x3ddd0d, + 0x3df8ce, + 0x3e040c, + 0x3e2c4c, + 0x3e2f50, + 0x3e5451, + 0x3e588b, + 0x3e5ccc, + 0x3e5fce, + 0x3e72d1, + 0x3e770e, + 0x3e7a8d, + 0x3f074b, + 0x3f170f, + 0x3f20d4, + 0x216e82, + 0x216e82, + 0x206c43, + 0x216e82, + 0x206c43, + 0x216e82, + 0x214f82, + 0x259145, + 0x3e6fcc, + 0x216e82, + 0x216e82, + 0x214f82, + 0x216e82, + 0x2ac905, + 0x28de45, + 0x216e82, + 0x216e82, + 0x202642, + 0x2ac905, + 0x33f149, + 0x3721cc, + 0x216e82, + 0x216e82, + 0x216e82, + 0x216e82, + 0x259145, + 0x216e82, + 0x216e82, + 0x216e82, + 0x216e82, + 0x202642, + 0x33f149, + 0x216e82, + 0x216e82, + 0x216e82, + 0x28de45, + 0x216e82, + 0x28de45, + 0x3721cc, + 0x3e6fcc, + 0x20bec3, + 0x21a043, + 0x226783, + 0x20f583, + 0x25c204, + 0x214883, + 0x24acc3, + 0x5e8f, + 0x1dc8, + 0x7cb84, + 0xeaec8, 0x2000c2, - 0x258843, - 0x229f43, - 0x224d03, - 0x206dc3, - 0x2e9c43, - 0x258104, - 0x287204, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x202783, - 0x305d44, - 0x329b43, - 0x223503, - 0x387d04, - 0x371f86, - 0x207e43, - 0x145d45, - 0xf1a47, - 0x261c03, - 0x7ae14fc8, - 0x209343, - 0x2ca043, - 0x21b643, - 0x2335c3, - 0x371ac5, - 0x38483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x211543, - 0x2033c3, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x25e043, - 0x2127c3, - 0x294384, - 0x81983, - 0x21f483, - 0x2d0584, - 0x145d45, - 0x2f5345, - 0xf1a47, - 0x205842, - 0x201902, - 0x200382, - 0x2048c2, - 0xbc03, - 0x2003c2, - 0x1544, - 0x229f43, - 0x241284, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x222d84, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x217083, - 0x29f804, - 0x7ffc8, - 0x229f43, - 0x20bc03, - 0xb8c3, - 0x123944, - 0x259b44, - 0x7ffc8, - 0x5842, - 0x229f43, - 0x25b9c4, - 0x258104, - 0x20bc03, - 0x200f82, - 0x81983, - 0x21f483, - 0x23ffc3, - 0x4a3c4, - 0x32e885, - 0x208ec2, - 0x325ec3, - 0x172fc9, - 0xf2386, - 0x87e08, - 0x2000c2, - 0x7ffc8, - 0x205842, - 0x224d03, - 0x2e9c43, - 0x2005c2, - 0xbc03, - 0x21f483, - 0x2802, - 0x82, - 0xc2, - 0x1d0347, - 0x1e949, - 0x2fc3, - 0x7ffc8, - 0x18f203, - 0x7e724f47, - 0x29f43, - 0xfdc8, - 0x24d03, - 0x86247, - 0xe9c43, - 0x3d286, - 0x5e043, - 0xa9388, - 0xdc448, + 0x7420b642, + 0x24e8c3, + 0x23eb44, + 0x207783, + 0x20f584, + 0x23c686, + 0x213883, + 0x390e44, + 0x2b1b85, + 0x214e43, + 0x214883, + 0x24acc3, + 0x228d8a, + 0x3ae506, + 0x39d98c, + 0x1c3448, + 0x20b642, + 0x21a043, + 0x226783, + 0x20f583, + 0x2384c3, + 0x2f3c06, + 0x214883, + 0x24acc3, + 0x205443, + 0x15ac3, + 0xbe988, + 0x74d4c5c5, + 0x833c7, + 0x5bec5, + 0x1f2c7, + 0x14f985, + 0xaa204, + 0xaa20a, + 0x6249, + 0x2142, + 0x1d02ca, + 0x75b26305, + 0x14f985, + 0x133907, + 0x19c08, + 0x1048e, + 0x9dd52, + 0x13990b, + 0x11c746, + 0x75edb105, + 0x762db10c, + 0x1e2287, + 0xf5d87, + 0x1dafca, + 0x48cd0, + 0x153ac5, + 0xbe6cb, + 0xd5448, + 0x42b87, + 0x3e7cb, + 0xa9cc9, + 0x59307, + 0x1e9987, + 0x3d087, + 0x42ac6, + 0xa3c8, + 0x76838286, + 0x5e007, + 0x30546, + 0xc398d, + 0xe2bd0, + 0x76c0a842, + 0x1e9808, + 0x19a110, + 0x19a84c, + 0x773a1bcd, + 0x727c8, + 0x72f4b, + 0x809c7, + 0xd1709, + 0x6d446, + 0xaae08, + 0x1742, + 0x70d0a, + 0x38447, + 0x19fb07, + 0xbf0c9, + 0xc1bc8, + 0x100185, + 0xe9c7, + 0x119186, + 0x9dc6, + 0x10aa0e, + 0x4c48e, + 0x164d8f, + 0x64d49, + 0x191549, + 0xabe4b, + 0xded0f, + 0x183bcc, + 0xdd68b, + 0x14de08, + 0x19f2c7, + 0x1ad388, + 0xc880b, + 0xc91cc, + 0xc95cc, + 0xc99cc, + 0xc9ccd, + 0x1c4448, + 0x83382, + 0x138fc9, + 0xab348, + 0xe578b, + 0xe7f46, + 0xefc4b, + 0x144ecb, + 0xf9e0a, + 0xfaf05, + 0x101590, + 0x104606, + 0x1cbd86, + 0x1a4045, + 0x1d95c7, + 0xf1e48, + 0x106587, + 0x106847, + 0xa79c7, + 0x29a86, + 0x16d3ca, + 0xb3c0a, + 0x1b506, + 0x19f8cd, + 0x5e0c8, + 0x11e848, + 0xf12c9, + 0x8af89, + 0xd4905, + 0x16018c, + 0xc9ecb, + 0x1c7bc9, + 0x18ec84, + 0x11b209, + 0x11b446, + 0x11506, + 0x3342, + 0x5f986, + 0x8b10b, + 0x127647, + 0x127807, + 0x79c2, + 0xe9545, + 0x19d84, + 0x101, + 0x66fc3, + 0x76644746, + 0xaba43, + 0x382, + 0xe44, + 0xb02, + 0x65a04, + 0x882, + 0xc502, + 0x2742, + 0x1da82, + 0x3d82, + 0x27e82, + 0x45c2, + 0x16e3c2, + 0x3cc82, + 0x3402, + 0x101c2, + 0x64842, + 0x26783, + 0x942, + 0x1b42, + 0x1b5c2, + 0x5b02, + 0x642, + 0x30fc2, + 0x7142, + 0x2502, + 0x13f82, + 0x5c2, + 0xbc83, + 0x40c2, + 0x1ac2, + 0x5cf02, + 0xaf02, + 0x12a82, + 0xfe02, + 0x24902, + 0x5942, + 0xec2, + 0x19b302, + 0x82182, + 0x736c2, + 0x14883, + 0x602, + 0x18882, + 0x25c2, + 0x7982, + 0x1b645, + 0x8782, + 0x21e42, 0x1d4883, - 0x122246, - 0x7e92fc05, - 0x1318c5, - 0x19c03, - 0x9dac8, - 0xe59c8, - 0x62b03, - 0x7ecf6786, - 0xfb305, - 0x869c4, - 0x3e8c7, - 0x127c3, - 0x4b83, - 0x1f483, - 0x2082, - 0x18a0ca, - 0x37945, - 0x3d43, - 0x7f2d8e0c, - 0x161c43, - 0x120984, - 0x118ecb, - 0x119488, - 0x1965c4, - 0xa1342, - 0x45f03, - 0x1434307, - 0x15ce3c7, - 0x14dff08, - 0x1445f03, - 0x1c8bc8, - 0x1496944, - 0x183dcb, - 0x12c82, - 0x1300c7, - 0x14bc04, + 0x682, + 0x3b02, + 0x1042, + 0x1a82, + 0x14942, + 0x8c2, + 0xba42, + 0x3342, + 0x5985, + 0x77614f82, + 0x77b0ed43, + 0x4d03, + 0x77e14f82, + 0x4d03, + 0xe7807, + 0x205683, 0x2000c2, - 0x205842, - 0x241284, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2335c3, - 0x2127c3, - 0x21f483, - 0x2a31c3, - 0x217083, - 0x13803, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0xb8c3, - 0x24d03, - 0x814e9c43, - 0x80407, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x2335c3, - 0x2127c3, - 0x21f483, - 0x26ca02, + 0x21a043, + 0x226783, + 0x204703, + 0x2005c3, + 0x2384c3, + 0x214883, + 0x208c43, + 0x24acc3, + 0x319283, + 0x1ad803, + 0x1ad804, + 0x180286, + 0xd4944, + 0x179d45, + 0x10e445, + 0x18b43, + 0x1c3448, + 0x21a043, + 0x226783, + 0x204703, + 0x214e43, + 0x214883, + 0x208c43, + 0x24acc3, + 0x21a043, + 0x226783, + 0x24acc3, + 0x21a043, + 0x226783, + 0x20f583, + 0x200181, + 0x214e43, + 0x214883, + 0x262243, + 0x24acc3, + 0x5b84, + 0x20bec3, + 0x21a043, + 0x226783, + 0x219ec3, + 0x204703, + 0x262283, + 0x245143, + 0x2bc303, + 0x220783, + 0x20f583, + 0x25c204, + 0x214883, + 0x24acc3, + 0x200f83, + 0x3496c4, + 0x235843, + 0x5d83, + 0x2548c3, + 0x337908, + 0x2a1784, + 0x20020a, + 0x26b146, + 0xdcd44, + 0x3beb87, + 0x22a0ca, + 0x216849, + 0x3d0147, + 0x3d5a0a, + 0x20bec3, + 0x21e6cb, + 0x37ff09, + 0x3a8445, + 0x3c30c7, + 0xb642, + 0x21a043, + 0x321187, + 0x351105, + 0x2e25c9, + 0x2370e, + 0x226783, + 0x246b86, + 0x322c83, + 0xcf003, + 0x122446, + 0x3946, + 0x13807, + 0x215186, + 0x21f445, + 0x20e007, + 0x31ef87, + 0x7aa0f583, + 0x3566c7, + 0x28af43, + 0xc1089, + 0x3256c5, + 0x25c204, + 0x2cde88, + 0x3e630c, + 0x2cd005, + 0x2bbf06, + 0x321047, + 0x3c7ec7, + 0x28fb87, + 0x297fc8, + 0x3217cf, + 0x349145, + 0x208a47, + 0x217d47, + 0x3a148a, + 0x315289, + 0x32bd05, + 0x32700a, + 0x10de86, + 0xd4d07, + 0x2e1485, + 0x398204, + 0x347b06, + 0x1974c6, + 0x260947, + 0x2e68c7, + 0x348748, + 0x213045, + 0x351006, + 0x2f908, + 0x363b05, + 0x2c406, + 0x2c0a45, + 0x243344, + 0x297e47, + 0x25668a, + 0x2b7808, + 0x3d2c86, + 0x384c3, + 0x2fc3c5, + 0x21ea46, + 0x34cac6, + 0x2024c6, + 0x214e43, + 0x3b4087, + 0x10210c, + 0x217cc5, + 0x214883, + 0x2fa0cd, + 0x208c43, + 0x348848, + 0x284784, + 0x21ed45, + 0x2bcf46, + 0x203286, + 0x3ae607, + 0x25fa87, + 0x283705, + 0x24acc3, + 0x3b8fc7, + 0x3bf949, + 0x323ec9, + 0x39054a, + 0x204d82, + 0x325684, + 0x337d84, + 0x3059c7, + 0x305b88, + 0x307609, + 0x379909, + 0x3082c7, + 0x113e89, + 0x2630c6, + 0x10a786, + 0x30b844, + 0x238fca, + 0x30db08, + 0x30ef49, + 0x30f386, + 0x2d1e45, + 0x2b76c8, + 0x2e81ca, + 0x236d03, + 0x349846, + 0x3083c7, + 0x237e45, + 0x891c8, + 0x3c7705, + 0x219183, + 0x223984, + 0x56cc9, + 0x2c1185, + 0x29a887, + 0x3cdec5, + 0x2ed1c6, + 0x107d85, + 0x232203, + 0x232209, + 0x21eb0c, + 0x2d954c, + 0x316208, + 0x2a8fc7, + 0x3f0d88, + 0x118c07, + 0x318f8a, + 0x3195cb, + 0x380048, + 0x203388, + 0x2681c6, + 0x2614c5, + 0x34340a, + 0x2184c5, + 0x249902, + 0x2e66c7, + 0x27b8c6, + 0x385b45, + 0x398389, + 0x233885, + 0x1b76c8, + 0x2b44c5, + 0x325289, + 0x32d706, + 0x3eb748, + 0x324583, + 0x211fc6, + 0x390ec6, + 0x326e05, + 0x326e09, + 0x28aa89, + 0x261247, + 0x12ba84, + 0x32ba87, + 0x379809, + 0x22a2c5, + 0x469c8, + 0x3d4705, + 0x205585, + 0x3706c9, + 0x2029c2, + 0x235644, + 0x203d42, + 0x2040c2, + 0x2edf05, + 0x37e948, + 0x2d4845, + 0x2e3dc3, + 0x2e3dc5, + 0x2f1dc3, + 0x211282, + 0x2342c4, + 0x206743, + 0x207002, + 0x2fd284, + 0x314903, + 0x211b42, + 0x289ec3, + 0x21b484, + 0x30f503, + 0x269644, + 0x202fc2, + 0x2213c3, + 0x219883, + 0x2075c2, + 0x2a7382, + 0x28a8c9, + 0x20dfc2, + 0x29f2c4, + 0x206782, + 0x288904, + 0x263084, + 0x30c944, + 0x203342, + 0x24a8c2, + 0x239b03, + 0x2ae143, + 0x29aa04, + 0x2ec444, + 0x329104, + 0x32bc04, + 0x326803, + 0x2f7cc3, + 0x30de04, + 0x32cf44, + 0x32d086, + 0x205402, + 0xb642, + 0x4f583, + 0x20b642, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x177c5, + 0x2000c2, + 0x20bec3, + 0x21a043, + 0x226783, + 0x201b43, + 0x20f583, + 0x25c204, + 0x28ab84, + 0x225a04, + 0x214883, + 0x24acc3, + 0x205443, + 0x30be44, + 0x3346c3, + 0x251943, + 0x389b04, + 0x3d4506, + 0x204243, + 0x14f985, + 0xf5d87, + 0x288583, + 0x7c62d088, + 0x265883, + 0x2cfcc3, + 0x21e803, + 0x2384c3, + 0x3b8305, + 0x1c3083, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x2113c3, + 0x206083, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x20bc83, + 0x214883, + 0x26c584, + 0x24acc3, + 0x2d8484, + 0x14f985, + 0x36dd05, + 0xf5d87, + 0x20b642, + 0x203142, + 0x200382, + 0x201f42, + 0x2003c2, + 0x2d84, + 0x21a043, + 0x243544, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x225a04, + 0x214883, + 0x24acc3, + 0x219303, + 0x265a04, + 0x1c3448, + 0x21a043, + 0x208c43, + 0x18b43, + 0x12e504, + 0x2346c4, + 0x1c3448, + 0xb642, + 0x21a043, + 0x2607c4, + 0x25c204, + 0x208c43, + 0x201802, + 0x24acc3, + 0x2423c3, + 0x23984, + 0x33a505, + 0x249902, + 0x333483, + 0x1beec9, + 0xf67c6, + 0x8c108, + 0x2000c2, + 0x1c3448, + 0x7fafe207, + 0x20b642, + 0x226783, + 0x20f583, + 0x2005c2, + 0x24acc3, + 0x54c2, + 0x82, + 0x23984, + 0xc2, + 0x1d5bc7, + 0x17149, + 0x5c83, + 0x1c3448, + 0x1da43, + 0x80330047, + 0x1a043, + 0xa8408, + 0x26783, + 0x85587, + 0xf583, + 0x1eeb86, + 0xbc83, + 0xb5fc8, + 0xdf908, + 0x1d8b03, + 0x8f606, + 0x8053b0c5, + 0x1b8b85, + 0x14e43, + 0xa2388, + 0xea7c8, + 0x69243, + 0x808fb886, + 0x102dc5, + 0x1bf644, + 0x412c7, + 0x14883, + 0x7803, + 0x4acc3, + 0x4d42, + 0x19720a, + 0x9c83, + 0x80edc7cc, + 0xedfc3, + 0x1b04, + 0x1215cb, + 0x121b88, + 0xa4fc2, + 0x123d83, + 0x1416c47, + 0x15d4b87, + 0x14e3e88, + 0x1523d83, + 0x1cd6c8, + 0x149a144, + 0x1eafcb, + 0x13c02, + 0x13b587, + 0x1547c4, + 0x2000c2, + 0x20b642, + 0x243544, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x21a043, + 0x226783, + 0x20f583, + 0x2384c3, + 0x214883, + 0x24acc3, + 0x229a83, + 0x219303, + 0x15ac3, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x18b43, + 0x26783, + 0x8300f583, + 0x833c7, + 0x21a043, + 0x226783, + 0x20f583, + 0x25c204, + 0x2384c3, + 0x214883, + 0x24acc3, + 0x22ccc2, 0x2000c1, 0x2000c2, 0x200201, - 0x3385c2, - 0x7ffc8, - 0x224f85, + 0x340a82, + 0x1c3448, + 0x226f45, 0x200101, - 0x29f43, - 0x3b4c4, - 0x200d01, + 0x1a043, + 0x3e084, + 0x200cc1, 0x200501, - 0x200c01, - 0x254602, - 0x395c04, - 0x254603, + 0x200bc1, + 0x2590c2, + 0x396b44, + 0x2590c3, 0x200041, 0x200801, 0x200181, - 0x1eaa46, + 0x37d06, + 0x1e144c, 0x200701, - 0x3bc807, - 0x38decf, - 0x3786c6, + 0x324e47, + 0x306d0f, + 0x3ccd06, 0x2004c1, - 0x323986, - 0x200b41, + 0x32e546, + 0x200ec1, + 0x10210c, 0x200581, - 0x3b7fce, + 0x3c2a4e, 0x2003c1, - 0x21f483, - 0x200a81, - 0x328745, - 0x202082, - 0x216e05, + 0x24acc3, + 0x2015c1, + 0x83ed2ac4, + 0x23ba45, + 0x204d42, + 0x219085, 0x200401, 0x200741, 0x2007c1, - 0x208ec2, + 0x249902, 0x200081, - 0x205241, - 0x201541, - 0x201c41, - 0x201b81, - 0x60209, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x10e7c8, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x21fc83, - 0x1efd03, - 0x229f43, - 0x2e9c43, - 0xa1288, - 0x219c03, - 0x2127c3, - 0x9843, - 0x21f483, - 0x82f0ad88, - 0x1ef9c3, - 0x11448, - 0x12d02, - 0x2583, - 0x6cc2, - 0x1b02, - 0x145d45, - 0x7ffc8, - 0x9e0c6, - 0x161487, - 0xbc03, - 0x145d45, - 0x179c04, - 0x199ac8, - 0x51a44, - 0x1217c7, - 0x63e44, - 0x5818c, - 0x1e6644, - 0x27885, - 0x60209, - 0x176507, - 0x1df86, - 0x5b74a, - 0x156e00a, - 0x11d484, - 0x1506c43, - 0x7ffc8, - 0x81983, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2127c3, - 0x21f483, - 0x2030c3, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2ef2c4, - 0x21f483, - 0x28a685, - 0x279884, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2026c2, - 0x2127c3, - 0x21f483, - 0x17083, - 0xf3f86, - 0xc2904, - 0x124a86, - 0x258843, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2026c2, - 0x2127c3, - 0x21f483, - 0x217083, - 0x205842, - 0x229f43, - 0x23ba49, - 0x224d03, - 0x2bc9c9, - 0x219c03, - 0x2127c3, - 0x8d344, - 0xbc03, - 0x21f483, - 0x305548, - 0x245347, - 0x32e885, - 0xd2048, - 0x12e889, - 0x1e5e08, - 0x1d0347, - 0xff04a, - 0x15964b, - 0x123bc7, - 0x4af48, - 0x8fca, - 0xc9508, - 0x1e949, - 0x2e447, - 0x1d8c7, - 0xbd08, - 0xfdc8, - 0x4cc4f, - 0xb0045, - 0x1f507, - 0x3d286, - 0x41007, - 0x12c686, - 0xa9388, - 0xae506, - 0x1404c7, - 0x167fc9, - 0x1ca87, - 0xe7d89, - 0xd2449, - 0xd9106, - 0xdc448, - 0xd2305, - 0x158e0a, - 0xe59c8, - 0x62b03, - 0xec9c8, - 0x3e8c7, - 0x1865c5, - 0x160810, - 0x4b83, - 0x81983, - 0x183307, - 0x1c605, - 0xffd88, - 0x7a605, - 0x161c43, - 0x1dea48, - 0x2606, - 0x15f089, - 0xbfb87, - 0x17328b, - 0x7f144, - 0x112d84, - 0x118ecb, - 0x119488, - 0x119d47, - 0x145d45, - 0x229f43, - 0x224d03, - 0x28c6c3, - 0x21f483, - 0x249f03, - 0x2e9c43, - 0x81983, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x1ddb4b, + 0x200f81, + 0x202d81, + 0x203481, + 0x2033c1, + 0x2802, + 0x67409, + 0x1c3448, + 0x21a043, + 0x226783, + 0x1008c8, + 0x20f583, + 0x214883, + 0x24acc3, + 0x221c03, + 0x1f3503, + 0x21a043, + 0x20f583, + 0xa4f08, + 0x214e43, + 0x214883, + 0x2a783, + 0x24acc3, + 0x84f34308, + 0x1f31c3, + 0x112c8, + 0x13c82, + 0x17c3, + 0xa842, + 0x3342, + 0x14f985, + 0x1c3448, + 0xa4806, + 0x1ec847, + 0x14f985, + 0xb284, + 0x19a3c8, + 0x550c4, + 0x12c887, + 0x6af04, + 0x5c28c, + 0x1e6304, + 0x2bd85, + 0x67409, + 0x1f0487, + 0xe1548, + 0x2aac6, + 0x12e0a, + 0x157714a, + 0x127984, + 0x15886c3, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x214883, + 0x24acc3, + 0x205d83, + 0x1c3448, + 0x21a043, + 0x226783, + 0x2eef84, + 0x24acc3, + 0x2cf905, + 0x26b544, + 0x21a043, + 0x226783, + 0x20f583, + 0x200ec2, + 0x214883, + 0x24acc3, + 0x19303, + 0xf9b06, + 0xc8204, + 0x12fb86, + 0x20bec3, + 0x21a043, + 0x226783, + 0x20f583, + 0x200ec2, + 0x214883, + 0x24acc3, + 0x219303, + 0x20b642, + 0x21a043, + 0x23e609, + 0x226783, + 0x2c22c9, + 0x214e43, + 0x214883, + 0x90544, + 0x24acc3, + 0x30b648, + 0x245ac7, + 0x33a505, + 0x62386, + 0xcc388, + 0x13a509, + 0x1e5ac8, + 0x1d5bc7, + 0x105e0a, + 0x1a9fcb, + 0x12e787, + 0x4d688, + 0x1e244a, + 0xcea48, + 0x17149, + 0x302c7, + 0x1bb647, + 0x1ec048, + 0xa8408, + 0x4ee4f, + 0xb79c5, + 0xa8707, + 0x1eeb86, + 0x1afc47, + 0x12be46, + 0xb5fc8, + 0xc28c6, + 0x1eb547, + 0x135dc9, + 0x36c87, + 0x1b3209, + 0xd5949, + 0xdcac6, + 0xdf908, + 0xcc645, + 0xf808a, + 0xea7c8, + 0x69243, + 0xf2648, + 0x412c7, + 0x171045, + 0xa1050, + 0x7803, + 0x1eb3c7, + 0x16085, + 0x106b48, + 0x1ea2c5, + 0xedfc3, + 0x1688, + 0x52c6, + 0x164b89, + 0xc5407, + 0x1bf18b, + 0x82404, + 0x11ae04, + 0x1215cb, + 0x121b88, + 0x122347, + 0x14f985, + 0x21a043, + 0x226783, + 0x204703, + 0x24acc3, + 0x24c843, + 0x20f583, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0xabf8b, 0x2000c2, - 0x205842, - 0x21f483, - 0x2102, - 0x26c2, - 0x5ec2, - 0x7ffc8, - 0x12b409, - 0x1c8bc8, - 0x5842, + 0x20b642, + 0x24acc3, + 0x45c2, + 0xec2, + 0xf82, + 0x1c3448, + 0x13bf09, + 0x1cd6c8, + 0xb642, 0x2000c2, - 0x205842, + 0x20b642, 0x200382, 0x2005c2, - 0x205c02, - 0x2127c3, - 0x165c6, + 0x2024c2, + 0x214883, + 0x18846, 0x2003c2, - 0x4a3c4, + 0x23984, 0x2000c2, - 0x258843, - 0x205842, - 0x229f43, - 0x224d03, + 0x20bec3, + 0x20b642, + 0x21a043, + 0x226783, 0x200382, - 0x2e9c43, - 0x25e043, - 0x219c03, - 0x222d84, - 0x2127c3, - 0x21c043, - 0xbc03, - 0x21f483, - 0x320984, - 0x205ec3, - 0x2e9c43, - 0x205842, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x20bc03, - 0x21f483, - 0x3c96c7, - 0x229f43, - 0x24dac7, - 0x3a3d06, - 0x21b983, - 0x226403, - 0x2e9c43, - 0x204203, - 0x258104, - 0x3b4204, - 0x33ef46, - 0x231083, - 0x2127c3, - 0x10aacb, - 0x21f483, - 0x28a685, - 0x22b5c4, - 0x3b6a43, - 0x3d8003, - 0x2e1487, - 0x236f05, - 0x2283, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x1c3404, - 0x21f483, - 0x1f343, - 0x8a30d6cc, - 0x5db43, - 0x53a87, - 0x4c106, - 0xd5247, - 0x135f85, - 0x204e42, - 0x256803, - 0x219383, - 0x258843, - 0x8ae29f43, - 0x208542, - 0x224d03, - 0x204b03, - 0x2e9c43, - 0x258104, - 0x3ce883, - 0x372ac3, - 0x219c03, - 0x222d84, - 0x8b203bc2, - 0x2127c3, - 0x21f483, - 0x2043c3, - 0x229c83, - 0x212843, - 0x26ca02, - 0x205ec3, - 0x7ffc8, - 0x2e9c43, - 0xb8c3, - 0x285584, - 0x258843, - 0x205842, - 0x229f43, - 0x241284, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x25e043, - 0x276f44, - 0x292e44, - 0x2edcc6, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x202783, - 0x278606, - 0x46bcb, - 0x332c6, - 0x12650a, - 0x11e28a, - 0x7ffc8, - 0x243244, - 0x8c629f43, - 0x384f44, - 0x224d03, - 0x29e6c4, - 0x2e9c43, - 0x352e83, - 0x219c03, - 0x2127c3, - 0x81983, - 0x21f483, - 0x2f7c3, - 0x34804b, - 0x3dc94a, - 0x3ef4cc, - 0xf7088, + 0x20f583, + 0x20bc83, + 0x214e43, + 0x225a04, + 0x214883, + 0x21c243, + 0x24acc3, + 0x201b04, + 0x200f83, + 0x20f583, + 0x20b642, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x208c43, + 0x24acc3, + 0x3ceb47, + 0x21a043, + 0x242ec7, + 0x32b106, + 0x212e83, + 0x226dc3, + 0x20f583, + 0x211983, + 0x25c204, + 0x2580c4, + 0x34ae46, + 0x23bc83, + 0x214883, + 0x13404b, + 0x24acc3, + 0x2cf905, + 0x336d44, + 0x3db4c3, + 0x2543c3, + 0x2e66c7, + 0x23ae45, + 0x4f43, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x1c77c4, + 0x24acc3, + 0xbb43, + 0x8c314a8c, + 0xe28c3, + 0x68ec7, + 0x8b246, + 0x1d95c7, + 0x1369c5, + 0x214202, + 0x25e203, + 0x21c683, + 0x20bec3, + 0x8ce1a043, + 0x20c942, + 0x226783, + 0x207783, + 0x20f583, + 0x25c204, + 0x20de83, + 0x349143, + 0x214e43, + 0x225a04, + 0x8d203642, + 0x214883, + 0x24acc3, + 0x211b43, + 0x219d83, + 0x214903, + 0x22ccc2, + 0x200f83, + 0x1c3448, + 0x20f583, + 0x18b43, + 0x220c04, + 0x20bec3, + 0x20b642, + 0x21a043, + 0x243544, + 0x226783, + 0x20f583, + 0x25c204, + 0x20bc83, + 0x279504, + 0x230944, + 0x2f3c06, + 0x225a04, + 0x214883, + 0x24acc3, + 0x205443, + 0x27b8c6, + 0x474cb, + 0x38286, + 0x489ca, + 0x128d8a, + 0x1c3448, + 0x22f8c4, + 0x8e61a043, + 0x20be84, + 0x226783, + 0x2d1704, + 0x20f583, + 0x37ee83, + 0x214e43, + 0x214883, + 0x24acc3, + 0x23c83, + 0x35174b, + 0x3de04a, + 0x3f2ccc, + 0xfc148, 0x2000c2, - 0x205842, + 0x20b642, 0x200382, - 0x235c45, - 0x258104, - 0x2026c2, - 0x219c03, - 0x292e44, - 0x2048c2, + 0x239805, + 0x25c204, + 0x200ec2, + 0x214e43, + 0x230944, + 0x201f42, 0x2003c2, - 0x2036c2, - 0x26ca02, - 0x58843, - 0x35c2, - 0x2da949, - 0x27ce48, - 0x2f0949, - 0x3a6ac9, - 0x212d4a, - 0x214aca, - 0x20d482, - 0x2b90c2, - 0x5842, - 0x229f43, - 0x20f1c2, - 0x24cb46, - 0x329c42, - 0x48e02, - 0x20ad42, - 0x3599ce, - 0x21eece, - 0x212747, - 0x2154c2, - 0x224d03, - 0x2e9c43, - 0x205d42, + 0x206382, + 0x22ccc2, + 0xbec3, + 0x6282, + 0x2de849, + 0x27fc88, + 0x366989, + 0x3a7f49, + 0x23240a, + 0x31170a, + 0x202882, + 0x36e3c2, + 0xb642, + 0x21a043, + 0x203682, + 0x24ed46, + 0x3347c2, + 0x4a282, + 0x200d82, + 0x3aa34e, + 0x22140e, + 0x214807, + 0x218342, + 0x226783, + 0x20f583, + 0x2380c2, 0x2005c2, - 0x58103, - 0x24148f, - 0x21d942, - 0x2e8447, - 0x2ecb87, - 0x2f1d07, - 0x2f5d4c, - 0x2fbe8c, - 0x2fc844, - 0x291c0a, - 0x21ee02, - 0x208042, - 0x2d4344, + 0x31a43, + 0x24374f, + 0x24f082, + 0x3cdac7, + 0x2ccdc7, + 0x3382c7, + 0x2d12cc, + 0x2dc1cc, + 0x2208c4, + 0x29588a, + 0x221342, + 0x20af02, + 0x2d7504, 0x200702, - 0x24f6c2, - 0x2fc0c4, - 0x21c142, - 0x20b982, - 0x280c3, - 0x2ae587, - 0x35ba05, - 0x22d442, - 0x240f84, - 0x20bdc2, - 0x2f6908, - 0x2127c3, - 0x37f808, - 0x204982, - 0x2fca05, - 0x3a4706, - 0x21f483, - 0x206582, - 0x300b87, - 0x2082, - 0x252e45, - 0x331d05, - 0x20b082, - 0x208382, - 0x3cb68a, - 0x2805ca, - 0x246f82, - 0x2af444, - 0x202602, - 0x23a8c8, - 0x20d682, - 0x2dd588, - 0x4c01, - 0x314487, - 0x315189, - 0x252ec2, - 0x31ab85, - 0x37ba45, - 0x21c6cb, - 0x20d0cc, - 0x2323c8, - 0x32ff08, - 0x202742, - 0x25d042, + 0x251ec2, + 0x2dc404, + 0x21f082, + 0x212a82, + 0x22043, + 0x2c2947, + 0x320f45, + 0x224902, + 0x31f984, + 0x39b302, + 0x2fba08, + 0x214883, + 0x385ec8, + 0x207602, + 0x220a85, + 0x3a5a06, + 0x24acc3, + 0x208782, + 0x307847, + 0x4d42, + 0x256145, + 0x37b505, + 0x2010c2, + 0x20b242, + 0x3d074a, + 0x28358a, + 0x2827c2, + 0x2b6ac4, + 0x201b02, + 0x325548, + 0x203b42, + 0x22a888, + 0x1101, + 0x31c507, + 0x31d209, + 0x2561c2, + 0x3231c5, + 0x381a85, + 0x21310b, + 0x34b3cc, + 0x236f48, + 0x33b3c8, + 0x205402, + 0x2a5982, 0x2000c2, - 0x7ffc8, - 0x205842, - 0x229f43, + 0x1c3448, + 0x20b642, + 0x21a043, 0x200382, - 0x2048c2, - 0xbc03, + 0x201f42, 0x2003c2, - 0x21f483, - 0x2036c2, + 0x24acc3, + 0x206382, 0x2000c2, - 0x145d45, - 0x8da05842, - 0x10d804, - 0x44005, - 0x8eae9c43, - 0x2280c3, - 0x2026c2, - 0x2127c3, - 0x3c5f83, - 0x8ee1f483, - 0x2fe343, - 0x2e2306, - 0x1976c5, - 0x1617083, - 0x145d45, - 0x1482cb, - 0x7ffc8, - 0x8dfce6c8, - 0x6b547, - 0x8e2ce18a, - 0x7fdc7, - 0xcab05, - 0x8e786f09, - 0x3204d, - 0x3d082, - 0x119a82, - 0xc41, - 0xf7544, - 0xb978a, - 0x80407, - 0x1e5c4, - 0x1e603, - 0x1e604, - 0x8f603e02, - 0x8fa00ac2, - 0x8fe00ec2, - 0x90200b82, - 0x90604142, - 0x90a03702, - 0xf1a47, - 0x90e05842, - 0x91215582, - 0x91605802, - 0x91a00d02, - 0x21eec3, - 0x2ba44, - 0x91f0e7c8, - 0x220f43, - 0x92217202, - 0x6d988, - 0x92602a82, - 0x82907, - 0x1bbe47, - 0x92a00042, - 0x92e02142, - 0x93200182, - 0x93603842, - 0x93a09c42, - 0x93e005c2, - 0x16a205, - 0x2191c3, - 0x368784, - 0x94200702, - 0x94619f42, - 0x94a065c2, - 0x8e04b, - 0x94e00b42, - 0x95654902, - 0x95a026c2, - 0x95e05c02, - 0x9dac8, - 0x9621dfc2, - 0x9660dec2, - 0x96a0f782, - 0x96e7eec2, - 0x97203bc2, - 0x97604242, - 0x97a048c2, - 0x97e0ee02, - 0x9822f002, - 0x9860e942, - 0xf9304, - 0x381983, - 0x98a3fa02, - 0x98e1d342, - 0x9920dcc2, - 0x996006c2, - 0x99a003c2, - 0x99e00a82, - 0xfde88, - 0x1ddcc7, - 0x9a202782, - 0x9a603342, - 0x9aa036c2, - 0x9ae1ee82, - 0x15804c, - 0x9b201c82, - 0x9b626d42, - 0x9ba06202, - 0x9be04c02, - 0x9c212182, - 0x9c612ec2, - 0x9ca05242, - 0x9ce0f542, - 0x9d288142, - 0x9d689482, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x2d643, - 0xc8503, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x953ce883, - 0x22d643, - 0x371b44, - 0x2f0846, - 0x309a43, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x271609, - 0x2035c2, - 0x367e03, - 0x2d2743, - 0x3b6c85, - 0x204b03, - 0x3ce883, - 0x22d643, - 0x2ed403, - 0x23c7c3, - 0x205249, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x2035c2, - 0x2035c2, - 0x3ce883, - 0x22d643, - 0x9de29f43, - 0x224d03, - 0x3a6d03, - 0x219c03, - 0x2127c3, - 0xbc03, - 0x21f483, - 0x7ffc8, - 0x205842, - 0x229f43, - 0x2127c3, - 0x21f483, - 0x71482, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x9e90b602, - 0x219c03, - 0x2127c3, - 0xbc03, - 0x21f483, - 0xd01, - 0x259b44, - 0x205842, - 0x229f43, - 0x200983, - 0x224d03, - 0x25b9c4, - 0x28c6c3, - 0x2e9c43, - 0x258104, - 0x25e043, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x23ffc3, - 0x32e885, - 0x23c7c3, - 0x205ec3, + 0x14f985, + 0x8fa0b642, + 0x114bc4, + 0x44d85, + 0x90a0f583, + 0xc3fc4, + 0x222043, + 0x200ec2, + 0x214883, + 0x3c8a03, + 0x90e4acc3, + 0x305103, + 0x2e7906, + 0x198285, + 0x1619303, + 0x1bf3c5, + 0x14f985, + 0x1519cb, + 0x1c3448, + 0x8fe0dcc8, + 0x5aec7, + 0x903c488a, + 0x10210c, + 0x1c3247, + 0x1a4045, + 0x907ecf49, + 0x2facd, + 0x8a3c2, + 0x122182, + 0xc01, + 0x103e84, + 0xbf58a, + 0x833c7, + 0x16dc4, + 0x16e03, + 0x16e04, + 0x91604042, + 0x91a00b02, + 0x91e01d42, + 0x922016c2, + 0x9260f202, + 0x92a03d82, + 0xf5d87, + 0x92e0b642, + 0x93218402, + 0x9362b602, + 0x93a101c2, + 0x221403, + 0x36604, + 0x93f008c8, + 0x239cc3, + 0x94219482, + 0x727c8, + 0x94603f82, + 0x871c7, + 0x1c1087, + 0x94a00042, + 0x94e04142, + 0x95200182, + 0x95606502, + 0x95a13f82, + 0x95e005c2, + 0x1a8385, + 0x21e503, + 0x3cc144, + 0x96200702, + 0x9661c4c2, + 0x96a03e02, + 0x9bc0b, + 0x96e03f02, + 0x976593c2, + 0x97a00ec2, + 0x97e024c2, + 0xa2388, + 0x9822ab02, + 0x98601942, + 0x98a0d3c2, + 0x98e82182, + 0x99203642, + 0x99609082, + 0x99a01f42, + 0x99e12b42, + 0x9a209882, + 0x9a60b482, + 0x149204, + 0x23d1c3, + 0x9aa0b342, + 0x9ae1a182, + 0x9b206a42, + 0x9b6006c2, + 0x9ba003c2, + 0x9be07002, + 0x104c48, + 0xac107, + 0x9c205442, + 0x9c6026c2, + 0x9ca06382, + 0x9ce213c2, + 0x16018c, + 0x9d2021c2, + 0x9d62ebc2, + 0x9da07182, + 0x9de07882, + 0x9e20b382, + 0x9e609142, + 0x9ea0d442, + 0x9ee138c2, + 0x9f28c442, + 0x9f68cd82, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x24b03, + 0xcd883, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x9720de83, + 0x224b03, + 0x3b8384, + 0x366886, + 0x310783, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x378049, + 0x206282, + 0x370903, + 0x2d5c43, + 0x20cac5, + 0x207783, + 0x20de83, + 0x224b03, + 0x2f33c3, + 0x23fac3, + 0x227b89, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x20de83, + 0x224b03, + 0x206282, + 0x206282, + 0x20de83, + 0x224b03, + 0x9fe1a043, + 0x226783, + 0x3a8183, + 0x214e43, + 0x214883, + 0x24acc3, + 0x1c3448, + 0x20b642, + 0x21a043, + 0x214883, + 0x24acc3, + 0x14e5c2, + 0x21a043, + 0x226783, + 0x20f583, + 0xa0913002, + 0x214e43, + 0x214883, + 0x24acc3, + 0xcc1, + 0x2346c4, + 0x262603, + 0x20b642, + 0x21a043, + 0x3bfcc3, + 0x226783, + 0x2607c4, + 0x204703, + 0x20f583, + 0x25c204, + 0x20bc83, + 0x214e43, + 0x214883, + 0x208c43, + 0x24acc3, + 0x240f03, + 0x2423c3, + 0x33a505, + 0x23fac3, + 0x200f83, 0x882, - 0xbc03, - 0x205842, - 0x229f43, - 0x3ce883, - 0x2127c3, - 0x21f483, + 0x20b642, + 0x21a043, + 0x20de83, + 0x214883, + 0x24acc3, 0x2000c2, - 0x258843, - 0x7ffc8, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x2389c6, - 0x258104, - 0x25e043, - 0x222d84, - 0x2127c3, - 0x21f483, - 0x202783, - 0x45c4, - 0xb90c2, - 0x229f43, - 0x5483, - 0x224d03, - 0x26c2, - 0x2127c3, - 0x21f483, - 0x76c04, - 0x762c4, - 0xfc2, - 0x1489e07, - 0x187887, - 0x229f43, - 0x332c6, - 0x224d03, - 0x2e9c43, - 0xf8986, - 0x2127c3, - 0x21f483, - 0x32bbc8, - 0x32fd49, - 0x340f89, - 0x34b788, - 0x3a6908, - 0x3a6909, - 0x3254ca, - 0x362f8a, - 0x3a0d8a, - 0x3a8fca, - 0x3dc94a, - 0x3ea14b, - 0x230a4d, - 0x248e4f, - 0x36ea90, - 0x36668d, - 0x38b00c, - 0x3a8d0b, - 0x1a20c7, - 0x1299ce, - 0x12cd8a, - 0x12fa49, - 0x140f89, - 0x164fc9, - 0x16520a, - 0x16de09, - 0x16e789, - 0x17014b, - 0x29b08, - 0x10b448, - 0x14abc9, - 0x1498307, - 0xe3f05, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x1f483, + 0x20bec3, + 0x1c3448, + 0x21a043, + 0x226783, + 0x20f583, + 0x23c686, + 0x25c204, + 0x20bc83, + 0x225a04, + 0x214883, + 0x24acc3, + 0x205443, + 0x11d44, + 0x16e3c2, + 0x21a043, + 0x24dc3, + 0x226783, + 0xec2, + 0x214883, + 0x24acc3, + 0x791c4, + 0x78884, + 0x19c2, + 0x1568287, + 0x152347, + 0x21a043, + 0x38286, + 0x226783, + 0x20f583, + 0xfda46, + 0x214883, + 0x24acc3, + 0x337788, + 0x33b209, + 0x34a749, + 0x354348, + 0x3a7d88, + 0x3a7d89, + 0x33060a, + 0x369eca, + 0x3a280a, + 0x3a8f8a, + 0x3de04a, + 0x3ede8b, + 0x365a4d, + 0x24a2cf, + 0x24fe10, + 0x36e74d, + 0x38ca8c, + 0x3a8ccb, + 0x1a3447, + 0x13454e, + 0x138a0a, + 0x13af09, + 0x14a749, + 0x16c949, + 0x16cb8a, + 0x176f49, + 0x177889, + 0x17898b, + 0x19c08, + 0x112e48, + 0x59d09, + 0x149e747, + 0xe9545, + 0x21a043, + 0x226783, + 0x20f583, + 0x214e43, + 0x214883, + 0x24acc3, + 0x4acc3, 0x2000c2, - 0x236d45, - 0x228083, - 0xa2e05842, - 0x224d03, - 0x2e9c43, - 0x3664c7, - 0x21b643, - 0x219c03, - 0x2127c3, - 0x25c743, - 0x21c043, - 0x204003, - 0x20bc03, - 0x21f483, - 0x25ce86, - 0x208ec2, - 0x205ec3, - 0x7ffc8, + 0x23ac85, + 0x222003, + 0xa4e0b642, + 0x226783, + 0x20f583, + 0x2c1a07, + 0x21e803, + 0x214e43, + 0x214883, + 0x262243, + 0x21c243, + 0x20f0c3, + 0x208c43, + 0x24acc3, + 0x3ae506, + 0x249902, + 0x200f83, + 0x1c3448, 0x2000c2, - 0x258843, - 0x205842, - 0x229f43, - 0x224d03, - 0x2e9c43, - 0x258104, - 0x219c03, - 0x2127c3, - 0x21f483, - 0x217083, - 0x187887, - 0x12c82, - 0x9744, - 0x151d546, + 0x20bec3, + 0x20b642, + 0x21a043, + 0x226783, + 0x20f583, + 0x25c204, + 0x214e43, + 0x214883, + 0x24acc3, + 0x219303, + 0x152347, + 0x13c02, + 0x148744, + 0x153a806, 0x2000c2, - 0x205842, - 0x2e9c43, - 0x219c03, - 0x21f483, + 0x20b642, + 0x20f583, + 0x214e43, + 0x24acc3, } // children is the list of nodes' children, the parent's wildcard bit and the @@ -9862,659 +9896,667 @@ var children = [...]uint32{ 0x40000000, 0x50000000, 0x60000000, - 0x17a05e2, - 0x17a45e8, - 0x17a85e9, - 0x17cc5ea, - 0x19245f3, - 0x193c649, - 0x195064f, - 0x1968654, - 0x198865a, - 0x19ac662, - 0x19c466b, - 0x1a04671, - 0x1a08681, - 0x1a30682, - 0x1a3468c, - 0x1a4c68d, - 0x1a50693, - 0x1a54694, - 0x1a94695, - 0x1a986a5, - 0x1a9c6a6, - 0x21aa06a7, - 0x61aa86a8, - 0x21ab06aa, - 0x1af86ac, - 0x1b006be, - 0x21b046c0, - 0x1b286c1, - 0x1b2c6ca, - 0x1b406cb, - 0x1b446d0, - 0x1b646d1, - 0x1b946d9, - 0x1bb06e5, - 0x1bb86ec, - 0x1be06ee, - 0x1bf86f8, - 0x21bfc6fe, - 0x21c006ff, - 0x1c04700, - 0x1c9c701, - 0x1cb0727, - 0x1cc472c, - 0x1cfc731, - 0x1d0c73f, - 0x1d20743, - 0x1d38748, - 0x1ddc74e, - 0x2010777, - 0x2018804, - 0x2201c806, - 0x22020807, - 0x208c808, - 0x20f8823, - 0x211083e, - 0x2124844, - 0x2128849, - 0x212c84a, - 0x213484b, - 0x214c84d, - 0x2150853, - 0x2174854, - 0x21c485d, - 0x21c8871, - 0x221cc872, - 0x21ec873, - 0x21f087b, - 0x21f487c, - 0x222087d, - 0x62224888, - 0x2222c889, - 0x2223088b, - 0x227488c, - 0x6227889d, - 0x229489e, - 0x22ec8a5, - 0x222f08bb, - 0x222f48bc, - 0x222fc8bd, - 0x223008bf, - 0x223048c0, - 0x23088c1, - 0x23108c2, - 0x23148c4, - 0x223208c5, - 0x223288c8, - 0x23388ca, - 0x23488ce, - 0x23fc8d2, - 0x24008ff, - 0x22410900, - 0x22414904, - 0x2241c905, - 0x2474907, - 0x247891d, - 0x247c91e, - 0x248091f, - 0x2a4c920, - 0x2a50a93, - 0x22af8a94, - 0x22afcabe, - 0x22b00abf, - 0x22b0cac0, - 0x22b10ac3, - 0x22b1cac4, - 0x22b20ac7, - 0x22b24ac8, - 0x22b28ac9, - 0x22b2caca, - 0x22b30acb, - 0x22b3cacc, + 0x17ac5e4, + 0x17b05eb, + 0x17b45ec, + 0x17d45ed, + 0x192c5f5, + 0x194064b, + 0x1954650, + 0x1968655, + 0x198465a, + 0x19a8661, + 0x19c066a, + 0x1a0c670, + 0x1a10683, + 0x1a38684, + 0x1a3c68e, + 0x1a5468f, + 0x1a58695, + 0x1a5c696, + 0x1aa0697, + 0x1aa46a8, + 0x1aa86a9, + 0x21aac6aa, + 0x61ab46ab, + 0x21abc6ad, + 0x1b046af, + 0x1b106c1, + 0x21b146c4, + 0x1b386c5, + 0x1b3c6ce, + 0x1b506cf, + 0x1b546d4, + 0x1b746d5, + 0x1ba46dd, + 0x1bc46e9, + 0x1bcc6f1, + 0x1bf46f3, + 0x1c106fd, + 0x21c14704, + 0x21c18705, + 0x1c1c706, + 0x1cb4707, + 0x1cc872d, + 0x1cdc732, + 0x1d14737, + 0x1d24745, + 0x1d38749, + 0x1d5074e, + 0x1df4754, + 0x202877d, + 0x203080a, + 0x2203480c, + 0x2203880d, + 0x20a480e, + 0x2110829, + 0x2128844, + 0x213c84a, + 0x214084f, + 0x2144850, + 0x214c851, + 0x2164853, + 0x2168859, + 0x218485a, + 0x21d8861, + 0x21dc876, + 0x221e0877, + 0x2200878, + 0x2204880, + 0x2208881, + 0x2238882, + 0x6223c88e, + 0x2224488f, + 0x22248891, + 0x228c892, + 0x622908a3, + 0x22a48a4, + 0x23048a9, + 0x223088c1, + 0x2230c8c2, + 0x223148c3, + 0x223188c5, + 0x2231c8c6, + 0x23208c7, + 0x23288c8, + 0x232c8ca, + 0x223388cb, + 0x223408ce, + 0x23508d0, + 0x23608d4, + 0x24148d8, + 0x2418905, + 0x22428906, + 0x2242c90a, + 0x2243490b, + 0x249090d, + 0x2494924, + 0x2498925, + 0x249c926, + 0x2a90927, + 0x2a94aa4, + 0x22b3caa5, 0x22b40acf, - 0x22b4cad0, - 0x22b50ad3, + 0x22b44ad0, + 0x22b50ad1, 0x22b54ad4, - 0x22b58ad5, - 0x22b64ad6, + 0x22b60ad5, + 0x22b64ad8, 0x22b68ad9, - 0x22b74ada, - 0x22b78add, - 0x22b7cade, - 0x22b80adf, - 0x2b84ae0, - 0x22b88ae1, - 0x22b94ae2, + 0x22b6cada, + 0x22b70adb, + 0x22b74adc, + 0x22b80add, + 0x22b84ae0, + 0x22b90ae1, + 0x22b94ae4, 0x22b98ae5, - 0x2b9cae6, - 0x2ba4ae7, - 0x62bb0ae9, - 0x2bf4aec, - 0x22c14afd, - 0x22c18b05, - 0x22c1cb06, - 0x22c24b07, - 0x22c2cb09, - 0x22c30b0b, - 0x22c34b0c, - 0x22c3cb0d, - 0x22c40b0f, - 0x22c44b10, - 0x2c48b11, - 0x22c74b12, - 0x22c78b1d, + 0x22b9cae6, + 0x22ba8ae7, + 0x22bacaea, + 0x22bb8aeb, + 0x22bbcaee, + 0x22bc0aef, + 0x22bc4af0, + 0x2bc8af1, + 0x22bccaf2, + 0x22bd8af3, + 0x22bdcaf6, + 0x2be0af7, + 0x2be8af8, + 0x62bf4afa, + 0x22bfcafd, + 0x2c40aff, + 0x22c60b10, + 0x22c64b18, + 0x22c68b19, + 0x22c70b1a, + 0x22c78b1c, 0x22c7cb1e, - 0x2c80b1f, - 0x22c84b20, - 0x22c88b21, - 0x22c94b22, - 0x22c98b25, - 0x2c9cb26, - 0x2ca4b27, - 0x2cacb29, - 0x2cb0b2b, - 0x2cccb2c, - 0x2ce4b33, + 0x22c80b1f, + 0x22c88b20, + 0x22c8cb22, + 0x22c90b23, + 0x2c94b24, + 0x22cc0b25, + 0x22cc4b30, + 0x22cc8b31, + 0x2cccb32, + 0x22cd0b33, + 0x22cd4b34, + 0x22ce0b35, + 0x22ce4b38, 0x2ce8b39, - 0x2cf8b3a, - 0x2d04b3e, - 0x2d38b41, - 0x2d40b4e, - 0x22d44b50, - 0x2d5cb51, - 0x22d64b57, - 0x22d68b59, - 0x22d70b5a, - 0x2e74b5c, - 0x22e78b9d, - 0x2e80b9e, - 0x2e84ba0, - 0x22e88ba1, - 0x2e8cba2, - 0x2ed0ba3, - 0x2ed4bb4, - 0x2ed8bb5, - 0x2ef0bb6, - 0x2f04bbc, - 0x2f2cbc1, - 0x2f54bcb, - 0x2f58bd5, - 0x62f5cbd6, - 0x2f90bd7, - 0x2f94be4, - 0x22f98be5, - 0x2f9cbe6, - 0x2fc4be7, - 0x2fc8bf1, - 0x2fecbf2, - 0x2ff0bfb, - 0x3004bfc, - 0x3008c01, - 0x300cc02, - 0x302cc03, - 0x304cc0b, - 0x23050c13, + 0x2cf0b3a, + 0x2cfcb3c, + 0x2d04b3f, + 0x2d20b41, + 0x2d38b48, + 0x2d3cb4e, + 0x2d4cb4f, + 0x2d58b53, + 0x2d8cb56, + 0x2d94b63, + 0x22d98b65, + 0x2db0b66, + 0x22db8b6c, + 0x22dbcb6e, + 0x22dc4b6f, + 0x2ed0b71, + 0x22ed4bb4, + 0x2edcbb5, + 0x2ee0bb7, + 0x22ee4bb8, + 0x2ee8bb9, + 0x2f34bba, + 0x2f38bcd, + 0x2f3cbce, + 0x2f58bcf, + 0x2f6cbd6, + 0x2f94bdb, + 0x2fbcbe5, + 0x2fc0bef, + 0x62fc4bf0, + 0x2ff4bf1, + 0x2ff8bfd, + 0x22ffcbfe, + 0x3000bff, + 0x3028c00, + 0x302cc0a, + 0x3050c0b, 0x3054c14, - 0x23058c15, - 0x305cc16, - 0x3060c17, - 0x3064c18, - 0x3068c19, - 0x3084c1a, - 0x23088c21, - 0x23090c22, - 0x3094c24, - 0x30bcc25, - 0x30d0c2f, - 0x3144c34, - 0x3150c51, - 0x3154c54, - 0x3174c55, - 0x318cc5d, - 0x3190c63, - 0x31a4c64, - 0x31bcc69, - 0x31dcc6f, - 0x31f4c77, - 0x31fcc7d, - 0x3218c7f, - 0x3234c86, - 0x3238c8d, - 0x3264c8e, - 0x3284c99, - 0x32a4ca1, - 0x32a8ca9, - 0x3310caa, - 0x3330cc4, - 0x3358ccc, - 0x335ccd6, - 0x3374cd7, - 0x33b8cdd, - 0x3438cee, - 0x3478d0e, - 0x347cd1e, - 0x3488d1f, - 0x34a8d22, - 0x34b0d2a, - 0x34d4d2c, - 0x34dcd35, - 0x351cd37, - 0x3570d47, - 0x3574d5c, - 0x3678d5d, - 0x23680d9e, - 0x23684da0, - 0x23688da1, - 0x2368cda2, - 0x23690da3, - 0x3694da4, - 0x23698da5, - 0x2369cda6, - 0x236a0da7, - 0x36a4da8, - 0x236a8da9, - 0x236b8daa, - 0x236bcdae, - 0x236c0daf, - 0x236c4db0, - 0x236c8db1, - 0x236ccdb2, - 0x236d0db3, - 0x36e8db4, - 0x370cdba, - 0x372cdc3, - 0x3da0dcb, - 0x23da4f68, - 0x23da8f69, - 0x23dacf6a, - 0x23db0f6b, - 0x3dc0f6c, - 0x3de0f70, - 0x3fa0f78, - 0x4070fe8, - 0x40e101c, - 0x4139038, - 0x422104e, - 0x4279088, - 0x42b509e, - 0x43b10ad, - 0x447d0ec, - 0x451511f, - 0x45a5145, - 0x4609169, - 0x4841182, - 0x48f9210, - 0x49c523e, - 0x4a11271, - 0x4a99284, - 0x4ad52a6, - 0x4b252b5, - 0x4b9d2c9, - 0x64ba12e7, - 0x64ba52e8, - 0x64ba92e9, - 0x4c252ea, - 0x4c81309, - 0x4cfd320, - 0x4d7533f, - 0x4df535d, - 0x4e6137d, - 0x4f8d398, - 0x4fe53e3, - 0x64fe93f9, - 0x50813fa, - 0x5089420, - 0x2508d422, - 0x5115423, - 0x5161445, - 0x51c9458, - 0x5271472, - 0x533949c, - 0x53a14ce, - 0x54b54e8, - 0x654b952d, - 0x654bd52e, - 0x551952f, - 0x5575546, - 0x560555d, - 0x5681581, - 0x56c55a0, - 0x57a95b1, - 0x57dd5ea, - 0x583d5f7, - 0x58b160f, - 0x593962c, - 0x597964e, - 0x59e965e, - 0x659ed67a, - 0x5a1567b, - 0x5a19685, - 0x5a49686, - 0x5a65692, - 0x5aa9699, - 0x5ab96aa, - 0x5ad16ae, - 0x5b496b4, - 0x5b516d2, - 0x5b6d6d4, - 0x5b816db, - 0x5ba56e0, - 0x25ba96e9, - 0x5bd56ea, - 0x5bd96f5, - 0x5be16f6, + 0x306cc15, + 0x3070c1b, + 0x3074c1c, + 0x3094c1d, + 0x30b4c25, + 0x230b8c2d, + 0x30bcc2e, + 0x230c0c2f, + 0x30c4c30, + 0x30c8c31, + 0x30ccc32, + 0x30d0c33, + 0x30f0c34, + 0x230f4c3c, + 0x230fcc3d, + 0x3100c3f, + 0x3128c40, + 0x313cc4a, + 0x31bcc4f, + 0x31c4c6f, + 0x31c8c71, + 0x31e4c72, + 0x31fcc79, + 0x3200c7f, + 0x3214c80, + 0x322cc85, + 0x3248c8b, + 0x3260c92, + 0x3268c98, + 0x3284c9a, + 0x329cca1, + 0x32a0ca7, + 0x32c8ca8, + 0x32e8cb2, + 0x3304cba, + 0x3308cc1, + 0x336ccc2, + 0x3388cdb, + 0x33b0ce2, + 0x33b4cec, + 0x33ccced, + 0x3410cf3, + 0x3490d04, + 0x34d0d24, + 0x34d4d34, + 0x34e0d35, + 0x3500d38, + 0x3508d40, + 0x3528d42, + 0x3530d4a, + 0x3574d4c, + 0x35c8d5d, + 0x35ccd72, + 0x36dcd73, + 0x236e4db7, + 0x236e8db9, + 0x236ecdba, + 0x236f0dbb, + 0x236f4dbc, + 0x36f8dbd, + 0x236fcdbe, + 0x23700dbf, + 0x23704dc0, + 0x3708dc1, + 0x370cdc2, + 0x23710dc3, + 0x23720dc4, + 0x23728dc8, + 0x23730dca, + 0x23734dcc, + 0x2373cdcd, + 0x23740dcf, + 0x23744dd0, + 0x375cdd1, + 0x3780dd7, + 0x37a0de0, + 0x3e18de8, + 0x23e1cf86, + 0x23e20f87, + 0x23e24f88, + 0x23e28f89, + 0x3e38f8a, + 0x3e58f8e, + 0x4018f96, + 0x40e9006, + 0x415903a, + 0x41b1056, + 0x429906c, + 0x42f10a6, + 0x432d0bc, + 0x44290cb, + 0x44f510a, + 0x458d13d, + 0x461d163, + 0x4681187, + 0x48b91a0, + 0x497122e, + 0x4a3d25c, + 0x4a8928f, + 0x4b112a2, + 0x4b4d2c4, + 0x4b9d2d3, + 0x4c152e7, + 0x64c19305, + 0x64c1d306, + 0x64c21307, + 0x4c9d308, + 0x4cf9327, + 0x4d7533e, + 0x4ded35d, + 0x4e6d37b, + 0x4ed939b, + 0x50053b6, + 0x505d401, + 0x65061417, + 0x50f9418, + 0x510143e, + 0x25105440, + 0x518d441, + 0x51d9463, + 0x5241476, + 0x52e9490, + 0x53b14ba, + 0x54194ec, + 0x552d506, + 0x6553154b, + 0x6553554c, + 0x559154d, + 0x55ed564, + 0x567d57b, + 0x56f959f, + 0x573d5be, + 0x58215cf, + 0x5855608, + 0x58b5615, + 0x592962d, + 0x59b164a, + 0x59f166c, + 0x5a6167c, + 0x65a65698, + 0x5a89699, + 0x5a8d6a2, + 0x5abd6a3, + 0x5ad96af, + 0x5b1d6b6, + 0x5b2d6c7, + 0x5b456cb, + 0x5bbd6d1, + 0x5bc56ef, + 0x5be16f1, 0x5bf56f8, 0x5c156fd, - 0x5c25705, - 0x5c31709, - 0x5c6d70c, - 0x5c7171b, - 0x5c7971c, - 0x5c8d71e, - 0x5cb5723, - 0x5cc172d, - 0x5cc9730, - 0x5cf1732, - 0x5d1573c, - 0x5d2d745, - 0x5d3174b, - 0x5d3974c, - 0x5d4174e, - 0x5d55750, - 0x5e11755, - 0x5e15784, - 0x5e1d785, - 0x5e21787, - 0x5e45788, - 0x5e69791, - 0x5e8579a, - 0x5e997a1, - 0x5ead7a6, - 0x5eb57ab, - 0x5ebd7ad, - 0x5ec57af, - 0x5edd7b1, - 0x5eed7b7, - 0x5ef17bb, - 0x5f0d7bc, - 0x67957c3, - 0x67cd9e5, - 0x67f99f3, - 0x68159fe, - 0x6839a05, - 0x6859a0e, - 0x689da16, - 0x68a5a27, - 0x268a9a29, - 0x268ada2a, - 0x68b5a2b, - 0x6ae5a2d, - 0x6af9ab9, - 0x26afdabe, - 0x6b01abf, - 0x6b09ac0, - 0x26b15ac2, - 0x26b25ac5, - 0x26b2dac9, - 0x26b39acb, - 0x6b3dace, - 0x26b41acf, - 0x26b59ad0, - 0x26b61ad6, - 0x26b69ad8, + 0x25c19705, + 0x5c41706, + 0x5c45710, + 0x5c4d711, + 0x5c61713, + 0x5c7d718, + 0x5c8571f, + 0x5c91721, + 0x5c95724, + 0x5cd1725, + 0x5cd5734, + 0x5cdd735, + 0x5cf1737, + 0x5d1973c, + 0x5d21746, + 0x5d25748, + 0x5d49749, + 0x5d6d752, + 0x5d8575b, + 0x5d89761, + 0x5d91762, + 0x5d99764, + 0x5dad766, + 0x5e6976b, + 0x5e6d79a, + 0x5e7579b, + 0x5e7979d, + 0x5e9d79e, + 0x5ebd7a7, + 0x5ed97af, + 0x5ee97b6, + 0x5efd7ba, + 0x5f057bf, + 0x5f0d7c1, + 0x5f117c3, + 0x5f197c4, + 0x5f357c6, + 0x5f457cd, + 0x5f497d1, + 0x5f657d2, + 0x67ed7d9, + 0x68259fb, + 0x6851a09, + 0x6869a14, + 0x688da1a, + 0x68ada23, + 0x68f1a2b, + 0x68f9a3c, + 0x268fda3e, + 0x26901a3f, + 0x6909a40, + 0x6b4da42, + 0x26b51ad3, + 0x26b55ad4, + 0x6b69ad5, 0x26b6dada, - 0x26b75adb, - 0x6b79add, - 0x26b7dade, - 0x6b81adf, - 0x26b8dae0, - 0x6b95ae3, - 0x6ba9ae5, + 0x6b71adb, + 0x6b79adc, + 0x26b85ade, + 0x26b95ae1, + 0x26b9dae5, + 0x26ba9ae7, 0x6badaea, - 0x6bd5aeb, - 0x6c11af5, - 0x6c15b04, - 0x6c4db05, - 0x6c71b13, - 0x77c9b1c, - 0x77cddf2, - 0x77d1df3, - 0x277d5df4, - 0x77d9df5, - 0x277dddf6, - 0x77e1df7, - 0x277eddf8, - 0x77f1dfb, - 0x77f5dfc, - 0x277f9dfd, - 0x77fddfe, - 0x27805dff, - 0x7809e01, - 0x780de02, - 0x2781de03, - 0x7821e07, - 0x7825e08, - 0x7829e09, - 0x782de0a, - 0x27831e0b, - 0x7835e0c, - 0x7839e0d, - 0x783de0e, - 0x7841e0f, - 0x27849e10, - 0x784de12, + 0x26bb1aeb, + 0x26bc9aec, + 0x26bd1af2, + 0x26bd9af4, + 0x26bddaf6, + 0x26be5af7, + 0x6be9af9, + 0x26bedafa, + 0x6bf1afb, + 0x26bfdafc, + 0x6c05aff, + 0x6c19b01, + 0x6c1db06, + 0x6c45b07, + 0x6c81b11, + 0x6c85b20, + 0x6cbdb21, + 0x6ce5b2f, + 0x7841b39, + 0x7845e10, + 0x7849e11, + 0x2784de12, 0x7851e13, - 0x7855e14, - 0x27859e15, - 0x785de16, - 0x27865e17, - 0x27869e19, - 0x7885e1a, - 0x789de21, - 0x78e1e27, - 0x78e5e38, - 0x7909e39, - 0x791de42, - 0x7921e47, - 0x7925e48, - 0x7ae9e49, - 0x27aedeba, - 0x27af5ebb, - 0x27af9ebd, - 0x27afdebe, - 0x7b05ebf, - 0x7be1ec1, - 0x27bedef8, - 0x27bf1efb, - 0x27bf5efc, - 0x27bf9efd, - 0x7bfdefe, - 0x7c29eff, - 0x7c39f0a, - 0x7c3df0e, - 0x7c61f0f, - 0x7c6df18, - 0x7c8df1b, - 0x7c91f23, - 0x7cc9f24, - 0x7f85f32, - 0x8041fe1, - 0x8046010, - 0x804a011, - 0x805e012, - 0x8062017, - 0x8096018, - 0x80ce025, - 0x280d2033, - 0x80ee034, - 0x811603b, - 0x811a045, - 0x813e046, - 0x815a04f, - 0x8182056, - 0x8192060, - 0x8196064, - 0x819a065, - 0x81d6066, - 0x81e2075, - 0x820a078, - 0x82ae082, - 0x282b20ab, - 0x82b60ac, - 0x82c60ad, - 0x282ca0b1, - 0x82de0b2, - 0x82fa0b7, - 0x831a0be, - 0x831e0c6, - 0x83320c7, - 0x83460cc, - 0x834a0d1, - 0x83520d2, - 0x83560d4, - 0x83760d5, - 0x84220dd, - 0x8426108, - 0x8446109, - 0x8472111, - 0x2848211c, - 0x8486120, - 0x8496121, - 0x84d6125, - 0x84de135, - 0x84f2137, - 0x851213c, - 0x852e144, - 0x853a14b, - 0x855a14e, - 0x858e156, - 0x8596163, - 0x866a165, - 0x866e19a, - 0x868219b, - 0x868a1a0, - 0x86a21a2, - 0x86a61a8, - 0x86b21a9, - 0x86be1ac, - 0x86c21af, - 0x86ca1b0, - 0x86ce1b2, - 0x86f21b3, - 0x87321bc, - 0x87361cc, - 0x87561cd, - 0x87aa1d5, - 0x87da1ea, - 0x287de1f6, - 0x87e61f7, - 0x883e1f9, - 0x884220f, - 0x8846210, - 0x884a211, - 0x888e212, - 0x889e223, - 0x88de227, - 0x88e2237, - 0x8912238, - 0x8a5e244, - 0x8a86297, - 0x8ac22a1, - 0x8aea2b0, - 0x28af22ba, - 0x28af62bc, - 0x28afa2bd, - 0x8b022be, - 0x8b0e2c0, - 0x8c322c3, - 0x8c3e30c, - 0x8c4a30f, - 0x8c56312, - 0x8c62315, - 0x8c6e318, - 0x8c7a31b, - 0x8c8631e, - 0x8c92321, - 0x8c9e324, - 0x8caa327, - 0x28cae32a, - 0x8cba32b, - 0x8cc632e, - 0x8cd2331, - 0x8cda334, + 0x27855e14, + 0x7859e15, + 0x27865e16, + 0x7869e19, + 0x786de1a, + 0x27871e1b, + 0x7875e1c, + 0x2787de1d, + 0x7881e1f, + 0x7885e20, + 0x27895e21, + 0x7899e25, + 0x789de26, + 0x78a1e27, + 0x78a5e28, + 0x278a9e29, + 0x78ade2a, + 0x78b1e2b, + 0x78b5e2c, + 0x78b9e2d, + 0x278c1e2e, + 0x78c5e30, + 0x78c9e31, + 0x78cde32, + 0x278d1e33, + 0x78d5e34, + 0x278dde35, + 0x278e1e37, + 0x78fde38, + 0x790de3f, + 0x794de43, + 0x7951e53, + 0x7975e54, + 0x7989e5d, + 0x798de62, + 0x7999e63, + 0x7b61e66, + 0x27b65ed8, + 0x27b6ded9, + 0x27b71edb, + 0x27b75edc, + 0x7b7dedd, + 0x7c59edf, + 0x27c65f16, + 0x27c69f19, + 0x27c6df1a, + 0x27c71f1b, + 0x7c75f1c, + 0x7ca1f1d, + 0x7cb9f28, + 0x7cbdf2e, + 0x7cddf2f, + 0x7ce9f37, + 0x7d09f3a, + 0x7d0df42, + 0x7d45f43, + 0x800df51, + 0x80ca003, + 0x80ce032, + 0x80d2033, + 0x80e6034, + 0x80ea039, + 0x811e03a, + 0x8156047, + 0x2815a055, + 0x8176056, + 0x819a05d, + 0x819e066, + 0x81be067, + 0x81da06f, + 0x81fe076, + 0x820e07f, + 0x8212083, + 0x8216084, + 0x824e085, + 0x825a093, + 0x8282096, + 0x282860a0, + 0x83220a1, + 0x283260c8, + 0x832a0c9, + 0x833a0ca, + 0x2833e0ce, + 0x83520cf, + 0x836e0d4, + 0x838e0db, + 0x83920e3, + 0x83a60e4, + 0x83ba0e9, + 0x83be0ee, + 0x83c60ef, + 0x83ca0f1, + 0x83ea0f2, + 0x84a20fa, + 0x284a6128, + 0x84aa129, + 0x84ca12a, + 0x84f6132, + 0x2850613d, + 0x850a141, + 0x8516142, + 0x855a145, + 0x855e156, + 0x8572157, + 0x859215c, + 0x85ae164, + 0x85ba16b, + 0x85da16e, + 0x860a176, + 0x8616182, + 0x86e6185, + 0x86ea1b9, + 0x86fe1ba, + 0x87021bf, + 0x871a1c0, + 0x871e1c6, + 0x872a1c7, + 0x87361ca, + 0x873a1cd, + 0x87421ce, + 0x87461d0, + 0x876a1d1, + 0x87a61da, + 0x87aa1e9, + 0x87ca1ea, + 0x881e1f2, + 0x884e207, + 0x28852213, + 0x885a214, + 0x88b2216, + 0x88b622c, + 0x88ba22d, + 0x88be22e, + 0x890222f, + 0x8912240, + 0x894e244, + 0x8952253, + 0x8982254, + 0x8ace260, + 0x8af22b3, + 0x8b322bc, + 0x8b622cc, + 0x28b6a2d8, + 0x28b6e2da, + 0x28b722db, + 0x8b7a2dc, + 0x8b862de, + 0x8caa2e1, + 0x8cb632a, + 0x8cc232d, + 0x8cce330, + 0x8cda333, 0x8ce6336, 0x8cf2339, 0x8cfe33c, 0x8d0a33f, 0x8d16342, 0x8d22345, - 0x8d2e348, - 0x8d3a34b, - 0x8d4634e, - 0x8d52351, + 0x28d26348, + 0x8d32349, + 0x8d3e34c, + 0x8d4a34f, + 0x8d52352, 0x8d5e354, - 0x8d8a357, - 0x8d96362, - 0x8da2365, - 0x8dae368, - 0x8dba36b, - 0x8dc636e, - 0x8dce371, - 0x8dda373, - 0x8de6376, - 0x8df2379, - 0x8dfe37c, - 0x8e0a37f, - 0x8e16382, - 0x8e22385, - 0x8e2e388, - 0x8e3a38b, - 0x8e4638e, + 0x8d6a357, + 0x8d7635a, + 0x8d8235d, + 0x8d8e360, + 0x8d9a363, + 0x8da6366, + 0x8db2369, + 0x8dbe36c, + 0x8dca36f, + 0x8dd6372, + 0x8e02375, + 0x8e0e380, + 0x8e1a383, + 0x8e26386, + 0x8e32389, + 0x8e3e38c, + 0x8e4638f, 0x8e52391, - 0x8e5a394, - 0x8e66396, - 0x8e6e399, - 0x8e7a39b, - 0x8e8639e, - 0x8e923a1, - 0x8e9e3a4, - 0x8eaa3a7, - 0x8eb63aa, - 0x8ec23ad, - 0x8ece3b0, - 0x8ed23b3, + 0x8e5e394, + 0x8e6a397, + 0x8e7639a, + 0x8e8239d, + 0x8e8e3a0, + 0x8e9a3a3, + 0x8ea63a6, + 0x8eb23a9, + 0x8ebe3ac, + 0x8eca3af, + 0x8ed23b2, 0x8ede3b4, - 0x8efa3b7, - 0x8efe3be, - 0x8f0e3bf, - 0x8f323c3, - 0x8f363cc, - 0x8f7a3cd, - 0x8f823de, - 0x8f963e0, - 0x8fca3e5, - 0x8fea3f2, - 0x8fee3fa, - 0x8ff63fb, - 0x901a3fd, - 0x9032406, - 0x904a40c, - 0x9062412, - 0x908a418, - 0x909e422, - 0x90b6427, - 0x90ba42d, - 0x2910242e, - 0x9106440, - 0x9132441, - 0x914244c, - 0x9156450, + 0x8ee63b7, + 0x8ef23b9, + 0x8efe3bc, + 0x8f0a3bf, + 0x8f163c2, + 0x8f223c5, + 0x8f2e3c8, + 0x8f3a3cb, + 0x8f463ce, + 0x8f4a3d1, + 0x8f563d2, + 0x8f6e3d5, + 0x8f723db, + 0x8f823dc, + 0x8fa23e0, + 0x8fa63e8, + 0x8ff63e9, + 0x8ffa3fd, + 0x900e3fe, + 0x9042403, + 0x9062410, + 0x9066418, + 0x906e419, + 0x909241b, + 0x90aa424, + 0x90c242a, + 0x90da430, + 0x9102436, + 0x9116440, + 0x912e445, + 0x913244b, + 0x2917a44c, + 0x917e45e, + 0x91aa45f, + 0x91ba46a, + 0x91ce46e, } -// max children 654 (capacity 1023) -// max text offset 31758 (capacity 32767) +// max children 662 (capacity 1023) +// max text offset 32015 (capacity 32767) // max text length 36 (capacity 63) -// max hi 9301 (capacity 16383) -// max lo 9296 (capacity 16383) +// max hi 9331 (capacity 16383) +// max lo 9326 (capacity 16383) diff --git a/vendor/golang.org/x/oauth2/google/google.go b/vendor/golang.org/x/oauth2/google/google.go index 2b631f522..ccc23ee0a 100644 --- a/vendor/golang.org/x/oauth2/google/google.go +++ b/vendor/golang.org/x/oauth2/google/google.go @@ -92,9 +92,10 @@ func JWTConfigFromJSON(jsonKey []byte, scope ...string) (*jwt.Config, error) { // JSON key file types. const ( - serviceAccountKey = "service_account" - userCredentialsKey = "authorized_user" - externalAccountKey = "external_account" + serviceAccountKey = "service_account" + userCredentialsKey = "authorized_user" + externalAccountKey = "external_account" + impersonatedServiceAccount = "impersonated_service_account" ) // credentialsFile is the unmarshalled representation of a credentials file. @@ -121,8 +122,13 @@ type credentialsFile struct { TokenURLExternal string `json:"token_url"` TokenInfoURL string `json:"token_info_url"` ServiceAccountImpersonationURL string `json:"service_account_impersonation_url"` + Delegates []string `json:"delegates"` CredentialSource externalaccount.CredentialSource `json:"credential_source"` QuotaProjectID string `json:"quota_project_id"` + WorkforcePoolUserProject string `json:"workforce_pool_user_project"` + + // Service account impersonation + SourceCredentials *credentialsFile `json:"source_credentials"` } func (f *credentialsFile) jwtConfig(scopes []string, subject string) *jwt.Config { @@ -176,8 +182,26 @@ func (f *credentialsFile) tokenSource(ctx context.Context, params CredentialsPar CredentialSource: f.CredentialSource, QuotaProjectID: f.QuotaProjectID, Scopes: params.Scopes, + WorkforcePoolUserProject: f.WorkforcePoolUserProject, } - return cfg.TokenSource(ctx), nil + return cfg.TokenSource(ctx) + case impersonatedServiceAccount: + if f.ServiceAccountImpersonationURL == "" || f.SourceCredentials == nil { + return nil, errors.New("missing 'source_credentials' field or 'service_account_impersonation_url' in credentials") + } + + ts, err := f.SourceCredentials.tokenSource(ctx, params) + if err != nil { + return nil, err + } + imp := externalaccount.ImpersonateTokenSource{ + Ctx: ctx, + URL: f.ServiceAccountImpersonationURL, + Scopes: params.Scopes, + Ts: ts, + Delegates: f.Delegates, + } + return oauth2.ReuseTokenSource(nil, imp), nil case "": return nil, errors.New("missing 'type' field in credentials") default: diff --git a/vendor/golang.org/x/oauth2/google/internal/externalaccount/basecredentials.go b/vendor/golang.org/x/oauth2/google/internal/externalaccount/basecredentials.go index a4d45d920..bc3ce5317 100644 --- a/vendor/golang.org/x/oauth2/google/internal/externalaccount/basecredentials.go +++ b/vendor/golang.org/x/oauth2/google/internal/externalaccount/basecredentials.go @@ -7,10 +7,14 @@ package externalaccount import ( "context" "fmt" - "golang.org/x/oauth2" "net/http" + "net/url" + "regexp" "strconv" + "strings" "time" + + "golang.org/x/oauth2" ) // now aliases time.Now for testing @@ -22,53 +26,127 @@ var now = func() time.Time { type Config struct { // Audience is the Secure Token Service (STS) audience which contains the resource name for the workload // identity pool or the workforce pool and the provider identifier in that pool. - Audience string + Audience string // SubjectTokenType is the STS token type based on the Oauth2.0 token exchange spec // e.g. `urn:ietf:params:oauth:token-type:jwt`. - SubjectTokenType string + SubjectTokenType string // TokenURL is the STS token exchange endpoint. - TokenURL string + TokenURL string // TokenInfoURL is the token_info endpoint used to retrieve the account related information ( // user attributes like account identifier, eg. email, username, uid, etc). This is // needed for gCloud session account identification. - TokenInfoURL string + TokenInfoURL string // ServiceAccountImpersonationURL is the URL for the service account impersonation request. This is only // required for workload identity pools when APIs to be accessed have not integrated with UberMint. ServiceAccountImpersonationURL string // ClientSecret is currently only required if token_info endpoint also // needs to be called with the generated GCP access token. When provided, STS will be // called with additional basic authentication using client_id as username and client_secret as password. - ClientSecret string + ClientSecret string // ClientID is only required in conjunction with ClientSecret, as described above. - ClientID string + ClientID string // CredentialSource contains the necessary information to retrieve the token itself, as well // as some environmental information. - CredentialSource CredentialSource + CredentialSource CredentialSource // QuotaProjectID is injected by gCloud. If the value is non-empty, the Auth libraries // will set the x-goog-user-project which overrides the project associated with the credentials. - QuotaProjectID string + QuotaProjectID string // Scopes contains the desired scopes for the returned access token. - Scopes []string + Scopes []string + // The optional workforce pool user project number when the credential + // corresponds to a workforce pool and not a workload identity pool. + // The underlying principal must still have serviceusage.services.use IAM + // permission to use the project for billing/quota. + WorkforcePoolUserProject string +} + +// Each element consists of a list of patterns. validateURLs checks for matches +// that include all elements in a given list, in that order. + +var ( + validTokenURLPatterns = []*regexp.Regexp{ + // The complicated part in the middle matches any number of characters that + // aren't period, spaces, or slashes. + regexp.MustCompile(`(?i)^[^\.\s\/\\]+\.sts\.googleapis\.com$`), + regexp.MustCompile(`(?i)^sts\.googleapis\.com$`), + regexp.MustCompile(`(?i)^sts\.[^\.\s\/\\]+\.googleapis\.com$`), + regexp.MustCompile(`(?i)^[^\.\s\/\\]+-sts\.googleapis\.com$`), + } + validImpersonateURLPatterns = []*regexp.Regexp{ + regexp.MustCompile(`^[^\.\s\/\\]+\.iamcredentials\.googleapis\.com$`), + regexp.MustCompile(`^iamcredentials\.googleapis\.com$`), + regexp.MustCompile(`^iamcredentials\.[^\.\s\/\\]+\.googleapis\.com$`), + regexp.MustCompile(`^[^\.\s\/\\]+-iamcredentials\.googleapis\.com$`), + } + validWorkforceAudiencePattern *regexp.Regexp = regexp.MustCompile(`//iam\.googleapis\.com/locations/[^/]+/workforcePools/`) +) + +func validateURL(input string, patterns []*regexp.Regexp, scheme string) bool { + parsed, err := url.Parse(input) + if err != nil { + return false + } + if !strings.EqualFold(parsed.Scheme, scheme) { + return false + } + toTest := parsed.Host + + for _, pattern := range patterns { + if pattern.MatchString(toTest) { + return true + } + } + return false +} + +func validateWorkforceAudience(input string) bool { + return validWorkforceAudiencePattern.MatchString(input) } // TokenSource Returns an external account TokenSource struct. This is to be called by package google to construct a google.Credentials. -func (c *Config) TokenSource(ctx context.Context) oauth2.TokenSource { +func (c *Config) TokenSource(ctx context.Context) (oauth2.TokenSource, error) { + return c.tokenSource(ctx, validTokenURLPatterns, validImpersonateURLPatterns, "https") +} + +// tokenSource is a private function that's directly called by some of the tests, +// because the unit test URLs are mocked, and would otherwise fail the +// validity check. +func (c *Config) tokenSource(ctx context.Context, tokenURLValidPats []*regexp.Regexp, impersonateURLValidPats []*regexp.Regexp, scheme string) (oauth2.TokenSource, error) { + valid := validateURL(c.TokenURL, tokenURLValidPats, scheme) + if !valid { + return nil, fmt.Errorf("oauth2/google: invalid TokenURL provided while constructing tokenSource") + } + + if c.ServiceAccountImpersonationURL != "" { + valid := validateURL(c.ServiceAccountImpersonationURL, impersonateURLValidPats, scheme) + if !valid { + return nil, fmt.Errorf("oauth2/google: invalid ServiceAccountImpersonationURL provided while constructing tokenSource") + } + } + + if c.WorkforcePoolUserProject != "" { + valid := validateWorkforceAudience(c.Audience) + if !valid { + return nil, fmt.Errorf("oauth2/google: workforce_pool_user_project should not be set for non-workforce pool credentials") + } + } + ts := tokenSource{ ctx: ctx, conf: c, } if c.ServiceAccountImpersonationURL == "" { - return oauth2.ReuseTokenSource(nil, ts) + return oauth2.ReuseTokenSource(nil, ts), nil } scopes := c.Scopes ts.conf.Scopes = []string{"https://www.googleapis.com/auth/cloud-platform"} - imp := impersonateTokenSource{ - ctx: ctx, - url: c.ServiceAccountImpersonationURL, - scopes: scopes, - ts: oauth2.ReuseTokenSource(nil, ts), + imp := ImpersonateTokenSource{ + Ctx: ctx, + URL: c.ServiceAccountImpersonationURL, + Scopes: scopes, + Ts: oauth2.ReuseTokenSource(nil, ts), } - return oauth2.ReuseTokenSource(nil, imp) + return oauth2.ReuseTokenSource(nil, imp), nil } // Subject token file types. @@ -78,9 +156,9 @@ const ( ) type format struct { - // Type is either "text" or "json". When not provided "text" type is assumed. + // Type is either "text" or "json". When not provided "text" type is assumed. Type string `json:"type"` - // SubjectTokenFieldName is only required for JSON format. This would be "access_token" for azure. + // SubjectTokenFieldName is only required for JSON format. This would be "access_token" for azure. SubjectTokenFieldName string `json:"subject_token_field_name"` } @@ -128,7 +206,7 @@ type baseCredentialSource interface { subjectToken() (string, error) } -// tokenSource is the source that handles external credentials. It is used to retrieve Tokens. +// tokenSource is the source that handles external credentials. It is used to retrieve Tokens. type tokenSource struct { ctx context.Context conf *Config @@ -162,7 +240,15 @@ func (ts tokenSource) Token() (*oauth2.Token, error) { ClientID: conf.ClientID, ClientSecret: conf.ClientSecret, } - stsResp, err := exchangeToken(ts.ctx, conf.TokenURL, &stsRequest, clientAuth, header, nil) + var options map[string]interface{} + // Do not pass workforce_pool_user_project when client authentication is used. + // The client ID is sufficient for determining the user project. + if conf.WorkforcePoolUserProject != "" && conf.ClientID == "" { + options = map[string]interface{}{ + "userProject": conf.WorkforcePoolUserProject, + } + } + stsResp, err := exchangeToken(ts.ctx, conf.TokenURL, &stsRequest, clientAuth, header, options) if err != nil { return nil, err } diff --git a/vendor/golang.org/x/oauth2/google/internal/externalaccount/clientauth.go b/vendor/golang.org/x/oauth2/google/internal/externalaccount/clientauth.go index 62c2e36cc..99987ce29 100644 --- a/vendor/golang.org/x/oauth2/google/internal/externalaccount/clientauth.go +++ b/vendor/golang.org/x/oauth2/google/internal/externalaccount/clientauth.go @@ -6,9 +6,10 @@ package externalaccount import ( "encoding/base64" - "golang.org/x/oauth2" "net/http" "net/url" + + "golang.org/x/oauth2" ) // clientAuthentication represents an OAuth client ID and secret and the mechanism for passing these credentials as stated in rfc6749#2.3.1. diff --git a/vendor/golang.org/x/oauth2/google/internal/externalaccount/impersonate.go b/vendor/golang.org/x/oauth2/google/internal/externalaccount/impersonate.go index 1f6009b38..8251fc85e 100644 --- a/vendor/golang.org/x/oauth2/google/internal/externalaccount/impersonate.go +++ b/vendor/golang.org/x/oauth2/google/internal/externalaccount/impersonate.go @@ -9,11 +9,12 @@ import ( "context" "encoding/json" "fmt" - "golang.org/x/oauth2" "io" "io/ioutil" "net/http" "time" + + "golang.org/x/oauth2" ) // generateAccesstokenReq is used for service account impersonation @@ -28,30 +29,44 @@ type impersonateTokenResponse struct { ExpireTime string `json:"expireTime"` } -type impersonateTokenSource struct { - ctx context.Context - ts oauth2.TokenSource +// ImpersonateTokenSource uses a source credential, stored in Ts, to request an access token to the provided URL. +// Scopes can be defined when the access token is requested. +type ImpersonateTokenSource struct { + // Ctx is the execution context of the impersonation process + // used to perform http call to the URL. Required + Ctx context.Context + // Ts is the source credential used to generate a token on the + // impersonated service account. Required. + Ts oauth2.TokenSource - url string - scopes []string + // URL is the endpoint to call to generate a token + // on behalf the service account. Required. + URL string + // Scopes that the impersonated credential should have. Required. + Scopes []string + // Delegates are the service account email addresses in a delegation chain. + // Each service account must be granted roles/iam.serviceAccountTokenCreator + // on the next service account in the chain. Optional. + Delegates []string } // Token performs the exchange to get a temporary service account token to allow access to GCP. -func (its impersonateTokenSource) Token() (*oauth2.Token, error) { +func (its ImpersonateTokenSource) Token() (*oauth2.Token, error) { reqBody := generateAccessTokenReq{ - Lifetime: "3600s", - Scope: its.scopes, + Lifetime: "3600s", + Scope: its.Scopes, + Delegates: its.Delegates, } b, err := json.Marshal(reqBody) if err != nil { return nil, fmt.Errorf("oauth2/google: unable to marshal request: %v", err) } - client := oauth2.NewClient(its.ctx, its.ts) - req, err := http.NewRequest("POST", its.url, bytes.NewReader(b)) + client := oauth2.NewClient(its.Ctx, its.Ts) + req, err := http.NewRequest("POST", its.URL, bytes.NewReader(b)) if err != nil { return nil, fmt.Errorf("oauth2/google: unable to create impersonation request: %v", err) } - req = req.WithContext(its.ctx) + req = req.WithContext(its.Ctx) req.Header.Set("Content-Type", "application/json") resp, err := client.Do(req) diff --git a/vendor/golang.org/x/oauth2/google/internal/externalaccount/sts_exchange.go b/vendor/golang.org/x/oauth2/google/internal/externalaccount/sts_exchange.go index a8a704bb4..e6fcae5fc 100644 --- a/vendor/golang.org/x/oauth2/google/internal/externalaccount/sts_exchange.go +++ b/vendor/golang.org/x/oauth2/google/internal/externalaccount/sts_exchange.go @@ -65,6 +65,9 @@ func exchangeToken(ctx context.Context, endpoint string, request *stsTokenExchan defer resp.Body.Close() body, err := ioutil.ReadAll(io.LimitReader(resp.Body, 1<<20)) + if err != nil { + return nil, err + } if c := resp.StatusCode; c < 200 || c > 299 { return nil, fmt.Errorf("oauth2/google: status code %d: %s", c, body) } diff --git a/vendor/golang.org/x/oauth2/google/internal/externalaccount/urlcredsource.go b/vendor/golang.org/x/oauth2/google/internal/externalaccount/urlcredsource.go index 91b8f2002..16dca6541 100644 --- a/vendor/golang.org/x/oauth2/google/internal/externalaccount/urlcredsource.go +++ b/vendor/golang.org/x/oauth2/google/internal/externalaccount/urlcredsource.go @@ -9,10 +9,11 @@ import ( "encoding/json" "errors" "fmt" - "golang.org/x/oauth2" "io" "io/ioutil" "net/http" + + "golang.org/x/oauth2" ) type urlCredentialSource struct { diff --git a/vendor/golang.org/x/sys/cpu/asm_aix_ppc64.s b/vendor/golang.org/x/sys/cpu/asm_aix_ppc64.s index 6b4027b33..db9171c2e 100644 --- a/vendor/golang.org/x/sys/cpu/asm_aix_ppc64.s +++ b/vendor/golang.org/x/sys/cpu/asm_aix_ppc64.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build gc // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/cpu/cpu.go b/vendor/golang.org/x/sys/cpu/cpu.go index f77701fe8..abbec2d44 100644 --- a/vendor/golang.org/x/sys/cpu/cpu.go +++ b/vendor/golang.org/x/sys/cpu/cpu.go @@ -154,14 +154,13 @@ var MIPS64X struct { // For ppc64/ppc64le, it is safe to check only for ISA level starting on ISA v3.00, // since there are no optional categories. There are some exceptions that also // require kernel support to work (DARN, SCV), so there are feature bits for -// those as well. The minimum processor requirement is POWER8 (ISA 2.07). -// The struct is padded to avoid false sharing. +// those as well. The struct is padded to avoid false sharing. var PPC64 struct { _ CacheLinePad HasDARN bool // Hardware random number generator (requires kernel enablement) HasSCV bool // Syscall vectored (requires kernel enablement) IsPOWER8 bool // ISA v2.07 (POWER8) - IsPOWER9 bool // ISA v3.00 (POWER9) + IsPOWER9 bool // ISA v3.00 (POWER9), implies IsPOWER8 _ CacheLinePad } diff --git a/vendor/golang.org/x/sys/cpu/cpu_aix.go b/vendor/golang.org/x/sys/cpu/cpu_aix.go index 28b521643..8aaeef545 100644 --- a/vendor/golang.org/x/sys/cpu/cpu_aix.go +++ b/vendor/golang.org/x/sys/cpu/cpu_aix.go @@ -20,6 +20,7 @@ func archInit() { PPC64.IsPOWER8 = true } if impl&_IMPL_POWER9 != 0 { + PPC64.IsPOWER8 = true PPC64.IsPOWER9 = true } diff --git a/vendor/golang.org/x/sys/cpu/cpu_arm64.s b/vendor/golang.org/x/sys/cpu/cpu_arm64.s index cfc08c979..c61f95a05 100644 --- a/vendor/golang.org/x/sys/cpu/cpu_arm64.s +++ b/vendor/golang.org/x/sys/cpu/cpu_arm64.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build gc // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/cpu/cpu_gc_x86.go b/vendor/golang.org/x/sys/cpu/cpu_gc_x86.go index fa7cdb9bc..3298a87e9 100644 --- a/vendor/golang.org/x/sys/cpu/cpu_gc_x86.go +++ b/vendor/golang.org/x/sys/cpu/cpu_gc_x86.go @@ -15,3 +15,7 @@ func cpuid(eaxArg, ecxArg uint32) (eax, ebx, ecx, edx uint32) // xgetbv with ecx = 0 is implemented in cpu_x86.s for gc compiler // and in cpu_gccgo.c for gccgo. func xgetbv() (eax, edx uint32) + +// darwinSupportsAVX512 is implemented in cpu_x86.s for gc compiler +// and in cpu_gccgo_x86.go for gccgo. +func darwinSupportsAVX512() bool diff --git a/vendor/golang.org/x/sys/cpu/cpu_gccgo_x86.go b/vendor/golang.org/x/sys/cpu/cpu_gccgo_x86.go index 8478a6d59..863d415ab 100644 --- a/vendor/golang.org/x/sys/cpu/cpu_gccgo_x86.go +++ b/vendor/golang.org/x/sys/cpu/cpu_gccgo_x86.go @@ -25,3 +25,9 @@ func xgetbv() (eax, edx uint32) { gccgoXgetbv(&a, &d) return a, d } + +// gccgo doesn't build on Darwin, per: +// https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/gcc.rb#L76 +func darwinSupportsAVX512() bool { + return false +} diff --git a/vendor/golang.org/x/sys/cpu/cpu_s390x.s b/vendor/golang.org/x/sys/cpu/cpu_s390x.s index 964946df9..96f81e209 100644 --- a/vendor/golang.org/x/sys/cpu/cpu_s390x.s +++ b/vendor/golang.org/x/sys/cpu/cpu_s390x.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build gc // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/cpu/cpu_x86.go b/vendor/golang.org/x/sys/cpu/cpu_x86.go index fd380c0a7..54ca4667f 100644 --- a/vendor/golang.org/x/sys/cpu/cpu_x86.go +++ b/vendor/golang.org/x/sys/cpu/cpu_x86.go @@ -87,8 +87,14 @@ func archInit() { // Check if XMM and YMM registers have OS support. osSupportsAVX = isSet(1, eax) && isSet(2, eax) - // Check if OPMASK and ZMM registers have OS support. - osSupportsAVX512 = osSupportsAVX && isSet(5, eax) && isSet(6, eax) && isSet(7, eax) + if runtime.GOOS == "darwin" { + // Check darwin commpage for AVX512 support. Necessary because: + // https://github.com/apple/darwin-xnu/blob/0a798f6738bc1db01281fc08ae024145e84df927/osfmk/i386/fpu.c#L175-L201 + osSupportsAVX512 = osSupportsAVX && darwinSupportsAVX512() + } else { + // Check if OPMASK and ZMM registers have OS support. + osSupportsAVX512 = osSupportsAVX && isSet(5, eax) && isSet(6, eax) && isSet(7, eax) + } } X86.HasAVX = isSet(28, ecx1) && osSupportsAVX diff --git a/vendor/golang.org/x/sys/cpu/cpu_x86.s b/vendor/golang.org/x/sys/cpu/cpu_x86.s index 2f557a588..b748ba52f 100644 --- a/vendor/golang.org/x/sys/cpu/cpu_x86.s +++ b/vendor/golang.org/x/sys/cpu/cpu_x86.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build (386 || amd64 || amd64p32) && gc // +build 386 amd64 amd64p32 // +build gc @@ -25,3 +26,27 @@ TEXT ·xgetbv(SB),NOSPLIT,$0-8 MOVL AX, eax+0(FP) MOVL DX, edx+4(FP) RET + +// func darwinSupportsAVX512() bool +TEXT ·darwinSupportsAVX512(SB), NOSPLIT, $0-1 + MOVB $0, ret+0(FP) // default to false +#ifdef GOOS_darwin // return if not darwin +#ifdef GOARCH_amd64 // return if not amd64 +// These values from: +// https://github.com/apple/darwin-xnu/blob/xnu-4570.1.46/osfmk/i386/cpu_capabilities.h +#define commpage64_base_address 0x00007fffffe00000 +#define commpage64_cpu_capabilities64 (commpage64_base_address+0x010) +#define commpage64_version (commpage64_base_address+0x01E) +#define hasAVX512F 0x0000004000000000 + MOVQ $commpage64_version, BX + CMPW (BX), $13 // cpu_capabilities64 undefined in versions < 13 + JL no_avx512 + MOVQ $commpage64_cpu_capabilities64, BX + MOVQ $hasAVX512F, CX + TESTQ (BX), CX + JZ no_avx512 + MOVB $1, ret+0(FP) +no_avx512: +#endif +#endif + RET diff --git a/vendor/golang.org/x/sys/unix/README.md b/vendor/golang.org/x/sys/unix/README.md index 579d2d735..474efad0e 100644 --- a/vendor/golang.org/x/sys/unix/README.md +++ b/vendor/golang.org/x/sys/unix/README.md @@ -76,7 +76,7 @@ arguments can be passed to the kernel. The third is for low-level use by the ForkExec wrapper. Unlike the first two, it does not call into the scheduler to let it know that a system call is running. -When porting Go to an new architecture/OS, this file must be implemented for +When porting Go to a new architecture/OS, this file must be implemented for each GOOS/GOARCH pair. ### mksysnum @@ -107,7 +107,7 @@ prototype can be exported (capitalized) or not. Adding a new syscall often just requires adding a new `//sys` function prototype with the desired arguments and a capitalized name so it is exported. However, if you want the interface to the syscall to be different, often one will make an -unexported `//sys` prototype, an then write a custom wrapper in +unexported `//sys` prototype, and then write a custom wrapper in `syscall_${GOOS}.go`. ### types files @@ -137,7 +137,7 @@ some `#if/#elif` macros in your include statements. This script is used to generate the system's various constants. This doesn't just include the error numbers and error strings, but also the signal numbers -an a wide variety of miscellaneous constants. The constants come from the list +and a wide variety of miscellaneous constants. The constants come from the list of include files in the `includes_${uname}` variable. A regex then picks out the desired `#define` statements, and generates the corresponding Go constants. The error numbers and strings are generated from `#include `, and the diff --git a/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s b/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s index 6b4027b33..db9171c2e 100644 --- a/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s +++ b/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build gc // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/unix/asm_bsd_386.s b/vendor/golang.org/x/sys/unix/asm_bsd_386.s index 7f29275fa..e0fcd9b3d 100644 --- a/vendor/golang.org/x/sys/unix/asm_bsd_386.s +++ b/vendor/golang.org/x/sys/unix/asm_bsd_386.s @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -//go:build (darwin || freebsd || netbsd || openbsd) && gc -// +build darwin freebsd netbsd openbsd +//go:build (freebsd || netbsd || openbsd) && gc +// +build freebsd netbsd openbsd // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/unix/asm_bsd_arm.s b/vendor/golang.org/x/sys/unix/asm_bsd_arm.s index 98ebfad9d..d702d4adc 100644 --- a/vendor/golang.org/x/sys/unix/asm_bsd_arm.s +++ b/vendor/golang.org/x/sys/unix/asm_bsd_arm.s @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -//go:build (darwin || freebsd || netbsd || openbsd) && gc -// +build darwin freebsd netbsd openbsd +//go:build (freebsd || netbsd || openbsd) && gc +// +build freebsd netbsd openbsd // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/unix/asm_linux_386.s b/vendor/golang.org/x/sys/unix/asm_linux_386.s index 0655ecbfb..8fd101d07 100644 --- a/vendor/golang.org/x/sys/unix/asm_linux_386.s +++ b/vendor/golang.org/x/sys/unix/asm_linux_386.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build gc // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/unix/asm_linux_amd64.s b/vendor/golang.org/x/sys/unix/asm_linux_amd64.s index bc3fb6ac3..7ed38e43c 100644 --- a/vendor/golang.org/x/sys/unix/asm_linux_amd64.s +++ b/vendor/golang.org/x/sys/unix/asm_linux_amd64.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build gc // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/unix/asm_linux_arm.s b/vendor/golang.org/x/sys/unix/asm_linux_arm.s index 55b13c7ba..8ef1d5140 100644 --- a/vendor/golang.org/x/sys/unix/asm_linux_arm.s +++ b/vendor/golang.org/x/sys/unix/asm_linux_arm.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build gc // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/unix/asm_linux_arm64.s b/vendor/golang.org/x/sys/unix/asm_linux_arm64.s index 22a83d8e3..98ae02760 100644 --- a/vendor/golang.org/x/sys/unix/asm_linux_arm64.s +++ b/vendor/golang.org/x/sys/unix/asm_linux_arm64.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build linux && arm64 && gc // +build linux // +build arm64 // +build gc diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s index dc222b90c..21231d2ce 100644 --- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s +++ b/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build linux && (mips64 || mips64le) && gc // +build linux // +build mips64 mips64le // +build gc diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s b/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s index d333f13cf..6783b26c6 100644 --- a/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s +++ b/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build linux && (mips || mipsle) && gc // +build linux // +build mips mipsle // +build gc diff --git a/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s b/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s index 459a629c2..19d498934 100644 --- a/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s +++ b/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build linux && (ppc64 || ppc64le) && gc // +build linux // +build ppc64 ppc64le // +build gc diff --git a/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s b/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s index 04d38497c..e42eb81d5 100644 --- a/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s +++ b/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s @@ -2,7 +2,9 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -// +build riscv64,gc +//go:build riscv64 && gc +// +build riscv64 +// +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/unix/asm_linux_s390x.s b/vendor/golang.org/x/sys/unix/asm_linux_s390x.s index cc303989e..c46aab339 100644 --- a/vendor/golang.org/x/sys/unix/asm_linux_s390x.s +++ b/vendor/golang.org/x/sys/unix/asm_linux_s390x.s @@ -2,8 +2,9 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -// +build s390x +//go:build linux && s390x && gc // +build linux +// +build s390x // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s b/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s index 47c93fcb6..5e7a1169c 100644 --- a/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s +++ b/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build gc // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s b/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s index 1f2c755a7..f8c5394c1 100644 --- a/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s +++ b/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build gc // +build gc #include "textflag.h" diff --git a/vendor/golang.org/x/sys/unix/fdset.go b/vendor/golang.org/x/sys/unix/fdset.go index b1e07b220..a8068f94f 100644 --- a/vendor/golang.org/x/sys/unix/fdset.go +++ b/vendor/golang.org/x/sys/unix/fdset.go @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris -// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris +//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos +// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos package unix diff --git a/vendor/golang.org/x/sys/unix/mkall.sh b/vendor/golang.org/x/sys/unix/mkall.sh index d727cad19..396aadf86 100644 --- a/vendor/golang.org/x/sys/unix/mkall.sh +++ b/vendor/golang.org/x/sys/unix/mkall.sh @@ -70,23 +70,11 @@ aix_ppc64) mksyscall="go run mksyscall_aix_ppc64.go -aix" mktypes="GOARCH=$GOARCH go tool cgo -godefs" ;; -darwin_386) - mkerrors="$mkerrors -m32" - mksyscall="go run mksyscall.go -l32" - mktypes="GOARCH=$GOARCH go tool cgo -godefs" - mkasm="go run mkasm_darwin.go" - ;; darwin_amd64) mkerrors="$mkerrors -m64" mktypes="GOARCH=$GOARCH go tool cgo -godefs" mkasm="go run mkasm_darwin.go" ;; -darwin_arm) - mkerrors="$mkerrors" - mksyscall="go run mksyscall.go -l32" - mktypes="GOARCH=$GOARCH go tool cgo -godefs" - mkasm="go run mkasm_darwin.go" - ;; darwin_arm64) mkerrors="$mkerrors -m64" mktypes="GOARCH=$GOARCH go tool cgo -godefs" diff --git a/vendor/golang.org/x/sys/unix/mkerrors.sh b/vendor/golang.org/x/sys/unix/mkerrors.sh index 007358af8..3f670faba 100644 --- a/vendor/golang.org/x/sys/unix/mkerrors.sh +++ b/vendor/golang.org/x/sys/unix/mkerrors.sh @@ -239,6 +239,7 @@ struct ltchars { #include #include #include +#include #include #include #include @@ -258,6 +259,7 @@ struct ltchars { #include #include +#include #include #if defined(__sparc__) @@ -501,6 +503,9 @@ ccflags="$@" $2 ~ /^LO_(KEY|NAME)_SIZE$/ || $2 ~ /^LOOP_(CLR|CTL|GET|SET)_/ || $2 ~ /^(AF|SOCK|SO|SOL|IPPROTO|IP|IPV6|TCP|MCAST|EVFILT|NOTE|SHUT|PROT|MAP|MFD|T?PACKET|MSG|SCM|MCL|DT|MADV|PR|LOCAL)_/ || + $2 ~ /^NFC_(GENL|PROTO|COMM|RF|SE|DIRECTION|LLCP|SOCKPROTO)_/ || + $2 ~ /^NFC_.*_(MAX)?SIZE$/ || + $2 ~ /^RAW_PAYLOAD_/ || $2 ~ /^TP_STATUS_/ || $2 ~ /^FALLOC_/ || $2 ~ /^ICMPV?6?_(FILTER|SEC)/ || @@ -593,6 +598,9 @@ ccflags="$@" $2 == "HID_MAX_DESCRIPTOR_SIZE" || $2 ~ /^_?HIDIOC/ || $2 ~ /^BUS_(USB|HIL|BLUETOOTH|VIRTUAL)$/ || + $2 ~ /^MTD/ || + $2 ~ /^OTP/ || + $2 ~ /^MEM/ || $2 ~ /^BLK[A-Z]*(GET$|SET$|BUF$|PART$|SIZE)/ {printf("\t%s = C.%s\n", $2, $2)} $2 ~ /^__WCOREFLAG$/ {next} $2 ~ /^__W[A-Z0-9]+$/ {printf("\t%s = C.%s\n", substr($2,3), $2)} diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go b/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go index 5fc3cda6f..1596426b1 100644 --- a/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go +++ b/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go @@ -17,7 +17,7 @@ import ( //sys readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) func fdopendir(fd int) (dir uintptr, err error) { - r0, _, e1 := syscall_syscallPtr(funcPC(libc_fdopendir_trampoline), uintptr(fd), 0, 0) + r0, _, e1 := syscall_syscallPtr(libc_fdopendir_trampoline_addr, uintptr(fd), 0, 0) dir = uintptr(r0) if e1 != 0 { err = errnoErr(e1) @@ -25,7 +25,7 @@ func fdopendir(fd int) (dir uintptr, err error) { return } -func libc_fdopendir_trampoline() +var libc_fdopendir_trampoline_addr uintptr //go:cgo_import_dynamic libc_fdopendir fdopendir "/usr/lib/libSystem.B.dylib" diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go deleted file mode 100644 index 647467712..000000000 --- a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2009 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -//go:build 386 && darwin -// +build 386,darwin - -package unix - -import "syscall" - -func setTimespec(sec, nsec int64) Timespec { - return Timespec{Sec: int32(sec), Nsec: int32(nsec)} -} - -func setTimeval(sec, usec int64) Timeval { - return Timeval{Sec: int32(sec), Usec: int32(usec)} -} - -func SetKevent(k *Kevent_t, fd, mode, flags int) { - k.Ident = uint32(fd) - k.Filter = int16(mode) - k.Flags = uint16(flags) -} - -func (iov *Iovec) SetLen(length int) { - iov.Len = uint32(length) -} - -func (msghdr *Msghdr) SetControllen(length int) { - msghdr.Controllen = uint32(length) -} - -func (msghdr *Msghdr) SetIovlen(length int) { - msghdr.Iovlen = int32(length) -} - -func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint32(length) -} - -func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) - -//sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64 -//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64 -//sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64 -//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT64 -//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64 -//sys ptrace1(request int, pid int, addr uintptr, data uintptr) (err error) = SYS_ptrace -//sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64 -//sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64 diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go deleted file mode 100644 index d30735c5d..000000000 --- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2015 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -package unix - -import "syscall" - -func ptrace1(request int, pid int, addr uintptr, data uintptr) error { - return ENOTSUP -} - -func setTimespec(sec, nsec int64) Timespec { - return Timespec{Sec: int32(sec), Nsec: int32(nsec)} -} - -func setTimeval(sec, usec int64) Timeval { - return Timeval{Sec: int32(sec), Usec: int32(usec)} -} - -func SetKevent(k *Kevent_t, fd, mode, flags int) { - k.Ident = uint32(fd) - k.Filter = int16(mode) - k.Flags = uint16(flags) -} - -func (iov *Iovec) SetLen(length int) { - iov.Len = uint32(length) -} - -func (msghdr *Msghdr) SetControllen(length int) { - msghdr.Controllen = uint32(length) -} - -func (msghdr *Msghdr) SetIovlen(length int) { - msghdr.Iovlen = int32(length) -} - -func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint32(length) -} - -func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) // sic - -//sys Fstat(fd int, stat *Stat_t) (err error) -//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) -//sys Fstatfs(fd int, stat *Statfs_t) (err error) -//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT -//sys Lstat(path string, stat *Stat_t) (err error) -//sys Stat(path string, stat *Stat_t) (err error) -//sys Statfs(path string, stat *Statfs_t) (err error) diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go b/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go index 38bec3002..53c96641f 100644 --- a/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go +++ b/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go @@ -7,7 +7,7 @@ package unix -import "unsafe" +import _ "unsafe" // Implemented in the runtime package (runtime/sys_darwin.go) func syscall_syscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) @@ -25,10 +25,3 @@ func syscall_syscallPtr(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) //go:linkname syscall_rawSyscall syscall.rawSyscall //go:linkname syscall_rawSyscall6 syscall.rawSyscall6 //go:linkname syscall_syscallPtr syscall.syscallPtr - -// Find the entry point for f. See comments in runtime/proc.go for the -// function of the same name. -//go:nosplit -func funcPC(f func()) uintptr { - return **(**uintptr)(unsafe.Pointer(&f)) -} diff --git a/vendor/golang.org/x/sys/unix/syscall_illumos.go b/vendor/golang.org/x/sys/unix/syscall_illumos.go index c5c58806c..8c5357683 100644 --- a/vendor/golang.org/x/sys/unix/syscall_illumos.go +++ b/vendor/golang.org/x/sys/unix/syscall_illumos.go @@ -1,4 +1,4 @@ -// Copyright 2009 The Go Authors. All rights reserved. +// Copyright 2021 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. @@ -10,6 +10,8 @@ package unix import ( + "fmt" + "runtime" "unsafe" ) @@ -127,3 +129,50 @@ func Getmsg(fd int, cl []byte, data []byte) (retCl []byte, retData []byte, flags } return retCl, retData, flags, nil } + +func IoctlSetIntRetInt(fd int, req uint, arg int) (int, error) { + return ioctlRet(fd, req, uintptr(arg)) +} + +func IoctlSetString(fd int, req uint, val string) error { + bs := make([]byte, len(val)+1) + copy(bs[:len(bs)-1], val) + err := ioctl(fd, req, uintptr(unsafe.Pointer(&bs[0]))) + runtime.KeepAlive(&bs[0]) + return err +} + +// Lifreq Helpers + +func (l *Lifreq) SetName(name string) error { + if len(name) >= len(l.Name) { + return fmt.Errorf("name cannot be more than %d characters", len(l.Name)-1) + } + for i := range name { + l.Name[i] = int8(name[i]) + } + return nil +} + +func (l *Lifreq) SetLifruInt(d int) { + *(*int)(unsafe.Pointer(&l.Lifru[0])) = d +} + +func (l *Lifreq) GetLifruInt() int { + return *(*int)(unsafe.Pointer(&l.Lifru[0])) +} + +func IoctlLifreq(fd int, req uint, l *Lifreq) error { + return ioctl(fd, req, uintptr(unsafe.Pointer(l))) +} + +// Strioctl Helpers + +func (s *Strioctl) SetInt(i int) { + s.Len = int32(unsafe.Sizeof(i)) + s.Dp = (*int8)(unsafe.Pointer(&i)) +} + +func IoctlSetStrioctlRetInt(fd int, req uint, s *Strioctl) (int, error) { + return ioctlRet(fd, req, uintptr(unsafe.Pointer(s))) +} diff --git a/vendor/golang.org/x/sys/unix/syscall_linux.go b/vendor/golang.org/x/sys/unix/syscall_linux.go index 4263953be..41b91fdfb 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux.go @@ -904,6 +904,46 @@ func (sa *SockaddrIUCV) sockaddr() (unsafe.Pointer, _Socklen, error) { return unsafe.Pointer(&sa.raw), SizeofSockaddrIUCV, nil } +type SockaddrNFC struct { + DeviceIdx uint32 + TargetIdx uint32 + NFCProtocol uint32 + raw RawSockaddrNFC +} + +func (sa *SockaddrNFC) sockaddr() (unsafe.Pointer, _Socklen, error) { + sa.raw.Sa_family = AF_NFC + sa.raw.Dev_idx = sa.DeviceIdx + sa.raw.Target_idx = sa.TargetIdx + sa.raw.Nfc_protocol = sa.NFCProtocol + return unsafe.Pointer(&sa.raw), SizeofSockaddrNFC, nil +} + +type SockaddrNFCLLCP struct { + DeviceIdx uint32 + TargetIdx uint32 + NFCProtocol uint32 + DestinationSAP uint8 + SourceSAP uint8 + ServiceName string + raw RawSockaddrNFCLLCP +} + +func (sa *SockaddrNFCLLCP) sockaddr() (unsafe.Pointer, _Socklen, error) { + sa.raw.Sa_family = AF_NFC + sa.raw.Dev_idx = sa.DeviceIdx + sa.raw.Target_idx = sa.TargetIdx + sa.raw.Nfc_protocol = sa.NFCProtocol + sa.raw.Dsap = sa.DestinationSAP + sa.raw.Ssap = sa.SourceSAP + if len(sa.ServiceName) > len(sa.raw.Service_name) { + return nil, 0, EINVAL + } + copy(sa.raw.Service_name[:], sa.ServiceName) + sa.raw.SetServiceNameLen(len(sa.ServiceName)) + return unsafe.Pointer(&sa.raw), SizeofSockaddrNFCLLCP, nil +} + var socketProtocol = func(fd int) (int, error) { return GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL) } @@ -1144,6 +1184,37 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { } return sa, nil } + case AF_NFC: + proto, err := socketProtocol(fd) + if err != nil { + return nil, err + } + switch proto { + case NFC_SOCKPROTO_RAW: + pp := (*RawSockaddrNFC)(unsafe.Pointer(rsa)) + sa := &SockaddrNFC{ + DeviceIdx: pp.Dev_idx, + TargetIdx: pp.Target_idx, + NFCProtocol: pp.Nfc_protocol, + } + return sa, nil + case NFC_SOCKPROTO_LLCP: + pp := (*RawSockaddrNFCLLCP)(unsafe.Pointer(rsa)) + if uint64(pp.Service_name_len) > uint64(len(pp.Service_name)) { + return nil, EINVAL + } + sa := &SockaddrNFCLLCP{ + DeviceIdx: pp.Dev_idx, + TargetIdx: pp.Target_idx, + NFCProtocol: pp.Nfc_protocol, + DestinationSAP: pp.Dsap, + SourceSAP: pp.Ssap, + ServiceName: string(pp.Service_name[:pp.Service_name_len]), + } + return sa, nil + default: + return nil, EINVAL + } } return nil, EAFNOSUPPORT } @@ -1151,7 +1222,11 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { func Accept(fd int) (nfd int, sa Sockaddr, err error) { var rsa RawSockaddrAny var len _Socklen = SizeofSockaddrAny - nfd, err = accept(fd, &rsa, &len) + // Try accept4 first for Android, then try accept for kernel older than 2.6.28 + nfd, err = accept4(fd, &rsa, &len, 0) + if err == ENOSYS { + nfd, err = accept(fd, &rsa, &len) + } if err != nil { return } diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_386.go index 7b52e5d8a..b430536c8 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_386.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_386.go @@ -378,6 +378,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint32(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint32(length) +} + //sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) func Poll(fds []PollFd, timeout int) (n int, err error) { diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go b/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go index 28b764115..85cd97da0 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go @@ -172,6 +172,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint64(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint64(length) +} + //sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) func Poll(fds []PollFd, timeout int) (n int, err error) { diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go index 68877728e..39a864d4e 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go @@ -256,6 +256,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint32(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint32(length) +} + //sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) func Poll(fds []PollFd, timeout int) (n int, err error) { diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go index 7ed703476..7f27ebf2f 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go @@ -207,6 +207,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint64(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint64(length) +} + func InotifyInit() (fd int, err error) { return InotifyInit1(0) } diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go b/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go index 06dec06fa..27aee81d9 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go @@ -217,6 +217,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint64(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint64(length) +} + func InotifyInit() (fd int, err error) { return InotifyInit1(0) } diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go b/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go index 8f0d0a5b5..3a5621e37 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go @@ -229,6 +229,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint32(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint32(length) +} + //sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) func Poll(fds []PollFd, timeout int) (n int, err error) { diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go b/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go index 7e65e088d..cf0d36f76 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go @@ -215,6 +215,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint32(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint32(length) +} + //sysnb pipe(p *[2]_C_int) (err error) func Pipe(p []int) (err error) { diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go b/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go index 0b1f0d6da..5259a5fea 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go @@ -100,6 +100,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint64(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint64(length) +} + //sysnb pipe(p *[2]_C_int) (err error) func Pipe(p []int) (err error) { diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go b/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go index ce9bcd317..8ef821e5d 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go @@ -188,6 +188,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint64(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint64(length) +} + func InotifyInit() (fd int, err error) { return InotifyInit1(0) } diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go b/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go index a1e45694b..a1c0574b5 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go @@ -129,6 +129,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint64(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint64(length) +} + // Linux on s390x uses the old mmap interface, which requires arguments to be passed in a struct. // mmap2 also requires arguments to be passed in a struct; it is currently not exposed in . func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) { diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go b/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go index 49055a3cf..de14b8898 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go @@ -116,6 +116,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { cmsg.Len = uint64(length) } +func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { + rsa.Service_name_len = uint64(length) +} + //sysnb pipe(p *[2]_C_int) (err error) func Pipe(p []int) (err error) { diff --git a/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go b/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go index 13f58d2b2..1ffd8bfcf 100644 --- a/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go +++ b/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go @@ -222,6 +222,8 @@ func (cmsg *Cmsghdr) SetLen(length int) { //sys Creat(path string, mode uint32) (fd int, err error) = SYS___CREAT_A //sys Dup(oldfd int) (fd int, err error) //sys Dup2(oldfd int, newfd int) (err error) +//sys Errno2() (er2 int) = SYS___ERRNO2 +//sys Err2ad() (eadd *int) = SYS___ERR2AD //sys Exit(code int) //sys Fchdir(fd int) (err error) //sys Fchmod(fd int, mode uint32) (err error) @@ -245,10 +247,12 @@ func Fstat(fd int, stat *Stat_t) (err error) { //sys Poll(fds []PollFd, timeout int) (n int, err error) = SYS_POLL //sys Times(tms *Tms) (ticks uintptr, err error) = SYS_TIMES //sys W_Getmntent(buff *byte, size int) (lastsys int, err error) = SYS_W_GETMNTENT +//sys W_Getmntent_A(buff *byte, size int) (lastsys int, err error) = SYS___W_GETMNTENT_A -//sys Mount(path string, filesystem string, fstype string, mtm uint32, parmlen int32, parm string) (err error) = SYS___MOUNT_A -//sys Unmount(filesystem string, mtm int) (err error) = SYS___UMOUNT_A +//sys mount_LE(path string, filesystem string, fstype string, mtm uint32, parmlen int32, parm string) (err error) = SYS___MOUNT_A +//sys unmount(filesystem string, mtm int) (err error) = SYS___UMOUNT_A //sys Chroot(path string) (err error) = SYS___CHROOT_A +//sys Select(nmsgsfds int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (ret int, err error) = SYS_SELECT //sysnb Uname(buf *Utsname) (err error) = SYS___UNAME_A func Ptsname(fd int) (name string, err error) { @@ -1779,3 +1783,47 @@ func SetNonblock(fd int, nonblocking bool) (err error) { func Exec(argv0 string, argv []string, envv []string) error { return syscall.Exec(argv0, argv, envv) } + +func Mount(source string, target string, fstype string, flags uintptr, data string) (err error) { + if needspace := 8 - len(fstype); needspace <= 0 { + fstype = fstype[:8] + } else { + fstype += " "[:needspace] + } + return mount_LE(target, source, fstype, uint32(flags), int32(len(data)), data) +} + +func Unmount(name string, mtm int) (err error) { + // mountpoint is always a full path and starts with a '/' + // check if input string is not a mountpoint but a filesystem name + if name[0] != '/' { + return unmount(name, mtm) + } + // treat name as mountpoint + b2s := func(arr []byte) string { + nulli := bytes.IndexByte(arr, 0) + if nulli == -1 { + return string(arr) + } else { + return string(arr[:nulli]) + } + } + var buffer struct { + header W_Mnth + fsinfo [64]W_Mntent + } + fsCount, err := W_Getmntent_A((*byte)(unsafe.Pointer(&buffer)), int(unsafe.Sizeof(buffer))) + if err != nil { + return err + } + if fsCount == 0 { + return EINVAL + } + for i := 0; i < fsCount; i++ { + if b2s(buffer.fsinfo[i].Mountpoint[:]) == name { + err = unmount(b2s(buffer.fsinfo[i].Fsname[:]), mtm) + break + } + } + return err +} diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go deleted file mode 100644 index 7ee196f7f..000000000 --- a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go +++ /dev/null @@ -1,1789 +0,0 @@ -// mkerrors.sh -m32 -// Code generated by the command above; see README.md. DO NOT EDIT. - -//go:build 386 && darwin -// +build 386,darwin - -// Code generated by cmd/cgo -godefs; DO NOT EDIT. -// cgo -godefs -- -m32 _const.go - -package unix - -import "syscall" - -const ( - AF_APPLETALK = 0x10 - AF_CCITT = 0xa - AF_CHAOS = 0x5 - AF_CNT = 0x15 - AF_COIP = 0x14 - AF_DATAKIT = 0x9 - AF_DECnet = 0xc - AF_DLI = 0xd - AF_E164 = 0x1c - AF_ECMA = 0x8 - AF_HYLINK = 0xf - AF_IEEE80211 = 0x25 - AF_IMPLINK = 0x3 - AF_INET = 0x2 - AF_INET6 = 0x1e - AF_IPX = 0x17 - AF_ISDN = 0x1c - AF_ISO = 0x7 - AF_LAT = 0xe - AF_LINK = 0x12 - AF_LOCAL = 0x1 - AF_MAX = 0x28 - AF_NATM = 0x1f - AF_NDRV = 0x1b - AF_NETBIOS = 0x21 - AF_NS = 0x6 - AF_OSI = 0x7 - AF_PPP = 0x22 - AF_PUP = 0x4 - AF_RESERVED_36 = 0x24 - AF_ROUTE = 0x11 - AF_SIP = 0x18 - AF_SNA = 0xb - AF_SYSTEM = 0x20 - AF_SYS_CONTROL = 0x2 - AF_UNIX = 0x1 - AF_UNSPEC = 0x0 - AF_UTUN = 0x26 - ALTWERASE = 0x200 - ATTR_BIT_MAP_COUNT = 0x5 - ATTR_CMN_ACCESSMASK = 0x20000 - ATTR_CMN_ACCTIME = 0x1000 - ATTR_CMN_ADDEDTIME = 0x10000000 - ATTR_CMN_BKUPTIME = 0x2000 - ATTR_CMN_CHGTIME = 0x800 - ATTR_CMN_CRTIME = 0x200 - ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000 - ATTR_CMN_DEVID = 0x2 - ATTR_CMN_DOCUMENT_ID = 0x100000 - ATTR_CMN_ERROR = 0x20000000 - ATTR_CMN_EXTENDED_SECURITY = 0x400000 - ATTR_CMN_FILEID = 0x2000000 - ATTR_CMN_FLAGS = 0x40000 - ATTR_CMN_FNDRINFO = 0x4000 - ATTR_CMN_FSID = 0x4 - ATTR_CMN_FULLPATH = 0x8000000 - ATTR_CMN_GEN_COUNT = 0x80000 - ATTR_CMN_GRPID = 0x10000 - ATTR_CMN_GRPUUID = 0x1000000 - ATTR_CMN_MODTIME = 0x400 - ATTR_CMN_NAME = 0x1 - ATTR_CMN_NAMEDATTRCOUNT = 0x80000 - ATTR_CMN_NAMEDATTRLIST = 0x100000 - ATTR_CMN_OBJID = 0x20 - ATTR_CMN_OBJPERMANENTID = 0x40 - ATTR_CMN_OBJTAG = 0x10 - ATTR_CMN_OBJTYPE = 0x8 - ATTR_CMN_OWNERID = 0x8000 - ATTR_CMN_PARENTID = 0x4000000 - ATTR_CMN_PAROBJID = 0x80 - ATTR_CMN_RETURNED_ATTRS = 0x80000000 - ATTR_CMN_SCRIPT = 0x100 - ATTR_CMN_SETMASK = 0x41c7ff00 - ATTR_CMN_USERACCESS = 0x200000 - ATTR_CMN_UUID = 0x800000 - ATTR_CMN_VALIDMASK = 0xffffffff - ATTR_CMN_VOLSETMASK = 0x6700 - ATTR_FILE_ALLOCSIZE = 0x4 - ATTR_FILE_CLUMPSIZE = 0x10 - ATTR_FILE_DATAALLOCSIZE = 0x400 - ATTR_FILE_DATAEXTENTS = 0x800 - ATTR_FILE_DATALENGTH = 0x200 - ATTR_FILE_DEVTYPE = 0x20 - ATTR_FILE_FILETYPE = 0x40 - ATTR_FILE_FORKCOUNT = 0x80 - ATTR_FILE_FORKLIST = 0x100 - ATTR_FILE_IOBLOCKSIZE = 0x8 - ATTR_FILE_LINKCOUNT = 0x1 - ATTR_FILE_RSRCALLOCSIZE = 0x2000 - ATTR_FILE_RSRCEXTENTS = 0x4000 - ATTR_FILE_RSRCLENGTH = 0x1000 - ATTR_FILE_SETMASK = 0x20 - ATTR_FILE_TOTALSIZE = 0x2 - ATTR_FILE_VALIDMASK = 0x37ff - ATTR_VOL_ALLOCATIONCLUMP = 0x40 - ATTR_VOL_ATTRIBUTES = 0x40000000 - ATTR_VOL_CAPABILITIES = 0x20000 - ATTR_VOL_DIRCOUNT = 0x400 - ATTR_VOL_ENCODINGSUSED = 0x10000 - ATTR_VOL_FILECOUNT = 0x200 - ATTR_VOL_FSTYPE = 0x1 - ATTR_VOL_INFO = 0x80000000 - ATTR_VOL_IOBLOCKSIZE = 0x80 - ATTR_VOL_MAXOBJCOUNT = 0x800 - ATTR_VOL_MINALLOCATION = 0x20 - ATTR_VOL_MOUNTEDDEVICE = 0x8000 - ATTR_VOL_MOUNTFLAGS = 0x4000 - ATTR_VOL_MOUNTPOINT = 0x1000 - ATTR_VOL_NAME = 0x2000 - ATTR_VOL_OBJCOUNT = 0x100 - ATTR_VOL_QUOTA_SIZE = 0x10000000 - ATTR_VOL_RESERVED_SIZE = 0x20000000 - ATTR_VOL_SETMASK = 0x80002000 - ATTR_VOL_SIGNATURE = 0x2 - ATTR_VOL_SIZE = 0x4 - ATTR_VOL_SPACEAVAIL = 0x10 - ATTR_VOL_SPACEFREE = 0x8 - ATTR_VOL_UUID = 0x40000 - ATTR_VOL_VALIDMASK = 0xf007ffff - B0 = 0x0 - B110 = 0x6e - B115200 = 0x1c200 - B1200 = 0x4b0 - B134 = 0x86 - B14400 = 0x3840 - B150 = 0x96 - B1800 = 0x708 - B19200 = 0x4b00 - B200 = 0xc8 - B230400 = 0x38400 - B2400 = 0x960 - B28800 = 0x7080 - B300 = 0x12c - B38400 = 0x9600 - B4800 = 0x12c0 - B50 = 0x32 - B57600 = 0xe100 - B600 = 0x258 - B7200 = 0x1c20 - B75 = 0x4b - B76800 = 0x12c00 - B9600 = 0x2580 - BIOCFLUSH = 0x20004268 - BIOCGBLEN = 0x40044266 - BIOCGDLT = 0x4004426a - BIOCGDLTLIST = 0xc00c4279 - BIOCGETIF = 0x4020426b - BIOCGHDRCMPLT = 0x40044274 - BIOCGRSIG = 0x40044272 - BIOCGRTIMEOUT = 0x4008426e - BIOCGSEESENT = 0x40044276 - BIOCGSTATS = 0x4008426f - BIOCIMMEDIATE = 0x80044270 - BIOCPROMISC = 0x20004269 - BIOCSBLEN = 0xc0044266 - BIOCSDLT = 0x80044278 - BIOCSETF = 0x80084267 - BIOCSETFNR = 0x8008427e - BIOCSETIF = 0x8020426c - BIOCSHDRCMPLT = 0x80044275 - BIOCSRSIG = 0x80044273 - BIOCSRTIMEOUT = 0x8008426d - BIOCSSEESENT = 0x80044277 - BIOCVERSION = 0x40044271 - BPF_A = 0x10 - BPF_ABS = 0x20 - BPF_ADD = 0x0 - BPF_ALIGNMENT = 0x4 - BPF_ALU = 0x4 - BPF_AND = 0x50 - BPF_B = 0x10 - BPF_DIV = 0x30 - BPF_H = 0x8 - BPF_IMM = 0x0 - BPF_IND = 0x40 - BPF_JA = 0x0 - BPF_JEQ = 0x10 - BPF_JGE = 0x30 - BPF_JGT = 0x20 - BPF_JMP = 0x5 - BPF_JSET = 0x40 - BPF_K = 0x0 - BPF_LD = 0x0 - BPF_LDX = 0x1 - BPF_LEN = 0x80 - BPF_LSH = 0x60 - BPF_MAJOR_VERSION = 0x1 - BPF_MAXBUFSIZE = 0x80000 - BPF_MAXINSNS = 0x200 - BPF_MEM = 0x60 - BPF_MEMWORDS = 0x10 - BPF_MINBUFSIZE = 0x20 - BPF_MINOR_VERSION = 0x1 - BPF_MISC = 0x7 - BPF_MSH = 0xa0 - BPF_MUL = 0x20 - BPF_NEG = 0x80 - BPF_OR = 0x40 - BPF_RELEASE = 0x30bb6 - BPF_RET = 0x6 - BPF_RSH = 0x70 - BPF_ST = 0x2 - BPF_STX = 0x3 - BPF_SUB = 0x10 - BPF_TAX = 0x0 - BPF_TXA = 0x80 - BPF_W = 0x0 - BPF_X = 0x8 - BRKINT = 0x2 - BS0 = 0x0 - BS1 = 0x8000 - BSDLY = 0x8000 - CFLUSH = 0xf - CLOCAL = 0x8000 - CLOCK_MONOTONIC = 0x6 - CLOCK_MONOTONIC_RAW = 0x4 - CLOCK_MONOTONIC_RAW_APPROX = 0x5 - CLOCK_PROCESS_CPUTIME_ID = 0xc - CLOCK_REALTIME = 0x0 - CLOCK_THREAD_CPUTIME_ID = 0x10 - CLOCK_UPTIME_RAW = 0x8 - CLOCK_UPTIME_RAW_APPROX = 0x9 - CLONE_NOFOLLOW = 0x1 - CLONE_NOOWNERCOPY = 0x2 - CR0 = 0x0 - CR1 = 0x1000 - CR2 = 0x2000 - CR3 = 0x3000 - CRDLY = 0x3000 - CREAD = 0x800 - CRTSCTS = 0x30000 - CS5 = 0x0 - CS6 = 0x100 - CS7 = 0x200 - CS8 = 0x300 - CSIZE = 0x300 - CSTART = 0x11 - CSTATUS = 0x14 - CSTOP = 0x13 - CSTOPB = 0x400 - CSUSP = 0x1a - CTLIOCGINFO = 0xc0644e03 - CTL_HW = 0x6 - CTL_KERN = 0x1 - CTL_MAXNAME = 0xc - CTL_NET = 0x4 - DLT_A429 = 0xb8 - DLT_A653_ICM = 0xb9 - DLT_AIRONET_HEADER = 0x78 - DLT_AOS = 0xde - DLT_APPLE_IP_OVER_IEEE1394 = 0x8a - DLT_ARCNET = 0x7 - DLT_ARCNET_LINUX = 0x81 - DLT_ATM_CLIP = 0x13 - DLT_ATM_RFC1483 = 0xb - DLT_AURORA = 0x7e - DLT_AX25 = 0x3 - DLT_AX25_KISS = 0xca - DLT_BACNET_MS_TP = 0xa5 - DLT_BLUETOOTH_HCI_H4 = 0xbb - DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 - DLT_CAN20B = 0xbe - DLT_CAN_SOCKETCAN = 0xe3 - DLT_CHAOS = 0x5 - DLT_CHDLC = 0x68 - DLT_CISCO_IOS = 0x76 - DLT_C_HDLC = 0x68 - DLT_C_HDLC_WITH_DIR = 0xcd - DLT_DBUS = 0xe7 - DLT_DECT = 0xdd - DLT_DOCSIS = 0x8f - DLT_DVB_CI = 0xeb - DLT_ECONET = 0x73 - DLT_EN10MB = 0x1 - DLT_EN3MB = 0x2 - DLT_ENC = 0x6d - DLT_ERF = 0xc5 - DLT_ERF_ETH = 0xaf - DLT_ERF_POS = 0xb0 - DLT_FC_2 = 0xe0 - DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 - DLT_FDDI = 0xa - DLT_FLEXRAY = 0xd2 - DLT_FRELAY = 0x6b - DLT_FRELAY_WITH_DIR = 0xce - DLT_GCOM_SERIAL = 0xad - DLT_GCOM_T1E1 = 0xac - DLT_GPF_F = 0xab - DLT_GPF_T = 0xaa - DLT_GPRS_LLC = 0xa9 - DLT_GSMTAP_ABIS = 0xda - DLT_GSMTAP_UM = 0xd9 - DLT_HHDLC = 0x79 - DLT_IBM_SN = 0x92 - DLT_IBM_SP = 0x91 - DLT_IEEE802 = 0x6 - DLT_IEEE802_11 = 0x69 - DLT_IEEE802_11_RADIO = 0x7f - DLT_IEEE802_11_RADIO_AVS = 0xa3 - DLT_IEEE802_15_4 = 0xc3 - DLT_IEEE802_15_4_LINUX = 0xbf - DLT_IEEE802_15_4_NOFCS = 0xe6 - DLT_IEEE802_15_4_NONASK_PHY = 0xd7 - DLT_IEEE802_16_MAC_CPS = 0xbc - DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 - DLT_IPFILTER = 0x74 - DLT_IPMB = 0xc7 - DLT_IPMB_LINUX = 0xd1 - DLT_IPNET = 0xe2 - DLT_IPOIB = 0xf2 - DLT_IPV4 = 0xe4 - DLT_IPV6 = 0xe5 - DLT_IP_OVER_FC = 0x7a - DLT_JUNIPER_ATM1 = 0x89 - DLT_JUNIPER_ATM2 = 0x87 - DLT_JUNIPER_ATM_CEMIC = 0xee - DLT_JUNIPER_CHDLC = 0xb5 - DLT_JUNIPER_ES = 0x84 - DLT_JUNIPER_ETHER = 0xb2 - DLT_JUNIPER_FIBRECHANNEL = 0xea - DLT_JUNIPER_FRELAY = 0xb4 - DLT_JUNIPER_GGSN = 0x85 - DLT_JUNIPER_ISM = 0xc2 - DLT_JUNIPER_MFR = 0x86 - DLT_JUNIPER_MLFR = 0x83 - DLT_JUNIPER_MLPPP = 0x82 - DLT_JUNIPER_MONITOR = 0xa4 - DLT_JUNIPER_PIC_PEER = 0xae - DLT_JUNIPER_PPP = 0xb3 - DLT_JUNIPER_PPPOE = 0xa7 - DLT_JUNIPER_PPPOE_ATM = 0xa8 - DLT_JUNIPER_SERVICES = 0x88 - DLT_JUNIPER_SRX_E2E = 0xe9 - DLT_JUNIPER_ST = 0xc8 - DLT_JUNIPER_VP = 0xb7 - DLT_JUNIPER_VS = 0xe8 - DLT_LAPB_WITH_DIR = 0xcf - DLT_LAPD = 0xcb - DLT_LIN = 0xd4 - DLT_LINUX_EVDEV = 0xd8 - DLT_LINUX_IRDA = 0x90 - DLT_LINUX_LAPD = 0xb1 - DLT_LINUX_PPP_WITHDIRECTION = 0xa6 - DLT_LINUX_SLL = 0x71 - DLT_LOOP = 0x6c - DLT_LTALK = 0x72 - DLT_MATCHING_MAX = 0xf5 - DLT_MATCHING_MIN = 0x68 - DLT_MFR = 0xb6 - DLT_MOST = 0xd3 - DLT_MPEG_2_TS = 0xf3 - DLT_MPLS = 0xdb - DLT_MTP2 = 0x8c - DLT_MTP2_WITH_PHDR = 0x8b - DLT_MTP3 = 0x8d - DLT_MUX27010 = 0xec - DLT_NETANALYZER = 0xf0 - DLT_NETANALYZER_TRANSPARENT = 0xf1 - DLT_NFC_LLCP = 0xf5 - DLT_NFLOG = 0xef - DLT_NG40 = 0xf4 - DLT_NULL = 0x0 - DLT_PCI_EXP = 0x7d - DLT_PFLOG = 0x75 - DLT_PFSYNC = 0x12 - DLT_PPI = 0xc0 - DLT_PPP = 0x9 - DLT_PPP_BSDOS = 0x10 - DLT_PPP_ETHER = 0x33 - DLT_PPP_PPPD = 0xa6 - DLT_PPP_SERIAL = 0x32 - DLT_PPP_WITH_DIR = 0xcc - DLT_PPP_WITH_DIRECTION = 0xa6 - DLT_PRISM_HEADER = 0x77 - DLT_PRONET = 0x4 - DLT_RAIF1 = 0xc6 - DLT_RAW = 0xc - DLT_RIO = 0x7c - DLT_SCCP = 0x8e - DLT_SITA = 0xc4 - DLT_SLIP = 0x8 - DLT_SLIP_BSDOS = 0xf - DLT_STANAG_5066_D_PDU = 0xed - DLT_SUNATM = 0x7b - DLT_SYMANTEC_FIREWALL = 0x63 - DLT_TZSP = 0x80 - DLT_USB = 0xba - DLT_USB_LINUX = 0xbd - DLT_USB_LINUX_MMAPPED = 0xdc - DLT_USER0 = 0x93 - DLT_USER1 = 0x94 - DLT_USER10 = 0x9d - DLT_USER11 = 0x9e - DLT_USER12 = 0x9f - DLT_USER13 = 0xa0 - DLT_USER14 = 0xa1 - DLT_USER15 = 0xa2 - DLT_USER2 = 0x95 - DLT_USER3 = 0x96 - DLT_USER4 = 0x97 - DLT_USER5 = 0x98 - DLT_USER6 = 0x99 - DLT_USER7 = 0x9a - DLT_USER8 = 0x9b - DLT_USER9 = 0x9c - DLT_WIHART = 0xdf - DLT_X2E_SERIAL = 0xd5 - DLT_X2E_XORAYA = 0xd6 - DT_BLK = 0x6 - DT_CHR = 0x2 - DT_DIR = 0x4 - DT_FIFO = 0x1 - DT_LNK = 0xa - DT_REG = 0x8 - DT_SOCK = 0xc - DT_UNKNOWN = 0x0 - DT_WHT = 0xe - ECHO = 0x8 - ECHOCTL = 0x40 - ECHOE = 0x2 - ECHOK = 0x4 - ECHOKE = 0x1 - ECHONL = 0x10 - ECHOPRT = 0x20 - EVFILT_AIO = -0x3 - EVFILT_EXCEPT = -0xf - EVFILT_FS = -0x9 - EVFILT_MACHPORT = -0x8 - EVFILT_PROC = -0x5 - EVFILT_READ = -0x1 - EVFILT_SIGNAL = -0x6 - EVFILT_SYSCOUNT = 0xf - EVFILT_THREADMARKER = 0xf - EVFILT_TIMER = -0x7 - EVFILT_USER = -0xa - EVFILT_VM = -0xc - EVFILT_VNODE = -0x4 - EVFILT_WRITE = -0x2 - EV_ADD = 0x1 - EV_CLEAR = 0x20 - EV_DELETE = 0x2 - EV_DISABLE = 0x8 - EV_DISPATCH = 0x80 - EV_DISPATCH2 = 0x180 - EV_ENABLE = 0x4 - EV_EOF = 0x8000 - EV_ERROR = 0x4000 - EV_FLAG0 = 0x1000 - EV_FLAG1 = 0x2000 - EV_ONESHOT = 0x10 - EV_OOBAND = 0x2000 - EV_POLL = 0x1000 - EV_RECEIPT = 0x40 - EV_SYSFLAGS = 0xf000 - EV_UDATA_SPECIFIC = 0x100 - EV_VANISHED = 0x200 - EXTA = 0x4b00 - EXTB = 0x9600 - EXTPROC = 0x800 - FD_CLOEXEC = 0x1 - FD_SETSIZE = 0x400 - FF0 = 0x0 - FF1 = 0x4000 - FFDLY = 0x4000 - FLUSHO = 0x800000 - FSOPT_ATTR_CMN_EXTENDED = 0x20 - FSOPT_NOFOLLOW = 0x1 - FSOPT_NOINMEMUPDATE = 0x2 - FSOPT_PACK_INVAL_ATTRS = 0x8 - FSOPT_REPORT_FULLSIZE = 0x4 - F_ADDFILESIGS = 0x3d - F_ADDFILESIGS_FOR_DYLD_SIM = 0x53 - F_ADDFILESIGS_RETURN = 0x61 - F_ADDSIGS = 0x3b - F_ALLOCATEALL = 0x4 - F_ALLOCATECONTIG = 0x2 - F_BARRIERFSYNC = 0x55 - F_CHECK_LV = 0x62 - F_CHKCLEAN = 0x29 - F_DUPFD = 0x0 - F_DUPFD_CLOEXEC = 0x43 - F_FINDSIGS = 0x4e - F_FLUSH_DATA = 0x28 - F_FREEZE_FS = 0x35 - F_FULLFSYNC = 0x33 - F_GETCODEDIR = 0x48 - F_GETFD = 0x1 - F_GETFL = 0x3 - F_GETLK = 0x7 - F_GETLKPID = 0x42 - F_GETNOSIGPIPE = 0x4a - F_GETOWN = 0x5 - F_GETPATH = 0x32 - F_GETPATH_MTMINFO = 0x47 - F_GETPROTECTIONCLASS = 0x3f - F_GETPROTECTIONLEVEL = 0x4d - F_GLOBAL_NOCACHE = 0x37 - F_LOG2PHYS = 0x31 - F_LOG2PHYS_EXT = 0x41 - F_NOCACHE = 0x30 - F_NODIRECT = 0x3e - F_OK = 0x0 - F_PATHPKG_CHECK = 0x34 - F_PEOFPOSMODE = 0x3 - F_PREALLOCATE = 0x2a - F_PUNCHHOLE = 0x63 - F_RDADVISE = 0x2c - F_RDAHEAD = 0x2d - F_RDLCK = 0x1 - F_SETBACKINGSTORE = 0x46 - F_SETFD = 0x2 - F_SETFL = 0x4 - F_SETLK = 0x8 - F_SETLKW = 0x9 - F_SETLKWTIMEOUT = 0xa - F_SETNOSIGPIPE = 0x49 - F_SETOWN = 0x6 - F_SETPROTECTIONCLASS = 0x40 - F_SETSIZE = 0x2b - F_SINGLE_WRITER = 0x4c - F_THAW_FS = 0x36 - F_TRANSCODEKEY = 0x4b - F_TRIM_ACTIVE_FILE = 0x64 - F_UNLCK = 0x2 - F_VOLPOSMODE = 0x4 - F_WRLCK = 0x3 - HUPCL = 0x4000 - HW_MACHINE = 0x1 - ICANON = 0x100 - ICMP6_FILTER = 0x12 - ICRNL = 0x100 - IEXTEN = 0x400 - IFF_ALLMULTI = 0x200 - IFF_ALTPHYS = 0x4000 - IFF_BROADCAST = 0x2 - IFF_DEBUG = 0x4 - IFF_LINK0 = 0x1000 - IFF_LINK1 = 0x2000 - IFF_LINK2 = 0x4000 - IFF_LOOPBACK = 0x8 - IFF_MULTICAST = 0x8000 - IFF_NOARP = 0x80 - IFF_NOTRAILERS = 0x20 - IFF_OACTIVE = 0x400 - IFF_POINTOPOINT = 0x10 - IFF_PROMISC = 0x100 - IFF_RUNNING = 0x40 - IFF_SIMPLEX = 0x800 - IFF_UP = 0x1 - IFNAMSIZ = 0x10 - IFT_1822 = 0x2 - IFT_AAL5 = 0x31 - IFT_ARCNET = 0x23 - IFT_ARCNETPLUS = 0x24 - IFT_ATM = 0x25 - IFT_BRIDGE = 0xd1 - IFT_CARP = 0xf8 - IFT_CELLULAR = 0xff - IFT_CEPT = 0x13 - IFT_DS3 = 0x1e - IFT_ENC = 0xf4 - IFT_EON = 0x19 - IFT_ETHER = 0x6 - IFT_FAITH = 0x38 - IFT_FDDI = 0xf - IFT_FRELAY = 0x20 - IFT_FRELAYDCE = 0x2c - IFT_GIF = 0x37 - IFT_HDH1822 = 0x3 - IFT_HIPPI = 0x2f - IFT_HSSI = 0x2e - IFT_HY = 0xe - IFT_IEEE1394 = 0x90 - IFT_IEEE8023ADLAG = 0x88 - IFT_ISDNBASIC = 0x14 - IFT_ISDNPRIMARY = 0x15 - IFT_ISO88022LLC = 0x29 - IFT_ISO88023 = 0x7 - IFT_ISO88024 = 0x8 - IFT_ISO88025 = 0x9 - IFT_ISO88026 = 0xa - IFT_L2VLAN = 0x87 - IFT_LAPB = 0x10 - IFT_LOCALTALK = 0x2a - IFT_LOOP = 0x18 - IFT_MIOX25 = 0x26 - IFT_MODEM = 0x30 - IFT_NSIP = 0x1b - IFT_OTHER = 0x1 - IFT_P10 = 0xc - IFT_P80 = 0xd - IFT_PARA = 0x22 - IFT_PDP = 0xff - IFT_PFLOG = 0xf5 - IFT_PFSYNC = 0xf6 - IFT_PKTAP = 0xfe - IFT_PPP = 0x17 - IFT_PROPMUX = 0x36 - IFT_PROPVIRTUAL = 0x35 - IFT_PTPSERIAL = 0x16 - IFT_RS232 = 0x21 - IFT_SDLC = 0x11 - IFT_SIP = 0x1f - IFT_SLIP = 0x1c - IFT_SMDSDXI = 0x2b - IFT_SMDSICIP = 0x34 - IFT_SONET = 0x27 - IFT_SONETPATH = 0x32 - IFT_SONETVT = 0x33 - IFT_STARLAN = 0xb - IFT_STF = 0x39 - IFT_T1 = 0x12 - IFT_ULTRA = 0x1d - IFT_V35 = 0x2d - IFT_X25 = 0x5 - IFT_X25DDN = 0x4 - IFT_X25PLE = 0x28 - IFT_XETHER = 0x1a - IGNBRK = 0x1 - IGNCR = 0x80 - IGNPAR = 0x4 - IMAXBEL = 0x2000 - INLCR = 0x40 - INPCK = 0x10 - IN_CLASSA_HOST = 0xffffff - IN_CLASSA_MAX = 0x80 - IN_CLASSA_NET = 0xff000000 - IN_CLASSA_NSHIFT = 0x18 - IN_CLASSB_HOST = 0xffff - IN_CLASSB_MAX = 0x10000 - IN_CLASSB_NET = 0xffff0000 - IN_CLASSB_NSHIFT = 0x10 - IN_CLASSC_HOST = 0xff - IN_CLASSC_NET = 0xffffff00 - IN_CLASSC_NSHIFT = 0x8 - IN_CLASSD_HOST = 0xfffffff - IN_CLASSD_NET = 0xf0000000 - IN_CLASSD_NSHIFT = 0x1c - IN_LINKLOCALNETNUM = 0xa9fe0000 - IN_LOOPBACKNET = 0x7f - IPPROTO_3PC = 0x22 - IPPROTO_ADFS = 0x44 - IPPROTO_AH = 0x33 - IPPROTO_AHIP = 0x3d - IPPROTO_APES = 0x63 - IPPROTO_ARGUS = 0xd - IPPROTO_AX25 = 0x5d - IPPROTO_BHA = 0x31 - IPPROTO_BLT = 0x1e - IPPROTO_BRSATMON = 0x4c - IPPROTO_CFTP = 0x3e - IPPROTO_CHAOS = 0x10 - IPPROTO_CMTP = 0x26 - IPPROTO_CPHB = 0x49 - IPPROTO_CPNX = 0x48 - IPPROTO_DDP = 0x25 - IPPROTO_DGP = 0x56 - IPPROTO_DIVERT = 0xfe - IPPROTO_DONE = 0x101 - IPPROTO_DSTOPTS = 0x3c - IPPROTO_EGP = 0x8 - IPPROTO_EMCON = 0xe - IPPROTO_ENCAP = 0x62 - IPPROTO_EON = 0x50 - IPPROTO_ESP = 0x32 - IPPROTO_ETHERIP = 0x61 - IPPROTO_FRAGMENT = 0x2c - IPPROTO_GGP = 0x3 - IPPROTO_GMTP = 0x64 - IPPROTO_GRE = 0x2f - IPPROTO_HELLO = 0x3f - IPPROTO_HMP = 0x14 - IPPROTO_HOPOPTS = 0x0 - IPPROTO_ICMP = 0x1 - IPPROTO_ICMPV6 = 0x3a - IPPROTO_IDP = 0x16 - IPPROTO_IDPR = 0x23 - IPPROTO_IDRP = 0x2d - IPPROTO_IGMP = 0x2 - IPPROTO_IGP = 0x55 - IPPROTO_IGRP = 0x58 - IPPROTO_IL = 0x28 - IPPROTO_INLSP = 0x34 - IPPROTO_INP = 0x20 - IPPROTO_IP = 0x0 - IPPROTO_IPCOMP = 0x6c - IPPROTO_IPCV = 0x47 - IPPROTO_IPEIP = 0x5e - IPPROTO_IPIP = 0x4 - IPPROTO_IPPC = 0x43 - IPPROTO_IPV4 = 0x4 - IPPROTO_IPV6 = 0x29 - IPPROTO_IRTP = 0x1c - IPPROTO_KRYPTOLAN = 0x41 - IPPROTO_LARP = 0x5b - IPPROTO_LEAF1 = 0x19 - IPPROTO_LEAF2 = 0x1a - IPPROTO_MAX = 0x100 - IPPROTO_MAXID = 0x34 - IPPROTO_MEAS = 0x13 - IPPROTO_MHRP = 0x30 - IPPROTO_MICP = 0x5f - IPPROTO_MTP = 0x5c - IPPROTO_MUX = 0x12 - IPPROTO_ND = 0x4d - IPPROTO_NHRP = 0x36 - IPPROTO_NONE = 0x3b - IPPROTO_NSP = 0x1f - IPPROTO_NVPII = 0xb - IPPROTO_OSPFIGP = 0x59 - IPPROTO_PGM = 0x71 - IPPROTO_PIGP = 0x9 - IPPROTO_PIM = 0x67 - IPPROTO_PRM = 0x15 - IPPROTO_PUP = 0xc - IPPROTO_PVP = 0x4b - IPPROTO_RAW = 0xff - IPPROTO_RCCMON = 0xa - IPPROTO_RDP = 0x1b - IPPROTO_ROUTING = 0x2b - IPPROTO_RSVP = 0x2e - IPPROTO_RVD = 0x42 - IPPROTO_SATEXPAK = 0x40 - IPPROTO_SATMON = 0x45 - IPPROTO_SCCSP = 0x60 - IPPROTO_SCTP = 0x84 - IPPROTO_SDRP = 0x2a - IPPROTO_SEP = 0x21 - IPPROTO_SRPC = 0x5a - IPPROTO_ST = 0x7 - IPPROTO_SVMTP = 0x52 - IPPROTO_SWIPE = 0x35 - IPPROTO_TCF = 0x57 - IPPROTO_TCP = 0x6 - IPPROTO_TP = 0x1d - IPPROTO_TPXX = 0x27 - IPPROTO_TRUNK1 = 0x17 - IPPROTO_TRUNK2 = 0x18 - IPPROTO_TTP = 0x54 - IPPROTO_UDP = 0x11 - IPPROTO_VINES = 0x53 - IPPROTO_VISA = 0x46 - IPPROTO_VMTP = 0x51 - IPPROTO_WBEXPAK = 0x4f - IPPROTO_WBMON = 0x4e - IPPROTO_WSN = 0x4a - IPPROTO_XNET = 0xf - IPPROTO_XTP = 0x24 - IPV6_2292DSTOPTS = 0x17 - IPV6_2292HOPLIMIT = 0x14 - IPV6_2292HOPOPTS = 0x16 - IPV6_2292NEXTHOP = 0x15 - IPV6_2292PKTINFO = 0x13 - IPV6_2292PKTOPTIONS = 0x19 - IPV6_2292RTHDR = 0x18 - IPV6_BINDV6ONLY = 0x1b - IPV6_BOUND_IF = 0x7d - IPV6_CHECKSUM = 0x1a - IPV6_DEFAULT_MULTICAST_HOPS = 0x1 - IPV6_DEFAULT_MULTICAST_LOOP = 0x1 - IPV6_DEFHLIM = 0x40 - IPV6_FAITH = 0x1d - IPV6_FLOWINFO_MASK = 0xffffff0f - IPV6_FLOWLABEL_MASK = 0xffff0f00 - IPV6_FLOW_ECN_MASK = 0x300 - IPV6_FRAGTTL = 0x3c - IPV6_FW_ADD = 0x1e - IPV6_FW_DEL = 0x1f - IPV6_FW_FLUSH = 0x20 - IPV6_FW_GET = 0x22 - IPV6_FW_ZERO = 0x21 - IPV6_HLIMDEC = 0x1 - IPV6_IPSEC_POLICY = 0x1c - IPV6_JOIN_GROUP = 0xc - IPV6_LEAVE_GROUP = 0xd - IPV6_MAXHLIM = 0xff - IPV6_MAXOPTHDR = 0x800 - IPV6_MAXPACKET = 0xffff - IPV6_MAX_GROUP_SRC_FILTER = 0x200 - IPV6_MAX_MEMBERSHIPS = 0xfff - IPV6_MAX_SOCK_SRC_FILTER = 0x80 - IPV6_MIN_MEMBERSHIPS = 0x1f - IPV6_MMTU = 0x500 - IPV6_MULTICAST_HOPS = 0xa - IPV6_MULTICAST_IF = 0x9 - IPV6_MULTICAST_LOOP = 0xb - IPV6_PORTRANGE = 0xe - IPV6_PORTRANGE_DEFAULT = 0x0 - IPV6_PORTRANGE_HIGH = 0x1 - IPV6_PORTRANGE_LOW = 0x2 - IPV6_RECVTCLASS = 0x23 - IPV6_RTHDR_LOOSE = 0x0 - IPV6_RTHDR_STRICT = 0x1 - IPV6_RTHDR_TYPE_0 = 0x0 - IPV6_SOCKOPT_RESERVED1 = 0x3 - IPV6_TCLASS = 0x24 - IPV6_UNICAST_HOPS = 0x4 - IPV6_V6ONLY = 0x1b - IPV6_VERSION = 0x60 - IPV6_VERSION_MASK = 0xf0 - IP_ADD_MEMBERSHIP = 0xc - IP_ADD_SOURCE_MEMBERSHIP = 0x46 - IP_BLOCK_SOURCE = 0x48 - IP_BOUND_IF = 0x19 - IP_DEFAULT_MULTICAST_LOOP = 0x1 - IP_DEFAULT_MULTICAST_TTL = 0x1 - IP_DF = 0x4000 - IP_DROP_MEMBERSHIP = 0xd - IP_DROP_SOURCE_MEMBERSHIP = 0x47 - IP_DUMMYNET_CONFIGURE = 0x3c - IP_DUMMYNET_DEL = 0x3d - IP_DUMMYNET_FLUSH = 0x3e - IP_DUMMYNET_GET = 0x40 - IP_FAITH = 0x16 - IP_FW_ADD = 0x28 - IP_FW_DEL = 0x29 - IP_FW_FLUSH = 0x2a - IP_FW_GET = 0x2c - IP_FW_RESETLOG = 0x2d - IP_FW_ZERO = 0x2b - IP_HDRINCL = 0x2 - IP_IPSEC_POLICY = 0x15 - IP_MAXPACKET = 0xffff - IP_MAX_GROUP_SRC_FILTER = 0x200 - IP_MAX_MEMBERSHIPS = 0xfff - IP_MAX_SOCK_MUTE_FILTER = 0x80 - IP_MAX_SOCK_SRC_FILTER = 0x80 - IP_MF = 0x2000 - IP_MIN_MEMBERSHIPS = 0x1f - IP_MSFILTER = 0x4a - IP_MSS = 0x240 - IP_MULTICAST_IF = 0x9 - IP_MULTICAST_IFINDEX = 0x42 - IP_MULTICAST_LOOP = 0xb - IP_MULTICAST_TTL = 0xa - IP_MULTICAST_VIF = 0xe - IP_NAT__XXX = 0x37 - IP_OFFMASK = 0x1fff - IP_OLD_FW_ADD = 0x32 - IP_OLD_FW_DEL = 0x33 - IP_OLD_FW_FLUSH = 0x34 - IP_OLD_FW_GET = 0x36 - IP_OLD_FW_RESETLOG = 0x38 - IP_OLD_FW_ZERO = 0x35 - IP_OPTIONS = 0x1 - IP_PKTINFO = 0x1a - IP_PORTRANGE = 0x13 - IP_PORTRANGE_DEFAULT = 0x0 - IP_PORTRANGE_HIGH = 0x1 - IP_PORTRANGE_LOW = 0x2 - IP_RECVDSTADDR = 0x7 - IP_RECVIF = 0x14 - IP_RECVOPTS = 0x5 - IP_RECVPKTINFO = 0x1a - IP_RECVRETOPTS = 0x6 - IP_RECVTOS = 0x1b - IP_RECVTTL = 0x18 - IP_RETOPTS = 0x8 - IP_RF = 0x8000 - IP_RSVP_OFF = 0x10 - IP_RSVP_ON = 0xf - IP_RSVP_VIF_OFF = 0x12 - IP_RSVP_VIF_ON = 0x11 - IP_STRIPHDR = 0x17 - IP_TOS = 0x3 - IP_TRAFFIC_MGT_BACKGROUND = 0x41 - IP_TTL = 0x4 - IP_UNBLOCK_SOURCE = 0x49 - ISIG = 0x80 - ISTRIP = 0x20 - IUTF8 = 0x4000 - IXANY = 0x800 - IXOFF = 0x400 - IXON = 0x200 - KERN_HOSTNAME = 0xa - KERN_OSRELEASE = 0x2 - KERN_OSTYPE = 0x1 - KERN_VERSION = 0x4 - LOCK_EX = 0x2 - LOCK_NB = 0x4 - LOCK_SH = 0x1 - LOCK_UN = 0x8 - MADV_CAN_REUSE = 0x9 - MADV_DONTNEED = 0x4 - MADV_FREE = 0x5 - MADV_FREE_REUSABLE = 0x7 - MADV_FREE_REUSE = 0x8 - MADV_NORMAL = 0x0 - MADV_PAGEOUT = 0xa - MADV_RANDOM = 0x1 - MADV_SEQUENTIAL = 0x2 - MADV_WILLNEED = 0x3 - MADV_ZERO_WIRED_PAGES = 0x6 - MAP_ANON = 0x1000 - MAP_ANONYMOUS = 0x1000 - MAP_COPY = 0x2 - MAP_FILE = 0x0 - MAP_FIXED = 0x10 - MAP_HASSEMAPHORE = 0x200 - MAP_JIT = 0x800 - MAP_NOCACHE = 0x400 - MAP_NOEXTEND = 0x100 - MAP_NORESERVE = 0x40 - MAP_PRIVATE = 0x2 - MAP_RENAME = 0x20 - MAP_RESERVED0080 = 0x80 - MAP_RESILIENT_CODESIGN = 0x2000 - MAP_RESILIENT_MEDIA = 0x4000 - MAP_SHARED = 0x1 - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MNT_ASYNC = 0x40 - MNT_AUTOMOUNTED = 0x400000 - MNT_CMDFLAGS = 0xf0000 - MNT_CPROTECT = 0x80 - MNT_DEFWRITE = 0x2000000 - MNT_DONTBROWSE = 0x100000 - MNT_DOVOLFS = 0x8000 - MNT_DWAIT = 0x4 - MNT_EXPORTED = 0x100 - MNT_FORCE = 0x80000 - MNT_IGNORE_OWNERSHIP = 0x200000 - MNT_JOURNALED = 0x800000 - MNT_LOCAL = 0x1000 - MNT_MULTILABEL = 0x4000000 - MNT_NOATIME = 0x10000000 - MNT_NOBLOCK = 0x20000 - MNT_NODEV = 0x10 - MNT_NOEXEC = 0x4 - MNT_NOSUID = 0x8 - MNT_NOUSERXATTR = 0x1000000 - MNT_NOWAIT = 0x2 - MNT_QUARANTINE = 0x400 - MNT_QUOTA = 0x2000 - MNT_RDONLY = 0x1 - MNT_RELOAD = 0x40000 - MNT_ROOTFS = 0x4000 - MNT_SYNCHRONOUS = 0x2 - MNT_UNION = 0x20 - MNT_UNKNOWNPERMISSIONS = 0x200000 - MNT_UPDATE = 0x10000 - MNT_VISFLAGMASK = 0x17f0f5ff - MNT_WAIT = 0x1 - MSG_CTRUNC = 0x20 - MSG_DONTROUTE = 0x4 - MSG_DONTWAIT = 0x80 - MSG_EOF = 0x100 - MSG_EOR = 0x8 - MSG_FLUSH = 0x400 - MSG_HAVEMORE = 0x2000 - MSG_HOLD = 0x800 - MSG_NEEDSA = 0x10000 - MSG_OOB = 0x1 - MSG_PEEK = 0x2 - MSG_RCVMORE = 0x4000 - MSG_SEND = 0x1000 - MSG_TRUNC = 0x10 - MSG_WAITALL = 0x40 - MSG_WAITSTREAM = 0x200 - MS_ASYNC = 0x1 - MS_DEACTIVATE = 0x8 - MS_INVALIDATE = 0x2 - MS_KILLPAGES = 0x4 - MS_SYNC = 0x10 - NAME_MAX = 0xff - NET_RT_DUMP = 0x1 - NET_RT_DUMP2 = 0x7 - NET_RT_FLAGS = 0x2 - NET_RT_IFLIST = 0x3 - NET_RT_IFLIST2 = 0x6 - NET_RT_MAXID = 0xa - NET_RT_STAT = 0x4 - NET_RT_TRASH = 0x5 - NFDBITS = 0x20 - NL0 = 0x0 - NL1 = 0x100 - NL2 = 0x200 - NL3 = 0x300 - NLDLY = 0x300 - NOFLSH = 0x80000000 - NOKERNINFO = 0x2000000 - NOTE_ABSOLUTE = 0x8 - NOTE_ATTRIB = 0x8 - NOTE_BACKGROUND = 0x40 - NOTE_CHILD = 0x4 - NOTE_CRITICAL = 0x20 - NOTE_DELETE = 0x1 - NOTE_EXEC = 0x20000000 - NOTE_EXIT = 0x80000000 - NOTE_EXITSTATUS = 0x4000000 - NOTE_EXIT_CSERROR = 0x40000 - NOTE_EXIT_DECRYPTFAIL = 0x10000 - NOTE_EXIT_DETAIL = 0x2000000 - NOTE_EXIT_DETAIL_MASK = 0x70000 - NOTE_EXIT_MEMORY = 0x20000 - NOTE_EXIT_REPARENTED = 0x80000 - NOTE_EXTEND = 0x4 - NOTE_FFAND = 0x40000000 - NOTE_FFCOPY = 0xc0000000 - NOTE_FFCTRLMASK = 0xc0000000 - NOTE_FFLAGSMASK = 0xffffff - NOTE_FFNOP = 0x0 - NOTE_FFOR = 0x80000000 - NOTE_FORK = 0x40000000 - NOTE_FUNLOCK = 0x100 - NOTE_LEEWAY = 0x10 - NOTE_LINK = 0x10 - NOTE_LOWAT = 0x1 - NOTE_MACH_CONTINUOUS_TIME = 0x80 - NOTE_NONE = 0x80 - NOTE_NSECONDS = 0x4 - NOTE_OOB = 0x2 - NOTE_PCTRLMASK = -0x100000 - NOTE_PDATAMASK = 0xfffff - NOTE_REAP = 0x10000000 - NOTE_RENAME = 0x20 - NOTE_REVOKE = 0x40 - NOTE_SECONDS = 0x1 - NOTE_SIGNAL = 0x8000000 - NOTE_TRACK = 0x1 - NOTE_TRACKERR = 0x2 - NOTE_TRIGGER = 0x1000000 - NOTE_USECONDS = 0x2 - NOTE_VM_ERROR = 0x10000000 - NOTE_VM_PRESSURE = 0x80000000 - NOTE_VM_PRESSURE_SUDDEN_TERMINATE = 0x20000000 - NOTE_VM_PRESSURE_TERMINATE = 0x40000000 - NOTE_WRITE = 0x2 - OCRNL = 0x10 - OFDEL = 0x20000 - OFILL = 0x80 - ONLCR = 0x2 - ONLRET = 0x40 - ONOCR = 0x20 - ONOEOT = 0x8 - OPOST = 0x1 - OXTABS = 0x4 - O_ACCMODE = 0x3 - O_ALERT = 0x20000000 - O_APPEND = 0x8 - O_ASYNC = 0x40 - O_CLOEXEC = 0x1000000 - O_CREAT = 0x200 - O_DIRECTORY = 0x100000 - O_DP_GETRAWENCRYPTED = 0x1 - O_DP_GETRAWUNENCRYPTED = 0x2 - O_DSYNC = 0x400000 - O_EVTONLY = 0x8000 - O_EXCL = 0x800 - O_EXLOCK = 0x20 - O_FSYNC = 0x80 - O_NDELAY = 0x4 - O_NOCTTY = 0x20000 - O_NOFOLLOW = 0x100 - O_NONBLOCK = 0x4 - O_POPUP = 0x80000000 - O_RDONLY = 0x0 - O_RDWR = 0x2 - O_SHLOCK = 0x10 - O_SYMLINK = 0x200000 - O_SYNC = 0x80 - O_TRUNC = 0x400 - O_WRONLY = 0x1 - PARENB = 0x1000 - PARMRK = 0x8 - PARODD = 0x2000 - PENDIN = 0x20000000 - PRIO_PGRP = 0x1 - PRIO_PROCESS = 0x0 - PRIO_USER = 0x2 - PROT_EXEC = 0x4 - PROT_NONE = 0x0 - PROT_READ = 0x1 - PROT_WRITE = 0x2 - PT_ATTACH = 0xa - PT_ATTACHEXC = 0xe - PT_CONTINUE = 0x7 - PT_DENY_ATTACH = 0x1f - PT_DETACH = 0xb - PT_FIRSTMACH = 0x20 - PT_FORCEQUOTA = 0x1e - PT_KILL = 0x8 - PT_READ_D = 0x2 - PT_READ_I = 0x1 - PT_READ_U = 0x3 - PT_SIGEXC = 0xc - PT_STEP = 0x9 - PT_THUPDATE = 0xd - PT_TRACE_ME = 0x0 - PT_WRITE_D = 0x5 - PT_WRITE_I = 0x4 - PT_WRITE_U = 0x6 - RLIMIT_AS = 0x5 - RLIMIT_CORE = 0x4 - RLIMIT_CPU = 0x0 - RLIMIT_CPU_USAGE_MONITOR = 0x2 - RLIMIT_DATA = 0x2 - RLIMIT_FSIZE = 0x1 - RLIMIT_MEMLOCK = 0x6 - RLIMIT_NOFILE = 0x8 - RLIMIT_NPROC = 0x7 - RLIMIT_RSS = 0x5 - RLIMIT_STACK = 0x3 - RLIM_INFINITY = 0x7fffffffffffffff - RTAX_AUTHOR = 0x6 - RTAX_BRD = 0x7 - RTAX_DST = 0x0 - RTAX_GATEWAY = 0x1 - RTAX_GENMASK = 0x3 - RTAX_IFA = 0x5 - RTAX_IFP = 0x4 - RTAX_MAX = 0x8 - RTAX_NETMASK = 0x2 - RTA_AUTHOR = 0x40 - RTA_BRD = 0x80 - RTA_DST = 0x1 - RTA_GATEWAY = 0x2 - RTA_GENMASK = 0x8 - RTA_IFA = 0x20 - RTA_IFP = 0x10 - RTA_NETMASK = 0x4 - RTF_BLACKHOLE = 0x1000 - RTF_BROADCAST = 0x400000 - RTF_CLONING = 0x100 - RTF_CONDEMNED = 0x2000000 - RTF_DELCLONE = 0x80 - RTF_DONE = 0x40 - RTF_DYNAMIC = 0x10 - RTF_GATEWAY = 0x2 - RTF_HOST = 0x4 - RTF_IFREF = 0x4000000 - RTF_IFSCOPE = 0x1000000 - RTF_LLINFO = 0x400 - RTF_LOCAL = 0x200000 - RTF_MODIFIED = 0x20 - RTF_MULTICAST = 0x800000 - RTF_NOIFREF = 0x2000 - RTF_PINNED = 0x100000 - RTF_PRCLONING = 0x10000 - RTF_PROTO1 = 0x8000 - RTF_PROTO2 = 0x4000 - RTF_PROTO3 = 0x40000 - RTF_PROXY = 0x8000000 - RTF_REJECT = 0x8 - RTF_ROUTER = 0x10000000 - RTF_STATIC = 0x800 - RTF_UP = 0x1 - RTF_WASCLONED = 0x20000 - RTF_XRESOLVE = 0x200 - RTM_ADD = 0x1 - RTM_CHANGE = 0x3 - RTM_DELADDR = 0xd - RTM_DELETE = 0x2 - RTM_DELMADDR = 0x10 - RTM_GET = 0x4 - RTM_GET2 = 0x14 - RTM_IFINFO = 0xe - RTM_IFINFO2 = 0x12 - RTM_LOCK = 0x8 - RTM_LOSING = 0x5 - RTM_MISS = 0x7 - RTM_NEWADDR = 0xc - RTM_NEWMADDR = 0xf - RTM_NEWMADDR2 = 0x13 - RTM_OLDADD = 0x9 - RTM_OLDDEL = 0xa - RTM_REDIRECT = 0x6 - RTM_RESOLVE = 0xb - RTM_RTTUNIT = 0xf4240 - RTM_VERSION = 0x5 - RTV_EXPIRE = 0x4 - RTV_HOPCOUNT = 0x2 - RTV_MTU = 0x1 - RTV_RPIPE = 0x8 - RTV_RTT = 0x40 - RTV_RTTVAR = 0x80 - RTV_SPIPE = 0x10 - RTV_SSTHRESH = 0x20 - RUSAGE_CHILDREN = -0x1 - RUSAGE_SELF = 0x0 - SCM_CREDS = 0x3 - SCM_RIGHTS = 0x1 - SCM_TIMESTAMP = 0x2 - SCM_TIMESTAMP_MONOTONIC = 0x4 - SHUT_RD = 0x0 - SHUT_RDWR = 0x2 - SHUT_WR = 0x1 - SIOCADDMULTI = 0x80206931 - SIOCAIFADDR = 0x8040691a - SIOCARPIPLL = 0xc0206928 - SIOCATMARK = 0x40047307 - SIOCAUTOADDR = 0xc0206926 - SIOCAUTONETMASK = 0x80206927 - SIOCDELMULTI = 0x80206932 - SIOCDIFADDR = 0x80206919 - SIOCDIFPHYADDR = 0x80206941 - SIOCGDRVSPEC = 0xc01c697b - SIOCGETVLAN = 0xc020697f - SIOCGHIWAT = 0x40047301 - SIOCGIFADDR = 0xc0206921 - SIOCGIFALTMTU = 0xc0206948 - SIOCGIFASYNCMAP = 0xc020697c - SIOCGIFBOND = 0xc0206947 - SIOCGIFBRDADDR = 0xc0206923 - SIOCGIFCAP = 0xc020695b - SIOCGIFCONF = 0xc0086924 - SIOCGIFDEVMTU = 0xc0206944 - SIOCGIFDSTADDR = 0xc0206922 - SIOCGIFFLAGS = 0xc0206911 - SIOCGIFGENERIC = 0xc020693a - SIOCGIFKPI = 0xc0206987 - SIOCGIFMAC = 0xc0206982 - SIOCGIFMEDIA = 0xc0286938 - SIOCGIFMETRIC = 0xc0206917 - SIOCGIFMTU = 0xc0206933 - SIOCGIFNETMASK = 0xc0206925 - SIOCGIFPDSTADDR = 0xc0206940 - SIOCGIFPHYS = 0xc0206935 - SIOCGIFPSRCADDR = 0xc020693f - SIOCGIFSTATUS = 0xc331693d - SIOCGIFVLAN = 0xc020697f - SIOCGIFWAKEFLAGS = 0xc0206988 - SIOCGLOWAT = 0x40047303 - SIOCGPGRP = 0x40047309 - SIOCIFCREATE = 0xc0206978 - SIOCIFCREATE2 = 0xc020697a - SIOCIFDESTROY = 0x80206979 - SIOCIFGCLONERS = 0xc00c6981 - SIOCRSLVMULTI = 0xc008693b - SIOCSDRVSPEC = 0x801c697b - SIOCSETVLAN = 0x8020697e - SIOCSHIWAT = 0x80047300 - SIOCSIFADDR = 0x8020690c - SIOCSIFALTMTU = 0x80206945 - SIOCSIFASYNCMAP = 0x8020697d - SIOCSIFBOND = 0x80206946 - SIOCSIFBRDADDR = 0x80206913 - SIOCSIFCAP = 0x8020695a - SIOCSIFDSTADDR = 0x8020690e - SIOCSIFFLAGS = 0x80206910 - SIOCSIFGENERIC = 0x80206939 - SIOCSIFKPI = 0x80206986 - SIOCSIFLLADDR = 0x8020693c - SIOCSIFMAC = 0x80206983 - SIOCSIFMEDIA = 0xc0206937 - SIOCSIFMETRIC = 0x80206918 - SIOCSIFMTU = 0x80206934 - SIOCSIFNETMASK = 0x80206916 - SIOCSIFPHYADDR = 0x8040693e - SIOCSIFPHYS = 0x80206936 - SIOCSIFVLAN = 0x8020697e - SIOCSLOWAT = 0x80047302 - SIOCSPGRP = 0x80047308 - SOCK_DGRAM = 0x2 - SOCK_MAXADDRLEN = 0xff - SOCK_RAW = 0x3 - SOCK_RDM = 0x4 - SOCK_SEQPACKET = 0x5 - SOCK_STREAM = 0x1 - SOL_SOCKET = 0xffff - SOMAXCONN = 0x80 - SO_ACCEPTCONN = 0x2 - SO_BROADCAST = 0x20 - SO_DEBUG = 0x1 - SO_DONTROUTE = 0x10 - SO_DONTTRUNC = 0x2000 - SO_ERROR = 0x1007 - SO_KEEPALIVE = 0x8 - SO_LABEL = 0x1010 - SO_LINGER = 0x80 - SO_LINGER_SEC = 0x1080 - SO_NETSVC_MARKING_LEVEL = 0x1119 - SO_NET_SERVICE_TYPE = 0x1116 - SO_NKE = 0x1021 - SO_NOADDRERR = 0x1023 - SO_NOSIGPIPE = 0x1022 - SO_NOTIFYCONFLICT = 0x1026 - SO_NP_EXTENSIONS = 0x1083 - SO_NREAD = 0x1020 - SO_NUMRCVPKT = 0x1112 - SO_NWRITE = 0x1024 - SO_OOBINLINE = 0x100 - SO_PEERLABEL = 0x1011 - SO_RANDOMPORT = 0x1082 - SO_RCVBUF = 0x1002 - SO_RCVLOWAT = 0x1004 - SO_RCVTIMEO = 0x1006 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_REUSESHAREUID = 0x1025 - SO_SNDBUF = 0x1001 - SO_SNDLOWAT = 0x1003 - SO_SNDTIMEO = 0x1005 - SO_TIMESTAMP = 0x400 - SO_TIMESTAMP_MONOTONIC = 0x800 - SO_TYPE = 0x1008 - SO_UPCALLCLOSEWAIT = 0x1027 - SO_USELOOPBACK = 0x40 - SO_WANTMORE = 0x4000 - SO_WANTOOBFLAG = 0x8000 - S_IEXEC = 0x40 - S_IFBLK = 0x6000 - S_IFCHR = 0x2000 - S_IFDIR = 0x4000 - S_IFIFO = 0x1000 - S_IFLNK = 0xa000 - S_IFMT = 0xf000 - S_IFREG = 0x8000 - S_IFSOCK = 0xc000 - S_IFWHT = 0xe000 - S_IREAD = 0x100 - S_IRGRP = 0x20 - S_IROTH = 0x4 - S_IRUSR = 0x100 - S_IRWXG = 0x38 - S_IRWXO = 0x7 - S_IRWXU = 0x1c0 - S_ISGID = 0x400 - S_ISTXT = 0x200 - S_ISUID = 0x800 - S_ISVTX = 0x200 - S_IWGRP = 0x10 - S_IWOTH = 0x2 - S_IWRITE = 0x80 - S_IWUSR = 0x80 - S_IXGRP = 0x8 - S_IXOTH = 0x1 - S_IXUSR = 0x40 - TAB0 = 0x0 - TAB1 = 0x400 - TAB2 = 0x800 - TAB3 = 0x4 - TABDLY = 0xc04 - TCIFLUSH = 0x1 - TCIOFF = 0x3 - TCIOFLUSH = 0x3 - TCION = 0x4 - TCOFLUSH = 0x2 - TCOOFF = 0x1 - TCOON = 0x2 - TCP_CONNECTIONTIMEOUT = 0x20 - TCP_CONNECTION_INFO = 0x106 - TCP_ENABLE_ECN = 0x104 - TCP_FASTOPEN = 0x105 - TCP_KEEPALIVE = 0x10 - TCP_KEEPCNT = 0x102 - TCP_KEEPINTVL = 0x101 - TCP_MAXHLEN = 0x3c - TCP_MAXOLEN = 0x28 - TCP_MAXSEG = 0x2 - TCP_MAXWIN = 0xffff - TCP_MAX_SACK = 0x4 - TCP_MAX_WINSHIFT = 0xe - TCP_MINMSS = 0xd8 - TCP_MSS = 0x200 - TCP_NODELAY = 0x1 - TCP_NOOPT = 0x8 - TCP_NOPUSH = 0x4 - TCP_NOTSENT_LOWAT = 0x201 - TCP_RXT_CONNDROPTIME = 0x80 - TCP_RXT_FINDROP = 0x100 - TCP_SENDMOREACKS = 0x103 - TCSAFLUSH = 0x2 - TIOCCBRK = 0x2000747a - TIOCCDTR = 0x20007478 - TIOCCONS = 0x80047462 - TIOCDCDTIMESTAMP = 0x40087458 - TIOCDRAIN = 0x2000745e - TIOCDSIMICROCODE = 0x20007455 - TIOCEXCL = 0x2000740d - TIOCEXT = 0x80047460 - TIOCFLUSH = 0x80047410 - TIOCGDRAINWAIT = 0x40047456 - TIOCGETA = 0x402c7413 - TIOCGETD = 0x4004741a - TIOCGPGRP = 0x40047477 - TIOCGWINSZ = 0x40087468 - TIOCIXOFF = 0x20007480 - TIOCIXON = 0x20007481 - TIOCMBIC = 0x8004746b - TIOCMBIS = 0x8004746c - TIOCMGDTRWAIT = 0x4004745a - TIOCMGET = 0x4004746a - TIOCMODG = 0x40047403 - TIOCMODS = 0x80047404 - TIOCMSDTRWAIT = 0x8004745b - TIOCMSET = 0x8004746d - TIOCM_CAR = 0x40 - TIOCM_CD = 0x40 - TIOCM_CTS = 0x20 - TIOCM_DSR = 0x100 - TIOCM_DTR = 0x2 - TIOCM_LE = 0x1 - TIOCM_RI = 0x80 - TIOCM_RNG = 0x80 - TIOCM_RTS = 0x4 - TIOCM_SR = 0x10 - TIOCM_ST = 0x8 - TIOCNOTTY = 0x20007471 - TIOCNXCL = 0x2000740e - TIOCOUTQ = 0x40047473 - TIOCPKT = 0x80047470 - TIOCPKT_DATA = 0x0 - TIOCPKT_DOSTOP = 0x20 - TIOCPKT_FLUSHREAD = 0x1 - TIOCPKT_FLUSHWRITE = 0x2 - TIOCPKT_IOCTL = 0x40 - TIOCPKT_NOSTOP = 0x10 - TIOCPKT_START = 0x8 - TIOCPKT_STOP = 0x4 - TIOCPTYGNAME = 0x40807453 - TIOCPTYGRANT = 0x20007454 - TIOCPTYUNLK = 0x20007452 - TIOCREMOTE = 0x80047469 - TIOCSBRK = 0x2000747b - TIOCSCONS = 0x20007463 - TIOCSCTTY = 0x20007461 - TIOCSDRAINWAIT = 0x80047457 - TIOCSDTR = 0x20007479 - TIOCSETA = 0x802c7414 - TIOCSETAF = 0x802c7416 - TIOCSETAW = 0x802c7415 - TIOCSETD = 0x8004741b - TIOCSIG = 0x2000745f - TIOCSPGRP = 0x80047476 - TIOCSTART = 0x2000746e - TIOCSTAT = 0x20007465 - TIOCSTI = 0x80017472 - TIOCSTOP = 0x2000746f - TIOCSWINSZ = 0x80087467 - TIOCTIMESTAMP = 0x40087459 - TIOCUCNTL = 0x80047466 - TOSTOP = 0x400000 - VDISCARD = 0xf - VDSUSP = 0xb - VEOF = 0x0 - VEOL = 0x1 - VEOL2 = 0x2 - VERASE = 0x3 - VINTR = 0x8 - VKILL = 0x5 - VLNEXT = 0xe - VMIN = 0x10 - VM_LOADAVG = 0x2 - VM_MACHFACTOR = 0x4 - VM_MAXID = 0x6 - VM_METER = 0x1 - VM_SWAPUSAGE = 0x5 - VQUIT = 0x9 - VREPRINT = 0x6 - VSTART = 0xc - VSTATUS = 0x12 - VSTOP = 0xd - VSUSP = 0xa - VT0 = 0x0 - VT1 = 0x10000 - VTDLY = 0x10000 - VTIME = 0x11 - VWERASE = 0x4 - WCONTINUED = 0x10 - WCOREFLAG = 0x80 - WEXITED = 0x4 - WNOHANG = 0x1 - WNOWAIT = 0x20 - WORDSIZE = 0x20 - WSTOPPED = 0x8 - WUNTRACED = 0x2 - XATTR_CREATE = 0x2 - XATTR_NODEFAULT = 0x10 - XATTR_NOFOLLOW = 0x1 - XATTR_NOSECURITY = 0x8 - XATTR_REPLACE = 0x4 - XATTR_SHOWCOMPRESSION = 0x20 -) - -// Errors -const ( - E2BIG = syscall.Errno(0x7) - EACCES = syscall.Errno(0xd) - EADDRINUSE = syscall.Errno(0x30) - EADDRNOTAVAIL = syscall.Errno(0x31) - EAFNOSUPPORT = syscall.Errno(0x2f) - EAGAIN = syscall.Errno(0x23) - EALREADY = syscall.Errno(0x25) - EAUTH = syscall.Errno(0x50) - EBADARCH = syscall.Errno(0x56) - EBADEXEC = syscall.Errno(0x55) - EBADF = syscall.Errno(0x9) - EBADMACHO = syscall.Errno(0x58) - EBADMSG = syscall.Errno(0x5e) - EBADRPC = syscall.Errno(0x48) - EBUSY = syscall.Errno(0x10) - ECANCELED = syscall.Errno(0x59) - ECHILD = syscall.Errno(0xa) - ECONNABORTED = syscall.Errno(0x35) - ECONNREFUSED = syscall.Errno(0x3d) - ECONNRESET = syscall.Errno(0x36) - EDEADLK = syscall.Errno(0xb) - EDESTADDRREQ = syscall.Errno(0x27) - EDEVERR = syscall.Errno(0x53) - EDOM = syscall.Errno(0x21) - EDQUOT = syscall.Errno(0x45) - EEXIST = syscall.Errno(0x11) - EFAULT = syscall.Errno(0xe) - EFBIG = syscall.Errno(0x1b) - EFTYPE = syscall.Errno(0x4f) - EHOSTDOWN = syscall.Errno(0x40) - EHOSTUNREACH = syscall.Errno(0x41) - EIDRM = syscall.Errno(0x5a) - EILSEQ = syscall.Errno(0x5c) - EINPROGRESS = syscall.Errno(0x24) - EINTR = syscall.Errno(0x4) - EINVAL = syscall.Errno(0x16) - EIO = syscall.Errno(0x5) - EISCONN = syscall.Errno(0x38) - EISDIR = syscall.Errno(0x15) - ELAST = syscall.Errno(0x6a) - ELOOP = syscall.Errno(0x3e) - EMFILE = syscall.Errno(0x18) - EMLINK = syscall.Errno(0x1f) - EMSGSIZE = syscall.Errno(0x28) - EMULTIHOP = syscall.Errno(0x5f) - ENAMETOOLONG = syscall.Errno(0x3f) - ENEEDAUTH = syscall.Errno(0x51) - ENETDOWN = syscall.Errno(0x32) - ENETRESET = syscall.Errno(0x34) - ENETUNREACH = syscall.Errno(0x33) - ENFILE = syscall.Errno(0x17) - ENOATTR = syscall.Errno(0x5d) - ENOBUFS = syscall.Errno(0x37) - ENODATA = syscall.Errno(0x60) - ENODEV = syscall.Errno(0x13) - ENOENT = syscall.Errno(0x2) - ENOEXEC = syscall.Errno(0x8) - ENOLCK = syscall.Errno(0x4d) - ENOLINK = syscall.Errno(0x61) - ENOMEM = syscall.Errno(0xc) - ENOMSG = syscall.Errno(0x5b) - ENOPOLICY = syscall.Errno(0x67) - ENOPROTOOPT = syscall.Errno(0x2a) - ENOSPC = syscall.Errno(0x1c) - ENOSR = syscall.Errno(0x62) - ENOSTR = syscall.Errno(0x63) - ENOSYS = syscall.Errno(0x4e) - ENOTBLK = syscall.Errno(0xf) - ENOTCONN = syscall.Errno(0x39) - ENOTDIR = syscall.Errno(0x14) - ENOTEMPTY = syscall.Errno(0x42) - ENOTRECOVERABLE = syscall.Errno(0x68) - ENOTSOCK = syscall.Errno(0x26) - ENOTSUP = syscall.Errno(0x2d) - ENOTTY = syscall.Errno(0x19) - ENXIO = syscall.Errno(0x6) - EOPNOTSUPP = syscall.Errno(0x66) - EOVERFLOW = syscall.Errno(0x54) - EOWNERDEAD = syscall.Errno(0x69) - EPERM = syscall.Errno(0x1) - EPFNOSUPPORT = syscall.Errno(0x2e) - EPIPE = syscall.Errno(0x20) - EPROCLIM = syscall.Errno(0x43) - EPROCUNAVAIL = syscall.Errno(0x4c) - EPROGMISMATCH = syscall.Errno(0x4b) - EPROGUNAVAIL = syscall.Errno(0x4a) - EPROTO = syscall.Errno(0x64) - EPROTONOSUPPORT = syscall.Errno(0x2b) - EPROTOTYPE = syscall.Errno(0x29) - EPWROFF = syscall.Errno(0x52) - EQFULL = syscall.Errno(0x6a) - ERANGE = syscall.Errno(0x22) - EREMOTE = syscall.Errno(0x47) - EROFS = syscall.Errno(0x1e) - ERPCMISMATCH = syscall.Errno(0x49) - ESHLIBVERS = syscall.Errno(0x57) - ESHUTDOWN = syscall.Errno(0x3a) - ESOCKTNOSUPPORT = syscall.Errno(0x2c) - ESPIPE = syscall.Errno(0x1d) - ESRCH = syscall.Errno(0x3) - ESTALE = syscall.Errno(0x46) - ETIME = syscall.Errno(0x65) - ETIMEDOUT = syscall.Errno(0x3c) - ETOOMANYREFS = syscall.Errno(0x3b) - ETXTBSY = syscall.Errno(0x1a) - EUSERS = syscall.Errno(0x44) - EWOULDBLOCK = syscall.Errno(0x23) - EXDEV = syscall.Errno(0x12) -) - -// Signals -const ( - SIGABRT = syscall.Signal(0x6) - SIGALRM = syscall.Signal(0xe) - SIGBUS = syscall.Signal(0xa) - SIGCHLD = syscall.Signal(0x14) - SIGCONT = syscall.Signal(0x13) - SIGEMT = syscall.Signal(0x7) - SIGFPE = syscall.Signal(0x8) - SIGHUP = syscall.Signal(0x1) - SIGILL = syscall.Signal(0x4) - SIGINFO = syscall.Signal(0x1d) - SIGINT = syscall.Signal(0x2) - SIGIO = syscall.Signal(0x17) - SIGIOT = syscall.Signal(0x6) - SIGKILL = syscall.Signal(0x9) - SIGPIPE = syscall.Signal(0xd) - SIGPROF = syscall.Signal(0x1b) - SIGQUIT = syscall.Signal(0x3) - SIGSEGV = syscall.Signal(0xb) - SIGSTOP = syscall.Signal(0x11) - SIGSYS = syscall.Signal(0xc) - SIGTERM = syscall.Signal(0xf) - SIGTRAP = syscall.Signal(0x5) - SIGTSTP = syscall.Signal(0x12) - SIGTTIN = syscall.Signal(0x15) - SIGTTOU = syscall.Signal(0x16) - SIGURG = syscall.Signal(0x10) - SIGUSR1 = syscall.Signal(0x1e) - SIGUSR2 = syscall.Signal(0x1f) - SIGVTALRM = syscall.Signal(0x1a) - SIGWINCH = syscall.Signal(0x1c) - SIGXCPU = syscall.Signal(0x18) - SIGXFSZ = syscall.Signal(0x19) -) - -// Error table -var errorList = [...]struct { - num syscall.Errno - name string - desc string -}{ - {1, "EPERM", "operation not permitted"}, - {2, "ENOENT", "no such file or directory"}, - {3, "ESRCH", "no such process"}, - {4, "EINTR", "interrupted system call"}, - {5, "EIO", "input/output error"}, - {6, "ENXIO", "device not configured"}, - {7, "E2BIG", "argument list too long"}, - {8, "ENOEXEC", "exec format error"}, - {9, "EBADF", "bad file descriptor"}, - {10, "ECHILD", "no child processes"}, - {11, "EDEADLK", "resource deadlock avoided"}, - {12, "ENOMEM", "cannot allocate memory"}, - {13, "EACCES", "permission denied"}, - {14, "EFAULT", "bad address"}, - {15, "ENOTBLK", "block device required"}, - {16, "EBUSY", "resource busy"}, - {17, "EEXIST", "file exists"}, - {18, "EXDEV", "cross-device link"}, - {19, "ENODEV", "operation not supported by device"}, - {20, "ENOTDIR", "not a directory"}, - {21, "EISDIR", "is a directory"}, - {22, "EINVAL", "invalid argument"}, - {23, "ENFILE", "too many open files in system"}, - {24, "EMFILE", "too many open files"}, - {25, "ENOTTY", "inappropriate ioctl for device"}, - {26, "ETXTBSY", "text file busy"}, - {27, "EFBIG", "file too large"}, - {28, "ENOSPC", "no space left on device"}, - {29, "ESPIPE", "illegal seek"}, - {30, "EROFS", "read-only file system"}, - {31, "EMLINK", "too many links"}, - {32, "EPIPE", "broken pipe"}, - {33, "EDOM", "numerical argument out of domain"}, - {34, "ERANGE", "result too large"}, - {35, "EAGAIN", "resource temporarily unavailable"}, - {36, "EINPROGRESS", "operation now in progress"}, - {37, "EALREADY", "operation already in progress"}, - {38, "ENOTSOCK", "socket operation on non-socket"}, - {39, "EDESTADDRREQ", "destination address required"}, - {40, "EMSGSIZE", "message too long"}, - {41, "EPROTOTYPE", "protocol wrong type for socket"}, - {42, "ENOPROTOOPT", "protocol not available"}, - {43, "EPROTONOSUPPORT", "protocol not supported"}, - {44, "ESOCKTNOSUPPORT", "socket type not supported"}, - {45, "ENOTSUP", "operation not supported"}, - {46, "EPFNOSUPPORT", "protocol family not supported"}, - {47, "EAFNOSUPPORT", "address family not supported by protocol family"}, - {48, "EADDRINUSE", "address already in use"}, - {49, "EADDRNOTAVAIL", "can't assign requested address"}, - {50, "ENETDOWN", "network is down"}, - {51, "ENETUNREACH", "network is unreachable"}, - {52, "ENETRESET", "network dropped connection on reset"}, - {53, "ECONNABORTED", "software caused connection abort"}, - {54, "ECONNRESET", "connection reset by peer"}, - {55, "ENOBUFS", "no buffer space available"}, - {56, "EISCONN", "socket is already connected"}, - {57, "ENOTCONN", "socket is not connected"}, - {58, "ESHUTDOWN", "can't send after socket shutdown"}, - {59, "ETOOMANYREFS", "too many references: can't splice"}, - {60, "ETIMEDOUT", "operation timed out"}, - {61, "ECONNREFUSED", "connection refused"}, - {62, "ELOOP", "too many levels of symbolic links"}, - {63, "ENAMETOOLONG", "file name too long"}, - {64, "EHOSTDOWN", "host is down"}, - {65, "EHOSTUNREACH", "no route to host"}, - {66, "ENOTEMPTY", "directory not empty"}, - {67, "EPROCLIM", "too many processes"}, - {68, "EUSERS", "too many users"}, - {69, "EDQUOT", "disc quota exceeded"}, - {70, "ESTALE", "stale NFS file handle"}, - {71, "EREMOTE", "too many levels of remote in path"}, - {72, "EBADRPC", "RPC struct is bad"}, - {73, "ERPCMISMATCH", "RPC version wrong"}, - {74, "EPROGUNAVAIL", "RPC prog. not avail"}, - {75, "EPROGMISMATCH", "program version wrong"}, - {76, "EPROCUNAVAIL", "bad procedure for program"}, - {77, "ENOLCK", "no locks available"}, - {78, "ENOSYS", "function not implemented"}, - {79, "EFTYPE", "inappropriate file type or format"}, - {80, "EAUTH", "authentication error"}, - {81, "ENEEDAUTH", "need authenticator"}, - {82, "EPWROFF", "device power is off"}, - {83, "EDEVERR", "device error"}, - {84, "EOVERFLOW", "value too large to be stored in data type"}, - {85, "EBADEXEC", "bad executable (or shared library)"}, - {86, "EBADARCH", "bad CPU type in executable"}, - {87, "ESHLIBVERS", "shared library version mismatch"}, - {88, "EBADMACHO", "malformed Mach-o file"}, - {89, "ECANCELED", "operation canceled"}, - {90, "EIDRM", "identifier removed"}, - {91, "ENOMSG", "no message of desired type"}, - {92, "EILSEQ", "illegal byte sequence"}, - {93, "ENOATTR", "attribute not found"}, - {94, "EBADMSG", "bad message"}, - {95, "EMULTIHOP", "EMULTIHOP (Reserved)"}, - {96, "ENODATA", "no message available on STREAM"}, - {97, "ENOLINK", "ENOLINK (Reserved)"}, - {98, "ENOSR", "no STREAM resources"}, - {99, "ENOSTR", "not a STREAM"}, - {100, "EPROTO", "protocol error"}, - {101, "ETIME", "STREAM ioctl timeout"}, - {102, "EOPNOTSUPP", "operation not supported on socket"}, - {103, "ENOPOLICY", "policy not found"}, - {104, "ENOTRECOVERABLE", "state not recoverable"}, - {105, "EOWNERDEAD", "previous owner died"}, - {106, "EQFULL", "interface output queue is full"}, -} - -// Signal table -var signalList = [...]struct { - num syscall.Signal - name string - desc string -}{ - {1, "SIGHUP", "hangup"}, - {2, "SIGINT", "interrupt"}, - {3, "SIGQUIT", "quit"}, - {4, "SIGILL", "illegal instruction"}, - {5, "SIGTRAP", "trace/BPT trap"}, - {6, "SIGABRT", "abort trap"}, - {7, "SIGEMT", "EMT trap"}, - {8, "SIGFPE", "floating point exception"}, - {9, "SIGKILL", "killed"}, - {10, "SIGBUS", "bus error"}, - {11, "SIGSEGV", "segmentation fault"}, - {12, "SIGSYS", "bad system call"}, - {13, "SIGPIPE", "broken pipe"}, - {14, "SIGALRM", "alarm clock"}, - {15, "SIGTERM", "terminated"}, - {16, "SIGURG", "urgent I/O condition"}, - {17, "SIGSTOP", "suspended (signal)"}, - {18, "SIGTSTP", "suspended"}, - {19, "SIGCONT", "continued"}, - {20, "SIGCHLD", "child exited"}, - {21, "SIGTTIN", "stopped (tty input)"}, - {22, "SIGTTOU", "stopped (tty output)"}, - {23, "SIGIO", "I/O possible"}, - {24, "SIGXCPU", "cputime limit exceeded"}, - {25, "SIGXFSZ", "filesize limit exceeded"}, - {26, "SIGVTALRM", "virtual timer expired"}, - {27, "SIGPROF", "profiling timer expired"}, - {28, "SIGWINCH", "window size changes"}, - {29, "SIGINFO", "information request"}, - {30, "SIGUSR1", "user defined signal 1"}, - {31, "SIGUSR2", "user defined signal 2"}, -} diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go deleted file mode 100644 index e748cb110..000000000 --- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go +++ /dev/null @@ -1,1789 +0,0 @@ -// mkerrors.sh -// Code generated by the command above; see README.md. DO NOT EDIT. - -//go:build arm && darwin -// +build arm,darwin - -// Code generated by cmd/cgo -godefs; DO NOT EDIT. -// cgo -godefs -- _const.go - -package unix - -import "syscall" - -const ( - AF_APPLETALK = 0x10 - AF_CCITT = 0xa - AF_CHAOS = 0x5 - AF_CNT = 0x15 - AF_COIP = 0x14 - AF_DATAKIT = 0x9 - AF_DECnet = 0xc - AF_DLI = 0xd - AF_E164 = 0x1c - AF_ECMA = 0x8 - AF_HYLINK = 0xf - AF_IEEE80211 = 0x25 - AF_IMPLINK = 0x3 - AF_INET = 0x2 - AF_INET6 = 0x1e - AF_IPX = 0x17 - AF_ISDN = 0x1c - AF_ISO = 0x7 - AF_LAT = 0xe - AF_LINK = 0x12 - AF_LOCAL = 0x1 - AF_MAX = 0x28 - AF_NATM = 0x1f - AF_NDRV = 0x1b - AF_NETBIOS = 0x21 - AF_NS = 0x6 - AF_OSI = 0x7 - AF_PPP = 0x22 - AF_PUP = 0x4 - AF_RESERVED_36 = 0x24 - AF_ROUTE = 0x11 - AF_SIP = 0x18 - AF_SNA = 0xb - AF_SYSTEM = 0x20 - AF_SYS_CONTROL = 0x2 - AF_UNIX = 0x1 - AF_UNSPEC = 0x0 - AF_UTUN = 0x26 - ALTWERASE = 0x200 - ATTR_BIT_MAP_COUNT = 0x5 - ATTR_CMN_ACCESSMASK = 0x20000 - ATTR_CMN_ACCTIME = 0x1000 - ATTR_CMN_ADDEDTIME = 0x10000000 - ATTR_CMN_BKUPTIME = 0x2000 - ATTR_CMN_CHGTIME = 0x800 - ATTR_CMN_CRTIME = 0x200 - ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000 - ATTR_CMN_DEVID = 0x2 - ATTR_CMN_DOCUMENT_ID = 0x100000 - ATTR_CMN_ERROR = 0x20000000 - ATTR_CMN_EXTENDED_SECURITY = 0x400000 - ATTR_CMN_FILEID = 0x2000000 - ATTR_CMN_FLAGS = 0x40000 - ATTR_CMN_FNDRINFO = 0x4000 - ATTR_CMN_FSID = 0x4 - ATTR_CMN_FULLPATH = 0x8000000 - ATTR_CMN_GEN_COUNT = 0x80000 - ATTR_CMN_GRPID = 0x10000 - ATTR_CMN_GRPUUID = 0x1000000 - ATTR_CMN_MODTIME = 0x400 - ATTR_CMN_NAME = 0x1 - ATTR_CMN_NAMEDATTRCOUNT = 0x80000 - ATTR_CMN_NAMEDATTRLIST = 0x100000 - ATTR_CMN_OBJID = 0x20 - ATTR_CMN_OBJPERMANENTID = 0x40 - ATTR_CMN_OBJTAG = 0x10 - ATTR_CMN_OBJTYPE = 0x8 - ATTR_CMN_OWNERID = 0x8000 - ATTR_CMN_PARENTID = 0x4000000 - ATTR_CMN_PAROBJID = 0x80 - ATTR_CMN_RETURNED_ATTRS = 0x80000000 - ATTR_CMN_SCRIPT = 0x100 - ATTR_CMN_SETMASK = 0x41c7ff00 - ATTR_CMN_USERACCESS = 0x200000 - ATTR_CMN_UUID = 0x800000 - ATTR_CMN_VALIDMASK = 0xffffffff - ATTR_CMN_VOLSETMASK = 0x6700 - ATTR_FILE_ALLOCSIZE = 0x4 - ATTR_FILE_CLUMPSIZE = 0x10 - ATTR_FILE_DATAALLOCSIZE = 0x400 - ATTR_FILE_DATAEXTENTS = 0x800 - ATTR_FILE_DATALENGTH = 0x200 - ATTR_FILE_DEVTYPE = 0x20 - ATTR_FILE_FILETYPE = 0x40 - ATTR_FILE_FORKCOUNT = 0x80 - ATTR_FILE_FORKLIST = 0x100 - ATTR_FILE_IOBLOCKSIZE = 0x8 - ATTR_FILE_LINKCOUNT = 0x1 - ATTR_FILE_RSRCALLOCSIZE = 0x2000 - ATTR_FILE_RSRCEXTENTS = 0x4000 - ATTR_FILE_RSRCLENGTH = 0x1000 - ATTR_FILE_SETMASK = 0x20 - ATTR_FILE_TOTALSIZE = 0x2 - ATTR_FILE_VALIDMASK = 0x37ff - ATTR_VOL_ALLOCATIONCLUMP = 0x40 - ATTR_VOL_ATTRIBUTES = 0x40000000 - ATTR_VOL_CAPABILITIES = 0x20000 - ATTR_VOL_DIRCOUNT = 0x400 - ATTR_VOL_ENCODINGSUSED = 0x10000 - ATTR_VOL_FILECOUNT = 0x200 - ATTR_VOL_FSTYPE = 0x1 - ATTR_VOL_INFO = 0x80000000 - ATTR_VOL_IOBLOCKSIZE = 0x80 - ATTR_VOL_MAXOBJCOUNT = 0x800 - ATTR_VOL_MINALLOCATION = 0x20 - ATTR_VOL_MOUNTEDDEVICE = 0x8000 - ATTR_VOL_MOUNTFLAGS = 0x4000 - ATTR_VOL_MOUNTPOINT = 0x1000 - ATTR_VOL_NAME = 0x2000 - ATTR_VOL_OBJCOUNT = 0x100 - ATTR_VOL_QUOTA_SIZE = 0x10000000 - ATTR_VOL_RESERVED_SIZE = 0x20000000 - ATTR_VOL_SETMASK = 0x80002000 - ATTR_VOL_SIGNATURE = 0x2 - ATTR_VOL_SIZE = 0x4 - ATTR_VOL_SPACEAVAIL = 0x10 - ATTR_VOL_SPACEFREE = 0x8 - ATTR_VOL_UUID = 0x40000 - ATTR_VOL_VALIDMASK = 0xf007ffff - B0 = 0x0 - B110 = 0x6e - B115200 = 0x1c200 - B1200 = 0x4b0 - B134 = 0x86 - B14400 = 0x3840 - B150 = 0x96 - B1800 = 0x708 - B19200 = 0x4b00 - B200 = 0xc8 - B230400 = 0x38400 - B2400 = 0x960 - B28800 = 0x7080 - B300 = 0x12c - B38400 = 0x9600 - B4800 = 0x12c0 - B50 = 0x32 - B57600 = 0xe100 - B600 = 0x258 - B7200 = 0x1c20 - B75 = 0x4b - B76800 = 0x12c00 - B9600 = 0x2580 - BIOCFLUSH = 0x20004268 - BIOCGBLEN = 0x40044266 - BIOCGDLT = 0x4004426a - BIOCGDLTLIST = 0xc00c4279 - BIOCGETIF = 0x4020426b - BIOCGHDRCMPLT = 0x40044274 - BIOCGRSIG = 0x40044272 - BIOCGRTIMEOUT = 0x4010426e - BIOCGSEESENT = 0x40044276 - BIOCGSTATS = 0x4008426f - BIOCIMMEDIATE = 0x80044270 - BIOCPROMISC = 0x20004269 - BIOCSBLEN = 0xc0044266 - BIOCSDLT = 0x80044278 - BIOCSETF = 0x80104267 - BIOCSETFNR = 0x8010427e - BIOCSETIF = 0x8020426c - BIOCSHDRCMPLT = 0x80044275 - BIOCSRSIG = 0x80044273 - BIOCSRTIMEOUT = 0x8010426d - BIOCSSEESENT = 0x80044277 - BIOCVERSION = 0x40044271 - BPF_A = 0x10 - BPF_ABS = 0x20 - BPF_ADD = 0x0 - BPF_ALIGNMENT = 0x4 - BPF_ALU = 0x4 - BPF_AND = 0x50 - BPF_B = 0x10 - BPF_DIV = 0x30 - BPF_H = 0x8 - BPF_IMM = 0x0 - BPF_IND = 0x40 - BPF_JA = 0x0 - BPF_JEQ = 0x10 - BPF_JGE = 0x30 - BPF_JGT = 0x20 - BPF_JMP = 0x5 - BPF_JSET = 0x40 - BPF_K = 0x0 - BPF_LD = 0x0 - BPF_LDX = 0x1 - BPF_LEN = 0x80 - BPF_LSH = 0x60 - BPF_MAJOR_VERSION = 0x1 - BPF_MAXBUFSIZE = 0x80000 - BPF_MAXINSNS = 0x200 - BPF_MEM = 0x60 - BPF_MEMWORDS = 0x10 - BPF_MINBUFSIZE = 0x20 - BPF_MINOR_VERSION = 0x1 - BPF_MISC = 0x7 - BPF_MSH = 0xa0 - BPF_MUL = 0x20 - BPF_NEG = 0x80 - BPF_OR = 0x40 - BPF_RELEASE = 0x30bb6 - BPF_RET = 0x6 - BPF_RSH = 0x70 - BPF_ST = 0x2 - BPF_STX = 0x3 - BPF_SUB = 0x10 - BPF_TAX = 0x0 - BPF_TXA = 0x80 - BPF_W = 0x0 - BPF_X = 0x8 - BRKINT = 0x2 - BS0 = 0x0 - BS1 = 0x8000 - BSDLY = 0x8000 - CFLUSH = 0xf - CLOCAL = 0x8000 - CLOCK_MONOTONIC = 0x6 - CLOCK_MONOTONIC_RAW = 0x4 - CLOCK_MONOTONIC_RAW_APPROX = 0x5 - CLOCK_PROCESS_CPUTIME_ID = 0xc - CLOCK_REALTIME = 0x0 - CLOCK_THREAD_CPUTIME_ID = 0x10 - CLOCK_UPTIME_RAW = 0x8 - CLOCK_UPTIME_RAW_APPROX = 0x9 - CLONE_NOFOLLOW = 0x1 - CLONE_NOOWNERCOPY = 0x2 - CR0 = 0x0 - CR1 = 0x1000 - CR2 = 0x2000 - CR3 = 0x3000 - CRDLY = 0x3000 - CREAD = 0x800 - CRTSCTS = 0x30000 - CS5 = 0x0 - CS6 = 0x100 - CS7 = 0x200 - CS8 = 0x300 - CSIZE = 0x300 - CSTART = 0x11 - CSTATUS = 0x14 - CSTOP = 0x13 - CSTOPB = 0x400 - CSUSP = 0x1a - CTLIOCGINFO = 0xc0644e03 - CTL_HW = 0x6 - CTL_KERN = 0x1 - CTL_MAXNAME = 0xc - CTL_NET = 0x4 - DLT_A429 = 0xb8 - DLT_A653_ICM = 0xb9 - DLT_AIRONET_HEADER = 0x78 - DLT_AOS = 0xde - DLT_APPLE_IP_OVER_IEEE1394 = 0x8a - DLT_ARCNET = 0x7 - DLT_ARCNET_LINUX = 0x81 - DLT_ATM_CLIP = 0x13 - DLT_ATM_RFC1483 = 0xb - DLT_AURORA = 0x7e - DLT_AX25 = 0x3 - DLT_AX25_KISS = 0xca - DLT_BACNET_MS_TP = 0xa5 - DLT_BLUETOOTH_HCI_H4 = 0xbb - DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 - DLT_CAN20B = 0xbe - DLT_CAN_SOCKETCAN = 0xe3 - DLT_CHAOS = 0x5 - DLT_CHDLC = 0x68 - DLT_CISCO_IOS = 0x76 - DLT_C_HDLC = 0x68 - DLT_C_HDLC_WITH_DIR = 0xcd - DLT_DBUS = 0xe7 - DLT_DECT = 0xdd - DLT_DOCSIS = 0x8f - DLT_DVB_CI = 0xeb - DLT_ECONET = 0x73 - DLT_EN10MB = 0x1 - DLT_EN3MB = 0x2 - DLT_ENC = 0x6d - DLT_ERF = 0xc5 - DLT_ERF_ETH = 0xaf - DLT_ERF_POS = 0xb0 - DLT_FC_2 = 0xe0 - DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 - DLT_FDDI = 0xa - DLT_FLEXRAY = 0xd2 - DLT_FRELAY = 0x6b - DLT_FRELAY_WITH_DIR = 0xce - DLT_GCOM_SERIAL = 0xad - DLT_GCOM_T1E1 = 0xac - DLT_GPF_F = 0xab - DLT_GPF_T = 0xaa - DLT_GPRS_LLC = 0xa9 - DLT_GSMTAP_ABIS = 0xda - DLT_GSMTAP_UM = 0xd9 - DLT_HHDLC = 0x79 - DLT_IBM_SN = 0x92 - DLT_IBM_SP = 0x91 - DLT_IEEE802 = 0x6 - DLT_IEEE802_11 = 0x69 - DLT_IEEE802_11_RADIO = 0x7f - DLT_IEEE802_11_RADIO_AVS = 0xa3 - DLT_IEEE802_15_4 = 0xc3 - DLT_IEEE802_15_4_LINUX = 0xbf - DLT_IEEE802_15_4_NOFCS = 0xe6 - DLT_IEEE802_15_4_NONASK_PHY = 0xd7 - DLT_IEEE802_16_MAC_CPS = 0xbc - DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 - DLT_IPFILTER = 0x74 - DLT_IPMB = 0xc7 - DLT_IPMB_LINUX = 0xd1 - DLT_IPNET = 0xe2 - DLT_IPOIB = 0xf2 - DLT_IPV4 = 0xe4 - DLT_IPV6 = 0xe5 - DLT_IP_OVER_FC = 0x7a - DLT_JUNIPER_ATM1 = 0x89 - DLT_JUNIPER_ATM2 = 0x87 - DLT_JUNIPER_ATM_CEMIC = 0xee - DLT_JUNIPER_CHDLC = 0xb5 - DLT_JUNIPER_ES = 0x84 - DLT_JUNIPER_ETHER = 0xb2 - DLT_JUNIPER_FIBRECHANNEL = 0xea - DLT_JUNIPER_FRELAY = 0xb4 - DLT_JUNIPER_GGSN = 0x85 - DLT_JUNIPER_ISM = 0xc2 - DLT_JUNIPER_MFR = 0x86 - DLT_JUNIPER_MLFR = 0x83 - DLT_JUNIPER_MLPPP = 0x82 - DLT_JUNIPER_MONITOR = 0xa4 - DLT_JUNIPER_PIC_PEER = 0xae - DLT_JUNIPER_PPP = 0xb3 - DLT_JUNIPER_PPPOE = 0xa7 - DLT_JUNIPER_PPPOE_ATM = 0xa8 - DLT_JUNIPER_SERVICES = 0x88 - DLT_JUNIPER_SRX_E2E = 0xe9 - DLT_JUNIPER_ST = 0xc8 - DLT_JUNIPER_VP = 0xb7 - DLT_JUNIPER_VS = 0xe8 - DLT_LAPB_WITH_DIR = 0xcf - DLT_LAPD = 0xcb - DLT_LIN = 0xd4 - DLT_LINUX_EVDEV = 0xd8 - DLT_LINUX_IRDA = 0x90 - DLT_LINUX_LAPD = 0xb1 - DLT_LINUX_PPP_WITHDIRECTION = 0xa6 - DLT_LINUX_SLL = 0x71 - DLT_LOOP = 0x6c - DLT_LTALK = 0x72 - DLT_MATCHING_MAX = 0xf5 - DLT_MATCHING_MIN = 0x68 - DLT_MFR = 0xb6 - DLT_MOST = 0xd3 - DLT_MPEG_2_TS = 0xf3 - DLT_MPLS = 0xdb - DLT_MTP2 = 0x8c - DLT_MTP2_WITH_PHDR = 0x8b - DLT_MTP3 = 0x8d - DLT_MUX27010 = 0xec - DLT_NETANALYZER = 0xf0 - DLT_NETANALYZER_TRANSPARENT = 0xf1 - DLT_NFC_LLCP = 0xf5 - DLT_NFLOG = 0xef - DLT_NG40 = 0xf4 - DLT_NULL = 0x0 - DLT_PCI_EXP = 0x7d - DLT_PFLOG = 0x75 - DLT_PFSYNC = 0x12 - DLT_PPI = 0xc0 - DLT_PPP = 0x9 - DLT_PPP_BSDOS = 0x10 - DLT_PPP_ETHER = 0x33 - DLT_PPP_PPPD = 0xa6 - DLT_PPP_SERIAL = 0x32 - DLT_PPP_WITH_DIR = 0xcc - DLT_PPP_WITH_DIRECTION = 0xa6 - DLT_PRISM_HEADER = 0x77 - DLT_PRONET = 0x4 - DLT_RAIF1 = 0xc6 - DLT_RAW = 0xc - DLT_RIO = 0x7c - DLT_SCCP = 0x8e - DLT_SITA = 0xc4 - DLT_SLIP = 0x8 - DLT_SLIP_BSDOS = 0xf - DLT_STANAG_5066_D_PDU = 0xed - DLT_SUNATM = 0x7b - DLT_SYMANTEC_FIREWALL = 0x63 - DLT_TZSP = 0x80 - DLT_USB = 0xba - DLT_USB_LINUX = 0xbd - DLT_USB_LINUX_MMAPPED = 0xdc - DLT_USER0 = 0x93 - DLT_USER1 = 0x94 - DLT_USER10 = 0x9d - DLT_USER11 = 0x9e - DLT_USER12 = 0x9f - DLT_USER13 = 0xa0 - DLT_USER14 = 0xa1 - DLT_USER15 = 0xa2 - DLT_USER2 = 0x95 - DLT_USER3 = 0x96 - DLT_USER4 = 0x97 - DLT_USER5 = 0x98 - DLT_USER6 = 0x99 - DLT_USER7 = 0x9a - DLT_USER8 = 0x9b - DLT_USER9 = 0x9c - DLT_WIHART = 0xdf - DLT_X2E_SERIAL = 0xd5 - DLT_X2E_XORAYA = 0xd6 - DT_BLK = 0x6 - DT_CHR = 0x2 - DT_DIR = 0x4 - DT_FIFO = 0x1 - DT_LNK = 0xa - DT_REG = 0x8 - DT_SOCK = 0xc - DT_UNKNOWN = 0x0 - DT_WHT = 0xe - ECHO = 0x8 - ECHOCTL = 0x40 - ECHOE = 0x2 - ECHOK = 0x4 - ECHOKE = 0x1 - ECHONL = 0x10 - ECHOPRT = 0x20 - EVFILT_AIO = -0x3 - EVFILT_EXCEPT = -0xf - EVFILT_FS = -0x9 - EVFILT_MACHPORT = -0x8 - EVFILT_PROC = -0x5 - EVFILT_READ = -0x1 - EVFILT_SIGNAL = -0x6 - EVFILT_SYSCOUNT = 0xf - EVFILT_THREADMARKER = 0xf - EVFILT_TIMER = -0x7 - EVFILT_USER = -0xa - EVFILT_VM = -0xc - EVFILT_VNODE = -0x4 - EVFILT_WRITE = -0x2 - EV_ADD = 0x1 - EV_CLEAR = 0x20 - EV_DELETE = 0x2 - EV_DISABLE = 0x8 - EV_DISPATCH = 0x80 - EV_DISPATCH2 = 0x180 - EV_ENABLE = 0x4 - EV_EOF = 0x8000 - EV_ERROR = 0x4000 - EV_FLAG0 = 0x1000 - EV_FLAG1 = 0x2000 - EV_ONESHOT = 0x10 - EV_OOBAND = 0x2000 - EV_POLL = 0x1000 - EV_RECEIPT = 0x40 - EV_SYSFLAGS = 0xf000 - EV_UDATA_SPECIFIC = 0x100 - EV_VANISHED = 0x200 - EXTA = 0x4b00 - EXTB = 0x9600 - EXTPROC = 0x800 - FD_CLOEXEC = 0x1 - FD_SETSIZE = 0x400 - FF0 = 0x0 - FF1 = 0x4000 - FFDLY = 0x4000 - FLUSHO = 0x800000 - FSOPT_ATTR_CMN_EXTENDED = 0x20 - FSOPT_NOFOLLOW = 0x1 - FSOPT_NOINMEMUPDATE = 0x2 - FSOPT_PACK_INVAL_ATTRS = 0x8 - FSOPT_REPORT_FULLSIZE = 0x4 - F_ADDFILESIGS = 0x3d - F_ADDFILESIGS_FOR_DYLD_SIM = 0x53 - F_ADDFILESIGS_RETURN = 0x61 - F_ADDSIGS = 0x3b - F_ALLOCATEALL = 0x4 - F_ALLOCATECONTIG = 0x2 - F_BARRIERFSYNC = 0x55 - F_CHECK_LV = 0x62 - F_CHKCLEAN = 0x29 - F_DUPFD = 0x0 - F_DUPFD_CLOEXEC = 0x43 - F_FINDSIGS = 0x4e - F_FLUSH_DATA = 0x28 - F_FREEZE_FS = 0x35 - F_FULLFSYNC = 0x33 - F_GETCODEDIR = 0x48 - F_GETFD = 0x1 - F_GETFL = 0x3 - F_GETLK = 0x7 - F_GETLKPID = 0x42 - F_GETNOSIGPIPE = 0x4a - F_GETOWN = 0x5 - F_GETPATH = 0x32 - F_GETPATH_MTMINFO = 0x47 - F_GETPROTECTIONCLASS = 0x3f - F_GETPROTECTIONLEVEL = 0x4d - F_GLOBAL_NOCACHE = 0x37 - F_LOG2PHYS = 0x31 - F_LOG2PHYS_EXT = 0x41 - F_NOCACHE = 0x30 - F_NODIRECT = 0x3e - F_OK = 0x0 - F_PATHPKG_CHECK = 0x34 - F_PEOFPOSMODE = 0x3 - F_PREALLOCATE = 0x2a - F_PUNCHHOLE = 0x63 - F_RDADVISE = 0x2c - F_RDAHEAD = 0x2d - F_RDLCK = 0x1 - F_SETBACKINGSTORE = 0x46 - F_SETFD = 0x2 - F_SETFL = 0x4 - F_SETLK = 0x8 - F_SETLKW = 0x9 - F_SETLKWTIMEOUT = 0xa - F_SETNOSIGPIPE = 0x49 - F_SETOWN = 0x6 - F_SETPROTECTIONCLASS = 0x40 - F_SETSIZE = 0x2b - F_SINGLE_WRITER = 0x4c - F_THAW_FS = 0x36 - F_TRANSCODEKEY = 0x4b - F_TRIM_ACTIVE_FILE = 0x64 - F_UNLCK = 0x2 - F_VOLPOSMODE = 0x4 - F_WRLCK = 0x3 - HUPCL = 0x4000 - HW_MACHINE = 0x1 - ICANON = 0x100 - ICMP6_FILTER = 0x12 - ICRNL = 0x100 - IEXTEN = 0x400 - IFF_ALLMULTI = 0x200 - IFF_ALTPHYS = 0x4000 - IFF_BROADCAST = 0x2 - IFF_DEBUG = 0x4 - IFF_LINK0 = 0x1000 - IFF_LINK1 = 0x2000 - IFF_LINK2 = 0x4000 - IFF_LOOPBACK = 0x8 - IFF_MULTICAST = 0x8000 - IFF_NOARP = 0x80 - IFF_NOTRAILERS = 0x20 - IFF_OACTIVE = 0x400 - IFF_POINTOPOINT = 0x10 - IFF_PROMISC = 0x100 - IFF_RUNNING = 0x40 - IFF_SIMPLEX = 0x800 - IFF_UP = 0x1 - IFNAMSIZ = 0x10 - IFT_1822 = 0x2 - IFT_AAL5 = 0x31 - IFT_ARCNET = 0x23 - IFT_ARCNETPLUS = 0x24 - IFT_ATM = 0x25 - IFT_BRIDGE = 0xd1 - IFT_CARP = 0xf8 - IFT_CELLULAR = 0xff - IFT_CEPT = 0x13 - IFT_DS3 = 0x1e - IFT_ENC = 0xf4 - IFT_EON = 0x19 - IFT_ETHER = 0x6 - IFT_FAITH = 0x38 - IFT_FDDI = 0xf - IFT_FRELAY = 0x20 - IFT_FRELAYDCE = 0x2c - IFT_GIF = 0x37 - IFT_HDH1822 = 0x3 - IFT_HIPPI = 0x2f - IFT_HSSI = 0x2e - IFT_HY = 0xe - IFT_IEEE1394 = 0x90 - IFT_IEEE8023ADLAG = 0x88 - IFT_ISDNBASIC = 0x14 - IFT_ISDNPRIMARY = 0x15 - IFT_ISO88022LLC = 0x29 - IFT_ISO88023 = 0x7 - IFT_ISO88024 = 0x8 - IFT_ISO88025 = 0x9 - IFT_ISO88026 = 0xa - IFT_L2VLAN = 0x87 - IFT_LAPB = 0x10 - IFT_LOCALTALK = 0x2a - IFT_LOOP = 0x18 - IFT_MIOX25 = 0x26 - IFT_MODEM = 0x30 - IFT_NSIP = 0x1b - IFT_OTHER = 0x1 - IFT_P10 = 0xc - IFT_P80 = 0xd - IFT_PARA = 0x22 - IFT_PDP = 0xff - IFT_PFLOG = 0xf5 - IFT_PFSYNC = 0xf6 - IFT_PKTAP = 0xfe - IFT_PPP = 0x17 - IFT_PROPMUX = 0x36 - IFT_PROPVIRTUAL = 0x35 - IFT_PTPSERIAL = 0x16 - IFT_RS232 = 0x21 - IFT_SDLC = 0x11 - IFT_SIP = 0x1f - IFT_SLIP = 0x1c - IFT_SMDSDXI = 0x2b - IFT_SMDSICIP = 0x34 - IFT_SONET = 0x27 - IFT_SONETPATH = 0x32 - IFT_SONETVT = 0x33 - IFT_STARLAN = 0xb - IFT_STF = 0x39 - IFT_T1 = 0x12 - IFT_ULTRA = 0x1d - IFT_V35 = 0x2d - IFT_X25 = 0x5 - IFT_X25DDN = 0x4 - IFT_X25PLE = 0x28 - IFT_XETHER = 0x1a - IGNBRK = 0x1 - IGNCR = 0x80 - IGNPAR = 0x4 - IMAXBEL = 0x2000 - INLCR = 0x40 - INPCK = 0x10 - IN_CLASSA_HOST = 0xffffff - IN_CLASSA_MAX = 0x80 - IN_CLASSA_NET = 0xff000000 - IN_CLASSA_NSHIFT = 0x18 - IN_CLASSB_HOST = 0xffff - IN_CLASSB_MAX = 0x10000 - IN_CLASSB_NET = 0xffff0000 - IN_CLASSB_NSHIFT = 0x10 - IN_CLASSC_HOST = 0xff - IN_CLASSC_NET = 0xffffff00 - IN_CLASSC_NSHIFT = 0x8 - IN_CLASSD_HOST = 0xfffffff - IN_CLASSD_NET = 0xf0000000 - IN_CLASSD_NSHIFT = 0x1c - IN_LINKLOCALNETNUM = 0xa9fe0000 - IN_LOOPBACKNET = 0x7f - IPPROTO_3PC = 0x22 - IPPROTO_ADFS = 0x44 - IPPROTO_AH = 0x33 - IPPROTO_AHIP = 0x3d - IPPROTO_APES = 0x63 - IPPROTO_ARGUS = 0xd - IPPROTO_AX25 = 0x5d - IPPROTO_BHA = 0x31 - IPPROTO_BLT = 0x1e - IPPROTO_BRSATMON = 0x4c - IPPROTO_CFTP = 0x3e - IPPROTO_CHAOS = 0x10 - IPPROTO_CMTP = 0x26 - IPPROTO_CPHB = 0x49 - IPPROTO_CPNX = 0x48 - IPPROTO_DDP = 0x25 - IPPROTO_DGP = 0x56 - IPPROTO_DIVERT = 0xfe - IPPROTO_DONE = 0x101 - IPPROTO_DSTOPTS = 0x3c - IPPROTO_EGP = 0x8 - IPPROTO_EMCON = 0xe - IPPROTO_ENCAP = 0x62 - IPPROTO_EON = 0x50 - IPPROTO_ESP = 0x32 - IPPROTO_ETHERIP = 0x61 - IPPROTO_FRAGMENT = 0x2c - IPPROTO_GGP = 0x3 - IPPROTO_GMTP = 0x64 - IPPROTO_GRE = 0x2f - IPPROTO_HELLO = 0x3f - IPPROTO_HMP = 0x14 - IPPROTO_HOPOPTS = 0x0 - IPPROTO_ICMP = 0x1 - IPPROTO_ICMPV6 = 0x3a - IPPROTO_IDP = 0x16 - IPPROTO_IDPR = 0x23 - IPPROTO_IDRP = 0x2d - IPPROTO_IGMP = 0x2 - IPPROTO_IGP = 0x55 - IPPROTO_IGRP = 0x58 - IPPROTO_IL = 0x28 - IPPROTO_INLSP = 0x34 - IPPROTO_INP = 0x20 - IPPROTO_IP = 0x0 - IPPROTO_IPCOMP = 0x6c - IPPROTO_IPCV = 0x47 - IPPROTO_IPEIP = 0x5e - IPPROTO_IPIP = 0x4 - IPPROTO_IPPC = 0x43 - IPPROTO_IPV4 = 0x4 - IPPROTO_IPV6 = 0x29 - IPPROTO_IRTP = 0x1c - IPPROTO_KRYPTOLAN = 0x41 - IPPROTO_LARP = 0x5b - IPPROTO_LEAF1 = 0x19 - IPPROTO_LEAF2 = 0x1a - IPPROTO_MAX = 0x100 - IPPROTO_MAXID = 0x34 - IPPROTO_MEAS = 0x13 - IPPROTO_MHRP = 0x30 - IPPROTO_MICP = 0x5f - IPPROTO_MTP = 0x5c - IPPROTO_MUX = 0x12 - IPPROTO_ND = 0x4d - IPPROTO_NHRP = 0x36 - IPPROTO_NONE = 0x3b - IPPROTO_NSP = 0x1f - IPPROTO_NVPII = 0xb - IPPROTO_OSPFIGP = 0x59 - IPPROTO_PGM = 0x71 - IPPROTO_PIGP = 0x9 - IPPROTO_PIM = 0x67 - IPPROTO_PRM = 0x15 - IPPROTO_PUP = 0xc - IPPROTO_PVP = 0x4b - IPPROTO_RAW = 0xff - IPPROTO_RCCMON = 0xa - IPPROTO_RDP = 0x1b - IPPROTO_ROUTING = 0x2b - IPPROTO_RSVP = 0x2e - IPPROTO_RVD = 0x42 - IPPROTO_SATEXPAK = 0x40 - IPPROTO_SATMON = 0x45 - IPPROTO_SCCSP = 0x60 - IPPROTO_SCTP = 0x84 - IPPROTO_SDRP = 0x2a - IPPROTO_SEP = 0x21 - IPPROTO_SRPC = 0x5a - IPPROTO_ST = 0x7 - IPPROTO_SVMTP = 0x52 - IPPROTO_SWIPE = 0x35 - IPPROTO_TCF = 0x57 - IPPROTO_TCP = 0x6 - IPPROTO_TP = 0x1d - IPPROTO_TPXX = 0x27 - IPPROTO_TRUNK1 = 0x17 - IPPROTO_TRUNK2 = 0x18 - IPPROTO_TTP = 0x54 - IPPROTO_UDP = 0x11 - IPPROTO_VINES = 0x53 - IPPROTO_VISA = 0x46 - IPPROTO_VMTP = 0x51 - IPPROTO_WBEXPAK = 0x4f - IPPROTO_WBMON = 0x4e - IPPROTO_WSN = 0x4a - IPPROTO_XNET = 0xf - IPPROTO_XTP = 0x24 - IPV6_2292DSTOPTS = 0x17 - IPV6_2292HOPLIMIT = 0x14 - IPV6_2292HOPOPTS = 0x16 - IPV6_2292NEXTHOP = 0x15 - IPV6_2292PKTINFO = 0x13 - IPV6_2292PKTOPTIONS = 0x19 - IPV6_2292RTHDR = 0x18 - IPV6_BINDV6ONLY = 0x1b - IPV6_BOUND_IF = 0x7d - IPV6_CHECKSUM = 0x1a - IPV6_DEFAULT_MULTICAST_HOPS = 0x1 - IPV6_DEFAULT_MULTICAST_LOOP = 0x1 - IPV6_DEFHLIM = 0x40 - IPV6_FAITH = 0x1d - IPV6_FLOWINFO_MASK = 0xffffff0f - IPV6_FLOWLABEL_MASK = 0xffff0f00 - IPV6_FLOW_ECN_MASK = 0x300 - IPV6_FRAGTTL = 0x3c - IPV6_FW_ADD = 0x1e - IPV6_FW_DEL = 0x1f - IPV6_FW_FLUSH = 0x20 - IPV6_FW_GET = 0x22 - IPV6_FW_ZERO = 0x21 - IPV6_HLIMDEC = 0x1 - IPV6_IPSEC_POLICY = 0x1c - IPV6_JOIN_GROUP = 0xc - IPV6_LEAVE_GROUP = 0xd - IPV6_MAXHLIM = 0xff - IPV6_MAXOPTHDR = 0x800 - IPV6_MAXPACKET = 0xffff - IPV6_MAX_GROUP_SRC_FILTER = 0x200 - IPV6_MAX_MEMBERSHIPS = 0xfff - IPV6_MAX_SOCK_SRC_FILTER = 0x80 - IPV6_MIN_MEMBERSHIPS = 0x1f - IPV6_MMTU = 0x500 - IPV6_MULTICAST_HOPS = 0xa - IPV6_MULTICAST_IF = 0x9 - IPV6_MULTICAST_LOOP = 0xb - IPV6_PORTRANGE = 0xe - IPV6_PORTRANGE_DEFAULT = 0x0 - IPV6_PORTRANGE_HIGH = 0x1 - IPV6_PORTRANGE_LOW = 0x2 - IPV6_RECVTCLASS = 0x23 - IPV6_RTHDR_LOOSE = 0x0 - IPV6_RTHDR_STRICT = 0x1 - IPV6_RTHDR_TYPE_0 = 0x0 - IPV6_SOCKOPT_RESERVED1 = 0x3 - IPV6_TCLASS = 0x24 - IPV6_UNICAST_HOPS = 0x4 - IPV6_V6ONLY = 0x1b - IPV6_VERSION = 0x60 - IPV6_VERSION_MASK = 0xf0 - IP_ADD_MEMBERSHIP = 0xc - IP_ADD_SOURCE_MEMBERSHIP = 0x46 - IP_BLOCK_SOURCE = 0x48 - IP_BOUND_IF = 0x19 - IP_DEFAULT_MULTICAST_LOOP = 0x1 - IP_DEFAULT_MULTICAST_TTL = 0x1 - IP_DF = 0x4000 - IP_DROP_MEMBERSHIP = 0xd - IP_DROP_SOURCE_MEMBERSHIP = 0x47 - IP_DUMMYNET_CONFIGURE = 0x3c - IP_DUMMYNET_DEL = 0x3d - IP_DUMMYNET_FLUSH = 0x3e - IP_DUMMYNET_GET = 0x40 - IP_FAITH = 0x16 - IP_FW_ADD = 0x28 - IP_FW_DEL = 0x29 - IP_FW_FLUSH = 0x2a - IP_FW_GET = 0x2c - IP_FW_RESETLOG = 0x2d - IP_FW_ZERO = 0x2b - IP_HDRINCL = 0x2 - IP_IPSEC_POLICY = 0x15 - IP_MAXPACKET = 0xffff - IP_MAX_GROUP_SRC_FILTER = 0x200 - IP_MAX_MEMBERSHIPS = 0xfff - IP_MAX_SOCK_MUTE_FILTER = 0x80 - IP_MAX_SOCK_SRC_FILTER = 0x80 - IP_MF = 0x2000 - IP_MIN_MEMBERSHIPS = 0x1f - IP_MSFILTER = 0x4a - IP_MSS = 0x240 - IP_MULTICAST_IF = 0x9 - IP_MULTICAST_IFINDEX = 0x42 - IP_MULTICAST_LOOP = 0xb - IP_MULTICAST_TTL = 0xa - IP_MULTICAST_VIF = 0xe - IP_NAT__XXX = 0x37 - IP_OFFMASK = 0x1fff - IP_OLD_FW_ADD = 0x32 - IP_OLD_FW_DEL = 0x33 - IP_OLD_FW_FLUSH = 0x34 - IP_OLD_FW_GET = 0x36 - IP_OLD_FW_RESETLOG = 0x38 - IP_OLD_FW_ZERO = 0x35 - IP_OPTIONS = 0x1 - IP_PKTINFO = 0x1a - IP_PORTRANGE = 0x13 - IP_PORTRANGE_DEFAULT = 0x0 - IP_PORTRANGE_HIGH = 0x1 - IP_PORTRANGE_LOW = 0x2 - IP_RECVDSTADDR = 0x7 - IP_RECVIF = 0x14 - IP_RECVOPTS = 0x5 - IP_RECVPKTINFO = 0x1a - IP_RECVRETOPTS = 0x6 - IP_RECVTOS = 0x1b - IP_RECVTTL = 0x18 - IP_RETOPTS = 0x8 - IP_RF = 0x8000 - IP_RSVP_OFF = 0x10 - IP_RSVP_ON = 0xf - IP_RSVP_VIF_OFF = 0x12 - IP_RSVP_VIF_ON = 0x11 - IP_STRIPHDR = 0x17 - IP_TOS = 0x3 - IP_TRAFFIC_MGT_BACKGROUND = 0x41 - IP_TTL = 0x4 - IP_UNBLOCK_SOURCE = 0x49 - ISIG = 0x80 - ISTRIP = 0x20 - IUTF8 = 0x4000 - IXANY = 0x800 - IXOFF = 0x400 - IXON = 0x200 - KERN_HOSTNAME = 0xa - KERN_OSRELEASE = 0x2 - KERN_OSTYPE = 0x1 - KERN_VERSION = 0x4 - LOCK_EX = 0x2 - LOCK_NB = 0x4 - LOCK_SH = 0x1 - LOCK_UN = 0x8 - MADV_CAN_REUSE = 0x9 - MADV_DONTNEED = 0x4 - MADV_FREE = 0x5 - MADV_FREE_REUSABLE = 0x7 - MADV_FREE_REUSE = 0x8 - MADV_NORMAL = 0x0 - MADV_PAGEOUT = 0xa - MADV_RANDOM = 0x1 - MADV_SEQUENTIAL = 0x2 - MADV_WILLNEED = 0x3 - MADV_ZERO_WIRED_PAGES = 0x6 - MAP_ANON = 0x1000 - MAP_ANONYMOUS = 0x1000 - MAP_COPY = 0x2 - MAP_FILE = 0x0 - MAP_FIXED = 0x10 - MAP_HASSEMAPHORE = 0x200 - MAP_JIT = 0x800 - MAP_NOCACHE = 0x400 - MAP_NOEXTEND = 0x100 - MAP_NORESERVE = 0x40 - MAP_PRIVATE = 0x2 - MAP_RENAME = 0x20 - MAP_RESERVED0080 = 0x80 - MAP_RESILIENT_CODESIGN = 0x2000 - MAP_RESILIENT_MEDIA = 0x4000 - MAP_SHARED = 0x1 - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MNT_ASYNC = 0x40 - MNT_AUTOMOUNTED = 0x400000 - MNT_CMDFLAGS = 0xf0000 - MNT_CPROTECT = 0x80 - MNT_DEFWRITE = 0x2000000 - MNT_DONTBROWSE = 0x100000 - MNT_DOVOLFS = 0x8000 - MNT_DWAIT = 0x4 - MNT_EXPORTED = 0x100 - MNT_FORCE = 0x80000 - MNT_IGNORE_OWNERSHIP = 0x200000 - MNT_JOURNALED = 0x800000 - MNT_LOCAL = 0x1000 - MNT_MULTILABEL = 0x4000000 - MNT_NOATIME = 0x10000000 - MNT_NOBLOCK = 0x20000 - MNT_NODEV = 0x10 - MNT_NOEXEC = 0x4 - MNT_NOSUID = 0x8 - MNT_NOUSERXATTR = 0x1000000 - MNT_NOWAIT = 0x2 - MNT_QUARANTINE = 0x400 - MNT_QUOTA = 0x2000 - MNT_RDONLY = 0x1 - MNT_RELOAD = 0x40000 - MNT_ROOTFS = 0x4000 - MNT_SYNCHRONOUS = 0x2 - MNT_UNION = 0x20 - MNT_UNKNOWNPERMISSIONS = 0x200000 - MNT_UPDATE = 0x10000 - MNT_VISFLAGMASK = 0x17f0f5ff - MNT_WAIT = 0x1 - MSG_CTRUNC = 0x20 - MSG_DONTROUTE = 0x4 - MSG_DONTWAIT = 0x80 - MSG_EOF = 0x100 - MSG_EOR = 0x8 - MSG_FLUSH = 0x400 - MSG_HAVEMORE = 0x2000 - MSG_HOLD = 0x800 - MSG_NEEDSA = 0x10000 - MSG_OOB = 0x1 - MSG_PEEK = 0x2 - MSG_RCVMORE = 0x4000 - MSG_SEND = 0x1000 - MSG_TRUNC = 0x10 - MSG_WAITALL = 0x40 - MSG_WAITSTREAM = 0x200 - MS_ASYNC = 0x1 - MS_DEACTIVATE = 0x8 - MS_INVALIDATE = 0x2 - MS_KILLPAGES = 0x4 - MS_SYNC = 0x10 - NAME_MAX = 0xff - NET_RT_DUMP = 0x1 - NET_RT_DUMP2 = 0x7 - NET_RT_FLAGS = 0x2 - NET_RT_IFLIST = 0x3 - NET_RT_IFLIST2 = 0x6 - NET_RT_MAXID = 0xa - NET_RT_STAT = 0x4 - NET_RT_TRASH = 0x5 - NFDBITS = 0x20 - NL0 = 0x0 - NL1 = 0x100 - NL2 = 0x200 - NL3 = 0x300 - NLDLY = 0x300 - NOFLSH = 0x80000000 - NOKERNINFO = 0x2000000 - NOTE_ABSOLUTE = 0x8 - NOTE_ATTRIB = 0x8 - NOTE_BACKGROUND = 0x40 - NOTE_CHILD = 0x4 - NOTE_CRITICAL = 0x20 - NOTE_DELETE = 0x1 - NOTE_EXEC = 0x20000000 - NOTE_EXIT = 0x80000000 - NOTE_EXITSTATUS = 0x4000000 - NOTE_EXIT_CSERROR = 0x40000 - NOTE_EXIT_DECRYPTFAIL = 0x10000 - NOTE_EXIT_DETAIL = 0x2000000 - NOTE_EXIT_DETAIL_MASK = 0x70000 - NOTE_EXIT_MEMORY = 0x20000 - NOTE_EXIT_REPARENTED = 0x80000 - NOTE_EXTEND = 0x4 - NOTE_FFAND = 0x40000000 - NOTE_FFCOPY = 0xc0000000 - NOTE_FFCTRLMASK = 0xc0000000 - NOTE_FFLAGSMASK = 0xffffff - NOTE_FFNOP = 0x0 - NOTE_FFOR = 0x80000000 - NOTE_FORK = 0x40000000 - NOTE_FUNLOCK = 0x100 - NOTE_LEEWAY = 0x10 - NOTE_LINK = 0x10 - NOTE_LOWAT = 0x1 - NOTE_MACH_CONTINUOUS_TIME = 0x80 - NOTE_NONE = 0x80 - NOTE_NSECONDS = 0x4 - NOTE_OOB = 0x2 - NOTE_PCTRLMASK = -0x100000 - NOTE_PDATAMASK = 0xfffff - NOTE_REAP = 0x10000000 - NOTE_RENAME = 0x20 - NOTE_REVOKE = 0x40 - NOTE_SECONDS = 0x1 - NOTE_SIGNAL = 0x8000000 - NOTE_TRACK = 0x1 - NOTE_TRACKERR = 0x2 - NOTE_TRIGGER = 0x1000000 - NOTE_USECONDS = 0x2 - NOTE_VM_ERROR = 0x10000000 - NOTE_VM_PRESSURE = 0x80000000 - NOTE_VM_PRESSURE_SUDDEN_TERMINATE = 0x20000000 - NOTE_VM_PRESSURE_TERMINATE = 0x40000000 - NOTE_WRITE = 0x2 - OCRNL = 0x10 - OFDEL = 0x20000 - OFILL = 0x80 - ONLCR = 0x2 - ONLRET = 0x40 - ONOCR = 0x20 - ONOEOT = 0x8 - OPOST = 0x1 - OXTABS = 0x4 - O_ACCMODE = 0x3 - O_ALERT = 0x20000000 - O_APPEND = 0x8 - O_ASYNC = 0x40 - O_CLOEXEC = 0x1000000 - O_CREAT = 0x200 - O_DIRECTORY = 0x100000 - O_DP_GETRAWENCRYPTED = 0x1 - O_DP_GETRAWUNENCRYPTED = 0x2 - O_DSYNC = 0x400000 - O_EVTONLY = 0x8000 - O_EXCL = 0x800 - O_EXLOCK = 0x20 - O_FSYNC = 0x80 - O_NDELAY = 0x4 - O_NOCTTY = 0x20000 - O_NOFOLLOW = 0x100 - O_NONBLOCK = 0x4 - O_POPUP = 0x80000000 - O_RDONLY = 0x0 - O_RDWR = 0x2 - O_SHLOCK = 0x10 - O_SYMLINK = 0x200000 - O_SYNC = 0x80 - O_TRUNC = 0x400 - O_WRONLY = 0x1 - PARENB = 0x1000 - PARMRK = 0x8 - PARODD = 0x2000 - PENDIN = 0x20000000 - PRIO_PGRP = 0x1 - PRIO_PROCESS = 0x0 - PRIO_USER = 0x2 - PROT_EXEC = 0x4 - PROT_NONE = 0x0 - PROT_READ = 0x1 - PROT_WRITE = 0x2 - PT_ATTACH = 0xa - PT_ATTACHEXC = 0xe - PT_CONTINUE = 0x7 - PT_DENY_ATTACH = 0x1f - PT_DETACH = 0xb - PT_FIRSTMACH = 0x20 - PT_FORCEQUOTA = 0x1e - PT_KILL = 0x8 - PT_READ_D = 0x2 - PT_READ_I = 0x1 - PT_READ_U = 0x3 - PT_SIGEXC = 0xc - PT_STEP = 0x9 - PT_THUPDATE = 0xd - PT_TRACE_ME = 0x0 - PT_WRITE_D = 0x5 - PT_WRITE_I = 0x4 - PT_WRITE_U = 0x6 - RLIMIT_AS = 0x5 - RLIMIT_CORE = 0x4 - RLIMIT_CPU = 0x0 - RLIMIT_CPU_USAGE_MONITOR = 0x2 - RLIMIT_DATA = 0x2 - RLIMIT_FSIZE = 0x1 - RLIMIT_MEMLOCK = 0x6 - RLIMIT_NOFILE = 0x8 - RLIMIT_NPROC = 0x7 - RLIMIT_RSS = 0x5 - RLIMIT_STACK = 0x3 - RLIM_INFINITY = 0x7fffffffffffffff - RTAX_AUTHOR = 0x6 - RTAX_BRD = 0x7 - RTAX_DST = 0x0 - RTAX_GATEWAY = 0x1 - RTAX_GENMASK = 0x3 - RTAX_IFA = 0x5 - RTAX_IFP = 0x4 - RTAX_MAX = 0x8 - RTAX_NETMASK = 0x2 - RTA_AUTHOR = 0x40 - RTA_BRD = 0x80 - RTA_DST = 0x1 - RTA_GATEWAY = 0x2 - RTA_GENMASK = 0x8 - RTA_IFA = 0x20 - RTA_IFP = 0x10 - RTA_NETMASK = 0x4 - RTF_BLACKHOLE = 0x1000 - RTF_BROADCAST = 0x400000 - RTF_CLONING = 0x100 - RTF_CONDEMNED = 0x2000000 - RTF_DELCLONE = 0x80 - RTF_DONE = 0x40 - RTF_DYNAMIC = 0x10 - RTF_GATEWAY = 0x2 - RTF_HOST = 0x4 - RTF_IFREF = 0x4000000 - RTF_IFSCOPE = 0x1000000 - RTF_LLINFO = 0x400 - RTF_LOCAL = 0x200000 - RTF_MODIFIED = 0x20 - RTF_MULTICAST = 0x800000 - RTF_NOIFREF = 0x2000 - RTF_PINNED = 0x100000 - RTF_PRCLONING = 0x10000 - RTF_PROTO1 = 0x8000 - RTF_PROTO2 = 0x4000 - RTF_PROTO3 = 0x40000 - RTF_PROXY = 0x8000000 - RTF_REJECT = 0x8 - RTF_ROUTER = 0x10000000 - RTF_STATIC = 0x800 - RTF_UP = 0x1 - RTF_WASCLONED = 0x20000 - RTF_XRESOLVE = 0x200 - RTM_ADD = 0x1 - RTM_CHANGE = 0x3 - RTM_DELADDR = 0xd - RTM_DELETE = 0x2 - RTM_DELMADDR = 0x10 - RTM_GET = 0x4 - RTM_GET2 = 0x14 - RTM_IFINFO = 0xe - RTM_IFINFO2 = 0x12 - RTM_LOCK = 0x8 - RTM_LOSING = 0x5 - RTM_MISS = 0x7 - RTM_NEWADDR = 0xc - RTM_NEWMADDR = 0xf - RTM_NEWMADDR2 = 0x13 - RTM_OLDADD = 0x9 - RTM_OLDDEL = 0xa - RTM_REDIRECT = 0x6 - RTM_RESOLVE = 0xb - RTM_RTTUNIT = 0xf4240 - RTM_VERSION = 0x5 - RTV_EXPIRE = 0x4 - RTV_HOPCOUNT = 0x2 - RTV_MTU = 0x1 - RTV_RPIPE = 0x8 - RTV_RTT = 0x40 - RTV_RTTVAR = 0x80 - RTV_SPIPE = 0x10 - RTV_SSTHRESH = 0x20 - RUSAGE_CHILDREN = -0x1 - RUSAGE_SELF = 0x0 - SCM_CREDS = 0x3 - SCM_RIGHTS = 0x1 - SCM_TIMESTAMP = 0x2 - SCM_TIMESTAMP_MONOTONIC = 0x4 - SHUT_RD = 0x0 - SHUT_RDWR = 0x2 - SHUT_WR = 0x1 - SIOCADDMULTI = 0x80206931 - SIOCAIFADDR = 0x8040691a - SIOCARPIPLL = 0xc0206928 - SIOCATMARK = 0x40047307 - SIOCAUTOADDR = 0xc0206926 - SIOCAUTONETMASK = 0x80206927 - SIOCDELMULTI = 0x80206932 - SIOCDIFADDR = 0x80206919 - SIOCDIFPHYADDR = 0x80206941 - SIOCGDRVSPEC = 0xc028697b - SIOCGETVLAN = 0xc020697f - SIOCGHIWAT = 0x40047301 - SIOCGIFADDR = 0xc0206921 - SIOCGIFALTMTU = 0xc0206948 - SIOCGIFASYNCMAP = 0xc020697c - SIOCGIFBOND = 0xc0206947 - SIOCGIFBRDADDR = 0xc0206923 - SIOCGIFCAP = 0xc020695b - SIOCGIFCONF = 0xc00c6924 - SIOCGIFDEVMTU = 0xc0206944 - SIOCGIFDSTADDR = 0xc0206922 - SIOCGIFFLAGS = 0xc0206911 - SIOCGIFGENERIC = 0xc020693a - SIOCGIFKPI = 0xc0206987 - SIOCGIFMAC = 0xc0206982 - SIOCGIFMEDIA = 0xc02c6938 - SIOCGIFMETRIC = 0xc0206917 - SIOCGIFMTU = 0xc0206933 - SIOCGIFNETMASK = 0xc0206925 - SIOCGIFPDSTADDR = 0xc0206940 - SIOCGIFPHYS = 0xc0206935 - SIOCGIFPSRCADDR = 0xc020693f - SIOCGIFSTATUS = 0xc331693d - SIOCGIFVLAN = 0xc020697f - SIOCGIFWAKEFLAGS = 0xc0206988 - SIOCGLOWAT = 0x40047303 - SIOCGPGRP = 0x40047309 - SIOCIFCREATE = 0xc0206978 - SIOCIFCREATE2 = 0xc020697a - SIOCIFDESTROY = 0x80206979 - SIOCIFGCLONERS = 0xc0106981 - SIOCRSLVMULTI = 0xc010693b - SIOCSDRVSPEC = 0x8028697b - SIOCSETVLAN = 0x8020697e - SIOCSHIWAT = 0x80047300 - SIOCSIFADDR = 0x8020690c - SIOCSIFALTMTU = 0x80206945 - SIOCSIFASYNCMAP = 0x8020697d - SIOCSIFBOND = 0x80206946 - SIOCSIFBRDADDR = 0x80206913 - SIOCSIFCAP = 0x8020695a - SIOCSIFDSTADDR = 0x8020690e - SIOCSIFFLAGS = 0x80206910 - SIOCSIFGENERIC = 0x80206939 - SIOCSIFKPI = 0x80206986 - SIOCSIFLLADDR = 0x8020693c - SIOCSIFMAC = 0x80206983 - SIOCSIFMEDIA = 0xc0206937 - SIOCSIFMETRIC = 0x80206918 - SIOCSIFMTU = 0x80206934 - SIOCSIFNETMASK = 0x80206916 - SIOCSIFPHYADDR = 0x8040693e - SIOCSIFPHYS = 0x80206936 - SIOCSIFVLAN = 0x8020697e - SIOCSLOWAT = 0x80047302 - SIOCSPGRP = 0x80047308 - SOCK_DGRAM = 0x2 - SOCK_MAXADDRLEN = 0xff - SOCK_RAW = 0x3 - SOCK_RDM = 0x4 - SOCK_SEQPACKET = 0x5 - SOCK_STREAM = 0x1 - SOL_SOCKET = 0xffff - SOMAXCONN = 0x80 - SO_ACCEPTCONN = 0x2 - SO_BROADCAST = 0x20 - SO_DEBUG = 0x1 - SO_DONTROUTE = 0x10 - SO_DONTTRUNC = 0x2000 - SO_ERROR = 0x1007 - SO_KEEPALIVE = 0x8 - SO_LABEL = 0x1010 - SO_LINGER = 0x80 - SO_LINGER_SEC = 0x1080 - SO_NETSVC_MARKING_LEVEL = 0x1119 - SO_NET_SERVICE_TYPE = 0x1116 - SO_NKE = 0x1021 - SO_NOADDRERR = 0x1023 - SO_NOSIGPIPE = 0x1022 - SO_NOTIFYCONFLICT = 0x1026 - SO_NP_EXTENSIONS = 0x1083 - SO_NREAD = 0x1020 - SO_NUMRCVPKT = 0x1112 - SO_NWRITE = 0x1024 - SO_OOBINLINE = 0x100 - SO_PEERLABEL = 0x1011 - SO_RANDOMPORT = 0x1082 - SO_RCVBUF = 0x1002 - SO_RCVLOWAT = 0x1004 - SO_RCVTIMEO = 0x1006 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_REUSESHAREUID = 0x1025 - SO_SNDBUF = 0x1001 - SO_SNDLOWAT = 0x1003 - SO_SNDTIMEO = 0x1005 - SO_TIMESTAMP = 0x400 - SO_TIMESTAMP_MONOTONIC = 0x800 - SO_TYPE = 0x1008 - SO_UPCALLCLOSEWAIT = 0x1027 - SO_USELOOPBACK = 0x40 - SO_WANTMORE = 0x4000 - SO_WANTOOBFLAG = 0x8000 - S_IEXEC = 0x40 - S_IFBLK = 0x6000 - S_IFCHR = 0x2000 - S_IFDIR = 0x4000 - S_IFIFO = 0x1000 - S_IFLNK = 0xa000 - S_IFMT = 0xf000 - S_IFREG = 0x8000 - S_IFSOCK = 0xc000 - S_IFWHT = 0xe000 - S_IREAD = 0x100 - S_IRGRP = 0x20 - S_IROTH = 0x4 - S_IRUSR = 0x100 - S_IRWXG = 0x38 - S_IRWXO = 0x7 - S_IRWXU = 0x1c0 - S_ISGID = 0x400 - S_ISTXT = 0x200 - S_ISUID = 0x800 - S_ISVTX = 0x200 - S_IWGRP = 0x10 - S_IWOTH = 0x2 - S_IWRITE = 0x80 - S_IWUSR = 0x80 - S_IXGRP = 0x8 - S_IXOTH = 0x1 - S_IXUSR = 0x40 - TAB0 = 0x0 - TAB1 = 0x400 - TAB2 = 0x800 - TAB3 = 0x4 - TABDLY = 0xc04 - TCIFLUSH = 0x1 - TCIOFF = 0x3 - TCIOFLUSH = 0x3 - TCION = 0x4 - TCOFLUSH = 0x2 - TCOOFF = 0x1 - TCOON = 0x2 - TCP_CONNECTIONTIMEOUT = 0x20 - TCP_CONNECTION_INFO = 0x106 - TCP_ENABLE_ECN = 0x104 - TCP_FASTOPEN = 0x105 - TCP_KEEPALIVE = 0x10 - TCP_KEEPCNT = 0x102 - TCP_KEEPINTVL = 0x101 - TCP_MAXHLEN = 0x3c - TCP_MAXOLEN = 0x28 - TCP_MAXSEG = 0x2 - TCP_MAXWIN = 0xffff - TCP_MAX_SACK = 0x4 - TCP_MAX_WINSHIFT = 0xe - TCP_MINMSS = 0xd8 - TCP_MSS = 0x200 - TCP_NODELAY = 0x1 - TCP_NOOPT = 0x8 - TCP_NOPUSH = 0x4 - TCP_NOTSENT_LOWAT = 0x201 - TCP_RXT_CONNDROPTIME = 0x80 - TCP_RXT_FINDROP = 0x100 - TCP_SENDMOREACKS = 0x103 - TCSAFLUSH = 0x2 - TIOCCBRK = 0x2000747a - TIOCCDTR = 0x20007478 - TIOCCONS = 0x80047462 - TIOCDCDTIMESTAMP = 0x40107458 - TIOCDRAIN = 0x2000745e - TIOCDSIMICROCODE = 0x20007455 - TIOCEXCL = 0x2000740d - TIOCEXT = 0x80047460 - TIOCFLUSH = 0x80047410 - TIOCGDRAINWAIT = 0x40047456 - TIOCGETA = 0x40487413 - TIOCGETD = 0x4004741a - TIOCGPGRP = 0x40047477 - TIOCGWINSZ = 0x40087468 - TIOCIXOFF = 0x20007480 - TIOCIXON = 0x20007481 - TIOCMBIC = 0x8004746b - TIOCMBIS = 0x8004746c - TIOCMGDTRWAIT = 0x4004745a - TIOCMGET = 0x4004746a - TIOCMODG = 0x40047403 - TIOCMODS = 0x80047404 - TIOCMSDTRWAIT = 0x8004745b - TIOCMSET = 0x8004746d - TIOCM_CAR = 0x40 - TIOCM_CD = 0x40 - TIOCM_CTS = 0x20 - TIOCM_DSR = 0x100 - TIOCM_DTR = 0x2 - TIOCM_LE = 0x1 - TIOCM_RI = 0x80 - TIOCM_RNG = 0x80 - TIOCM_RTS = 0x4 - TIOCM_SR = 0x10 - TIOCM_ST = 0x8 - TIOCNOTTY = 0x20007471 - TIOCNXCL = 0x2000740e - TIOCOUTQ = 0x40047473 - TIOCPKT = 0x80047470 - TIOCPKT_DATA = 0x0 - TIOCPKT_DOSTOP = 0x20 - TIOCPKT_FLUSHREAD = 0x1 - TIOCPKT_FLUSHWRITE = 0x2 - TIOCPKT_IOCTL = 0x40 - TIOCPKT_NOSTOP = 0x10 - TIOCPKT_START = 0x8 - TIOCPKT_STOP = 0x4 - TIOCPTYGNAME = 0x40807453 - TIOCPTYGRANT = 0x20007454 - TIOCPTYUNLK = 0x20007452 - TIOCREMOTE = 0x80047469 - TIOCSBRK = 0x2000747b - TIOCSCONS = 0x20007463 - TIOCSCTTY = 0x20007461 - TIOCSDRAINWAIT = 0x80047457 - TIOCSDTR = 0x20007479 - TIOCSETA = 0x80487414 - TIOCSETAF = 0x80487416 - TIOCSETAW = 0x80487415 - TIOCSETD = 0x8004741b - TIOCSIG = 0x2000745f - TIOCSPGRP = 0x80047476 - TIOCSTART = 0x2000746e - TIOCSTAT = 0x20007465 - TIOCSTI = 0x80017472 - TIOCSTOP = 0x2000746f - TIOCSWINSZ = 0x80087467 - TIOCTIMESTAMP = 0x40107459 - TIOCUCNTL = 0x80047466 - TOSTOP = 0x400000 - VDISCARD = 0xf - VDSUSP = 0xb - VEOF = 0x0 - VEOL = 0x1 - VEOL2 = 0x2 - VERASE = 0x3 - VINTR = 0x8 - VKILL = 0x5 - VLNEXT = 0xe - VMIN = 0x10 - VM_LOADAVG = 0x2 - VM_MACHFACTOR = 0x4 - VM_MAXID = 0x6 - VM_METER = 0x1 - VM_SWAPUSAGE = 0x5 - VQUIT = 0x9 - VREPRINT = 0x6 - VSTART = 0xc - VSTATUS = 0x12 - VSTOP = 0xd - VSUSP = 0xa - VT0 = 0x0 - VT1 = 0x10000 - VTDLY = 0x10000 - VTIME = 0x11 - VWERASE = 0x4 - WCONTINUED = 0x10 - WCOREFLAG = 0x80 - WEXITED = 0x4 - WNOHANG = 0x1 - WNOWAIT = 0x20 - WORDSIZE = 0x40 - WSTOPPED = 0x8 - WUNTRACED = 0x2 - XATTR_CREATE = 0x2 - XATTR_NODEFAULT = 0x10 - XATTR_NOFOLLOW = 0x1 - XATTR_NOSECURITY = 0x8 - XATTR_REPLACE = 0x4 - XATTR_SHOWCOMPRESSION = 0x20 -) - -// Errors -const ( - E2BIG = syscall.Errno(0x7) - EACCES = syscall.Errno(0xd) - EADDRINUSE = syscall.Errno(0x30) - EADDRNOTAVAIL = syscall.Errno(0x31) - EAFNOSUPPORT = syscall.Errno(0x2f) - EAGAIN = syscall.Errno(0x23) - EALREADY = syscall.Errno(0x25) - EAUTH = syscall.Errno(0x50) - EBADARCH = syscall.Errno(0x56) - EBADEXEC = syscall.Errno(0x55) - EBADF = syscall.Errno(0x9) - EBADMACHO = syscall.Errno(0x58) - EBADMSG = syscall.Errno(0x5e) - EBADRPC = syscall.Errno(0x48) - EBUSY = syscall.Errno(0x10) - ECANCELED = syscall.Errno(0x59) - ECHILD = syscall.Errno(0xa) - ECONNABORTED = syscall.Errno(0x35) - ECONNREFUSED = syscall.Errno(0x3d) - ECONNRESET = syscall.Errno(0x36) - EDEADLK = syscall.Errno(0xb) - EDESTADDRREQ = syscall.Errno(0x27) - EDEVERR = syscall.Errno(0x53) - EDOM = syscall.Errno(0x21) - EDQUOT = syscall.Errno(0x45) - EEXIST = syscall.Errno(0x11) - EFAULT = syscall.Errno(0xe) - EFBIG = syscall.Errno(0x1b) - EFTYPE = syscall.Errno(0x4f) - EHOSTDOWN = syscall.Errno(0x40) - EHOSTUNREACH = syscall.Errno(0x41) - EIDRM = syscall.Errno(0x5a) - EILSEQ = syscall.Errno(0x5c) - EINPROGRESS = syscall.Errno(0x24) - EINTR = syscall.Errno(0x4) - EINVAL = syscall.Errno(0x16) - EIO = syscall.Errno(0x5) - EISCONN = syscall.Errno(0x38) - EISDIR = syscall.Errno(0x15) - ELAST = syscall.Errno(0x6a) - ELOOP = syscall.Errno(0x3e) - EMFILE = syscall.Errno(0x18) - EMLINK = syscall.Errno(0x1f) - EMSGSIZE = syscall.Errno(0x28) - EMULTIHOP = syscall.Errno(0x5f) - ENAMETOOLONG = syscall.Errno(0x3f) - ENEEDAUTH = syscall.Errno(0x51) - ENETDOWN = syscall.Errno(0x32) - ENETRESET = syscall.Errno(0x34) - ENETUNREACH = syscall.Errno(0x33) - ENFILE = syscall.Errno(0x17) - ENOATTR = syscall.Errno(0x5d) - ENOBUFS = syscall.Errno(0x37) - ENODATA = syscall.Errno(0x60) - ENODEV = syscall.Errno(0x13) - ENOENT = syscall.Errno(0x2) - ENOEXEC = syscall.Errno(0x8) - ENOLCK = syscall.Errno(0x4d) - ENOLINK = syscall.Errno(0x61) - ENOMEM = syscall.Errno(0xc) - ENOMSG = syscall.Errno(0x5b) - ENOPOLICY = syscall.Errno(0x67) - ENOPROTOOPT = syscall.Errno(0x2a) - ENOSPC = syscall.Errno(0x1c) - ENOSR = syscall.Errno(0x62) - ENOSTR = syscall.Errno(0x63) - ENOSYS = syscall.Errno(0x4e) - ENOTBLK = syscall.Errno(0xf) - ENOTCONN = syscall.Errno(0x39) - ENOTDIR = syscall.Errno(0x14) - ENOTEMPTY = syscall.Errno(0x42) - ENOTRECOVERABLE = syscall.Errno(0x68) - ENOTSOCK = syscall.Errno(0x26) - ENOTSUP = syscall.Errno(0x2d) - ENOTTY = syscall.Errno(0x19) - ENXIO = syscall.Errno(0x6) - EOPNOTSUPP = syscall.Errno(0x66) - EOVERFLOW = syscall.Errno(0x54) - EOWNERDEAD = syscall.Errno(0x69) - EPERM = syscall.Errno(0x1) - EPFNOSUPPORT = syscall.Errno(0x2e) - EPIPE = syscall.Errno(0x20) - EPROCLIM = syscall.Errno(0x43) - EPROCUNAVAIL = syscall.Errno(0x4c) - EPROGMISMATCH = syscall.Errno(0x4b) - EPROGUNAVAIL = syscall.Errno(0x4a) - EPROTO = syscall.Errno(0x64) - EPROTONOSUPPORT = syscall.Errno(0x2b) - EPROTOTYPE = syscall.Errno(0x29) - EPWROFF = syscall.Errno(0x52) - EQFULL = syscall.Errno(0x6a) - ERANGE = syscall.Errno(0x22) - EREMOTE = syscall.Errno(0x47) - EROFS = syscall.Errno(0x1e) - ERPCMISMATCH = syscall.Errno(0x49) - ESHLIBVERS = syscall.Errno(0x57) - ESHUTDOWN = syscall.Errno(0x3a) - ESOCKTNOSUPPORT = syscall.Errno(0x2c) - ESPIPE = syscall.Errno(0x1d) - ESRCH = syscall.Errno(0x3) - ESTALE = syscall.Errno(0x46) - ETIME = syscall.Errno(0x65) - ETIMEDOUT = syscall.Errno(0x3c) - ETOOMANYREFS = syscall.Errno(0x3b) - ETXTBSY = syscall.Errno(0x1a) - EUSERS = syscall.Errno(0x44) - EWOULDBLOCK = syscall.Errno(0x23) - EXDEV = syscall.Errno(0x12) -) - -// Signals -const ( - SIGABRT = syscall.Signal(0x6) - SIGALRM = syscall.Signal(0xe) - SIGBUS = syscall.Signal(0xa) - SIGCHLD = syscall.Signal(0x14) - SIGCONT = syscall.Signal(0x13) - SIGEMT = syscall.Signal(0x7) - SIGFPE = syscall.Signal(0x8) - SIGHUP = syscall.Signal(0x1) - SIGILL = syscall.Signal(0x4) - SIGINFO = syscall.Signal(0x1d) - SIGINT = syscall.Signal(0x2) - SIGIO = syscall.Signal(0x17) - SIGIOT = syscall.Signal(0x6) - SIGKILL = syscall.Signal(0x9) - SIGPIPE = syscall.Signal(0xd) - SIGPROF = syscall.Signal(0x1b) - SIGQUIT = syscall.Signal(0x3) - SIGSEGV = syscall.Signal(0xb) - SIGSTOP = syscall.Signal(0x11) - SIGSYS = syscall.Signal(0xc) - SIGTERM = syscall.Signal(0xf) - SIGTRAP = syscall.Signal(0x5) - SIGTSTP = syscall.Signal(0x12) - SIGTTIN = syscall.Signal(0x15) - SIGTTOU = syscall.Signal(0x16) - SIGURG = syscall.Signal(0x10) - SIGUSR1 = syscall.Signal(0x1e) - SIGUSR2 = syscall.Signal(0x1f) - SIGVTALRM = syscall.Signal(0x1a) - SIGWINCH = syscall.Signal(0x1c) - SIGXCPU = syscall.Signal(0x18) - SIGXFSZ = syscall.Signal(0x19) -) - -// Error table -var errorList = [...]struct { - num syscall.Errno - name string - desc string -}{ - {1, "EPERM", "operation not permitted"}, - {2, "ENOENT", "no such file or directory"}, - {3, "ESRCH", "no such process"}, - {4, "EINTR", "interrupted system call"}, - {5, "EIO", "input/output error"}, - {6, "ENXIO", "device not configured"}, - {7, "E2BIG", "argument list too long"}, - {8, "ENOEXEC", "exec format error"}, - {9, "EBADF", "bad file descriptor"}, - {10, "ECHILD", "no child processes"}, - {11, "EDEADLK", "resource deadlock avoided"}, - {12, "ENOMEM", "cannot allocate memory"}, - {13, "EACCES", "permission denied"}, - {14, "EFAULT", "bad address"}, - {15, "ENOTBLK", "block device required"}, - {16, "EBUSY", "resource busy"}, - {17, "EEXIST", "file exists"}, - {18, "EXDEV", "cross-device link"}, - {19, "ENODEV", "operation not supported by device"}, - {20, "ENOTDIR", "not a directory"}, - {21, "EISDIR", "is a directory"}, - {22, "EINVAL", "invalid argument"}, - {23, "ENFILE", "too many open files in system"}, - {24, "EMFILE", "too many open files"}, - {25, "ENOTTY", "inappropriate ioctl for device"}, - {26, "ETXTBSY", "text file busy"}, - {27, "EFBIG", "file too large"}, - {28, "ENOSPC", "no space left on device"}, - {29, "ESPIPE", "illegal seek"}, - {30, "EROFS", "read-only file system"}, - {31, "EMLINK", "too many links"}, - {32, "EPIPE", "broken pipe"}, - {33, "EDOM", "numerical argument out of domain"}, - {34, "ERANGE", "result too large"}, - {35, "EAGAIN", "resource temporarily unavailable"}, - {36, "EINPROGRESS", "operation now in progress"}, - {37, "EALREADY", "operation already in progress"}, - {38, "ENOTSOCK", "socket operation on non-socket"}, - {39, "EDESTADDRREQ", "destination address required"}, - {40, "EMSGSIZE", "message too long"}, - {41, "EPROTOTYPE", "protocol wrong type for socket"}, - {42, "ENOPROTOOPT", "protocol not available"}, - {43, "EPROTONOSUPPORT", "protocol not supported"}, - {44, "ESOCKTNOSUPPORT", "socket type not supported"}, - {45, "ENOTSUP", "operation not supported"}, - {46, "EPFNOSUPPORT", "protocol family not supported"}, - {47, "EAFNOSUPPORT", "address family not supported by protocol family"}, - {48, "EADDRINUSE", "address already in use"}, - {49, "EADDRNOTAVAIL", "can't assign requested address"}, - {50, "ENETDOWN", "network is down"}, - {51, "ENETUNREACH", "network is unreachable"}, - {52, "ENETRESET", "network dropped connection on reset"}, - {53, "ECONNABORTED", "software caused connection abort"}, - {54, "ECONNRESET", "connection reset by peer"}, - {55, "ENOBUFS", "no buffer space available"}, - {56, "EISCONN", "socket is already connected"}, - {57, "ENOTCONN", "socket is not connected"}, - {58, "ESHUTDOWN", "can't send after socket shutdown"}, - {59, "ETOOMANYREFS", "too many references: can't splice"}, - {60, "ETIMEDOUT", "operation timed out"}, - {61, "ECONNREFUSED", "connection refused"}, - {62, "ELOOP", "too many levels of symbolic links"}, - {63, "ENAMETOOLONG", "file name too long"}, - {64, "EHOSTDOWN", "host is down"}, - {65, "EHOSTUNREACH", "no route to host"}, - {66, "ENOTEMPTY", "directory not empty"}, - {67, "EPROCLIM", "too many processes"}, - {68, "EUSERS", "too many users"}, - {69, "EDQUOT", "disc quota exceeded"}, - {70, "ESTALE", "stale NFS file handle"}, - {71, "EREMOTE", "too many levels of remote in path"}, - {72, "EBADRPC", "RPC struct is bad"}, - {73, "ERPCMISMATCH", "RPC version wrong"}, - {74, "EPROGUNAVAIL", "RPC prog. not avail"}, - {75, "EPROGMISMATCH", "program version wrong"}, - {76, "EPROCUNAVAIL", "bad procedure for program"}, - {77, "ENOLCK", "no locks available"}, - {78, "ENOSYS", "function not implemented"}, - {79, "EFTYPE", "inappropriate file type or format"}, - {80, "EAUTH", "authentication error"}, - {81, "ENEEDAUTH", "need authenticator"}, - {82, "EPWROFF", "device power is off"}, - {83, "EDEVERR", "device error"}, - {84, "EOVERFLOW", "value too large to be stored in data type"}, - {85, "EBADEXEC", "bad executable (or shared library)"}, - {86, "EBADARCH", "bad CPU type in executable"}, - {87, "ESHLIBVERS", "shared library version mismatch"}, - {88, "EBADMACHO", "malformed Mach-o file"}, - {89, "ECANCELED", "operation canceled"}, - {90, "EIDRM", "identifier removed"}, - {91, "ENOMSG", "no message of desired type"}, - {92, "EILSEQ", "illegal byte sequence"}, - {93, "ENOATTR", "attribute not found"}, - {94, "EBADMSG", "bad message"}, - {95, "EMULTIHOP", "EMULTIHOP (Reserved)"}, - {96, "ENODATA", "no message available on STREAM"}, - {97, "ENOLINK", "ENOLINK (Reserved)"}, - {98, "ENOSR", "no STREAM resources"}, - {99, "ENOSTR", "not a STREAM"}, - {100, "EPROTO", "protocol error"}, - {101, "ETIME", "STREAM ioctl timeout"}, - {102, "EOPNOTSUPP", "operation not supported on socket"}, - {103, "ENOPOLICY", "policy not found"}, - {104, "ENOTRECOVERABLE", "state not recoverable"}, - {105, "EOWNERDEAD", "previous owner died"}, - {106, "EQFULL", "interface output queue is full"}, -} - -// Signal table -var signalList = [...]struct { - num syscall.Signal - name string - desc string -}{ - {1, "SIGHUP", "hangup"}, - {2, "SIGINT", "interrupt"}, - {3, "SIGQUIT", "quit"}, - {4, "SIGILL", "illegal instruction"}, - {5, "SIGTRAP", "trace/BPT trap"}, - {6, "SIGABRT", "abort trap"}, - {7, "SIGEMT", "EMT trap"}, - {8, "SIGFPE", "floating point exception"}, - {9, "SIGKILL", "killed"}, - {10, "SIGBUS", "bus error"}, - {11, "SIGSEGV", "segmentation fault"}, - {12, "SIGSYS", "bad system call"}, - {13, "SIGPIPE", "broken pipe"}, - {14, "SIGALRM", "alarm clock"}, - {15, "SIGTERM", "terminated"}, - {16, "SIGURG", "urgent I/O condition"}, - {17, "SIGSTOP", "suspended (signal)"}, - {18, "SIGTSTP", "suspended"}, - {19, "SIGCONT", "continued"}, - {20, "SIGCHLD", "child exited"}, - {21, "SIGTTIN", "stopped (tty input)"}, - {22, "SIGTTOU", "stopped (tty output)"}, - {23, "SIGIO", "I/O possible"}, - {24, "SIGXCPU", "cputime limit exceeded"}, - {25, "SIGXFSZ", "filesize limit exceeded"}, - {26, "SIGVTALRM", "virtual timer expired"}, - {27, "SIGPROF", "profiling timer expired"}, - {28, "SIGWINCH", "window size changes"}, - {29, "SIGINFO", "information request"}, - {30, "SIGUSR1", "user defined signal 1"}, - {31, "SIGUSR2", "user defined signal 2"}, -} diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux.go b/vendor/golang.org/x/sys/unix/zerrors_linux.go index 35de419c6..c3fa22486 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux.go @@ -166,13 +166,16 @@ const ( BPF_ALU64 = 0x7 BPF_AND = 0x50 BPF_ARSH = 0xc0 + BPF_ATOMIC = 0xc0 BPF_B = 0x10 BPF_BUILD_ID_SIZE = 0x14 BPF_CALL = 0x80 + BPF_CMPXCHG = 0xf1 BPF_DIV = 0x30 BPF_DW = 0x18 BPF_END = 0xd0 BPF_EXIT = 0x90 + BPF_FETCH = 0x1 BPF_FROM_BE = 0x8 BPF_FROM_LE = 0x0 BPF_FS_MAGIC = 0xcafe4a11 @@ -240,6 +243,7 @@ const ( BPF_W = 0x0 BPF_X = 0x8 BPF_XADD = 0xc0 + BPF_XCHG = 0xe1 BPF_XOR = 0xa0 BRKINT = 0x2 BS0 = 0x0 @@ -490,9 +494,9 @@ const ( DM_UUID_FLAG = 0x4000 DM_UUID_LEN = 0x81 DM_VERSION = 0xc138fd00 - DM_VERSION_EXTRA = "-ioctl (2020-10-01)" + DM_VERSION_EXTRA = "-ioctl (2021-02-01)" DM_VERSION_MAJOR = 0x4 - DM_VERSION_MINOR = 0x2b + DM_VERSION_MINOR = 0x2c DM_VERSION_PATCHLEVEL = 0x0 DT_BLK = 0x6 DT_CHR = 0x2 @@ -860,6 +864,7 @@ const ( FS_IOC_GET_ENCRYPTION_KEY_STATUS = 0xc080661a FS_IOC_GET_ENCRYPTION_POLICY_EX = 0xc0096616 FS_IOC_MEASURE_VERITY = 0xc0046686 + FS_IOC_READ_VERITY_METADATA = 0xc0286687 FS_IOC_REMOVE_ENCRYPTION_KEY = 0xc0406618 FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS = 0xc0406619 FS_KEY_DESCRIPTOR_SIZE = 0x8 @@ -875,6 +880,9 @@ const ( FS_VERITY_FL = 0x100000 FS_VERITY_HASH_ALG_SHA256 = 0x1 FS_VERITY_HASH_ALG_SHA512 = 0x2 + FS_VERITY_METADATA_TYPE_DESCRIPTOR = 0x2 + FS_VERITY_METADATA_TYPE_MERKLE_TREE = 0x1 + FS_VERITY_METADATA_TYPE_SIGNATURE = 0x3 FUTEXFS_SUPER_MAGIC = 0xbad1dea F_ADD_SEALS = 0x409 F_DUPFD = 0x0 @@ -1398,6 +1406,10 @@ const ( MCAST_LEAVE_SOURCE_GROUP = 0x2f MCAST_MSFILTER = 0x30 MCAST_UNBLOCK_SOURCE = 0x2c + MEMGETREGIONINFO = 0xc0104d08 + MEMREADOOB64 = 0xc0184d16 + MEMWRITE = 0xc0304d18 + MEMWRITEOOB64 = 0xc0184d15 MFD_ALLOW_SEALING = 0x2 MFD_CLOEXEC = 0x1 MFD_HUGETLB = 0x4 @@ -1486,7 +1498,35 @@ const ( MS_SYNCHRONOUS = 0x10 MS_UNBINDABLE = 0x20000 MS_VERBOSE = 0x8000 + MTD_ABSENT = 0x0 + MTD_BIT_WRITEABLE = 0x800 + MTD_CAP_NANDFLASH = 0x400 + MTD_CAP_NORFLASH = 0xc00 + MTD_CAP_NVRAM = 0x1c00 + MTD_CAP_RAM = 0x1c00 + MTD_CAP_ROM = 0x0 + MTD_DATAFLASH = 0x6 MTD_INODE_FS_MAGIC = 0x11307854 + MTD_MAX_ECCPOS_ENTRIES = 0x40 + MTD_MAX_OOBFREE_ENTRIES = 0x8 + MTD_MLCNANDFLASH = 0x8 + MTD_NANDECC_AUTOPLACE = 0x2 + MTD_NANDECC_AUTOPL_USR = 0x4 + MTD_NANDECC_OFF = 0x0 + MTD_NANDECC_PLACE = 0x1 + MTD_NANDECC_PLACEONLY = 0x3 + MTD_NANDFLASH = 0x4 + MTD_NORFLASH = 0x3 + MTD_NO_ERASE = 0x1000 + MTD_OTP_FACTORY = 0x1 + MTD_OTP_OFF = 0x0 + MTD_OTP_USER = 0x2 + MTD_POWERUP_LOCK = 0x2000 + MTD_RAM = 0x1 + MTD_ROM = 0x2 + MTD_SLC_ON_MLC_EMULATION = 0x4000 + MTD_UBIVOLUME = 0x7 + MTD_WRITEABLE = 0x400 NAME_MAX = 0xff NCP_SUPER_MAGIC = 0x564c NETLINK_ADD_MEMBERSHIP = 0x1 @@ -1526,6 +1566,59 @@ const ( NETLINK_XFRM = 0x6 NETNSA_MAX = 0x5 NETNSA_NSID_NOT_ASSIGNED = -0x1 + NFC_ATR_REQ_GB_MAXSIZE = 0x30 + NFC_ATR_REQ_MAXSIZE = 0x40 + NFC_ATR_RES_GB_MAXSIZE = 0x2f + NFC_ATR_RES_MAXSIZE = 0x40 + NFC_COMM_ACTIVE = 0x0 + NFC_COMM_PASSIVE = 0x1 + NFC_DEVICE_NAME_MAXSIZE = 0x8 + NFC_DIRECTION_RX = 0x0 + NFC_DIRECTION_TX = 0x1 + NFC_FIRMWARE_NAME_MAXSIZE = 0x20 + NFC_GB_MAXSIZE = 0x30 + NFC_GENL_MCAST_EVENT_NAME = "events" + NFC_GENL_NAME = "nfc" + NFC_GENL_VERSION = 0x1 + NFC_HEADER_SIZE = 0x1 + NFC_ISO15693_UID_MAXSIZE = 0x8 + NFC_LLCP_MAX_SERVICE_NAME = 0x3f + NFC_LLCP_MIUX = 0x1 + NFC_LLCP_REMOTE_LTO = 0x3 + NFC_LLCP_REMOTE_MIU = 0x2 + NFC_LLCP_REMOTE_RW = 0x4 + NFC_LLCP_RW = 0x0 + NFC_NFCID1_MAXSIZE = 0xa + NFC_NFCID2_MAXSIZE = 0x8 + NFC_NFCID3_MAXSIZE = 0xa + NFC_PROTO_FELICA = 0x3 + NFC_PROTO_FELICA_MASK = 0x8 + NFC_PROTO_ISO14443 = 0x4 + NFC_PROTO_ISO14443_B = 0x6 + NFC_PROTO_ISO14443_B_MASK = 0x40 + NFC_PROTO_ISO14443_MASK = 0x10 + NFC_PROTO_ISO15693 = 0x7 + NFC_PROTO_ISO15693_MASK = 0x80 + NFC_PROTO_JEWEL = 0x1 + NFC_PROTO_JEWEL_MASK = 0x2 + NFC_PROTO_MAX = 0x8 + NFC_PROTO_MIFARE = 0x2 + NFC_PROTO_MIFARE_MASK = 0x4 + NFC_PROTO_NFC_DEP = 0x5 + NFC_PROTO_NFC_DEP_MASK = 0x20 + NFC_RAW_HEADER_SIZE = 0x2 + NFC_RF_INITIATOR = 0x0 + NFC_RF_NONE = 0x2 + NFC_RF_TARGET = 0x1 + NFC_SENSB_RES_MAXSIZE = 0xc + NFC_SENSF_RES_MAXSIZE = 0x12 + NFC_SE_DISABLED = 0x0 + NFC_SE_EMBEDDED = 0x2 + NFC_SE_ENABLED = 0x1 + NFC_SE_UICC = 0x1 + NFC_SOCKPROTO_LLCP = 0x1 + NFC_SOCKPROTO_MAX = 0x2 + NFC_SOCKPROTO_RAW = 0x0 NFNETLINK_V0 = 0x0 NFNLGRP_ACCT_QUOTA = 0x8 NFNLGRP_CONNTRACK_DESTROY = 0x3 @@ -1673,6 +1766,10 @@ const ( PERF_FLAG_PID_CGROUP = 0x4 PERF_MAX_CONTEXTS_PER_STACK = 0x8 PERF_MAX_STACK_DEPTH = 0x7f + PERF_MEM_BLK_ADDR = 0x4 + PERF_MEM_BLK_DATA = 0x2 + PERF_MEM_BLK_NA = 0x1 + PERF_MEM_BLK_SHIFT = 0x28 PERF_MEM_LOCK_LOCKED = 0x2 PERF_MEM_LOCK_NA = 0x1 PERF_MEM_LOCK_SHIFT = 0x18 @@ -1736,12 +1833,14 @@ const ( PERF_RECORD_MISC_GUEST_USER = 0x5 PERF_RECORD_MISC_HYPERVISOR = 0x3 PERF_RECORD_MISC_KERNEL = 0x1 + PERF_RECORD_MISC_MMAP_BUILD_ID = 0x4000 PERF_RECORD_MISC_MMAP_DATA = 0x2000 PERF_RECORD_MISC_PROC_MAP_PARSE_TIMEOUT = 0x1000 PERF_RECORD_MISC_SWITCH_OUT = 0x2000 PERF_RECORD_MISC_SWITCH_OUT_PREEMPT = 0x4000 PERF_RECORD_MISC_USER = 0x2 PERF_SAMPLE_BRANCH_PLM_ALL = 0x7 + PERF_SAMPLE_WEIGHT_TYPE = 0x1004000 PIPEFS_MAGIC = 0x50495045 PPC_CMM_MAGIC = 0xc7571590 PPPIOCGNPMODE = 0xc008744c @@ -1945,6 +2044,11 @@ const ( QNX4_SUPER_MAGIC = 0x2f QNX6_SUPER_MAGIC = 0x68191122 RAMFS_MAGIC = 0x858458f6 + RAW_PAYLOAD_DIGITAL = 0x3 + RAW_PAYLOAD_HCI = 0x2 + RAW_PAYLOAD_LLCP = 0x0 + RAW_PAYLOAD_NCI = 0x1 + RAW_PAYLOAD_PROPRIETARY = 0x4 RDTGROUP_SUPER_MAGIC = 0x7655821 REISERFS_SUPER_MAGIC = 0x52654973 RENAME_EXCHANGE = 0x2 @@ -1995,6 +2099,10 @@ const ( RTCF_NAT = 0x800000 RTCF_VALVE = 0x200000 RTC_AF = 0x20 + RTC_FEATURE_ALARM = 0x0 + RTC_FEATURE_ALARM_RES_MINUTE = 0x1 + RTC_FEATURE_CNT = 0x3 + RTC_FEATURE_NEED_WEEK_DAY = 0x2 RTC_IRQF = 0x80 RTC_MAX_FREQ = 0x2000 RTC_PF = 0x40 @@ -2068,6 +2176,7 @@ const ( RTM_F_LOOKUP_TABLE = 0x1000 RTM_F_NOTIFY = 0x100 RTM_F_OFFLOAD = 0x4000 + RTM_F_OFFLOAD_FAILED = 0x20000000 RTM_F_PREFIX = 0x800 RTM_F_TRAP = 0x8000 RTM_GETACTION = 0x32 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_386.go b/vendor/golang.org/x/sys/unix/zerrors_linux_386.go index e91a1a957..09fc559ed 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_386.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_386.go @@ -60,6 +60,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x81484d11 + ECCGETSTATS = 0x80104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -123,6 +125,19 @@ const ( MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MCL_ONFAULT = 0x4 + MEMERASE = 0x40084d02 + MEMERASE64 = 0x40104d14 + MEMGETBADBLOCK = 0x40084d0b + MEMGETINFO = 0x80204d01 + MEMGETOOBSEL = 0x80c84d0a + MEMGETREGIONCOUNT = 0x80044d07 + MEMISLOCKED = 0x80084d17 + MEMLOCK = 0x40084d05 + MEMREADOOB = 0xc00c4d04 + MEMSETBADBLOCK = 0x40084d0c + MEMUNLOCK = 0x40084d06 + MEMWRITEOOB = 0xc00c4d03 + MTDFILEMODE = 0x4d13 NFDBITS = 0x20 NLDLY = 0x100 NOFLSH = 0x80 @@ -132,6 +147,10 @@ const ( NS_GET_USERNS = 0xb701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x40044d0e + OTPGETREGIONINFO = 0x400c4d0f + OTPLOCK = 0x800c4d10 + OTPSELECT = 0x80044d0d O_APPEND = 0x400 O_ASYNC = 0x2000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go index a9cbac644..75730cc22 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go @@ -60,6 +60,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x81484d11 + ECCGETSTATS = 0x80104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -123,6 +125,19 @@ const ( MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MCL_ONFAULT = 0x4 + MEMERASE = 0x40084d02 + MEMERASE64 = 0x40104d14 + MEMGETBADBLOCK = 0x40084d0b + MEMGETINFO = 0x80204d01 + MEMGETOOBSEL = 0x80c84d0a + MEMGETREGIONCOUNT = 0x80044d07 + MEMISLOCKED = 0x80084d17 + MEMLOCK = 0x40084d05 + MEMREADOOB = 0xc0104d04 + MEMSETBADBLOCK = 0x40084d0c + MEMUNLOCK = 0x40084d06 + MEMWRITEOOB = 0xc0104d03 + MTDFILEMODE = 0x4d13 NFDBITS = 0x40 NLDLY = 0x100 NOFLSH = 0x80 @@ -132,6 +147,10 @@ const ( NS_GET_USERNS = 0xb701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x40044d0e + OTPGETREGIONINFO = 0x400c4d0f + OTPLOCK = 0x800c4d10 + OTPSELECT = 0x80044d0d O_APPEND = 0x400 O_ASYNC = 0x2000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go b/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go index d74f3c15a..127cf17ad 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go @@ -60,6 +60,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x81484d11 + ECCGETSTATS = 0x80104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -121,6 +123,19 @@ const ( MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MCL_ONFAULT = 0x4 + MEMERASE = 0x40084d02 + MEMERASE64 = 0x40104d14 + MEMGETBADBLOCK = 0x40084d0b + MEMGETINFO = 0x80204d01 + MEMGETOOBSEL = 0x80c84d0a + MEMGETREGIONCOUNT = 0x80044d07 + MEMISLOCKED = 0x80084d17 + MEMLOCK = 0x40084d05 + MEMREADOOB = 0xc00c4d04 + MEMSETBADBLOCK = 0x40084d0c + MEMUNLOCK = 0x40084d06 + MEMWRITEOOB = 0xc00c4d03 + MTDFILEMODE = 0x4d13 NFDBITS = 0x20 NLDLY = 0x100 NOFLSH = 0x80 @@ -130,6 +145,10 @@ const ( NS_GET_USERNS = 0xb701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x40044d0e + OTPGETREGIONINFO = 0x400c4d0f + OTPLOCK = 0x800c4d10 + OTPSELECT = 0x80044d0d O_APPEND = 0x400 O_ASYNC = 0x2000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go index e1538995b..957ca1ff1 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go @@ -60,6 +60,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x81484d11 + ECCGETSTATS = 0x80104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -124,6 +126,19 @@ const ( MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MCL_ONFAULT = 0x4 + MEMERASE = 0x40084d02 + MEMERASE64 = 0x40104d14 + MEMGETBADBLOCK = 0x40084d0b + MEMGETINFO = 0x80204d01 + MEMGETOOBSEL = 0x80c84d0a + MEMGETREGIONCOUNT = 0x80044d07 + MEMISLOCKED = 0x80084d17 + MEMLOCK = 0x40084d05 + MEMREADOOB = 0xc0104d04 + MEMSETBADBLOCK = 0x40084d0c + MEMUNLOCK = 0x40084d06 + MEMWRITEOOB = 0xc0104d03 + MTDFILEMODE = 0x4d13 NFDBITS = 0x40 NLDLY = 0x100 NOFLSH = 0x80 @@ -133,6 +148,10 @@ const ( NS_GET_USERNS = 0xb701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x40044d0e + OTPGETREGIONINFO = 0x400c4d0f + OTPLOCK = 0x800c4d10 + OTPSELECT = 0x80044d0d O_APPEND = 0x400 O_ASYNC = 0x2000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go index 5e8e71ff8..314a2054f 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go @@ -60,6 +60,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x41484d11 + ECCGETSTATS = 0x40104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -121,6 +123,19 @@ const ( MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MCL_ONFAULT = 0x4 + MEMERASE = 0x80084d02 + MEMERASE64 = 0x80104d14 + MEMGETBADBLOCK = 0x80084d0b + MEMGETINFO = 0x40204d01 + MEMGETOOBSEL = 0x40c84d0a + MEMGETREGIONCOUNT = 0x40044d07 + MEMISLOCKED = 0x40084d17 + MEMLOCK = 0x80084d05 + MEMREADOOB = 0xc00c4d04 + MEMSETBADBLOCK = 0x80084d0c + MEMUNLOCK = 0x80084d06 + MEMWRITEOOB = 0xc00c4d03 + MTDFILEMODE = 0x20004d13 NFDBITS = 0x20 NLDLY = 0x100 NOFLSH = 0x80 @@ -130,6 +145,10 @@ const ( NS_GET_USERNS = 0x2000b701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x80044d0e + OTPGETREGIONINFO = 0x800c4d0f + OTPLOCK = 0x400c4d10 + OTPSELECT = 0x40044d0d O_APPEND = 0x8 O_ASYNC = 0x1000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go index e670ee148..457e8de97 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go @@ -60,6 +60,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x41484d11 + ECCGETSTATS = 0x40104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -121,6 +123,19 @@ const ( MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MCL_ONFAULT = 0x4 + MEMERASE = 0x80084d02 + MEMERASE64 = 0x80104d14 + MEMGETBADBLOCK = 0x80084d0b + MEMGETINFO = 0x40204d01 + MEMGETOOBSEL = 0x40c84d0a + MEMGETREGIONCOUNT = 0x40044d07 + MEMISLOCKED = 0x40084d17 + MEMLOCK = 0x80084d05 + MEMREADOOB = 0xc0104d04 + MEMSETBADBLOCK = 0x80084d0c + MEMUNLOCK = 0x80084d06 + MEMWRITEOOB = 0xc0104d03 + MTDFILEMODE = 0x20004d13 NFDBITS = 0x40 NLDLY = 0x100 NOFLSH = 0x80 @@ -130,6 +145,10 @@ const ( NS_GET_USERNS = 0x2000b701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x80044d0e + OTPGETREGIONINFO = 0x800c4d0f + OTPLOCK = 0x400c4d10 + OTPSELECT = 0x40044d0d O_APPEND = 0x8 O_ASYNC = 0x1000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go index dd11eacb8..33cd28f6b 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go @@ -60,6 +60,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x41484d11 + ECCGETSTATS = 0x40104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -121,6 +123,19 @@ const ( MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MCL_ONFAULT = 0x4 + MEMERASE = 0x80084d02 + MEMERASE64 = 0x80104d14 + MEMGETBADBLOCK = 0x80084d0b + MEMGETINFO = 0x40204d01 + MEMGETOOBSEL = 0x40c84d0a + MEMGETREGIONCOUNT = 0x40044d07 + MEMISLOCKED = 0x40084d17 + MEMLOCK = 0x80084d05 + MEMREADOOB = 0xc0104d04 + MEMSETBADBLOCK = 0x80084d0c + MEMUNLOCK = 0x80084d06 + MEMWRITEOOB = 0xc0104d03 + MTDFILEMODE = 0x20004d13 NFDBITS = 0x40 NLDLY = 0x100 NOFLSH = 0x80 @@ -130,6 +145,10 @@ const ( NS_GET_USERNS = 0x2000b701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x80044d0e + OTPGETREGIONINFO = 0x800c4d0f + OTPLOCK = 0x400c4d10 + OTPSELECT = 0x40044d0d O_APPEND = 0x8 O_ASYNC = 0x1000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go index a0a5b22ae..0e085ba14 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go @@ -60,6 +60,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x41484d11 + ECCGETSTATS = 0x40104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -121,6 +123,19 @@ const ( MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MCL_ONFAULT = 0x4 + MEMERASE = 0x80084d02 + MEMERASE64 = 0x80104d14 + MEMGETBADBLOCK = 0x80084d0b + MEMGETINFO = 0x40204d01 + MEMGETOOBSEL = 0x40c84d0a + MEMGETREGIONCOUNT = 0x40044d07 + MEMISLOCKED = 0x40084d17 + MEMLOCK = 0x80084d05 + MEMREADOOB = 0xc00c4d04 + MEMSETBADBLOCK = 0x80084d0c + MEMUNLOCK = 0x80084d06 + MEMWRITEOOB = 0xc00c4d03 + MTDFILEMODE = 0x20004d13 NFDBITS = 0x20 NLDLY = 0x100 NOFLSH = 0x80 @@ -130,6 +145,10 @@ const ( NS_GET_USERNS = 0x2000b701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x80044d0e + OTPGETREGIONINFO = 0x800c4d0f + OTPLOCK = 0x400c4d10 + OTPSELECT = 0x40044d0d O_APPEND = 0x8 O_ASYNC = 0x1000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go index d9530e5fb..1b5928cff 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go @@ -60,6 +60,8 @@ const ( CS8 = 0x300 CSIZE = 0x300 CSTOPB = 0x400 + ECCGETLAYOUT = 0x41484d11 + ECCGETSTATS = 0x40104d12 ECHOCTL = 0x40 ECHOE = 0x2 ECHOK = 0x4 @@ -121,6 +123,19 @@ const ( MCL_CURRENT = 0x2000 MCL_FUTURE = 0x4000 MCL_ONFAULT = 0x8000 + MEMERASE = 0x80084d02 + MEMERASE64 = 0x80104d14 + MEMGETBADBLOCK = 0x80084d0b + MEMGETINFO = 0x40204d01 + MEMGETOOBSEL = 0x40c84d0a + MEMGETREGIONCOUNT = 0x40044d07 + MEMISLOCKED = 0x40084d17 + MEMLOCK = 0x80084d05 + MEMREADOOB = 0xc00c4d04 + MEMSETBADBLOCK = 0x80084d0c + MEMUNLOCK = 0x80084d06 + MEMWRITEOOB = 0xc00c4d03 + MTDFILEMODE = 0x20004d13 NFDBITS = 0x20 NL2 = 0x200 NL3 = 0x300 @@ -132,6 +147,10 @@ const ( NS_GET_USERNS = 0x2000b701 OLCUC = 0x4 ONLCR = 0x2 + OTPGETREGIONCOUNT = 0x80044d0e + OTPGETREGIONINFO = 0x800c4d0f + OTPLOCK = 0x400c4d10 + OTPSELECT = 0x40044d0d O_APPEND = 0x400 O_ASYNC = 0x2000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go index e60102f6a..f3a41d6ec 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go @@ -60,6 +60,8 @@ const ( CS8 = 0x300 CSIZE = 0x300 CSTOPB = 0x400 + ECCGETLAYOUT = 0x41484d11 + ECCGETSTATS = 0x40104d12 ECHOCTL = 0x40 ECHOE = 0x2 ECHOK = 0x4 @@ -121,6 +123,19 @@ const ( MCL_CURRENT = 0x2000 MCL_FUTURE = 0x4000 MCL_ONFAULT = 0x8000 + MEMERASE = 0x80084d02 + MEMERASE64 = 0x80104d14 + MEMGETBADBLOCK = 0x80084d0b + MEMGETINFO = 0x40204d01 + MEMGETOOBSEL = 0x40c84d0a + MEMGETREGIONCOUNT = 0x40044d07 + MEMISLOCKED = 0x40084d17 + MEMLOCK = 0x80084d05 + MEMREADOOB = 0xc0104d04 + MEMSETBADBLOCK = 0x80084d0c + MEMUNLOCK = 0x80084d06 + MEMWRITEOOB = 0xc0104d03 + MTDFILEMODE = 0x20004d13 NFDBITS = 0x40 NL2 = 0x200 NL3 = 0x300 @@ -132,6 +147,10 @@ const ( NS_GET_USERNS = 0x2000b701 OLCUC = 0x4 ONLCR = 0x2 + OTPGETREGIONCOUNT = 0x80044d0e + OTPGETREGIONINFO = 0x800c4d0f + OTPLOCK = 0x400c4d10 + OTPSELECT = 0x40044d0d O_APPEND = 0x400 O_ASYNC = 0x2000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go index 838ff4ea6..6a5a555d5 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go @@ -60,6 +60,8 @@ const ( CS8 = 0x300 CSIZE = 0x300 CSTOPB = 0x400 + ECCGETLAYOUT = 0x41484d11 + ECCGETSTATS = 0x40104d12 ECHOCTL = 0x40 ECHOE = 0x2 ECHOK = 0x4 @@ -121,6 +123,19 @@ const ( MCL_CURRENT = 0x2000 MCL_FUTURE = 0x4000 MCL_ONFAULT = 0x8000 + MEMERASE = 0x80084d02 + MEMERASE64 = 0x80104d14 + MEMGETBADBLOCK = 0x80084d0b + MEMGETINFO = 0x40204d01 + MEMGETOOBSEL = 0x40c84d0a + MEMGETREGIONCOUNT = 0x40044d07 + MEMISLOCKED = 0x40084d17 + MEMLOCK = 0x80084d05 + MEMREADOOB = 0xc0104d04 + MEMSETBADBLOCK = 0x80084d0c + MEMUNLOCK = 0x80084d06 + MEMWRITEOOB = 0xc0104d03 + MTDFILEMODE = 0x20004d13 NFDBITS = 0x40 NL2 = 0x200 NL3 = 0x300 @@ -132,6 +147,10 @@ const ( NS_GET_USERNS = 0x2000b701 OLCUC = 0x4 ONLCR = 0x2 + OTPGETREGIONCOUNT = 0x80044d0e + OTPGETREGIONINFO = 0x800c4d0f + OTPLOCK = 0x400c4d10 + OTPSELECT = 0x40044d0d O_APPEND = 0x400 O_ASYNC = 0x2000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go index 7cc98f09c..a4da67edb 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go @@ -60,6 +60,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x81484d11 + ECCGETSTATS = 0x80104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -121,6 +123,19 @@ const ( MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MCL_ONFAULT = 0x4 + MEMERASE = 0x40084d02 + MEMERASE64 = 0x40104d14 + MEMGETBADBLOCK = 0x40084d0b + MEMGETINFO = 0x80204d01 + MEMGETOOBSEL = 0x80c84d0a + MEMGETREGIONCOUNT = 0x80044d07 + MEMISLOCKED = 0x80084d17 + MEMLOCK = 0x40084d05 + MEMREADOOB = 0xc0104d04 + MEMSETBADBLOCK = 0x40084d0c + MEMUNLOCK = 0x40084d06 + MEMWRITEOOB = 0xc0104d03 + MTDFILEMODE = 0x4d13 NFDBITS = 0x40 NLDLY = 0x100 NOFLSH = 0x80 @@ -130,6 +145,10 @@ const ( NS_GET_USERNS = 0xb701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x40044d0e + OTPGETREGIONINFO = 0x400c4d0f + OTPLOCK = 0x800c4d10 + OTPSELECT = 0x80044d0d O_APPEND = 0x400 O_ASYNC = 0x2000 O_CLOEXEC = 0x80000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go b/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go index a508392d2..a7028e0ef 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go @@ -60,6 +60,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x81484d11 + ECCGETSTATS = 0x80104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -121,6 +123,19 @@ const ( MCL_CURRENT = 0x1 MCL_FUTURE = 0x2 MCL_ONFAULT = 0x4 + MEMERASE = 0x40084d02 + MEMERASE64 = 0x40104d14 + MEMGETBADBLOCK = 0x40084d0b + MEMGETINFO = 0x80204d01 + MEMGETOOBSEL = 0x80c84d0a + MEMGETREGIONCOUNT = 0x80044d07 + MEMISLOCKED = 0x80084d17 + MEMLOCK = 0x40084d05 + MEMREADOOB = 0xc0104d04 + MEMSETBADBLOCK = 0x40084d0c + MEMUNLOCK = 0x40084d06 + MEMWRITEOOB = 0xc0104d03 + MTDFILEMODE = 0x4d13 NFDBITS = 0x40 NLDLY = 0x100 NOFLSH = 0x80 @@ -130,6 +145,10 @@ const ( NS_GET_USERNS = 0xb701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x40044d0e + OTPGETREGIONINFO = 0x400c4d0f + OTPLOCK = 0x800c4d10 + OTPSELECT = 0x80044d0d O_APPEND = 0x400 O_ASYNC = 0x2000 O_CLOEXEC = 0x80000 @@ -212,6 +231,8 @@ const ( PTRACE_POKE_SYSTEM_CALL = 0x5008 PTRACE_PROT = 0x15 PTRACE_SINGLEBLOCK = 0xc + PTRACE_SYSEMU = 0x1f + PTRACE_SYSEMU_SINGLESTEP = 0x20 PTRACE_TE_ABORT_RAND = 0x5011 PT_ACR0 = 0x90 PT_ACR1 = 0x94 diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go index d5e2dc94f..ed3b3286c 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go +++ b/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go @@ -63,6 +63,8 @@ const ( CS8 = 0x30 CSIZE = 0x30 CSTOPB = 0x40 + ECCGETLAYOUT = 0x41484d11 + ECCGETSTATS = 0x40104d12 ECHOCTL = 0x200 ECHOE = 0x10 ECHOK = 0x20 @@ -126,6 +128,19 @@ const ( MCL_CURRENT = 0x2000 MCL_FUTURE = 0x4000 MCL_ONFAULT = 0x8000 + MEMERASE = 0x80084d02 + MEMERASE64 = 0x80104d14 + MEMGETBADBLOCK = 0x80084d0b + MEMGETINFO = 0x40204d01 + MEMGETOOBSEL = 0x40c84d0a + MEMGETREGIONCOUNT = 0x40044d07 + MEMISLOCKED = 0x40084d17 + MEMLOCK = 0x80084d05 + MEMREADOOB = 0xc0104d04 + MEMSETBADBLOCK = 0x80084d0c + MEMUNLOCK = 0x80084d06 + MEMWRITEOOB = 0xc0104d03 + MTDFILEMODE = 0x20004d13 NFDBITS = 0x40 NLDLY = 0x100 NOFLSH = 0x80 @@ -135,6 +150,10 @@ const ( NS_GET_USERNS = 0x2000b701 OLCUC = 0x2 ONLCR = 0x4 + OTPGETREGIONCOUNT = 0x80044d0e + OTPGETREGIONINFO = 0x800c4d0f + OTPLOCK = 0x400c4d10 + OTPSELECT = 0x40044d0d O_APPEND = 0x8 O_ASYNC = 0x40 O_CLOEXEC = 0x400000 diff --git a/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go b/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go index 4e87b4beb..fc7d0506f 100644 --- a/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go +++ b/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go @@ -67,24 +67,43 @@ const ( IPPORT_RESERVED = 1024 IPPORT_USERRESERVED = 5000 IPPROTO_AH = 51 + SOL_AH = 51 IPPROTO_DSTOPTS = 60 + SOL_DSTOPTS = 60 IPPROTO_EGP = 8 + SOL_EGP = 8 IPPROTO_ESP = 50 + SOL_ESP = 50 IPPROTO_FRAGMENT = 44 + SOL_FRAGMENT = 44 IPPROTO_GGP = 2 + SOL_GGP = 2 IPPROTO_HOPOPTS = 0 + SOL_HOPOPTS = 0 IPPROTO_ICMP = 1 + SOL_ICMP = 1 IPPROTO_ICMPV6 = 58 + SOL_ICMPV6 = 58 IPPROTO_IDP = 22 + SOL_IDP = 22 IPPROTO_IP = 0 + SOL_IP = 0 IPPROTO_IPV6 = 41 + SOL_IPV6 = 41 IPPROTO_MAX = 256 + SOL_MAX = 256 IPPROTO_NONE = 59 + SOL_NONE = 59 IPPROTO_PUP = 12 + SOL_PUP = 12 IPPROTO_RAW = 255 + SOL_RAW = 255 IPPROTO_ROUTING = 43 + SOL_ROUTING = 43 IPPROTO_TCP = 6 + SOL_TCP = 6 IPPROTO_UDP = 17 + SOL_UDP = 17 IPV6_ADDR_PREFERENCES = 32 IPV6_CHECKSUM = 19 IPV6_DONTFRAG = 29 @@ -186,6 +205,7 @@ const ( MTM_SYNCHONLY = 0x00000200 MTM_REMOUNT = 0x00000100 MTM_NOSECURITY = 0x00000080 + NFDBITS = 0x20 O_ACCMODE = 0x03 O_APPEND = 0x08 O_ASYNCSIG = 0x0200 @@ -359,6 +379,8 @@ const ( S_IFMST = 0x00FF0000 TCP_KEEPALIVE = 0x8 TCP_NODELAY = 0x1 + TCP_INFO = 0xb + TCP_USER_TIMEOUT = 0x1 TIOCGWINSZ = 0x4008a368 TIOCSWINSZ = 0x8008a367 TIOCSBRK = 0x2000a77b diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go deleted file mode 100644 index 48a62e390..000000000 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go +++ /dev/null @@ -1,40 +0,0 @@ -// go run mksyscall.go -l32 -tags darwin,386,go1.13 syscall_darwin.1_13.go -// Code generated by the command above; see README.md. DO NOT EDIT. - -//go:build darwin && 386 && go1.13 -// +build darwin,386,go1.13 - -package unix - -import ( - "syscall" - "unsafe" -) - -var _ syscall.Errno - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func closedir(dir uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_closedir_trampoline() - -//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) { - r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) - res = Errno(r0) - return -} - -func libc_readdir_r_trampoline() - -//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib" diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s deleted file mode 100644 index 00da1ebfc..000000000 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s +++ /dev/null @@ -1,12 +0,0 @@ -// go run mkasm_darwin.go 386 -// Code generated by the command above; DO NOT EDIT. - -// +build go1.13 - -#include "textflag.h" -TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fdopendir(SB) -TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_closedir(SB) -TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 - JMP libc_readdir_r(SB) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go deleted file mode 100644 index a266636af..000000000 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go +++ /dev/null @@ -1,2431 +0,0 @@ -// go run mksyscall.go -l32 -tags darwin,386,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_386.go -// Code generated by the command above; see README.md. DO NOT EDIT. - -//go:build darwin && 386 && go1.12 -// +build darwin,386,go1.12 - -package unix - -import ( - "syscall" - "unsafe" -) - -var _ syscall.Errno - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getgroups(ngid int, gid *_Gid_t) (n int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getgroups_trampoline() - -//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func setgroups(ngid int, gid *_Gid_t) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setgroups_trampoline() - -//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) - wpid = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_wait4_trampoline() - -//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_accept_trampoline() - -//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_bind_trampoline() - -//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_connect_trampoline() - -//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func socket(domain int, typ int, proto int) (fd int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_socket_trampoline() - -//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getsockopt_trampoline() - -//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setsockopt_trampoline() - -//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getpeername_trampoline() - -//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getsockname_trampoline() - -//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Shutdown(s int, how int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_shutdown_trampoline() - -//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { - _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_socketpair_trampoline() - -//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_recvfrom_trampoline() - -//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { - var _p0 unsafe.Pointer - if len(buf) > 0 { - _p0 = unsafe.Pointer(&buf[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_sendto_trampoline() - -//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_recvmsg_trampoline() - -//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_sendmsg_trampoline() - -//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_kevent_trampoline() - -//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func utimes(path string, timeval *[2]Timeval) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_utimes_trampoline() - -//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func futimes(fd int, timeval *[2]Timeval) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_futimes_trampoline() - -//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_poll_trampoline() - -//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Madvise(b []byte, behav int) (err error) { - var _p0 unsafe.Pointer - if len(b) > 0 { - _p0 = unsafe.Pointer(&b[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_madvise_trampoline() - -//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mlock(b []byte) (err error) { - var _p0 unsafe.Pointer - if len(b) > 0 { - _p0 = unsafe.Pointer(&b[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mlock_trampoline() - -//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mlockall(flags int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mlockall_trampoline() - -//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mprotect(b []byte, prot int) (err error) { - var _p0 unsafe.Pointer - if len(b) > 0 { - _p0 = unsafe.Pointer(&b[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mprotect_trampoline() - -//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Msync(b []byte, flags int) (err error) { - var _p0 unsafe.Pointer - if len(b) > 0 { - _p0 = unsafe.Pointer(&b[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_msync_trampoline() - -//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Munlock(b []byte) (err error) { - var _p0 unsafe.Pointer - if len(b) > 0 { - _p0 = unsafe.Pointer(&b[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_munlock_trampoline() - -//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Munlockall() (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_munlockall_trampoline() - -//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func pipe(p *[2]int32) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_pipe_trampoline() - -//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(attr) - if err != nil { - return - } - r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getxattr_trampoline() - -//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(attr) - if err != nil { - return - } - r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fgetxattr_trampoline() - -//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(attr) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setxattr_trampoline() - -//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(attr) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fsetxattr_trampoline() - -//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func removexattr(path string, attr string, options int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(attr) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_removexattr_trampoline() - -//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func fremovexattr(fd int, attr string, options int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(attr) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fremovexattr_trampoline() - -//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func listxattr(path string, dest *byte, size int, options int) (sz int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_listxattr_trampoline() - -//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_flistxattr_trampoline() - -//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setattrlist_trampoline() - -//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func fcntl(fd int, cmd int, arg int) (val int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg)) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fcntl_trampoline() - -//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func kill(pid int, signum int, posix int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_kill_trampoline() - -//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func ioctl(fd int, req uint, arg uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_ioctl_trampoline() - -//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { - var _p0 unsafe.Pointer - if len(mib) > 0 { - _p0 = unsafe.Pointer(&mib[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_sysctl_trampoline() - -//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { - _, _, e1 := syscall_syscall9(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_sendfile_trampoline() - -//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Access(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_access_trampoline() - -//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_adjtime_trampoline() - -//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Chdir(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_chdir_trampoline() - -//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Chflags(path string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_chflags_trampoline() - -//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Chmod(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_chmod_trampoline() - -//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Chown(path string, uid int, gid int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_chown_trampoline() - -//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Chroot(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_chroot_trampoline() - -//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func ClockGettime(clockid int32, time *Timespec) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_clock_gettime_trampoline() - -//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Close(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_close_trampoline() - -//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Clonefile(src string, dst string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(src) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(dst) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_clonefile_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_clonefile_trampoline() - -//go:cgo_import_dynamic libc_clonefile clonefile "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Clonefileat(srcDirfd int, src string, dstDirfd int, dst string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(src) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(dst) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_clonefileat_trampoline), uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_clonefileat_trampoline() - -//go:cgo_import_dynamic libc_clonefileat clonefileat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Dup(fd int) (nfd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0) - nfd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_dup_trampoline() - -//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Dup2(from int, to int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_dup2_trampoline() - -//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Exchangedata(path1 string, path2 string, options int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path1) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(path2) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_exchangedata_trampoline() - -//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Exit(code int) { - syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0) - return -} - -func libc_exit_trampoline() - -//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_faccessat_trampoline() - -//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchdir(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchdir_trampoline() - -//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchflags(fd int, flags int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchflags_trampoline() - -//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchmod(fd int, mode uint32) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchmod_trampoline() - -//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchmodat_trampoline() - -//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchown(fd int, uid int, gid int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchown_trampoline() - -//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchownat_trampoline() - -//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fclonefileat(srcDirfd int, dstDirfd int, dst string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(dst) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_fclonefileat_trampoline), uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fclonefileat_trampoline() - -//go:cgo_import_dynamic libc_fclonefileat fclonefileat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Flock(fd int, how int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_flock_trampoline() - -//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fpathconf(fd int, name int) (val int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fpathconf_trampoline() - -//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fsync(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fsync_trampoline() - -//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Ftruncate(fd int, length int64) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), uintptr(length>>32)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_ftruncate_trampoline() - -//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getcwd(buf []byte) (n int, err error) { - var _p0 unsafe.Pointer - if len(buf) > 0 { - _p0 = unsafe.Pointer(&buf[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall(funcPC(libc_getcwd_trampoline), uintptr(_p0), uintptr(len(buf)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getcwd_trampoline() - -//go:cgo_import_dynamic libc_getcwd getcwd "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getdtablesize() (size int) { - r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0) - size = int(r0) - return -} - -func libc_getdtablesize_trampoline() - -//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getegid() (egid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0) - egid = int(r0) - return -} - -func libc_getegid_trampoline() - -//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Geteuid() (uid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0) - uid = int(r0) - return -} - -func libc_geteuid_trampoline() - -//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getgid() (gid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0) - gid = int(r0) - return -} - -func libc_getgid_trampoline() - -//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getpgid(pid int) (pgid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0) - pgid = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getpgid_trampoline() - -//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getpgrp() (pgrp int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0) - pgrp = int(r0) - return -} - -func libc_getpgrp_trampoline() - -//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getpid() (pid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0) - pid = int(r0) - return -} - -func libc_getpid_trampoline() - -//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getppid() (ppid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0) - ppid = int(r0) - return -} - -func libc_getppid_trampoline() - -//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getpriority(which int, who int) (prio int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0) - prio = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getpriority_trampoline() - -//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getrlimit(which int, lim *Rlimit) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getrlimit_trampoline() - -//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getrusage(who int, rusage *Rusage) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getrusage_trampoline() - -//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getsid(pid int) (sid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0) - sid = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getsid_trampoline() - -//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Gettimeofday(tp *Timeval) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_gettimeofday_trampoline() - -//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getuid() (uid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0) - uid = int(r0) - return -} - -func libc_getuid_trampoline() - -//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Issetugid() (tainted bool) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0) - tainted = bool(r0 != 0) - return -} - -func libc_issetugid_trampoline() - -//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Kqueue() (fd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_kqueue_trampoline() - -//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Lchown(path string, uid int, gid int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_lchown_trampoline() - -//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Link(path string, link string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(link) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_link_trampoline() - -//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(link) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_linkat_trampoline() - -//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Listen(s int, backlog int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_listen_trampoline() - -//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mkdir(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mkdir_trampoline() - -//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mkdirat(dirfd int, path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mkdirat_trampoline() - -//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mkfifo(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mkfifo_trampoline() - -//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mknod(path string, mode uint32, dev int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mknod_trampoline() - -//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Open(path string, mode int, perm uint32) (fd int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_open_trampoline() - -//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_openat_trampoline() - -//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Pathconf(path string, name int) (val int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_pathconf_trampoline() - -//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_pread_trampoline() - -//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_pwrite_trampoline() - -//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func read(fd int, p []byte) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_read_trampoline() - -//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Readlink(path string, buf []byte) (n int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 unsafe.Pointer - if len(buf) > 0 { - _p1 = unsafe.Pointer(&buf[0]) - } else { - _p1 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_readlink_trampoline() - -//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 unsafe.Pointer - if len(buf) > 0 { - _p1 = unsafe.Pointer(&buf[0]) - } else { - _p1 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_readlinkat_trampoline() - -//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Rename(from string, to string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(from) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(to) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_rename_trampoline() - -//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Renameat(fromfd int, from string, tofd int, to string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(from) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(to) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_renameat_trampoline() - -//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Revoke(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_revoke_trampoline() - -//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Rmdir(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_rmdir_trampoline() - -//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - r0, r1, e1 := syscall_syscall6(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0) - newoffset = int64(int64(r1)<<32 | int64(r0)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_lseek_trampoline() - -//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_select_trampoline() - -//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setegid(egid int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setegid_trampoline() - -//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Seteuid(euid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_seteuid_trampoline() - -//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setgid(gid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setgid_trampoline() - -//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setlogin(name string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(name) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setlogin_trampoline() - -//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setpgid(pid int, pgid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setpgid_trampoline() - -//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setpriority(which int, who int, prio int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setpriority_trampoline() - -//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setprivexec(flag int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setprivexec_trampoline() - -//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setregid(rgid int, egid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setregid_trampoline() - -//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setreuid(ruid int, euid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setreuid_trampoline() - -//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setrlimit(which int, lim *Rlimit) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setrlimit_trampoline() - -//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setsid() (pid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0) - pid = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setsid_trampoline() - -//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Settimeofday(tp *Timeval) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_settimeofday_trampoline() - -//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setuid(uid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setuid_trampoline() - -//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Symlink(path string, link string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(link) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_symlink_trampoline() - -//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(oldpath) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(newpath) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_symlinkat_trampoline() - -//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Sync() (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_sync_trampoline() - -//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Truncate(path string, length int64) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_truncate_trampoline() - -//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Umask(newmask int) (oldmask int) { - r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0) - oldmask = int(r0) - return -} - -func libc_umask_trampoline() - -//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Undelete(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_undelete_trampoline() - -//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Unlink(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_unlink_trampoline() - -//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Unlinkat(dirfd int, path string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_unlinkat_trampoline() - -//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Unmount(path string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_unmount_trampoline() - -//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func write(fd int, p []byte) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_write_trampoline() - -//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { - r0, _, e1 := syscall_syscall9(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0) - ret = uintptr(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mmap_trampoline() - -//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func munmap(addr uintptr, length uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_munmap_trampoline() - -//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func readlen(fd int, buf *byte, nbuf int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func writelen(fd int, buf *byte, nbuf int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fstat(fd int, stat *Stat_t) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fstat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fstat64_trampoline() - -//go:cgo_import_dynamic libc_fstat64 fstat64 "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_fstatat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fstatat64_trampoline() - -//go:cgo_import_dynamic libc_fstatat64 fstatat64 "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fstatfs(fd int, stat *Statfs_t) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fstatfs64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fstatfs64_trampoline() - -//go:cgo_import_dynamic libc_fstatfs64 fstatfs64 "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat64_trampoline), uintptr(buf), uintptr(size), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getfsstat64_trampoline() - -//go:cgo_import_dynamic libc_getfsstat64 getfsstat64 "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Lstat(path string, stat *Stat_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_lstat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_lstat64_trampoline() - -//go:cgo_import_dynamic libc_lstat64 lstat64 "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func ptrace1(request int, pid int, addr uintptr, data uintptr) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_ptrace_trampoline() - -//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Stat(path string, stat *Stat_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_stat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_stat64_trampoline() - -//go:cgo_import_dynamic libc_stat64 stat64 "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Statfs(path string, stat *Statfs_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_statfs64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_statfs64_trampoline() - -//go:cgo_import_dynamic libc_statfs64 statfs64 "/usr/lib/libSystem.B.dylib" diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s deleted file mode 100644 index 1c53979a1..000000000 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s +++ /dev/null @@ -1,290 +0,0 @@ -// go run mkasm_darwin.go 386 -// Code generated by the command above; DO NOT EDIT. - -// +build go1.12 - -#include "textflag.h" -TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getgroups(SB) -TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setgroups(SB) -TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0 - JMP libc_wait4(SB) -TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0 - JMP libc_accept(SB) -TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0 - JMP libc_bind(SB) -TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0 - JMP libc_connect(SB) -TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0 - JMP libc_socket(SB) -TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getsockopt(SB) -TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setsockopt(SB) -TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getpeername(SB) -TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getsockname(SB) -TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0 - JMP libc_shutdown(SB) -TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0 - JMP libc_socketpair(SB) -TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0 - JMP libc_recvfrom(SB) -TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0 - JMP libc_sendto(SB) -TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0 - JMP libc_recvmsg(SB) -TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0 - JMP libc_sendmsg(SB) -TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0 - JMP libc_kevent(SB) -TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0 - JMP libc_utimes(SB) -TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0 - JMP libc_futimes(SB) -TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0 - JMP libc_poll(SB) -TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0 - JMP libc_madvise(SB) -TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mlock(SB) -TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mlockall(SB) -TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mprotect(SB) -TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0 - JMP libc_msync(SB) -TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0 - JMP libc_munlock(SB) -TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0 - JMP libc_munlockall(SB) -TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0 - JMP libc_pipe(SB) -TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getxattr(SB) -TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fgetxattr(SB) -TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setxattr(SB) -TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fsetxattr(SB) -TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_removexattr(SB) -TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fremovexattr(SB) -TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_listxattr(SB) -TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_flistxattr(SB) -TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setattrlist(SB) -TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fcntl(SB) -TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0 - JMP libc_kill(SB) -TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0 - JMP libc_ioctl(SB) -TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0 - JMP libc_sysctl(SB) -TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0 - JMP libc_sendfile(SB) -TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0 - JMP libc_access(SB) -TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0 - JMP libc_adjtime(SB) -TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_chdir(SB) -TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0 - JMP libc_chflags(SB) -TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0 - JMP libc_chmod(SB) -TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0 - JMP libc_chown(SB) -TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0 - JMP libc_chroot(SB) -TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0 - JMP libc_clock_gettime(SB) -TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0 - JMP libc_close(SB) -TEXT ·libc_clonefile_trampoline(SB),NOSPLIT,$0-0 - JMP libc_clonefile(SB) -TEXT ·libc_clonefileat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_clonefileat(SB) -TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0 - JMP libc_dup(SB) -TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0 - JMP libc_dup2(SB) -TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0 - JMP libc_exchangedata(SB) -TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0 - JMP libc_exit(SB) -TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_faccessat(SB) -TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchdir(SB) -TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchflags(SB) -TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchmod(SB) -TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchmodat(SB) -TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchown(SB) -TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchownat(SB) -TEXT ·libc_fclonefileat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fclonefileat(SB) -TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0 - JMP libc_flock(SB) -TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fpathconf(SB) -TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fsync(SB) -TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0 - JMP libc_ftruncate(SB) -TEXT ·libc_getcwd_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getcwd(SB) -TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getdtablesize(SB) -TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getegid(SB) -TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_geteuid(SB) -TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getgid(SB) -TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getpgid(SB) -TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getpgrp(SB) -TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getpid(SB) -TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getppid(SB) -TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getpriority(SB) -TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getrlimit(SB) -TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getrusage(SB) -TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getsid(SB) -TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0 - JMP libc_gettimeofday(SB) -TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getuid(SB) -TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_issetugid(SB) -TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0 - JMP libc_kqueue(SB) -TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0 - JMP libc_lchown(SB) -TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0 - JMP libc_link(SB) -TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_linkat(SB) -TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0 - JMP libc_listen(SB) -TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mkdir(SB) -TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mkdirat(SB) -TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mkfifo(SB) -TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mknod(SB) -TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0 - JMP libc_open(SB) -TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_openat(SB) -TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0 - JMP libc_pathconf(SB) -TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0 - JMP libc_pread(SB) -TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0 - JMP libc_pwrite(SB) -TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0 - JMP libc_read(SB) -TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0 - JMP libc_readlink(SB) -TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_readlinkat(SB) -TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0 - JMP libc_rename(SB) -TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_renameat(SB) -TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0 - JMP libc_revoke(SB) -TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_rmdir(SB) -TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0 - JMP libc_lseek(SB) -TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0 - JMP libc_select(SB) -TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setegid(SB) -TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_seteuid(SB) -TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setgid(SB) -TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setlogin(SB) -TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setpgid(SB) -TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setpriority(SB) -TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setprivexec(SB) -TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setregid(SB) -TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setreuid(SB) -TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setrlimit(SB) -TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setsid(SB) -TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0 - JMP libc_settimeofday(SB) -TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setuid(SB) -TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0 - JMP libc_symlink(SB) -TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_symlinkat(SB) -TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0 - JMP libc_sync(SB) -TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0 - JMP libc_truncate(SB) -TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0 - JMP libc_umask(SB) -TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0 - JMP libc_undelete(SB) -TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0 - JMP libc_unlink(SB) -TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_unlinkat(SB) -TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0 - JMP libc_unmount(SB) -TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0 - JMP libc_write(SB) -TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mmap(SB) -TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0 - JMP libc_munmap(SB) -TEXT ·libc_fstat64_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fstat64(SB) -TEXT ·libc_fstatat64_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fstatat64(SB) -TEXT ·libc_fstatfs64_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fstatfs64(SB) -TEXT ·libc_getfsstat64_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getfsstat64(SB) -TEXT ·libc_lstat64_trampoline(SB),NOSPLIT,$0-0 - JMP libc_lstat64(SB) -TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0 - JMP libc_ptrace(SB) -TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0 - JMP libc_stat64(SB) -TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0 - JMP libc_statfs64(SB) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go index e36299ead..a06eb0932 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go @@ -16,25 +16,25 @@ var _ syscall.Errno // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func closedir(dir uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0) + _, _, e1 := syscall_syscall(libc_closedir_trampoline_addr, uintptr(dir), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_closedir_trampoline() +var libc_closedir_trampoline_addr uintptr //go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) { - r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) + r0, _, _ := syscall_syscall(libc_readdir_r_trampoline_addr, uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) res = Errno(r0) return } -func libc_readdir_r_trampoline() +var libc_readdir_r_trampoline_addr uintptr //go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib" diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s index d671e8311..d6c3e25c0 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s @@ -1,12 +1,25 @@ // go run mkasm_darwin.go amd64 // Code generated by the command above; DO NOT EDIT. +//go:build go1.13 // +build go1.13 #include "textflag.h" -TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 + +TEXT libc_fdopendir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fdopendir(SB) -TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fdopendir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fdopendir_trampoline_addr(SB)/8, $libc_fdopendir_trampoline<>(SB) + +TEXT libc_closedir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_closedir(SB) -TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_closedir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_closedir_trampoline_addr(SB)/8, $libc_closedir_trampoline<>(SB) + +TEXT libc_readdir_r_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_readdir_r(SB) + +GLOBL ·libc_readdir_r_trampoline_addr(SB), RODATA, $8 +DATA ·libc_readdir_r_trampoline_addr(SB)/8, $libc_readdir_r_trampoline<>(SB) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go index f41116288..d4efe8d45 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go @@ -16,7 +16,7 @@ var _ syscall.Errno // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func getgroups(ngid int, gid *_Gid_t) (n int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) + r0, _, e1 := syscall_rawSyscall(libc_getgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -24,28 +24,28 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) { return } -func libc_getgroups_trampoline() +var libc_getgroups_trampoline_addr uintptr //go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func setgroups(ngid int, gid *_Gid_t) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) + _, _, e1 := syscall_rawSyscall(libc_setgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setgroups_trampoline() +var libc_setgroups_trampoline_addr uintptr //go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) + r0, _, e1 := syscall_syscall6(libc_wait4_trampoline_addr, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) wpid = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -53,14 +53,14 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err return } -func libc_wait4_trampoline() +var libc_wait4_trampoline_addr uintptr //go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) + r0, _, e1 := syscall_syscall(libc_accept_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) fd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -68,42 +68,42 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { return } -func libc_accept_trampoline() +var libc_accept_trampoline_addr uintptr //go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) + _, _, e1 := syscall_syscall(libc_bind_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_bind_trampoline() +var libc_bind_trampoline_addr uintptr //go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) + _, _, e1 := syscall_syscall(libc_connect_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_connect_trampoline() +var libc_connect_trampoline_addr uintptr //go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func socket(domain int, typ int, proto int) (fd int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto)) + r0, _, e1 := syscall_rawSyscall(libc_socket_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto)) fd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -111,91 +111,91 @@ func socket(domain int, typ int, proto int) (fd int, err error) { return } -func libc_socket_trampoline() +var libc_socket_trampoline_addr uintptr //go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) + _, _, e1 := syscall_syscall6(libc_getsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_getsockopt_trampoline() +var libc_getsockopt_trampoline_addr uintptr //go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) + _, _, e1 := syscall_syscall6(libc_setsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setsockopt_trampoline() +var libc_setsockopt_trampoline_addr uintptr //go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) + _, _, e1 := syscall_rawSyscall(libc_getpeername_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) if e1 != 0 { err = errnoErr(e1) } return } -func libc_getpeername_trampoline() +var libc_getpeername_trampoline_addr uintptr //go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) + _, _, e1 := syscall_rawSyscall(libc_getsockname_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) if e1 != 0 { err = errnoErr(e1) } return } -func libc_getsockname_trampoline() +var libc_getsockname_trampoline_addr uintptr //go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Shutdown(s int, how int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0) + _, _, e1 := syscall_syscall(libc_shutdown_trampoline_addr, uintptr(s), uintptr(how), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_shutdown_trampoline() +var libc_shutdown_trampoline_addr uintptr //go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { - _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) + _, _, e1 := syscall_rawSyscall6(libc_socketpair_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_socketpair_trampoline() +var libc_socketpair_trampoline_addr uintptr //go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib" @@ -208,7 +208,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) + r0, _, e1 := syscall_syscall6(libc_recvfrom_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -216,7 +216,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl return } -func libc_recvfrom_trampoline() +var libc_recvfrom_trampoline_addr uintptr //go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib" @@ -229,21 +229,21 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) ( } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) + _, _, e1 := syscall_syscall6(libc_sendto_trampoline_addr, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_sendto_trampoline() +var libc_sendto_trampoline_addr uintptr //go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) + r0, _, e1 := syscall_syscall(libc_recvmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -251,14 +251,14 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { return } -func libc_recvmsg_trampoline() +var libc_recvmsg_trampoline_addr uintptr //go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) + r0, _, e1 := syscall_syscall(libc_sendmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -266,14 +266,14 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { return } -func libc_sendmsg_trampoline() +var libc_sendmsg_trampoline_addr uintptr //go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) + r0, _, e1 := syscall_syscall6(libc_kevent_trampoline_addr, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -281,7 +281,7 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne return } -func libc_kevent_trampoline() +var libc_kevent_trampoline_addr uintptr //go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib" @@ -293,35 +293,35 @@ func utimes(path string, timeval *[2]Timeval) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) + _, _, e1 := syscall_syscall(libc_utimes_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_utimes_trampoline() +var libc_utimes_trampoline_addr uintptr //go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func futimes(fd int, timeval *[2]Timeval) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) + _, _, e1 := syscall_syscall(libc_futimes_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_futimes_trampoline() +var libc_futimes_trampoline_addr uintptr //go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) + r0, _, e1 := syscall_syscall(libc_poll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -329,7 +329,7 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { return } -func libc_poll_trampoline() +var libc_poll_trampoline_addr uintptr //go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib" @@ -342,14 +342,14 @@ func Madvise(b []byte, behav int) (err error) { } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav)) + _, _, e1 := syscall_syscall(libc_madvise_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(behav)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_madvise_trampoline() +var libc_madvise_trampoline_addr uintptr //go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib" @@ -362,28 +362,28 @@ func Mlock(b []byte) (err error) { } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) + _, _, e1 := syscall_syscall(libc_mlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mlock_trampoline() +var libc_mlock_trampoline_addr uintptr //go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Mlockall(flags int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0) + _, _, e1 := syscall_syscall(libc_mlockall_trampoline_addr, uintptr(flags), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mlockall_trampoline() +var libc_mlockall_trampoline_addr uintptr //go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib" @@ -396,14 +396,14 @@ func Mprotect(b []byte, prot int) (err error) { } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot)) + _, _, e1 := syscall_syscall(libc_mprotect_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(prot)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mprotect_trampoline() +var libc_mprotect_trampoline_addr uintptr //go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib" @@ -416,14 +416,14 @@ func Msync(b []byte, flags int) (err error) { } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags)) + _, _, e1 := syscall_syscall(libc_msync_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(flags)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_msync_trampoline() +var libc_msync_trampoline_addr uintptr //go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib" @@ -436,42 +436,42 @@ func Munlock(b []byte) (err error) { } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) + _, _, e1 := syscall_syscall(libc_munlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_munlock_trampoline() +var libc_munlock_trampoline_addr uintptr //go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Munlockall() (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0) + _, _, e1 := syscall_syscall(libc_munlockall_trampoline_addr, 0, 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_munlockall_trampoline() +var libc_munlockall_trampoline_addr uintptr //go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func pipe(p *[2]int32) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_pipe_trampoline_addr, uintptr(unsafe.Pointer(p)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_pipe_trampoline() +var libc_pipe_trampoline_addr uintptr //go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib" @@ -488,7 +488,7 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o if err != nil { return } - r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) + r0, _, e1 := syscall_syscall6(libc_getxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) sz = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -496,7 +496,7 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o return } -func libc_getxattr_trampoline() +var libc_getxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib" @@ -508,7 +508,7 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio if err != nil { return } - r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) + r0, _, e1 := syscall_syscall6(libc_fgetxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) sz = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -516,7 +516,7 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio return } -func libc_fgetxattr_trampoline() +var libc_fgetxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib" @@ -533,14 +533,14 @@ func setxattr(path string, attr string, data *byte, size int, position uint32, o if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) + _, _, e1 := syscall_syscall6(libc_setxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setxattr_trampoline() +var libc_setxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib" @@ -552,14 +552,14 @@ func fsetxattr(fd int, attr string, data *byte, size int, position uint32, optio if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) + _, _, e1 := syscall_syscall6(libc_fsetxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fsetxattr_trampoline() +var libc_fsetxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib" @@ -576,14 +576,14 @@ func removexattr(path string, attr string, options int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) + _, _, e1 := syscall_syscall(libc_removexattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_removexattr_trampoline() +var libc_removexattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib" @@ -595,14 +595,14 @@ func fremovexattr(fd int, attr string, options int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) + _, _, e1 := syscall_syscall(libc_fremovexattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fremovexattr_trampoline() +var libc_fremovexattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib" @@ -614,7 +614,7 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro if err != nil { return } - r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) + r0, _, e1 := syscall_syscall6(libc_listxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) sz = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -622,14 +622,14 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro return } -func libc_listxattr_trampoline() +var libc_listxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) + r0, _, e1 := syscall_syscall6(libc_flistxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) sz = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -637,28 +637,28 @@ func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { return } -func libc_flistxattr_trampoline() +var libc_flistxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) + _, _, e1 := syscall_syscall6(libc_setattrlist_trampoline_addr, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setattrlist_trampoline() +var libc_setattrlist_trampoline_addr uintptr //go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func fcntl(fd int, cmd int, arg int) (val int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg)) + r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg)) val = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -666,35 +666,35 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) { return } -func libc_fcntl_trampoline() +var libc_fcntl_trampoline_addr uintptr //go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func kill(pid int, signum int, posix int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix)) + _, _, e1 := syscall_syscall(libc_kill_trampoline_addr, uintptr(pid), uintptr(signum), uintptr(posix)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_kill_trampoline() +var libc_kill_trampoline_addr uintptr //go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func ioctl(fd int, req uint, arg uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg)) + _, _, e1 := syscall_syscall(libc_ioctl_trampoline_addr, uintptr(fd), uintptr(req), uintptr(arg)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_ioctl_trampoline() +var libc_ioctl_trampoline_addr uintptr //go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib" @@ -707,28 +707,28 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) + _, _, e1 := syscall_syscall6(libc_sysctl_trampoline_addr, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_sysctl_trampoline() +var libc_sysctl_trampoline_addr uintptr //go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) + _, _, e1 := syscall_syscall6(libc_sendfile_trampoline_addr, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_sendfile_trampoline() +var libc_sendfile_trampoline_addr uintptr //go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib" @@ -740,28 +740,28 @@ func Access(path string, mode uint32) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) + _, _, e1 := syscall_syscall(libc_access_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_access_trampoline() +var libc_access_trampoline_addr uintptr //go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) + _, _, e1 := syscall_syscall(libc_adjtime_trampoline_addr, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_adjtime_trampoline() +var libc_adjtime_trampoline_addr uintptr //go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib" @@ -773,14 +773,14 @@ func Chdir(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_chdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_chdir_trampoline() +var libc_chdir_trampoline_addr uintptr //go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib" @@ -792,14 +792,14 @@ func Chflags(path string, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) + _, _, e1 := syscall_syscall(libc_chflags_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_chflags_trampoline() +var libc_chflags_trampoline_addr uintptr //go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib" @@ -811,14 +811,14 @@ func Chmod(path string, mode uint32) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) + _, _, e1 := syscall_syscall(libc_chmod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_chmod_trampoline() +var libc_chmod_trampoline_addr uintptr //go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib" @@ -830,14 +830,14 @@ func Chown(path string, uid int, gid int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) + _, _, e1 := syscall_syscall(libc_chown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_chown_trampoline() +var libc_chown_trampoline_addr uintptr //go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib" @@ -849,42 +849,42 @@ func Chroot(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_chroot_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_chroot_trampoline() +var libc_chroot_trampoline_addr uintptr //go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func ClockGettime(clockid int32, time *Timespec) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) + _, _, e1 := syscall_syscall(libc_clock_gettime_trampoline_addr, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_clock_gettime_trampoline() +var libc_clock_gettime_trampoline_addr uintptr //go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Close(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0) + _, _, e1 := syscall_syscall(libc_close_trampoline_addr, uintptr(fd), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_close_trampoline() +var libc_close_trampoline_addr uintptr //go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib" @@ -901,14 +901,14 @@ func Clonefile(src string, dst string, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_clonefile_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags)) + _, _, e1 := syscall_syscall(libc_clonefile_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_clonefile_trampoline() +var libc_clonefile_trampoline_addr uintptr //go:cgo_import_dynamic libc_clonefile clonefile "/usr/lib/libSystem.B.dylib" @@ -925,21 +925,21 @@ func Clonefileat(srcDirfd int, src string, dstDirfd int, dst string, flags int) if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_clonefileat_trampoline), uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) + _, _, e1 := syscall_syscall6(libc_clonefileat_trampoline_addr, uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_clonefileat_trampoline() +var libc_clonefileat_trampoline_addr uintptr //go:cgo_import_dynamic libc_clonefileat clonefileat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Dup(fd int) (nfd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0) + r0, _, e1 := syscall_syscall(libc_dup_trampoline_addr, uintptr(fd), 0, 0) nfd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -947,21 +947,21 @@ func Dup(fd int) (nfd int, err error) { return } -func libc_dup_trampoline() +var libc_dup_trampoline_addr uintptr //go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Dup2(from int, to int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0) + _, _, e1 := syscall_syscall(libc_dup2_trampoline_addr, uintptr(from), uintptr(to), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_dup2_trampoline() +var libc_dup2_trampoline_addr uintptr //go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib" @@ -978,25 +978,25 @@ func Exchangedata(path1 string, path2 string, options int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) + _, _, e1 := syscall_syscall(libc_exchangedata_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_exchangedata_trampoline() +var libc_exchangedata_trampoline_addr uintptr //go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Exit(code int) { - syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0) + syscall_syscall(libc_exit_trampoline_addr, uintptr(code), 0, 0) return } -func libc_exit_trampoline() +var libc_exit_trampoline_addr uintptr //go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib" @@ -1008,56 +1008,56 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) + _, _, e1 := syscall_syscall6(libc_faccessat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_faccessat_trampoline() +var libc_faccessat_trampoline_addr uintptr //go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fchdir(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0) + _, _, e1 := syscall_syscall(libc_fchdir_trampoline_addr, uintptr(fd), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchdir_trampoline() +var libc_fchdir_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fchflags(fd int, flags int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0) + _, _, e1 := syscall_syscall(libc_fchflags_trampoline_addr, uintptr(fd), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchflags_trampoline() +var libc_fchflags_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fchmod(fd int, mode uint32) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0) + _, _, e1 := syscall_syscall(libc_fchmod_trampoline_addr, uintptr(fd), uintptr(mode), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchmod_trampoline() +var libc_fchmod_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib" @@ -1069,28 +1069,28 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) + _, _, e1 := syscall_syscall6(libc_fchmodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchmodat_trampoline() +var libc_fchmodat_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fchown(fd int, uid int, gid int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid)) + _, _, e1 := syscall_syscall(libc_fchown_trampoline_addr, uintptr(fd), uintptr(uid), uintptr(gid)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchown_trampoline() +var libc_fchown_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib" @@ -1102,14 +1102,14 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) + _, _, e1 := syscall_syscall6(libc_fchownat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchownat_trampoline() +var libc_fchownat_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib" @@ -1121,35 +1121,35 @@ func Fclonefileat(srcDirfd int, dstDirfd int, dst string, flags int) (err error) if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_fclonefileat_trampoline), uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0) + _, _, e1 := syscall_syscall6(libc_fclonefileat_trampoline_addr, uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fclonefileat_trampoline() +var libc_fclonefileat_trampoline_addr uintptr //go:cgo_import_dynamic libc_fclonefileat fclonefileat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Flock(fd int, how int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0) + _, _, e1 := syscall_syscall(libc_flock_trampoline_addr, uintptr(fd), uintptr(how), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_flock_trampoline() +var libc_flock_trampoline_addr uintptr //go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fpathconf(fd int, name int) (val int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0) + r0, _, e1 := syscall_syscall(libc_fpathconf_trampoline_addr, uintptr(fd), uintptr(name), 0) val = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1157,35 +1157,35 @@ func Fpathconf(fd int, name int) (val int, err error) { return } -func libc_fpathconf_trampoline() +var libc_fpathconf_trampoline_addr uintptr //go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fsync(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0) + _, _, e1 := syscall_syscall(libc_fsync_trampoline_addr, uintptr(fd), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fsync_trampoline() +var libc_fsync_trampoline_addr uintptr //go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Ftruncate(fd int, length int64) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), 0) + _, _, e1 := syscall_syscall(libc_ftruncate_trampoline_addr, uintptr(fd), uintptr(length), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_ftruncate_trampoline() +var libc_ftruncate_trampoline_addr uintptr //go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib" @@ -1198,7 +1198,7 @@ func Getcwd(buf []byte) (n int, err error) { } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall(funcPC(libc_getcwd_trampoline), uintptr(_p0), uintptr(len(buf)), 0) + r0, _, e1 := syscall_syscall(libc_getcwd_trampoline_addr, uintptr(_p0), uintptr(len(buf)), 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1206,62 +1206,62 @@ func Getcwd(buf []byte) (n int, err error) { return } -func libc_getcwd_trampoline() +var libc_getcwd_trampoline_addr uintptr //go:cgo_import_dynamic libc_getcwd getcwd "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getdtablesize() (size int) { - r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0) + r0, _, _ := syscall_syscall(libc_getdtablesize_trampoline_addr, 0, 0, 0) size = int(r0) return } -func libc_getdtablesize_trampoline() +var libc_getdtablesize_trampoline_addr uintptr //go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getegid() (egid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getegid_trampoline_addr, 0, 0, 0) egid = int(r0) return } -func libc_getegid_trampoline() +var libc_getegid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Geteuid() (uid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_geteuid_trampoline_addr, 0, 0, 0) uid = int(r0) return } -func libc_geteuid_trampoline() +var libc_geteuid_trampoline_addr uintptr //go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getgid() (gid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getgid_trampoline_addr, 0, 0, 0) gid = int(r0) return } -func libc_getgid_trampoline() +var libc_getgid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getpgid(pid int) (pgid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0) + r0, _, e1 := syscall_rawSyscall(libc_getpgid_trampoline_addr, uintptr(pid), 0, 0) pgid = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1269,50 +1269,50 @@ func Getpgid(pid int) (pgid int, err error) { return } -func libc_getpgid_trampoline() +var libc_getpgid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getpgrp() (pgrp int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getpgrp_trampoline_addr, 0, 0, 0) pgrp = int(r0) return } -func libc_getpgrp_trampoline() +var libc_getpgrp_trampoline_addr uintptr //go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getpid() (pid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getpid_trampoline_addr, 0, 0, 0) pid = int(r0) return } -func libc_getpid_trampoline() +var libc_getpid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getppid() (ppid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getppid_trampoline_addr, 0, 0, 0) ppid = int(r0) return } -func libc_getppid_trampoline() +var libc_getppid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getpriority(which int, who int) (prio int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0) + r0, _, e1 := syscall_syscall(libc_getpriority_trampoline_addr, uintptr(which), uintptr(who), 0) prio = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1320,42 +1320,42 @@ func Getpriority(which int, who int) (prio int, err error) { return } -func libc_getpriority_trampoline() +var libc_getpriority_trampoline_addr uintptr //go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getrlimit(which int, lim *Rlimit) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) + _, _, e1 := syscall_rawSyscall(libc_getrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_getrlimit_trampoline() +var libc_getrlimit_trampoline_addr uintptr //go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getrusage(who int, rusage *Rusage) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) + _, _, e1 := syscall_rawSyscall(libc_getrusage_trampoline_addr, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_getrusage_trampoline() +var libc_getrusage_trampoline_addr uintptr //go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getsid(pid int) (sid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0) + r0, _, e1 := syscall_rawSyscall(libc_getsid_trampoline_addr, uintptr(pid), 0, 0) sid = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1363,52 +1363,52 @@ func Getsid(pid int) (sid int, err error) { return } -func libc_getsid_trampoline() +var libc_getsid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Gettimeofday(tp *Timeval) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_gettimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_gettimeofday_trampoline() +var libc_gettimeofday_trampoline_addr uintptr //go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getuid() (uid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getuid_trampoline_addr, 0, 0, 0) uid = int(r0) return } -func libc_getuid_trampoline() +var libc_getuid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Issetugid() (tainted bool) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_issetugid_trampoline_addr, 0, 0, 0) tainted = bool(r0 != 0) return } -func libc_issetugid_trampoline() +var libc_issetugid_trampoline_addr uintptr //go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Kqueue() (fd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0) + r0, _, e1 := syscall_syscall(libc_kqueue_trampoline_addr, 0, 0, 0) fd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1416,7 +1416,7 @@ func Kqueue() (fd int, err error) { return } -func libc_kqueue_trampoline() +var libc_kqueue_trampoline_addr uintptr //go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib" @@ -1428,14 +1428,14 @@ func Lchown(path string, uid int, gid int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) + _, _, e1 := syscall_syscall(libc_lchown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_lchown_trampoline() +var libc_lchown_trampoline_addr uintptr //go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib" @@ -1452,14 +1452,14 @@ func Link(path string, link string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) + _, _, e1 := syscall_syscall(libc_link_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_link_trampoline() +var libc_link_trampoline_addr uintptr //go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib" @@ -1476,28 +1476,28 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) + _, _, e1 := syscall_syscall6(libc_linkat_trampoline_addr, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_linkat_trampoline() +var libc_linkat_trampoline_addr uintptr //go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Listen(s int, backlog int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0) + _, _, e1 := syscall_syscall(libc_listen_trampoline_addr, uintptr(s), uintptr(backlog), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_listen_trampoline() +var libc_listen_trampoline_addr uintptr //go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib" @@ -1509,14 +1509,14 @@ func Mkdir(path string, mode uint32) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) + _, _, e1 := syscall_syscall(libc_mkdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mkdir_trampoline() +var libc_mkdir_trampoline_addr uintptr //go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib" @@ -1528,14 +1528,14 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) + _, _, e1 := syscall_syscall(libc_mkdirat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mkdirat_trampoline() +var libc_mkdirat_trampoline_addr uintptr //go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib" @@ -1547,14 +1547,14 @@ func Mkfifo(path string, mode uint32) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) + _, _, e1 := syscall_syscall(libc_mkfifo_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mkfifo_trampoline() +var libc_mkfifo_trampoline_addr uintptr //go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib" @@ -1566,14 +1566,14 @@ func Mknod(path string, mode uint32, dev int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) + _, _, e1 := syscall_syscall(libc_mknod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mknod_trampoline() +var libc_mknod_trampoline_addr uintptr //go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib" @@ -1585,7 +1585,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { if err != nil { return } - r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) + r0, _, e1 := syscall_syscall(libc_open_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) fd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1593,7 +1593,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { return } -func libc_open_trampoline() +var libc_open_trampoline_addr uintptr //go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib" @@ -1605,7 +1605,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { if err != nil { return } - r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) + r0, _, e1 := syscall_syscall6(libc_openat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) fd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1613,7 +1613,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { return } -func libc_openat_trampoline() +var libc_openat_trampoline_addr uintptr //go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib" @@ -1625,7 +1625,7 @@ func Pathconf(path string, name int) (val int, err error) { if err != nil { return } - r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) + r0, _, e1 := syscall_syscall(libc_pathconf_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) val = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1633,7 +1633,7 @@ func Pathconf(path string, name int) (val int, err error) { return } -func libc_pathconf_trampoline() +var libc_pathconf_trampoline_addr uintptr //go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib" @@ -1646,7 +1646,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) + r0, _, e1 := syscall_syscall6(libc_pread_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1654,7 +1654,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { return } -func libc_pread_trampoline() +var libc_pread_trampoline_addr uintptr //go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib" @@ -1667,7 +1667,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) { } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) + r0, _, e1 := syscall_syscall6(libc_pwrite_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1675,7 +1675,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) { return } -func libc_pwrite_trampoline() +var libc_pwrite_trampoline_addr uintptr //go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib" @@ -1688,7 +1688,7 @@ func read(fd int, p []byte) (n int, err error) { } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) + r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1696,7 +1696,7 @@ func read(fd int, p []byte) (n int, err error) { return } -func libc_read_trampoline() +var libc_read_trampoline_addr uintptr //go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib" @@ -1714,7 +1714,7 @@ func Readlink(path string, buf []byte) (n int, err error) { } else { _p1 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) + r0, _, e1 := syscall_syscall(libc_readlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1722,7 +1722,7 @@ func Readlink(path string, buf []byte) (n int, err error) { return } -func libc_readlink_trampoline() +var libc_readlink_trampoline_addr uintptr //go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib" @@ -1740,7 +1740,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { } else { _p1 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) + r0, _, e1 := syscall_syscall6(libc_readlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1748,7 +1748,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { return } -func libc_readlinkat_trampoline() +var libc_readlinkat_trampoline_addr uintptr //go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib" @@ -1765,14 +1765,14 @@ func Rename(from string, to string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) + _, _, e1 := syscall_syscall(libc_rename_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_rename_trampoline() +var libc_rename_trampoline_addr uintptr //go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib" @@ -1789,14 +1789,14 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) + _, _, e1 := syscall_syscall6(libc_renameat_trampoline_addr, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_renameat_trampoline() +var libc_renameat_trampoline_addr uintptr //go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib" @@ -1808,14 +1808,14 @@ func Revoke(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_revoke_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_revoke_trampoline() +var libc_revoke_trampoline_addr uintptr //go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib" @@ -1827,21 +1827,21 @@ func Rmdir(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_rmdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_rmdir_trampoline() +var libc_rmdir_trampoline_addr uintptr //go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(whence)) + r0, _, e1 := syscall_syscall(libc_lseek_trampoline_addr, uintptr(fd), uintptr(offset), uintptr(whence)) newoffset = int64(r0) if e1 != 0 { err = errnoErr(e1) @@ -1849,14 +1849,14 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { return } -func libc_lseek_trampoline() +var libc_lseek_trampoline_addr uintptr //go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) + r0, _, e1 := syscall_syscall6(libc_select_trampoline_addr, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1864,49 +1864,49 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err return } -func libc_select_trampoline() +var libc_select_trampoline_addr uintptr //go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setegid(egid int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0) + _, _, e1 := syscall_syscall(libc_setegid_trampoline_addr, uintptr(egid), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setegid_trampoline() +var libc_setegid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Seteuid(euid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_seteuid_trampoline_addr, uintptr(euid), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_seteuid_trampoline() +var libc_seteuid_trampoline_addr uintptr //go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setgid(gid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_setgid_trampoline_addr, uintptr(gid), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setgid_trampoline() +var libc_setgid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib" @@ -1918,105 +1918,105 @@ func Setlogin(name string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_setlogin_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setlogin_trampoline() +var libc_setlogin_trampoline_addr uintptr //go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setpgid(pid int, pgid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0) + _, _, e1 := syscall_rawSyscall(libc_setpgid_trampoline_addr, uintptr(pid), uintptr(pgid), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setpgid_trampoline() +var libc_setpgid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setpriority(which int, who int, prio int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio)) + _, _, e1 := syscall_syscall(libc_setpriority_trampoline_addr, uintptr(which), uintptr(who), uintptr(prio)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setpriority_trampoline() +var libc_setpriority_trampoline_addr uintptr //go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setprivexec(flag int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0) + _, _, e1 := syscall_syscall(libc_setprivexec_trampoline_addr, uintptr(flag), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setprivexec_trampoline() +var libc_setprivexec_trampoline_addr uintptr //go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setregid(rgid int, egid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0) + _, _, e1 := syscall_rawSyscall(libc_setregid_trampoline_addr, uintptr(rgid), uintptr(egid), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setregid_trampoline() +var libc_setregid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setreuid(ruid int, euid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0) + _, _, e1 := syscall_rawSyscall(libc_setreuid_trampoline_addr, uintptr(ruid), uintptr(euid), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setreuid_trampoline() +var libc_setreuid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setrlimit(which int, lim *Rlimit) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) + _, _, e1 := syscall_rawSyscall(libc_setrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setrlimit_trampoline() +var libc_setrlimit_trampoline_addr uintptr //go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setsid() (pid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0) + r0, _, e1 := syscall_rawSyscall(libc_setsid_trampoline_addr, 0, 0, 0) pid = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -2024,35 +2024,35 @@ func Setsid() (pid int, err error) { return } -func libc_setsid_trampoline() +var libc_setsid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Settimeofday(tp *Timeval) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_settimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_settimeofday_trampoline() +var libc_settimeofday_trampoline_addr uintptr //go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setuid(uid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_setuid_trampoline_addr, uintptr(uid), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setuid_trampoline() +var libc_setuid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib" @@ -2069,14 +2069,14 @@ func Symlink(path string, link string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) + _, _, e1 := syscall_syscall(libc_symlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_symlink_trampoline() +var libc_symlink_trampoline_addr uintptr //go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib" @@ -2093,28 +2093,28 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) + _, _, e1 := syscall_syscall(libc_symlinkat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) if e1 != 0 { err = errnoErr(e1) } return } -func libc_symlinkat_trampoline() +var libc_symlinkat_trampoline_addr uintptr //go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Sync() (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0) + _, _, e1 := syscall_syscall(libc_sync_trampoline_addr, 0, 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_sync_trampoline() +var libc_sync_trampoline_addr uintptr //go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib" @@ -2126,26 +2126,26 @@ func Truncate(path string, length int64) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) + _, _, e1 := syscall_syscall(libc_truncate_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_truncate_trampoline() +var libc_truncate_trampoline_addr uintptr //go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Umask(newmask int) (oldmask int) { - r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0) + r0, _, _ := syscall_syscall(libc_umask_trampoline_addr, uintptr(newmask), 0, 0) oldmask = int(r0) return } -func libc_umask_trampoline() +var libc_umask_trampoline_addr uintptr //go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib" @@ -2157,14 +2157,14 @@ func Undelete(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_undelete_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_undelete_trampoline() +var libc_undelete_trampoline_addr uintptr //go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib" @@ -2176,14 +2176,14 @@ func Unlink(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_unlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_unlink_trampoline() +var libc_unlink_trampoline_addr uintptr //go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib" @@ -2195,14 +2195,14 @@ func Unlinkat(dirfd int, path string, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) + _, _, e1 := syscall_syscall(libc_unlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_unlinkat_trampoline() +var libc_unlinkat_trampoline_addr uintptr //go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib" @@ -2214,14 +2214,14 @@ func Unmount(path string, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) + _, _, e1 := syscall_syscall(libc_unmount_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_unmount_trampoline() +var libc_unmount_trampoline_addr uintptr //go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib" @@ -2234,7 +2234,7 @@ func write(fd int, p []byte) (n int, err error) { } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) + r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -2242,14 +2242,14 @@ func write(fd int, p []byte) (n int, err error) { return } -func libc_write_trampoline() +var libc_write_trampoline_addr uintptr //go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) + r0, _, e1 := syscall_syscall6(libc_mmap_trampoline_addr, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) ret = uintptr(r0) if e1 != 0 { err = errnoErr(e1) @@ -2257,28 +2257,28 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) ( return } -func libc_mmap_trampoline() +var libc_mmap_trampoline_addr uintptr //go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func munmap(addr uintptr, length uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0) + _, _, e1 := syscall_syscall(libc_munmap_trampoline_addr, uintptr(addr), uintptr(length), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_munmap_trampoline() +var libc_munmap_trampoline_addr uintptr //go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func readlen(fd int, buf *byte, nbuf int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) + r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -2289,7 +2289,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func writelen(fd int, buf *byte, nbuf int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) + r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -2300,14 +2300,14 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fstat(fd int, stat *Stat_t) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fstat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) + _, _, e1 := syscall_syscall(libc_fstat64_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fstat64_trampoline() +var libc_fstat64_trampoline_addr uintptr //go:cgo_import_dynamic libc_fstat64 fstat64 "/usr/lib/libSystem.B.dylib" @@ -2319,35 +2319,35 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_fstatat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) + _, _, e1 := syscall_syscall6(libc_fstatat64_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fstatat64_trampoline() +var libc_fstatat64_trampoline_addr uintptr //go:cgo_import_dynamic libc_fstatat64 fstatat64 "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fstatfs(fd int, stat *Statfs_t) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fstatfs64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) + _, _, e1 := syscall_syscall(libc_fstatfs64_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fstatfs64_trampoline() +var libc_fstatfs64_trampoline_addr uintptr //go:cgo_import_dynamic libc_fstatfs64 fstatfs64 "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat64_trampoline), uintptr(buf), uintptr(size), uintptr(flags)) + r0, _, e1 := syscall_syscall(libc_getfsstat64_trampoline_addr, uintptr(buf), uintptr(size), uintptr(flags)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -2355,7 +2355,7 @@ func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { return } -func libc_getfsstat64_trampoline() +var libc_getfsstat64_trampoline_addr uintptr //go:cgo_import_dynamic libc_getfsstat64 getfsstat64 "/usr/lib/libSystem.B.dylib" @@ -2367,28 +2367,28 @@ func Lstat(path string, stat *Stat_t) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_lstat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) + _, _, e1 := syscall_syscall(libc_lstat64_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_lstat64_trampoline() +var libc_lstat64_trampoline_addr uintptr //go:cgo_import_dynamic libc_lstat64 lstat64 "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func ptrace1(request int, pid int, addr uintptr, data uintptr) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) + _, _, e1 := syscall_syscall6(libc_ptrace_trampoline_addr, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_ptrace_trampoline() +var libc_ptrace_trampoline_addr uintptr //go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" @@ -2400,14 +2400,14 @@ func Stat(path string, stat *Stat_t) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_stat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) + _, _, e1 := syscall_syscall(libc_stat64_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_stat64_trampoline() +var libc_stat64_trampoline_addr uintptr //go:cgo_import_dynamic libc_stat64 stat64 "/usr/lib/libSystem.B.dylib" @@ -2419,13 +2419,13 @@ func Statfs(path string, stat *Statfs_t) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_statfs64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) + _, _, e1 := syscall_syscall(libc_statfs64_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_statfs64_trampoline() +var libc_statfs64_trampoline_addr uintptr //go:cgo_import_dynamic libc_statfs64 statfs64 "/usr/lib/libSystem.B.dylib" diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s index c77bd6e20..bc169c2ab 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s @@ -1,290 +1,859 @@ // go run mkasm_darwin.go amd64 // Code generated by the command above; DO NOT EDIT. +//go:build go1.12 // +build go1.12 #include "textflag.h" -TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0 + +TEXT libc_getgroups_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getgroups(SB) -TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getgroups_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getgroups_trampoline_addr(SB)/8, $libc_getgroups_trampoline<>(SB) + +TEXT libc_setgroups_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setgroups(SB) -TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setgroups_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setgroups_trampoline_addr(SB)/8, $libc_setgroups_trampoline<>(SB) + +TEXT libc_wait4_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_wait4(SB) -TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_wait4_trampoline_addr(SB), RODATA, $8 +DATA ·libc_wait4_trampoline_addr(SB)/8, $libc_wait4_trampoline<>(SB) + +TEXT libc_accept_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_accept(SB) -TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_accept_trampoline_addr(SB), RODATA, $8 +DATA ·libc_accept_trampoline_addr(SB)/8, $libc_accept_trampoline<>(SB) + +TEXT libc_bind_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_bind(SB) -TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_bind_trampoline_addr(SB), RODATA, $8 +DATA ·libc_bind_trampoline_addr(SB)/8, $libc_bind_trampoline<>(SB) + +TEXT libc_connect_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_connect(SB) -TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_connect_trampoline_addr(SB), RODATA, $8 +DATA ·libc_connect_trampoline_addr(SB)/8, $libc_connect_trampoline<>(SB) + +TEXT libc_socket_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_socket(SB) -TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_socket_trampoline_addr(SB), RODATA, $8 +DATA ·libc_socket_trampoline_addr(SB)/8, $libc_socket_trampoline<>(SB) + +TEXT libc_getsockopt_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getsockopt(SB) -TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getsockopt_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getsockopt_trampoline_addr(SB)/8, $libc_getsockopt_trampoline<>(SB) + +TEXT libc_setsockopt_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setsockopt(SB) -TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setsockopt_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setsockopt_trampoline_addr(SB)/8, $libc_setsockopt_trampoline<>(SB) + +TEXT libc_getpeername_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getpeername(SB) -TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getpeername_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getpeername_trampoline_addr(SB)/8, $libc_getpeername_trampoline<>(SB) + +TEXT libc_getsockname_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getsockname(SB) -TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getsockname_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getsockname_trampoline_addr(SB)/8, $libc_getsockname_trampoline<>(SB) + +TEXT libc_shutdown_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_shutdown(SB) -TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_shutdown_trampoline_addr(SB), RODATA, $8 +DATA ·libc_shutdown_trampoline_addr(SB)/8, $libc_shutdown_trampoline<>(SB) + +TEXT libc_socketpair_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_socketpair(SB) -TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_socketpair_trampoline_addr(SB), RODATA, $8 +DATA ·libc_socketpair_trampoline_addr(SB)/8, $libc_socketpair_trampoline<>(SB) + +TEXT libc_recvfrom_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_recvfrom(SB) -TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_recvfrom_trampoline_addr(SB), RODATA, $8 +DATA ·libc_recvfrom_trampoline_addr(SB)/8, $libc_recvfrom_trampoline<>(SB) + +TEXT libc_sendto_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sendto(SB) -TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_sendto_trampoline_addr(SB), RODATA, $8 +DATA ·libc_sendto_trampoline_addr(SB)/8, $libc_sendto_trampoline<>(SB) + +TEXT libc_recvmsg_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_recvmsg(SB) -TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_recvmsg_trampoline_addr(SB), RODATA, $8 +DATA ·libc_recvmsg_trampoline_addr(SB)/8, $libc_recvmsg_trampoline<>(SB) + +TEXT libc_sendmsg_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sendmsg(SB) -TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_sendmsg_trampoline_addr(SB), RODATA, $8 +DATA ·libc_sendmsg_trampoline_addr(SB)/8, $libc_sendmsg_trampoline<>(SB) + +TEXT libc_kevent_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_kevent(SB) -TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_kevent_trampoline_addr(SB), RODATA, $8 +DATA ·libc_kevent_trampoline_addr(SB)/8, $libc_kevent_trampoline<>(SB) + +TEXT libc_utimes_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_utimes(SB) -TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_utimes_trampoline_addr(SB), RODATA, $8 +DATA ·libc_utimes_trampoline_addr(SB)/8, $libc_utimes_trampoline<>(SB) + +TEXT libc_futimes_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_futimes(SB) -TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_futimes_trampoline_addr(SB), RODATA, $8 +DATA ·libc_futimes_trampoline_addr(SB)/8, $libc_futimes_trampoline<>(SB) + +TEXT libc_poll_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_poll(SB) -TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_poll_trampoline_addr(SB), RODATA, $8 +DATA ·libc_poll_trampoline_addr(SB)/8, $libc_poll_trampoline<>(SB) + +TEXT libc_madvise_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_madvise(SB) -TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_madvise_trampoline_addr(SB), RODATA, $8 +DATA ·libc_madvise_trampoline_addr(SB)/8, $libc_madvise_trampoline<>(SB) + +TEXT libc_mlock_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mlock(SB) -TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mlock_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mlock_trampoline_addr(SB)/8, $libc_mlock_trampoline<>(SB) + +TEXT libc_mlockall_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mlockall(SB) -TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mlockall_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mlockall_trampoline_addr(SB)/8, $libc_mlockall_trampoline<>(SB) + +TEXT libc_mprotect_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mprotect(SB) -TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mprotect_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mprotect_trampoline_addr(SB)/8, $libc_mprotect_trampoline<>(SB) + +TEXT libc_msync_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_msync(SB) -TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_msync_trampoline_addr(SB), RODATA, $8 +DATA ·libc_msync_trampoline_addr(SB)/8, $libc_msync_trampoline<>(SB) + +TEXT libc_munlock_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_munlock(SB) -TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_munlock_trampoline_addr(SB), RODATA, $8 +DATA ·libc_munlock_trampoline_addr(SB)/8, $libc_munlock_trampoline<>(SB) + +TEXT libc_munlockall_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_munlockall(SB) -TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_munlockall_trampoline_addr(SB), RODATA, $8 +DATA ·libc_munlockall_trampoline_addr(SB)/8, $libc_munlockall_trampoline<>(SB) + +TEXT libc_pipe_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_pipe(SB) -TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_pipe_trampoline_addr(SB), RODATA, $8 +DATA ·libc_pipe_trampoline_addr(SB)/8, $libc_pipe_trampoline<>(SB) + +TEXT libc_getxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getxattr(SB) -TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getxattr_trampoline_addr(SB)/8, $libc_getxattr_trampoline<>(SB) + +TEXT libc_fgetxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fgetxattr(SB) -TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fgetxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fgetxattr_trampoline_addr(SB)/8, $libc_fgetxattr_trampoline<>(SB) + +TEXT libc_setxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setxattr(SB) -TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setxattr_trampoline_addr(SB)/8, $libc_setxattr_trampoline<>(SB) + +TEXT libc_fsetxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fsetxattr(SB) -TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fsetxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fsetxattr_trampoline_addr(SB)/8, $libc_fsetxattr_trampoline<>(SB) + +TEXT libc_removexattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_removexattr(SB) -TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_removexattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_removexattr_trampoline_addr(SB)/8, $libc_removexattr_trampoline<>(SB) + +TEXT libc_fremovexattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fremovexattr(SB) -TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fremovexattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fremovexattr_trampoline_addr(SB)/8, $libc_fremovexattr_trampoline<>(SB) + +TEXT libc_listxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_listxattr(SB) -TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_listxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_listxattr_trampoline_addr(SB)/8, $libc_listxattr_trampoline<>(SB) + +TEXT libc_flistxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_flistxattr(SB) -TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_flistxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_flistxattr_trampoline_addr(SB)/8, $libc_flistxattr_trampoline<>(SB) + +TEXT libc_setattrlist_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setattrlist(SB) -TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setattrlist_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setattrlist_trampoline_addr(SB)/8, $libc_setattrlist_trampoline<>(SB) + +TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fcntl(SB) -TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fcntl_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fcntl_trampoline_addr(SB)/8, $libc_fcntl_trampoline<>(SB) + +TEXT libc_kill_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_kill(SB) -TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_kill_trampoline_addr(SB), RODATA, $8 +DATA ·libc_kill_trampoline_addr(SB)/8, $libc_kill_trampoline<>(SB) + +TEXT libc_ioctl_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_ioctl(SB) -TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_ioctl_trampoline_addr(SB), RODATA, $8 +DATA ·libc_ioctl_trampoline_addr(SB)/8, $libc_ioctl_trampoline<>(SB) + +TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sysctl(SB) -TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $8 +DATA ·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB) + +TEXT libc_sendfile_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sendfile(SB) -TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_sendfile_trampoline_addr(SB), RODATA, $8 +DATA ·libc_sendfile_trampoline_addr(SB)/8, $libc_sendfile_trampoline<>(SB) + +TEXT libc_access_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_access(SB) -TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_access_trampoline_addr(SB), RODATA, $8 +DATA ·libc_access_trampoline_addr(SB)/8, $libc_access_trampoline<>(SB) + +TEXT libc_adjtime_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_adjtime(SB) -TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_adjtime_trampoline_addr(SB), RODATA, $8 +DATA ·libc_adjtime_trampoline_addr(SB)/8, $libc_adjtime_trampoline<>(SB) + +TEXT libc_chdir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_chdir(SB) -TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_chdir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_chdir_trampoline_addr(SB)/8, $libc_chdir_trampoline<>(SB) + +TEXT libc_chflags_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_chflags(SB) -TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_chflags_trampoline_addr(SB), RODATA, $8 +DATA ·libc_chflags_trampoline_addr(SB)/8, $libc_chflags_trampoline<>(SB) + +TEXT libc_chmod_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_chmod(SB) -TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_chmod_trampoline_addr(SB), RODATA, $8 +DATA ·libc_chmod_trampoline_addr(SB)/8, $libc_chmod_trampoline<>(SB) + +TEXT libc_chown_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_chown(SB) -TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_chown_trampoline_addr(SB), RODATA, $8 +DATA ·libc_chown_trampoline_addr(SB)/8, $libc_chown_trampoline<>(SB) + +TEXT libc_chroot_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_chroot(SB) -TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_chroot_trampoline_addr(SB), RODATA, $8 +DATA ·libc_chroot_trampoline_addr(SB)/8, $libc_chroot_trampoline<>(SB) + +TEXT libc_clock_gettime_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_clock_gettime(SB) -TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_clock_gettime_trampoline_addr(SB), RODATA, $8 +DATA ·libc_clock_gettime_trampoline_addr(SB)/8, $libc_clock_gettime_trampoline<>(SB) + +TEXT libc_close_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_close(SB) -TEXT ·libc_clonefile_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_close_trampoline_addr(SB), RODATA, $8 +DATA ·libc_close_trampoline_addr(SB)/8, $libc_close_trampoline<>(SB) + +TEXT libc_clonefile_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_clonefile(SB) -TEXT ·libc_clonefileat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_clonefile_trampoline_addr(SB), RODATA, $8 +DATA ·libc_clonefile_trampoline_addr(SB)/8, $libc_clonefile_trampoline<>(SB) + +TEXT libc_clonefileat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_clonefileat(SB) -TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_clonefileat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_clonefileat_trampoline_addr(SB)/8, $libc_clonefileat_trampoline<>(SB) + +TEXT libc_dup_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_dup(SB) -TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_dup_trampoline_addr(SB), RODATA, $8 +DATA ·libc_dup_trampoline_addr(SB)/8, $libc_dup_trampoline<>(SB) + +TEXT libc_dup2_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_dup2(SB) -TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_dup2_trampoline_addr(SB), RODATA, $8 +DATA ·libc_dup2_trampoline_addr(SB)/8, $libc_dup2_trampoline<>(SB) + +TEXT libc_exchangedata_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_exchangedata(SB) -TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_exchangedata_trampoline_addr(SB), RODATA, $8 +DATA ·libc_exchangedata_trampoline_addr(SB)/8, $libc_exchangedata_trampoline<>(SB) + +TEXT libc_exit_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_exit(SB) -TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_exit_trampoline_addr(SB), RODATA, $8 +DATA ·libc_exit_trampoline_addr(SB)/8, $libc_exit_trampoline<>(SB) + +TEXT libc_faccessat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_faccessat(SB) -TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_faccessat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_faccessat_trampoline_addr(SB)/8, $libc_faccessat_trampoline<>(SB) + +TEXT libc_fchdir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchdir(SB) -TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchdir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchdir_trampoline_addr(SB)/8, $libc_fchdir_trampoline<>(SB) + +TEXT libc_fchflags_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchflags(SB) -TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchflags_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchflags_trampoline_addr(SB)/8, $libc_fchflags_trampoline<>(SB) + +TEXT libc_fchmod_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchmod(SB) -TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchmod_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchmod_trampoline_addr(SB)/8, $libc_fchmod_trampoline<>(SB) + +TEXT libc_fchmodat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchmodat(SB) -TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchmodat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchmodat_trampoline_addr(SB)/8, $libc_fchmodat_trampoline<>(SB) + +TEXT libc_fchown_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchown(SB) -TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchown_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchown_trampoline_addr(SB)/8, $libc_fchown_trampoline<>(SB) + +TEXT libc_fchownat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchownat(SB) -TEXT ·libc_fclonefileat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchownat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchownat_trampoline_addr(SB)/8, $libc_fchownat_trampoline<>(SB) + +TEXT libc_fclonefileat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fclonefileat(SB) -TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fclonefileat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fclonefileat_trampoline_addr(SB)/8, $libc_fclonefileat_trampoline<>(SB) + +TEXT libc_flock_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_flock(SB) -TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_flock_trampoline_addr(SB), RODATA, $8 +DATA ·libc_flock_trampoline_addr(SB)/8, $libc_flock_trampoline<>(SB) + +TEXT libc_fpathconf_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fpathconf(SB) -TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fpathconf_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fpathconf_trampoline_addr(SB)/8, $libc_fpathconf_trampoline<>(SB) + +TEXT libc_fsync_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fsync(SB) -TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fsync_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fsync_trampoline_addr(SB)/8, $libc_fsync_trampoline<>(SB) + +TEXT libc_ftruncate_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_ftruncate(SB) -TEXT ·libc_getcwd_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_ftruncate_trampoline_addr(SB), RODATA, $8 +DATA ·libc_ftruncate_trampoline_addr(SB)/8, $libc_ftruncate_trampoline<>(SB) + +TEXT libc_getcwd_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getcwd(SB) -TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getcwd_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getcwd_trampoline_addr(SB)/8, $libc_getcwd_trampoline<>(SB) + +TEXT libc_getdtablesize_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getdtablesize(SB) -TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getdtablesize_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getdtablesize_trampoline_addr(SB)/8, $libc_getdtablesize_trampoline<>(SB) + +TEXT libc_getegid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getegid(SB) -TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getegid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getegid_trampoline_addr(SB)/8, $libc_getegid_trampoline<>(SB) + +TEXT libc_geteuid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_geteuid(SB) -TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_geteuid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_geteuid_trampoline_addr(SB)/8, $libc_geteuid_trampoline<>(SB) + +TEXT libc_getgid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getgid(SB) -TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getgid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getgid_trampoline_addr(SB)/8, $libc_getgid_trampoline<>(SB) + +TEXT libc_getpgid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getpgid(SB) -TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getpgid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getpgid_trampoline_addr(SB)/8, $libc_getpgid_trampoline<>(SB) + +TEXT libc_getpgrp_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getpgrp(SB) -TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getpgrp_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getpgrp_trampoline_addr(SB)/8, $libc_getpgrp_trampoline<>(SB) + +TEXT libc_getpid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getpid(SB) -TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getpid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getpid_trampoline_addr(SB)/8, $libc_getpid_trampoline<>(SB) + +TEXT libc_getppid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getppid(SB) -TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getppid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getppid_trampoline_addr(SB)/8, $libc_getppid_trampoline<>(SB) + +TEXT libc_getpriority_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getpriority(SB) -TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getpriority_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getpriority_trampoline_addr(SB)/8, $libc_getpriority_trampoline<>(SB) + +TEXT libc_getrlimit_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getrlimit(SB) -TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getrlimit_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getrlimit_trampoline_addr(SB)/8, $libc_getrlimit_trampoline<>(SB) + +TEXT libc_getrusage_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getrusage(SB) -TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getrusage_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getrusage_trampoline_addr(SB)/8, $libc_getrusage_trampoline<>(SB) + +TEXT libc_getsid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getsid(SB) -TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getsid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getsid_trampoline_addr(SB)/8, $libc_getsid_trampoline<>(SB) + +TEXT libc_gettimeofday_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_gettimeofday(SB) -TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_gettimeofday_trampoline_addr(SB), RODATA, $8 +DATA ·libc_gettimeofday_trampoline_addr(SB)/8, $libc_gettimeofday_trampoline<>(SB) + +TEXT libc_getuid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getuid(SB) -TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getuid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getuid_trampoline_addr(SB)/8, $libc_getuid_trampoline<>(SB) + +TEXT libc_issetugid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_issetugid(SB) -TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_issetugid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_issetugid_trampoline_addr(SB)/8, $libc_issetugid_trampoline<>(SB) + +TEXT libc_kqueue_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_kqueue(SB) -TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_kqueue_trampoline_addr(SB), RODATA, $8 +DATA ·libc_kqueue_trampoline_addr(SB)/8, $libc_kqueue_trampoline<>(SB) + +TEXT libc_lchown_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_lchown(SB) -TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_lchown_trampoline_addr(SB), RODATA, $8 +DATA ·libc_lchown_trampoline_addr(SB)/8, $libc_lchown_trampoline<>(SB) + +TEXT libc_link_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_link(SB) -TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_link_trampoline_addr(SB), RODATA, $8 +DATA ·libc_link_trampoline_addr(SB)/8, $libc_link_trampoline<>(SB) + +TEXT libc_linkat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_linkat(SB) -TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_linkat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_linkat_trampoline_addr(SB)/8, $libc_linkat_trampoline<>(SB) + +TEXT libc_listen_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_listen(SB) -TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_listen_trampoline_addr(SB), RODATA, $8 +DATA ·libc_listen_trampoline_addr(SB)/8, $libc_listen_trampoline<>(SB) + +TEXT libc_mkdir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mkdir(SB) -TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mkdir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mkdir_trampoline_addr(SB)/8, $libc_mkdir_trampoline<>(SB) + +TEXT libc_mkdirat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mkdirat(SB) -TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mkdirat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mkdirat_trampoline_addr(SB)/8, $libc_mkdirat_trampoline<>(SB) + +TEXT libc_mkfifo_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mkfifo(SB) -TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mkfifo_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mkfifo_trampoline_addr(SB)/8, $libc_mkfifo_trampoline<>(SB) + +TEXT libc_mknod_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mknod(SB) -TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mknod_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mknod_trampoline_addr(SB)/8, $libc_mknod_trampoline<>(SB) + +TEXT libc_open_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_open(SB) -TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_open_trampoline_addr(SB), RODATA, $8 +DATA ·libc_open_trampoline_addr(SB)/8, $libc_open_trampoline<>(SB) + +TEXT libc_openat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_openat(SB) -TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_openat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_openat_trampoline_addr(SB)/8, $libc_openat_trampoline<>(SB) + +TEXT libc_pathconf_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_pathconf(SB) -TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_pathconf_trampoline_addr(SB), RODATA, $8 +DATA ·libc_pathconf_trampoline_addr(SB)/8, $libc_pathconf_trampoline<>(SB) + +TEXT libc_pread_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_pread(SB) -TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_pread_trampoline_addr(SB), RODATA, $8 +DATA ·libc_pread_trampoline_addr(SB)/8, $libc_pread_trampoline<>(SB) + +TEXT libc_pwrite_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_pwrite(SB) -TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_pwrite_trampoline_addr(SB), RODATA, $8 +DATA ·libc_pwrite_trampoline_addr(SB)/8, $libc_pwrite_trampoline<>(SB) + +TEXT libc_read_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_read(SB) -TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_read_trampoline_addr(SB), RODATA, $8 +DATA ·libc_read_trampoline_addr(SB)/8, $libc_read_trampoline<>(SB) + +TEXT libc_readlink_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_readlink(SB) -TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_readlink_trampoline_addr(SB), RODATA, $8 +DATA ·libc_readlink_trampoline_addr(SB)/8, $libc_readlink_trampoline<>(SB) + +TEXT libc_readlinkat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_readlinkat(SB) -TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_readlinkat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_readlinkat_trampoline_addr(SB)/8, $libc_readlinkat_trampoline<>(SB) + +TEXT libc_rename_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_rename(SB) -TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_rename_trampoline_addr(SB), RODATA, $8 +DATA ·libc_rename_trampoline_addr(SB)/8, $libc_rename_trampoline<>(SB) + +TEXT libc_renameat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_renameat(SB) -TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_renameat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_renameat_trampoline_addr(SB)/8, $libc_renameat_trampoline<>(SB) + +TEXT libc_revoke_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_revoke(SB) -TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_revoke_trampoline_addr(SB), RODATA, $8 +DATA ·libc_revoke_trampoline_addr(SB)/8, $libc_revoke_trampoline<>(SB) + +TEXT libc_rmdir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_rmdir(SB) -TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_rmdir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_rmdir_trampoline_addr(SB)/8, $libc_rmdir_trampoline<>(SB) + +TEXT libc_lseek_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_lseek(SB) -TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_lseek_trampoline_addr(SB), RODATA, $8 +DATA ·libc_lseek_trampoline_addr(SB)/8, $libc_lseek_trampoline<>(SB) + +TEXT libc_select_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_select(SB) -TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_select_trampoline_addr(SB), RODATA, $8 +DATA ·libc_select_trampoline_addr(SB)/8, $libc_select_trampoline<>(SB) + +TEXT libc_setegid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setegid(SB) -TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setegid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setegid_trampoline_addr(SB)/8, $libc_setegid_trampoline<>(SB) + +TEXT libc_seteuid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_seteuid(SB) -TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_seteuid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_seteuid_trampoline_addr(SB)/8, $libc_seteuid_trampoline<>(SB) + +TEXT libc_setgid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setgid(SB) -TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setgid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setgid_trampoline_addr(SB)/8, $libc_setgid_trampoline<>(SB) + +TEXT libc_setlogin_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setlogin(SB) -TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setlogin_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setlogin_trampoline_addr(SB)/8, $libc_setlogin_trampoline<>(SB) + +TEXT libc_setpgid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setpgid(SB) -TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setpgid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setpgid_trampoline_addr(SB)/8, $libc_setpgid_trampoline<>(SB) + +TEXT libc_setpriority_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setpriority(SB) -TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setpriority_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setpriority_trampoline_addr(SB)/8, $libc_setpriority_trampoline<>(SB) + +TEXT libc_setprivexec_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setprivexec(SB) -TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setprivexec_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setprivexec_trampoline_addr(SB)/8, $libc_setprivexec_trampoline<>(SB) + +TEXT libc_setregid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setregid(SB) -TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setregid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setregid_trampoline_addr(SB)/8, $libc_setregid_trampoline<>(SB) + +TEXT libc_setreuid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setreuid(SB) -TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setreuid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setreuid_trampoline_addr(SB)/8, $libc_setreuid_trampoline<>(SB) + +TEXT libc_setrlimit_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setrlimit(SB) -TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setrlimit_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setrlimit_trampoline_addr(SB)/8, $libc_setrlimit_trampoline<>(SB) + +TEXT libc_setsid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setsid(SB) -TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setsid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setsid_trampoline_addr(SB)/8, $libc_setsid_trampoline<>(SB) + +TEXT libc_settimeofday_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_settimeofday(SB) -TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_settimeofday_trampoline_addr(SB), RODATA, $8 +DATA ·libc_settimeofday_trampoline_addr(SB)/8, $libc_settimeofday_trampoline<>(SB) + +TEXT libc_setuid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setuid(SB) -TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setuid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setuid_trampoline_addr(SB)/8, $libc_setuid_trampoline<>(SB) + +TEXT libc_symlink_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_symlink(SB) -TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_symlink_trampoline_addr(SB), RODATA, $8 +DATA ·libc_symlink_trampoline_addr(SB)/8, $libc_symlink_trampoline<>(SB) + +TEXT libc_symlinkat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_symlinkat(SB) -TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_symlinkat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_symlinkat_trampoline_addr(SB)/8, $libc_symlinkat_trampoline<>(SB) + +TEXT libc_sync_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sync(SB) -TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_sync_trampoline_addr(SB), RODATA, $8 +DATA ·libc_sync_trampoline_addr(SB)/8, $libc_sync_trampoline<>(SB) + +TEXT libc_truncate_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_truncate(SB) -TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_truncate_trampoline_addr(SB), RODATA, $8 +DATA ·libc_truncate_trampoline_addr(SB)/8, $libc_truncate_trampoline<>(SB) + +TEXT libc_umask_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_umask(SB) -TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_umask_trampoline_addr(SB), RODATA, $8 +DATA ·libc_umask_trampoline_addr(SB)/8, $libc_umask_trampoline<>(SB) + +TEXT libc_undelete_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_undelete(SB) -TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_undelete_trampoline_addr(SB), RODATA, $8 +DATA ·libc_undelete_trampoline_addr(SB)/8, $libc_undelete_trampoline<>(SB) + +TEXT libc_unlink_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_unlink(SB) -TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_unlink_trampoline_addr(SB), RODATA, $8 +DATA ·libc_unlink_trampoline_addr(SB)/8, $libc_unlink_trampoline<>(SB) + +TEXT libc_unlinkat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_unlinkat(SB) -TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_unlinkat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_unlinkat_trampoline_addr(SB)/8, $libc_unlinkat_trampoline<>(SB) + +TEXT libc_unmount_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_unmount(SB) -TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_unmount_trampoline_addr(SB), RODATA, $8 +DATA ·libc_unmount_trampoline_addr(SB)/8, $libc_unmount_trampoline<>(SB) + +TEXT libc_write_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_write(SB) -TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_write_trampoline_addr(SB), RODATA, $8 +DATA ·libc_write_trampoline_addr(SB)/8, $libc_write_trampoline<>(SB) + +TEXT libc_mmap_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mmap(SB) -TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mmap_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mmap_trampoline_addr(SB)/8, $libc_mmap_trampoline<>(SB) + +TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_munmap(SB) -TEXT ·libc_fstat64_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_munmap_trampoline_addr(SB), RODATA, $8 +DATA ·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB) + +TEXT libc_fstat64_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fstat64(SB) -TEXT ·libc_fstatat64_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fstat64_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fstat64_trampoline_addr(SB)/8, $libc_fstat64_trampoline<>(SB) + +TEXT libc_fstatat64_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fstatat64(SB) -TEXT ·libc_fstatfs64_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fstatat64_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fstatat64_trampoline_addr(SB)/8, $libc_fstatat64_trampoline<>(SB) + +TEXT libc_fstatfs64_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fstatfs64(SB) -TEXT ·libc_getfsstat64_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fstatfs64_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fstatfs64_trampoline_addr(SB)/8, $libc_fstatfs64_trampoline<>(SB) + +TEXT libc_getfsstat64_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getfsstat64(SB) -TEXT ·libc_lstat64_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getfsstat64_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getfsstat64_trampoline_addr(SB)/8, $libc_getfsstat64_trampoline<>(SB) + +TEXT libc_lstat64_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_lstat64(SB) -TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_lstat64_trampoline_addr(SB), RODATA, $8 +DATA ·libc_lstat64_trampoline_addr(SB)/8, $libc_lstat64_trampoline<>(SB) + +TEXT libc_ptrace_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_ptrace(SB) -TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_ptrace_trampoline_addr(SB), RODATA, $8 +DATA ·libc_ptrace_trampoline_addr(SB)/8, $libc_ptrace_trampoline<>(SB) + +TEXT libc_stat64_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_stat64(SB) -TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_stat64_trampoline_addr(SB), RODATA, $8 +DATA ·libc_stat64_trampoline_addr(SB)/8, $libc_stat64_trampoline<>(SB) + +TEXT libc_statfs64_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_statfs64(SB) + +GLOBL ·libc_statfs64_trampoline_addr(SB), RODATA, $8 +DATA ·libc_statfs64_trampoline_addr(SB)/8, $libc_statfs64_trampoline<>(SB) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go deleted file mode 100644 index ed437f89a..000000000 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go +++ /dev/null @@ -1,40 +0,0 @@ -// go run mksyscall.go -l32 -tags darwin,arm,go1.13 syscall_darwin.1_13.go -// Code generated by the command above; see README.md. DO NOT EDIT. - -//go:build darwin && arm && go1.13 -// +build darwin,arm,go1.13 - -package unix - -import ( - "syscall" - "unsafe" -) - -var _ syscall.Errno - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func closedir(dir uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_closedir_trampoline() - -//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) { - r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) - res = Errno(r0) - return -} - -func libc_readdir_r_trampoline() - -//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib" diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s deleted file mode 100644 index 488e55707..000000000 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s +++ /dev/null @@ -1,12 +0,0 @@ -// go run mkasm_darwin.go arm -// Code generated by the command above; DO NOT EDIT. - -// +build go1.13 - -#include "textflag.h" -TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fdopendir(SB) -TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_closedir(SB) -TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 - JMP libc_readdir_r(SB) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go deleted file mode 100644 index 7f88cb5ea..000000000 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go +++ /dev/null @@ -1,2417 +0,0 @@ -// go run mksyscall.go -l32 -tags darwin,arm,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm.go -// Code generated by the command above; see README.md. DO NOT EDIT. - -//go:build darwin && arm && go1.12 -// +build darwin,arm,go1.12 - -package unix - -import ( - "syscall" - "unsafe" -) - -var _ syscall.Errno - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getgroups(ngid int, gid *_Gid_t) (n int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getgroups_trampoline() - -//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func setgroups(ngid int, gid *_Gid_t) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setgroups_trampoline() - -//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) - wpid = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_wait4_trampoline() - -//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_accept_trampoline() - -//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_bind_trampoline() - -//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_connect_trampoline() - -//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func socket(domain int, typ int, proto int) (fd int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_socket_trampoline() - -//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getsockopt_trampoline() - -//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setsockopt_trampoline() - -//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getpeername_trampoline() - -//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getsockname_trampoline() - -//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Shutdown(s int, how int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_shutdown_trampoline() - -//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { - _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_socketpair_trampoline() - -//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_recvfrom_trampoline() - -//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { - var _p0 unsafe.Pointer - if len(buf) > 0 { - _p0 = unsafe.Pointer(&buf[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_sendto_trampoline() - -//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_recvmsg_trampoline() - -//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_sendmsg_trampoline() - -//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_kevent_trampoline() - -//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func utimes(path string, timeval *[2]Timeval) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_utimes_trampoline() - -//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func futimes(fd int, timeval *[2]Timeval) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_futimes_trampoline() - -//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_poll_trampoline() - -//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Madvise(b []byte, behav int) (err error) { - var _p0 unsafe.Pointer - if len(b) > 0 { - _p0 = unsafe.Pointer(&b[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_madvise_trampoline() - -//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mlock(b []byte) (err error) { - var _p0 unsafe.Pointer - if len(b) > 0 { - _p0 = unsafe.Pointer(&b[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mlock_trampoline() - -//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mlockall(flags int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mlockall_trampoline() - -//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mprotect(b []byte, prot int) (err error) { - var _p0 unsafe.Pointer - if len(b) > 0 { - _p0 = unsafe.Pointer(&b[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mprotect_trampoline() - -//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Msync(b []byte, flags int) (err error) { - var _p0 unsafe.Pointer - if len(b) > 0 { - _p0 = unsafe.Pointer(&b[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_msync_trampoline() - -//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Munlock(b []byte) (err error) { - var _p0 unsafe.Pointer - if len(b) > 0 { - _p0 = unsafe.Pointer(&b[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_munlock_trampoline() - -//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Munlockall() (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_munlockall_trampoline() - -//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func pipe(p *[2]int32) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_pipe_trampoline() - -//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(attr) - if err != nil { - return - } - r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getxattr_trampoline() - -//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(attr) - if err != nil { - return - } - r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fgetxattr_trampoline() - -//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(attr) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setxattr_trampoline() - -//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(attr) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fsetxattr_trampoline() - -//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func removexattr(path string, attr string, options int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(attr) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_removexattr_trampoline() - -//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func fremovexattr(fd int, attr string, options int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(attr) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fremovexattr_trampoline() - -//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func listxattr(path string, dest *byte, size int, options int) (sz int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_listxattr_trampoline() - -//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_flistxattr_trampoline() - -//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setattrlist_trampoline() - -//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func fcntl(fd int, cmd int, arg int) (val int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg)) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fcntl_trampoline() - -//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func kill(pid int, signum int, posix int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_kill_trampoline() - -//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func ioctl(fd int, req uint, arg uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_ioctl_trampoline() - -//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { - var _p0 unsafe.Pointer - if len(mib) > 0 { - _p0 = unsafe.Pointer(&mib[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_sysctl_trampoline() - -//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { - _, _, e1 := syscall_syscall9(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_sendfile_trampoline() - -//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Access(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_access_trampoline() - -//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_adjtime_trampoline() - -//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Chdir(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_chdir_trampoline() - -//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Chflags(path string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_chflags_trampoline() - -//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Chmod(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_chmod_trampoline() - -//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Chown(path string, uid int, gid int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_chown_trampoline() - -//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Chroot(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_chroot_trampoline() - -//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func ClockGettime(clockid int32, time *Timespec) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_clock_gettime_trampoline() - -//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Close(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_close_trampoline() - -//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Clonefile(src string, dst string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(src) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(dst) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_clonefile_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_clonefile_trampoline() - -//go:cgo_import_dynamic libc_clonefile clonefile "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Clonefileat(srcDirfd int, src string, dstDirfd int, dst string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(src) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(dst) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_clonefileat_trampoline), uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_clonefileat_trampoline() - -//go:cgo_import_dynamic libc_clonefileat clonefileat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Dup(fd int) (nfd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0) - nfd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_dup_trampoline() - -//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Dup2(from int, to int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_dup2_trampoline() - -//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Exchangedata(path1 string, path2 string, options int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path1) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(path2) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_exchangedata_trampoline() - -//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Exit(code int) { - syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0) - return -} - -func libc_exit_trampoline() - -//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_faccessat_trampoline() - -//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchdir(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchdir_trampoline() - -//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchflags(fd int, flags int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchflags_trampoline() - -//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchmod(fd int, mode uint32) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchmod_trampoline() - -//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchmodat_trampoline() - -//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchown(fd int, uid int, gid int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchown_trampoline() - -//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fchownat_trampoline() - -//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fclonefileat(srcDirfd int, dstDirfd int, dst string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(dst) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_fclonefileat_trampoline), uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fclonefileat_trampoline() - -//go:cgo_import_dynamic libc_fclonefileat fclonefileat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Flock(fd int, how int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_flock_trampoline() - -//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fpathconf(fd int, name int) (val int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fpathconf_trampoline() - -//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fsync(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fsync_trampoline() - -//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Ftruncate(fd int, length int64) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), uintptr(length>>32)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_ftruncate_trampoline() - -//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getcwd(buf []byte) (n int, err error) { - var _p0 unsafe.Pointer - if len(buf) > 0 { - _p0 = unsafe.Pointer(&buf[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall(funcPC(libc_getcwd_trampoline), uintptr(_p0), uintptr(len(buf)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getcwd_trampoline() - -//go:cgo_import_dynamic libc_getcwd getcwd "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getdtablesize() (size int) { - r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0) - size = int(r0) - return -} - -func libc_getdtablesize_trampoline() - -//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getegid() (egid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0) - egid = int(r0) - return -} - -func libc_getegid_trampoline() - -//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Geteuid() (uid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0) - uid = int(r0) - return -} - -func libc_geteuid_trampoline() - -//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getgid() (gid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0) - gid = int(r0) - return -} - -func libc_getgid_trampoline() - -//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getpgid(pid int) (pgid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0) - pgid = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getpgid_trampoline() - -//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getpgrp() (pgrp int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0) - pgrp = int(r0) - return -} - -func libc_getpgrp_trampoline() - -//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getpid() (pid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0) - pid = int(r0) - return -} - -func libc_getpid_trampoline() - -//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getppid() (ppid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0) - ppid = int(r0) - return -} - -func libc_getppid_trampoline() - -//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getpriority(which int, who int) (prio int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0) - prio = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getpriority_trampoline() - -//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getrlimit(which int, lim *Rlimit) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getrlimit_trampoline() - -//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getrusage(who int, rusage *Rusage) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getrusage_trampoline() - -//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getsid(pid int) (sid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0) - sid = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getsid_trampoline() - -//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Gettimeofday(tp *Timeval) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_gettimeofday_trampoline() - -//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Getuid() (uid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0) - uid = int(r0) - return -} - -func libc_getuid_trampoline() - -//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Issetugid() (tainted bool) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0) - tainted = bool(r0 != 0) - return -} - -func libc_issetugid_trampoline() - -//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Kqueue() (fd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_kqueue_trampoline() - -//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Lchown(path string, uid int, gid int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_lchown_trampoline() - -//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Link(path string, link string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(link) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_link_trampoline() - -//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(link) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_linkat_trampoline() - -//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Listen(s int, backlog int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_listen_trampoline() - -//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mkdir(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mkdir_trampoline() - -//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mkdirat(dirfd int, path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mkdirat_trampoline() - -//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mkfifo(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mkfifo_trampoline() - -//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Mknod(path string, mode uint32, dev int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mknod_trampoline() - -//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Open(path string, mode int, perm uint32) (fd int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_open_trampoline() - -//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_openat_trampoline() - -//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Pathconf(path string, name int) (val int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_pathconf_trampoline() - -//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_pread_trampoline() - -//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_pwrite_trampoline() - -//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func read(fd int, p []byte) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_read_trampoline() - -//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Readlink(path string, buf []byte) (n int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 unsafe.Pointer - if len(buf) > 0 { - _p1 = unsafe.Pointer(&buf[0]) - } else { - _p1 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_readlink_trampoline() - -//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 unsafe.Pointer - if len(buf) > 0 { - _p1 = unsafe.Pointer(&buf[0]) - } else { - _p1 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_readlinkat_trampoline() - -//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Rename(from string, to string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(from) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(to) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_rename_trampoline() - -//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Renameat(fromfd int, from string, tofd int, to string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(from) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(to) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_renameat_trampoline() - -//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Revoke(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_revoke_trampoline() - -//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Rmdir(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_rmdir_trampoline() - -//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - r0, r1, e1 := syscall_syscall6(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0) - newoffset = int64(int64(r1)<<32 | int64(r0)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_lseek_trampoline() - -//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_select_trampoline() - -//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setegid(egid int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setegid_trampoline() - -//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Seteuid(euid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_seteuid_trampoline() - -//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setgid(gid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setgid_trampoline() - -//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setlogin(name string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(name) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setlogin_trampoline() - -//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setpgid(pid int, pgid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setpgid_trampoline() - -//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setpriority(which int, who int, prio int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setpriority_trampoline() - -//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setprivexec(flag int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setprivexec_trampoline() - -//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setregid(rgid int, egid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setregid_trampoline() - -//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setreuid(ruid int, euid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setreuid_trampoline() - -//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setrlimit(which int, lim *Rlimit) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setrlimit_trampoline() - -//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setsid() (pid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0) - pid = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setsid_trampoline() - -//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Settimeofday(tp *Timeval) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_settimeofday_trampoline() - -//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Setuid(uid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_setuid_trampoline() - -//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Symlink(path string, link string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(link) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_symlink_trampoline() - -//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(oldpath) - if err != nil { - return - } - var _p1 *byte - _p1, err = BytePtrFromString(newpath) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_symlinkat_trampoline() - -//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Sync() (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_sync_trampoline() - -//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Truncate(path string, length int64) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_truncate_trampoline() - -//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Umask(newmask int) (oldmask int) { - r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0) - oldmask = int(r0) - return -} - -func libc_umask_trampoline() - -//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Undelete(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_undelete_trampoline() - -//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Unlink(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_unlink_trampoline() - -//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Unlinkat(dirfd int, path string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_unlinkat_trampoline() - -//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Unmount(path string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_unmount_trampoline() - -//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func write(fd int, p []byte) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } - r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_write_trampoline() - -//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { - r0, _, e1 := syscall_syscall9(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0) - ret = uintptr(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_mmap_trampoline() - -//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func munmap(addr uintptr, length uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_munmap_trampoline() - -//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func readlen(fd int, buf *byte, nbuf int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func writelen(fd int, buf *byte, nbuf int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fstat(fd int, stat *Stat_t) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fstat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fstat_trampoline() - -//go:cgo_import_dynamic libc_fstat fstat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall6(funcPC(libc_fstatat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fstatat_trampoline() - -//go:cgo_import_dynamic libc_fstatat fstatat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Fstatfs(fd int, stat *Statfs_t) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fstatfs_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_fstatfs_trampoline() - -//go:cgo_import_dynamic libc_fstatfs fstatfs "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat_trampoline), uintptr(buf), uintptr(size), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_getfsstat_trampoline() - -//go:cgo_import_dynamic libc_getfsstat getfsstat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Lstat(path string, stat *Stat_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_lstat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_lstat_trampoline() - -//go:cgo_import_dynamic libc_lstat lstat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Stat(path string, stat *Stat_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_stat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_stat_trampoline() - -//go:cgo_import_dynamic libc_stat stat "/usr/lib/libSystem.B.dylib" - -// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -func Statfs(path string, stat *Statfs_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } - _, _, e1 := syscall_syscall(funcPC(libc_statfs_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return -} - -func libc_statfs_trampoline() - -//go:cgo_import_dynamic libc_statfs statfs "/usr/lib/libSystem.B.dylib" diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s deleted file mode 100644 index 5eec5f1d9..000000000 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s +++ /dev/null @@ -1,288 +0,0 @@ -// go run mkasm_darwin.go arm -// Code generated by the command above; DO NOT EDIT. - -// +build go1.12 - -#include "textflag.h" -TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getgroups(SB) -TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setgroups(SB) -TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0 - JMP libc_wait4(SB) -TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0 - JMP libc_accept(SB) -TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0 - JMP libc_bind(SB) -TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0 - JMP libc_connect(SB) -TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0 - JMP libc_socket(SB) -TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getsockopt(SB) -TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setsockopt(SB) -TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getpeername(SB) -TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getsockname(SB) -TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0 - JMP libc_shutdown(SB) -TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0 - JMP libc_socketpair(SB) -TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0 - JMP libc_recvfrom(SB) -TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0 - JMP libc_sendto(SB) -TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0 - JMP libc_recvmsg(SB) -TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0 - JMP libc_sendmsg(SB) -TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0 - JMP libc_kevent(SB) -TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0 - JMP libc_utimes(SB) -TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0 - JMP libc_futimes(SB) -TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0 - JMP libc_poll(SB) -TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0 - JMP libc_madvise(SB) -TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mlock(SB) -TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mlockall(SB) -TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mprotect(SB) -TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0 - JMP libc_msync(SB) -TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0 - JMP libc_munlock(SB) -TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0 - JMP libc_munlockall(SB) -TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0 - JMP libc_pipe(SB) -TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getxattr(SB) -TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fgetxattr(SB) -TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setxattr(SB) -TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fsetxattr(SB) -TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_removexattr(SB) -TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fremovexattr(SB) -TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_listxattr(SB) -TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0 - JMP libc_flistxattr(SB) -TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setattrlist(SB) -TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fcntl(SB) -TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0 - JMP libc_kill(SB) -TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0 - JMP libc_ioctl(SB) -TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0 - JMP libc_sysctl(SB) -TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0 - JMP libc_sendfile(SB) -TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0 - JMP libc_access(SB) -TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0 - JMP libc_adjtime(SB) -TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_chdir(SB) -TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0 - JMP libc_chflags(SB) -TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0 - JMP libc_chmod(SB) -TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0 - JMP libc_chown(SB) -TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0 - JMP libc_chroot(SB) -TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0 - JMP libc_clock_gettime(SB) -TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0 - JMP libc_close(SB) -TEXT ·libc_clonefile_trampoline(SB),NOSPLIT,$0-0 - JMP libc_clonefile(SB) -TEXT ·libc_clonefileat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_clonefileat(SB) -TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0 - JMP libc_dup(SB) -TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0 - JMP libc_dup2(SB) -TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0 - JMP libc_exchangedata(SB) -TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0 - JMP libc_exit(SB) -TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_faccessat(SB) -TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchdir(SB) -TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchflags(SB) -TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchmod(SB) -TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchmodat(SB) -TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchown(SB) -TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fchownat(SB) -TEXT ·libc_fclonefileat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fclonefileat(SB) -TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0 - JMP libc_flock(SB) -TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fpathconf(SB) -TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fsync(SB) -TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0 - JMP libc_ftruncate(SB) -TEXT ·libc_getcwd_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getcwd(SB) -TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getdtablesize(SB) -TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getegid(SB) -TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_geteuid(SB) -TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getgid(SB) -TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getpgid(SB) -TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getpgrp(SB) -TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getpid(SB) -TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getppid(SB) -TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getpriority(SB) -TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getrlimit(SB) -TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getrusage(SB) -TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getsid(SB) -TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0 - JMP libc_gettimeofday(SB) -TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getuid(SB) -TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_issetugid(SB) -TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0 - JMP libc_kqueue(SB) -TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0 - JMP libc_lchown(SB) -TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0 - JMP libc_link(SB) -TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_linkat(SB) -TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0 - JMP libc_listen(SB) -TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mkdir(SB) -TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mkdirat(SB) -TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mkfifo(SB) -TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mknod(SB) -TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0 - JMP libc_open(SB) -TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_openat(SB) -TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0 - JMP libc_pathconf(SB) -TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0 - JMP libc_pread(SB) -TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0 - JMP libc_pwrite(SB) -TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0 - JMP libc_read(SB) -TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0 - JMP libc_readlink(SB) -TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_readlinkat(SB) -TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0 - JMP libc_rename(SB) -TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_renameat(SB) -TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0 - JMP libc_revoke(SB) -TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0 - JMP libc_rmdir(SB) -TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0 - JMP libc_lseek(SB) -TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0 - JMP libc_select(SB) -TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setegid(SB) -TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_seteuid(SB) -TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setgid(SB) -TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setlogin(SB) -TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setpgid(SB) -TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setpriority(SB) -TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setprivexec(SB) -TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setregid(SB) -TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setreuid(SB) -TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setrlimit(SB) -TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setsid(SB) -TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0 - JMP libc_settimeofday(SB) -TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0 - JMP libc_setuid(SB) -TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0 - JMP libc_symlink(SB) -TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_symlinkat(SB) -TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0 - JMP libc_sync(SB) -TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0 - JMP libc_truncate(SB) -TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0 - JMP libc_umask(SB) -TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0 - JMP libc_undelete(SB) -TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0 - JMP libc_unlink(SB) -TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_unlinkat(SB) -TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0 - JMP libc_unmount(SB) -TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0 - JMP libc_write(SB) -TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0 - JMP libc_mmap(SB) -TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0 - JMP libc_munmap(SB) -TEXT ·libc_fstat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fstat(SB) -TEXT ·libc_fstatat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fstatat(SB) -TEXT ·libc_fstatfs_trampoline(SB),NOSPLIT,$0-0 - JMP libc_fstatfs(SB) -TEXT ·libc_getfsstat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_getfsstat(SB) -TEXT ·libc_lstat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_lstat(SB) -TEXT ·libc_stat_trampoline(SB),NOSPLIT,$0-0 - JMP libc_stat(SB) -TEXT ·libc_statfs_trampoline(SB),NOSPLIT,$0-0 - JMP libc_statfs(SB) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go index d30ec4e29..cec595d55 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go @@ -16,25 +16,25 @@ var _ syscall.Errno // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func closedir(dir uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0) + _, _, e1 := syscall_syscall(libc_closedir_trampoline_addr, uintptr(dir), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_closedir_trampoline() +var libc_closedir_trampoline_addr uintptr //go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) { - r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) + r0, _, _ := syscall_syscall(libc_readdir_r_trampoline_addr, uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) res = Errno(r0) return } -func libc_readdir_r_trampoline() +var libc_readdir_r_trampoline_addr uintptr //go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib" diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s index b29dabb0f..357989722 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s @@ -1,12 +1,25 @@ // go run mkasm_darwin.go arm64 // Code generated by the command above; DO NOT EDIT. +//go:build go1.13 // +build go1.13 #include "textflag.h" -TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 + +TEXT libc_fdopendir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fdopendir(SB) -TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fdopendir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fdopendir_trampoline_addr(SB)/8, $libc_fdopendir_trampoline<>(SB) + +TEXT libc_closedir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_closedir(SB) -TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_closedir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_closedir_trampoline_addr(SB)/8, $libc_closedir_trampoline<>(SB) + +TEXT libc_readdir_r_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_readdir_r(SB) + +GLOBL ·libc_readdir_r_trampoline_addr(SB), RODATA, $8 +DATA ·libc_readdir_r_trampoline_addr(SB)/8, $libc_readdir_r_trampoline<>(SB) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go index a10df58d0..f2ee2bd33 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go @@ -16,7 +16,7 @@ var _ syscall.Errno // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func getgroups(ngid int, gid *_Gid_t) (n int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) + r0, _, e1 := syscall_rawSyscall(libc_getgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -24,28 +24,28 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) { return } -func libc_getgroups_trampoline() +var libc_getgroups_trampoline_addr uintptr //go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func setgroups(ngid int, gid *_Gid_t) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) + _, _, e1 := syscall_rawSyscall(libc_setgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setgroups_trampoline() +var libc_setgroups_trampoline_addr uintptr //go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) + r0, _, e1 := syscall_syscall6(libc_wait4_trampoline_addr, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) wpid = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -53,14 +53,14 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err return } -func libc_wait4_trampoline() +var libc_wait4_trampoline_addr uintptr //go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) + r0, _, e1 := syscall_syscall(libc_accept_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) fd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -68,42 +68,42 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { return } -func libc_accept_trampoline() +var libc_accept_trampoline_addr uintptr //go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) + _, _, e1 := syscall_syscall(libc_bind_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_bind_trampoline() +var libc_bind_trampoline_addr uintptr //go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) + _, _, e1 := syscall_syscall(libc_connect_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_connect_trampoline() +var libc_connect_trampoline_addr uintptr //go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func socket(domain int, typ int, proto int) (fd int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto)) + r0, _, e1 := syscall_rawSyscall(libc_socket_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto)) fd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -111,91 +111,91 @@ func socket(domain int, typ int, proto int) (fd int, err error) { return } -func libc_socket_trampoline() +var libc_socket_trampoline_addr uintptr //go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) + _, _, e1 := syscall_syscall6(libc_getsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_getsockopt_trampoline() +var libc_getsockopt_trampoline_addr uintptr //go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) + _, _, e1 := syscall_syscall6(libc_setsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setsockopt_trampoline() +var libc_setsockopt_trampoline_addr uintptr //go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) + _, _, e1 := syscall_rawSyscall(libc_getpeername_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) if e1 != 0 { err = errnoErr(e1) } return } -func libc_getpeername_trampoline() +var libc_getpeername_trampoline_addr uintptr //go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) + _, _, e1 := syscall_rawSyscall(libc_getsockname_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) if e1 != 0 { err = errnoErr(e1) } return } -func libc_getsockname_trampoline() +var libc_getsockname_trampoline_addr uintptr //go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Shutdown(s int, how int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0) + _, _, e1 := syscall_syscall(libc_shutdown_trampoline_addr, uintptr(s), uintptr(how), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_shutdown_trampoline() +var libc_shutdown_trampoline_addr uintptr //go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { - _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) + _, _, e1 := syscall_rawSyscall6(libc_socketpair_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_socketpair_trampoline() +var libc_socketpair_trampoline_addr uintptr //go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib" @@ -208,7 +208,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) + r0, _, e1 := syscall_syscall6(libc_recvfrom_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -216,7 +216,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl return } -func libc_recvfrom_trampoline() +var libc_recvfrom_trampoline_addr uintptr //go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib" @@ -229,21 +229,21 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) ( } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) + _, _, e1 := syscall_syscall6(libc_sendto_trampoline_addr, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_sendto_trampoline() +var libc_sendto_trampoline_addr uintptr //go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) + r0, _, e1 := syscall_syscall(libc_recvmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -251,14 +251,14 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { return } -func libc_recvmsg_trampoline() +var libc_recvmsg_trampoline_addr uintptr //go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) + r0, _, e1 := syscall_syscall(libc_sendmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -266,14 +266,14 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { return } -func libc_sendmsg_trampoline() +var libc_sendmsg_trampoline_addr uintptr //go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) + r0, _, e1 := syscall_syscall6(libc_kevent_trampoline_addr, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -281,7 +281,7 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne return } -func libc_kevent_trampoline() +var libc_kevent_trampoline_addr uintptr //go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib" @@ -293,35 +293,35 @@ func utimes(path string, timeval *[2]Timeval) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) + _, _, e1 := syscall_syscall(libc_utimes_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_utimes_trampoline() +var libc_utimes_trampoline_addr uintptr //go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func futimes(fd int, timeval *[2]Timeval) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) + _, _, e1 := syscall_syscall(libc_futimes_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_futimes_trampoline() +var libc_futimes_trampoline_addr uintptr //go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) + r0, _, e1 := syscall_syscall(libc_poll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -329,7 +329,7 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { return } -func libc_poll_trampoline() +var libc_poll_trampoline_addr uintptr //go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib" @@ -342,14 +342,14 @@ func Madvise(b []byte, behav int) (err error) { } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav)) + _, _, e1 := syscall_syscall(libc_madvise_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(behav)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_madvise_trampoline() +var libc_madvise_trampoline_addr uintptr //go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib" @@ -362,28 +362,28 @@ func Mlock(b []byte) (err error) { } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) + _, _, e1 := syscall_syscall(libc_mlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mlock_trampoline() +var libc_mlock_trampoline_addr uintptr //go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Mlockall(flags int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0) + _, _, e1 := syscall_syscall(libc_mlockall_trampoline_addr, uintptr(flags), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mlockall_trampoline() +var libc_mlockall_trampoline_addr uintptr //go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib" @@ -396,14 +396,14 @@ func Mprotect(b []byte, prot int) (err error) { } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot)) + _, _, e1 := syscall_syscall(libc_mprotect_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(prot)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mprotect_trampoline() +var libc_mprotect_trampoline_addr uintptr //go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib" @@ -416,14 +416,14 @@ func Msync(b []byte, flags int) (err error) { } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags)) + _, _, e1 := syscall_syscall(libc_msync_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(flags)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_msync_trampoline() +var libc_msync_trampoline_addr uintptr //go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib" @@ -436,42 +436,42 @@ func Munlock(b []byte) (err error) { } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) + _, _, e1 := syscall_syscall(libc_munlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_munlock_trampoline() +var libc_munlock_trampoline_addr uintptr //go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Munlockall() (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0) + _, _, e1 := syscall_syscall(libc_munlockall_trampoline_addr, 0, 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_munlockall_trampoline() +var libc_munlockall_trampoline_addr uintptr //go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func pipe(p *[2]int32) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_pipe_trampoline_addr, uintptr(unsafe.Pointer(p)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_pipe_trampoline() +var libc_pipe_trampoline_addr uintptr //go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib" @@ -488,7 +488,7 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o if err != nil { return } - r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) + r0, _, e1 := syscall_syscall6(libc_getxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) sz = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -496,7 +496,7 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o return } -func libc_getxattr_trampoline() +var libc_getxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib" @@ -508,7 +508,7 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio if err != nil { return } - r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) + r0, _, e1 := syscall_syscall6(libc_fgetxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) sz = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -516,7 +516,7 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio return } -func libc_fgetxattr_trampoline() +var libc_fgetxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib" @@ -533,14 +533,14 @@ func setxattr(path string, attr string, data *byte, size int, position uint32, o if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) + _, _, e1 := syscall_syscall6(libc_setxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setxattr_trampoline() +var libc_setxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib" @@ -552,14 +552,14 @@ func fsetxattr(fd int, attr string, data *byte, size int, position uint32, optio if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) + _, _, e1 := syscall_syscall6(libc_fsetxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fsetxattr_trampoline() +var libc_fsetxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib" @@ -576,14 +576,14 @@ func removexattr(path string, attr string, options int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) + _, _, e1 := syscall_syscall(libc_removexattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_removexattr_trampoline() +var libc_removexattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib" @@ -595,14 +595,14 @@ func fremovexattr(fd int, attr string, options int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) + _, _, e1 := syscall_syscall(libc_fremovexattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fremovexattr_trampoline() +var libc_fremovexattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib" @@ -614,7 +614,7 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro if err != nil { return } - r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) + r0, _, e1 := syscall_syscall6(libc_listxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) sz = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -622,14 +622,14 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro return } -func libc_listxattr_trampoline() +var libc_listxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) + r0, _, e1 := syscall_syscall6(libc_flistxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) sz = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -637,28 +637,28 @@ func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { return } -func libc_flistxattr_trampoline() +var libc_flistxattr_trampoline_addr uintptr //go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) + _, _, e1 := syscall_syscall6(libc_setattrlist_trampoline_addr, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setattrlist_trampoline() +var libc_setattrlist_trampoline_addr uintptr //go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func fcntl(fd int, cmd int, arg int) (val int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg)) + r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg)) val = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -666,35 +666,35 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) { return } -func libc_fcntl_trampoline() +var libc_fcntl_trampoline_addr uintptr //go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func kill(pid int, signum int, posix int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix)) + _, _, e1 := syscall_syscall(libc_kill_trampoline_addr, uintptr(pid), uintptr(signum), uintptr(posix)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_kill_trampoline() +var libc_kill_trampoline_addr uintptr //go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func ioctl(fd int, req uint, arg uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg)) + _, _, e1 := syscall_syscall(libc_ioctl_trampoline_addr, uintptr(fd), uintptr(req), uintptr(arg)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_ioctl_trampoline() +var libc_ioctl_trampoline_addr uintptr //go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib" @@ -707,28 +707,28 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) } else { _p0 = unsafe.Pointer(&_zero) } - _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) + _, _, e1 := syscall_syscall6(libc_sysctl_trampoline_addr, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_sysctl_trampoline() +var libc_sysctl_trampoline_addr uintptr //go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) + _, _, e1 := syscall_syscall6(libc_sendfile_trampoline_addr, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_sendfile_trampoline() +var libc_sendfile_trampoline_addr uintptr //go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib" @@ -740,28 +740,28 @@ func Access(path string, mode uint32) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) + _, _, e1 := syscall_syscall(libc_access_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_access_trampoline() +var libc_access_trampoline_addr uintptr //go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) + _, _, e1 := syscall_syscall(libc_adjtime_trampoline_addr, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_adjtime_trampoline() +var libc_adjtime_trampoline_addr uintptr //go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib" @@ -773,14 +773,14 @@ func Chdir(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_chdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_chdir_trampoline() +var libc_chdir_trampoline_addr uintptr //go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib" @@ -792,14 +792,14 @@ func Chflags(path string, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) + _, _, e1 := syscall_syscall(libc_chflags_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_chflags_trampoline() +var libc_chflags_trampoline_addr uintptr //go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib" @@ -811,14 +811,14 @@ func Chmod(path string, mode uint32) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) + _, _, e1 := syscall_syscall(libc_chmod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_chmod_trampoline() +var libc_chmod_trampoline_addr uintptr //go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib" @@ -830,14 +830,14 @@ func Chown(path string, uid int, gid int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) + _, _, e1 := syscall_syscall(libc_chown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_chown_trampoline() +var libc_chown_trampoline_addr uintptr //go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib" @@ -849,42 +849,42 @@ func Chroot(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_chroot_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_chroot_trampoline() +var libc_chroot_trampoline_addr uintptr //go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func ClockGettime(clockid int32, time *Timespec) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) + _, _, e1 := syscall_syscall(libc_clock_gettime_trampoline_addr, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_clock_gettime_trampoline() +var libc_clock_gettime_trampoline_addr uintptr //go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Close(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0) + _, _, e1 := syscall_syscall(libc_close_trampoline_addr, uintptr(fd), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_close_trampoline() +var libc_close_trampoline_addr uintptr //go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib" @@ -901,14 +901,14 @@ func Clonefile(src string, dst string, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_clonefile_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags)) + _, _, e1 := syscall_syscall(libc_clonefile_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_clonefile_trampoline() +var libc_clonefile_trampoline_addr uintptr //go:cgo_import_dynamic libc_clonefile clonefile "/usr/lib/libSystem.B.dylib" @@ -925,21 +925,21 @@ func Clonefileat(srcDirfd int, src string, dstDirfd int, dst string, flags int) if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_clonefileat_trampoline), uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) + _, _, e1 := syscall_syscall6(libc_clonefileat_trampoline_addr, uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_clonefileat_trampoline() +var libc_clonefileat_trampoline_addr uintptr //go:cgo_import_dynamic libc_clonefileat clonefileat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Dup(fd int) (nfd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0) + r0, _, e1 := syscall_syscall(libc_dup_trampoline_addr, uintptr(fd), 0, 0) nfd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -947,21 +947,21 @@ func Dup(fd int) (nfd int, err error) { return } -func libc_dup_trampoline() +var libc_dup_trampoline_addr uintptr //go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Dup2(from int, to int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0) + _, _, e1 := syscall_syscall(libc_dup2_trampoline_addr, uintptr(from), uintptr(to), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_dup2_trampoline() +var libc_dup2_trampoline_addr uintptr //go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib" @@ -978,25 +978,25 @@ func Exchangedata(path1 string, path2 string, options int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) + _, _, e1 := syscall_syscall(libc_exchangedata_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_exchangedata_trampoline() +var libc_exchangedata_trampoline_addr uintptr //go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Exit(code int) { - syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0) + syscall_syscall(libc_exit_trampoline_addr, uintptr(code), 0, 0) return } -func libc_exit_trampoline() +var libc_exit_trampoline_addr uintptr //go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib" @@ -1008,56 +1008,56 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) + _, _, e1 := syscall_syscall6(libc_faccessat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_faccessat_trampoline() +var libc_faccessat_trampoline_addr uintptr //go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fchdir(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0) + _, _, e1 := syscall_syscall(libc_fchdir_trampoline_addr, uintptr(fd), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchdir_trampoline() +var libc_fchdir_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fchflags(fd int, flags int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0) + _, _, e1 := syscall_syscall(libc_fchflags_trampoline_addr, uintptr(fd), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchflags_trampoline() +var libc_fchflags_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fchmod(fd int, mode uint32) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0) + _, _, e1 := syscall_syscall(libc_fchmod_trampoline_addr, uintptr(fd), uintptr(mode), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchmod_trampoline() +var libc_fchmod_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib" @@ -1069,28 +1069,28 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) + _, _, e1 := syscall_syscall6(libc_fchmodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchmodat_trampoline() +var libc_fchmodat_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fchown(fd int, uid int, gid int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid)) + _, _, e1 := syscall_syscall(libc_fchown_trampoline_addr, uintptr(fd), uintptr(uid), uintptr(gid)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchown_trampoline() +var libc_fchown_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib" @@ -1102,14 +1102,14 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) + _, _, e1 := syscall_syscall6(libc_fchownat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fchownat_trampoline() +var libc_fchownat_trampoline_addr uintptr //go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib" @@ -1121,35 +1121,35 @@ func Fclonefileat(srcDirfd int, dstDirfd int, dst string, flags int) (err error) if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_fclonefileat_trampoline), uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0) + _, _, e1 := syscall_syscall6(libc_fclonefileat_trampoline_addr, uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fclonefileat_trampoline() +var libc_fclonefileat_trampoline_addr uintptr //go:cgo_import_dynamic libc_fclonefileat fclonefileat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Flock(fd int, how int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0) + _, _, e1 := syscall_syscall(libc_flock_trampoline_addr, uintptr(fd), uintptr(how), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_flock_trampoline() +var libc_flock_trampoline_addr uintptr //go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fpathconf(fd int, name int) (val int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0) + r0, _, e1 := syscall_syscall(libc_fpathconf_trampoline_addr, uintptr(fd), uintptr(name), 0) val = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1157,35 +1157,35 @@ func Fpathconf(fd int, name int) (val int, err error) { return } -func libc_fpathconf_trampoline() +var libc_fpathconf_trampoline_addr uintptr //go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fsync(fd int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0) + _, _, e1 := syscall_syscall(libc_fsync_trampoline_addr, uintptr(fd), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fsync_trampoline() +var libc_fsync_trampoline_addr uintptr //go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Ftruncate(fd int, length int64) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), 0) + _, _, e1 := syscall_syscall(libc_ftruncate_trampoline_addr, uintptr(fd), uintptr(length), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_ftruncate_trampoline() +var libc_ftruncate_trampoline_addr uintptr //go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib" @@ -1198,7 +1198,7 @@ func Getcwd(buf []byte) (n int, err error) { } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall(funcPC(libc_getcwd_trampoline), uintptr(_p0), uintptr(len(buf)), 0) + r0, _, e1 := syscall_syscall(libc_getcwd_trampoline_addr, uintptr(_p0), uintptr(len(buf)), 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1206,62 +1206,62 @@ func Getcwd(buf []byte) (n int, err error) { return } -func libc_getcwd_trampoline() +var libc_getcwd_trampoline_addr uintptr //go:cgo_import_dynamic libc_getcwd getcwd "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getdtablesize() (size int) { - r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0) + r0, _, _ := syscall_syscall(libc_getdtablesize_trampoline_addr, 0, 0, 0) size = int(r0) return } -func libc_getdtablesize_trampoline() +var libc_getdtablesize_trampoline_addr uintptr //go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getegid() (egid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getegid_trampoline_addr, 0, 0, 0) egid = int(r0) return } -func libc_getegid_trampoline() +var libc_getegid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Geteuid() (uid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_geteuid_trampoline_addr, 0, 0, 0) uid = int(r0) return } -func libc_geteuid_trampoline() +var libc_geteuid_trampoline_addr uintptr //go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getgid() (gid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getgid_trampoline_addr, 0, 0, 0) gid = int(r0) return } -func libc_getgid_trampoline() +var libc_getgid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getpgid(pid int) (pgid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0) + r0, _, e1 := syscall_rawSyscall(libc_getpgid_trampoline_addr, uintptr(pid), 0, 0) pgid = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1269,50 +1269,50 @@ func Getpgid(pid int) (pgid int, err error) { return } -func libc_getpgid_trampoline() +var libc_getpgid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getpgrp() (pgrp int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getpgrp_trampoline_addr, 0, 0, 0) pgrp = int(r0) return } -func libc_getpgrp_trampoline() +var libc_getpgrp_trampoline_addr uintptr //go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getpid() (pid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getpid_trampoline_addr, 0, 0, 0) pid = int(r0) return } -func libc_getpid_trampoline() +var libc_getpid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getppid() (ppid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getppid_trampoline_addr, 0, 0, 0) ppid = int(r0) return } -func libc_getppid_trampoline() +var libc_getppid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getpriority(which int, who int) (prio int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0) + r0, _, e1 := syscall_syscall(libc_getpriority_trampoline_addr, uintptr(which), uintptr(who), 0) prio = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1320,42 +1320,42 @@ func Getpriority(which int, who int) (prio int, err error) { return } -func libc_getpriority_trampoline() +var libc_getpriority_trampoline_addr uintptr //go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getrlimit(which int, lim *Rlimit) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) + _, _, e1 := syscall_rawSyscall(libc_getrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_getrlimit_trampoline() +var libc_getrlimit_trampoline_addr uintptr //go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getrusage(who int, rusage *Rusage) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) + _, _, e1 := syscall_rawSyscall(libc_getrusage_trampoline_addr, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_getrusage_trampoline() +var libc_getrusage_trampoline_addr uintptr //go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getsid(pid int) (sid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0) + r0, _, e1 := syscall_rawSyscall(libc_getsid_trampoline_addr, uintptr(pid), 0, 0) sid = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1363,52 +1363,52 @@ func Getsid(pid int) (sid int, err error) { return } -func libc_getsid_trampoline() +var libc_getsid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Gettimeofday(tp *Timeval) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_gettimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_gettimeofday_trampoline() +var libc_gettimeofday_trampoline_addr uintptr //go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Getuid() (uid int) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_getuid_trampoline_addr, 0, 0, 0) uid = int(r0) return } -func libc_getuid_trampoline() +var libc_getuid_trampoline_addr uintptr //go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Issetugid() (tainted bool) { - r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0) + r0, _, _ := syscall_rawSyscall(libc_issetugid_trampoline_addr, 0, 0, 0) tainted = bool(r0 != 0) return } -func libc_issetugid_trampoline() +var libc_issetugid_trampoline_addr uintptr //go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Kqueue() (fd int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0) + r0, _, e1 := syscall_syscall(libc_kqueue_trampoline_addr, 0, 0, 0) fd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1416,7 +1416,7 @@ func Kqueue() (fd int, err error) { return } -func libc_kqueue_trampoline() +var libc_kqueue_trampoline_addr uintptr //go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib" @@ -1428,14 +1428,14 @@ func Lchown(path string, uid int, gid int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) + _, _, e1 := syscall_syscall(libc_lchown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_lchown_trampoline() +var libc_lchown_trampoline_addr uintptr //go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib" @@ -1452,14 +1452,14 @@ func Link(path string, link string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) + _, _, e1 := syscall_syscall(libc_link_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_link_trampoline() +var libc_link_trampoline_addr uintptr //go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib" @@ -1476,28 +1476,28 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) + _, _, e1 := syscall_syscall6(libc_linkat_trampoline_addr, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_linkat_trampoline() +var libc_linkat_trampoline_addr uintptr //go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Listen(s int, backlog int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0) + _, _, e1 := syscall_syscall(libc_listen_trampoline_addr, uintptr(s), uintptr(backlog), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_listen_trampoline() +var libc_listen_trampoline_addr uintptr //go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib" @@ -1509,14 +1509,14 @@ func Mkdir(path string, mode uint32) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) + _, _, e1 := syscall_syscall(libc_mkdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mkdir_trampoline() +var libc_mkdir_trampoline_addr uintptr //go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib" @@ -1528,14 +1528,14 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) + _, _, e1 := syscall_syscall(libc_mkdirat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mkdirat_trampoline() +var libc_mkdirat_trampoline_addr uintptr //go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib" @@ -1547,14 +1547,14 @@ func Mkfifo(path string, mode uint32) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) + _, _, e1 := syscall_syscall(libc_mkfifo_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mkfifo_trampoline() +var libc_mkfifo_trampoline_addr uintptr //go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib" @@ -1566,14 +1566,14 @@ func Mknod(path string, mode uint32, dev int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) + _, _, e1 := syscall_syscall(libc_mknod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_mknod_trampoline() +var libc_mknod_trampoline_addr uintptr //go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib" @@ -1585,7 +1585,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { if err != nil { return } - r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) + r0, _, e1 := syscall_syscall(libc_open_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) fd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1593,7 +1593,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { return } -func libc_open_trampoline() +var libc_open_trampoline_addr uintptr //go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib" @@ -1605,7 +1605,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { if err != nil { return } - r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) + r0, _, e1 := syscall_syscall6(libc_openat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) fd = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1613,7 +1613,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { return } -func libc_openat_trampoline() +var libc_openat_trampoline_addr uintptr //go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib" @@ -1625,7 +1625,7 @@ func Pathconf(path string, name int) (val int, err error) { if err != nil { return } - r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) + r0, _, e1 := syscall_syscall(libc_pathconf_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) val = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1633,7 +1633,7 @@ func Pathconf(path string, name int) (val int, err error) { return } -func libc_pathconf_trampoline() +var libc_pathconf_trampoline_addr uintptr //go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib" @@ -1646,7 +1646,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) + r0, _, e1 := syscall_syscall6(libc_pread_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1654,7 +1654,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { return } -func libc_pread_trampoline() +var libc_pread_trampoline_addr uintptr //go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib" @@ -1667,7 +1667,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) { } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) + r0, _, e1 := syscall_syscall6(libc_pwrite_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1675,7 +1675,7 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) { return } -func libc_pwrite_trampoline() +var libc_pwrite_trampoline_addr uintptr //go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib" @@ -1688,7 +1688,7 @@ func read(fd int, p []byte) (n int, err error) { } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) + r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1696,7 +1696,7 @@ func read(fd int, p []byte) (n int, err error) { return } -func libc_read_trampoline() +var libc_read_trampoline_addr uintptr //go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib" @@ -1714,7 +1714,7 @@ func Readlink(path string, buf []byte) (n int, err error) { } else { _p1 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) + r0, _, e1 := syscall_syscall(libc_readlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1722,7 +1722,7 @@ func Readlink(path string, buf []byte) (n int, err error) { return } -func libc_readlink_trampoline() +var libc_readlink_trampoline_addr uintptr //go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib" @@ -1740,7 +1740,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { } else { _p1 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) + r0, _, e1 := syscall_syscall6(libc_readlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1748,7 +1748,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { return } -func libc_readlinkat_trampoline() +var libc_readlinkat_trampoline_addr uintptr //go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib" @@ -1765,14 +1765,14 @@ func Rename(from string, to string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) + _, _, e1 := syscall_syscall(libc_rename_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_rename_trampoline() +var libc_rename_trampoline_addr uintptr //go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib" @@ -1789,14 +1789,14 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) + _, _, e1 := syscall_syscall6(libc_renameat_trampoline_addr, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_renameat_trampoline() +var libc_renameat_trampoline_addr uintptr //go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib" @@ -1808,14 +1808,14 @@ func Revoke(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_revoke_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_revoke_trampoline() +var libc_revoke_trampoline_addr uintptr //go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib" @@ -1827,21 +1827,21 @@ func Rmdir(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_rmdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_rmdir_trampoline() +var libc_rmdir_trampoline_addr uintptr //go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(whence)) + r0, _, e1 := syscall_syscall(libc_lseek_trampoline_addr, uintptr(fd), uintptr(offset), uintptr(whence)) newoffset = int64(r0) if e1 != 0 { err = errnoErr(e1) @@ -1849,14 +1849,14 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { return } -func libc_lseek_trampoline() +var libc_lseek_trampoline_addr uintptr //go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) + r0, _, e1 := syscall_syscall6(libc_select_trampoline_addr, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -1864,49 +1864,49 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err return } -func libc_select_trampoline() +var libc_select_trampoline_addr uintptr //go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setegid(egid int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0) + _, _, e1 := syscall_syscall(libc_setegid_trampoline_addr, uintptr(egid), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setegid_trampoline() +var libc_setegid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Seteuid(euid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_seteuid_trampoline_addr, uintptr(euid), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_seteuid_trampoline() +var libc_seteuid_trampoline_addr uintptr //go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setgid(gid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_setgid_trampoline_addr, uintptr(gid), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setgid_trampoline() +var libc_setgid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib" @@ -1918,105 +1918,105 @@ func Setlogin(name string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_setlogin_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setlogin_trampoline() +var libc_setlogin_trampoline_addr uintptr //go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setpgid(pid int, pgid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0) + _, _, e1 := syscall_rawSyscall(libc_setpgid_trampoline_addr, uintptr(pid), uintptr(pgid), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setpgid_trampoline() +var libc_setpgid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setpriority(which int, who int, prio int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio)) + _, _, e1 := syscall_syscall(libc_setpriority_trampoline_addr, uintptr(which), uintptr(who), uintptr(prio)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setpriority_trampoline() +var libc_setpriority_trampoline_addr uintptr //go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setprivexec(flag int) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0) + _, _, e1 := syscall_syscall(libc_setprivexec_trampoline_addr, uintptr(flag), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setprivexec_trampoline() +var libc_setprivexec_trampoline_addr uintptr //go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setregid(rgid int, egid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0) + _, _, e1 := syscall_rawSyscall(libc_setregid_trampoline_addr, uintptr(rgid), uintptr(egid), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setregid_trampoline() +var libc_setregid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setreuid(ruid int, euid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0) + _, _, e1 := syscall_rawSyscall(libc_setreuid_trampoline_addr, uintptr(ruid), uintptr(euid), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setreuid_trampoline() +var libc_setreuid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setrlimit(which int, lim *Rlimit) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) + _, _, e1 := syscall_rawSyscall(libc_setrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setrlimit_trampoline() +var libc_setrlimit_trampoline_addr uintptr //go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setsid() (pid int, err error) { - r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0) + r0, _, e1 := syscall_rawSyscall(libc_setsid_trampoline_addr, 0, 0, 0) pid = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -2024,35 +2024,35 @@ func Setsid() (pid int, err error) { return } -func libc_setsid_trampoline() +var libc_setsid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Settimeofday(tp *Timeval) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_settimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_settimeofday_trampoline() +var libc_settimeofday_trampoline_addr uintptr //go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Setuid(uid int) (err error) { - _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0) + _, _, e1 := syscall_rawSyscall(libc_setuid_trampoline_addr, uintptr(uid), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_setuid_trampoline() +var libc_setuid_trampoline_addr uintptr //go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib" @@ -2069,14 +2069,14 @@ func Symlink(path string, link string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) + _, _, e1 := syscall_syscall(libc_symlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_symlink_trampoline() +var libc_symlink_trampoline_addr uintptr //go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib" @@ -2093,28 +2093,28 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) + _, _, e1 := syscall_syscall(libc_symlinkat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) if e1 != 0 { err = errnoErr(e1) } return } -func libc_symlinkat_trampoline() +var libc_symlinkat_trampoline_addr uintptr //go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Sync() (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0) + _, _, e1 := syscall_syscall(libc_sync_trampoline_addr, 0, 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_sync_trampoline() +var libc_sync_trampoline_addr uintptr //go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib" @@ -2126,26 +2126,26 @@ func Truncate(path string, length int64) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) + _, _, e1 := syscall_syscall(libc_truncate_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_truncate_trampoline() +var libc_truncate_trampoline_addr uintptr //go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Umask(newmask int) (oldmask int) { - r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0) + r0, _, _ := syscall_syscall(libc_umask_trampoline_addr, uintptr(newmask), 0, 0) oldmask = int(r0) return } -func libc_umask_trampoline() +var libc_umask_trampoline_addr uintptr //go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib" @@ -2157,14 +2157,14 @@ func Undelete(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_undelete_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_undelete_trampoline() +var libc_undelete_trampoline_addr uintptr //go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib" @@ -2176,14 +2176,14 @@ func Unlink(path string) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) + _, _, e1 := syscall_syscall(libc_unlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_unlink_trampoline() +var libc_unlink_trampoline_addr uintptr //go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib" @@ -2195,14 +2195,14 @@ func Unlinkat(dirfd int, path string, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) + _, _, e1 := syscall_syscall(libc_unlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) if e1 != 0 { err = errnoErr(e1) } return } -func libc_unlinkat_trampoline() +var libc_unlinkat_trampoline_addr uintptr //go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib" @@ -2214,14 +2214,14 @@ func Unmount(path string, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) + _, _, e1 := syscall_syscall(libc_unmount_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_unmount_trampoline() +var libc_unmount_trampoline_addr uintptr //go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib" @@ -2234,7 +2234,7 @@ func write(fd int, p []byte) (n int, err error) { } else { _p0 = unsafe.Pointer(&_zero) } - r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) + r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -2242,14 +2242,14 @@ func write(fd int, p []byte) (n int, err error) { return } -func libc_write_trampoline() +var libc_write_trampoline_addr uintptr //go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { - r0, _, e1 := syscall_syscall6(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) + r0, _, e1 := syscall_syscall6(libc_mmap_trampoline_addr, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) ret = uintptr(r0) if e1 != 0 { err = errnoErr(e1) @@ -2257,28 +2257,28 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) ( return } -func libc_mmap_trampoline() +var libc_mmap_trampoline_addr uintptr //go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func munmap(addr uintptr, length uintptr) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0) + _, _, e1 := syscall_syscall(libc_munmap_trampoline_addr, uintptr(addr), uintptr(length), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_munmap_trampoline() +var libc_munmap_trampoline_addr uintptr //go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func readlen(fd int, buf *byte, nbuf int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) + r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -2289,7 +2289,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func writelen(fd int, buf *byte, nbuf int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) + r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -2300,14 +2300,14 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fstat(fd int, stat *Stat_t) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fstat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) + _, _, e1 := syscall_syscall(libc_fstat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fstat_trampoline() +var libc_fstat_trampoline_addr uintptr //go:cgo_import_dynamic libc_fstat fstat "/usr/lib/libSystem.B.dylib" @@ -2319,35 +2319,35 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall6(funcPC(libc_fstatat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) + _, _, e1 := syscall_syscall6(libc_fstatat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fstatat_trampoline() +var libc_fstatat_trampoline_addr uintptr //go:cgo_import_dynamic libc_fstatat fstatat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func Fstatfs(fd int, stat *Statfs_t) (err error) { - _, _, e1 := syscall_syscall(funcPC(libc_fstatfs_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) + _, _, e1 := syscall_syscall(libc_fstatfs_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_fstatfs_trampoline() +var libc_fstatfs_trampoline_addr uintptr //go:cgo_import_dynamic libc_fstatfs fstatfs "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { - r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat_trampoline), uintptr(buf), uintptr(size), uintptr(flags)) + r0, _, e1 := syscall_syscall(libc_getfsstat_trampoline_addr, uintptr(buf), uintptr(size), uintptr(flags)) n = int(r0) if e1 != 0 { err = errnoErr(e1) @@ -2355,7 +2355,7 @@ func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { return } -func libc_getfsstat_trampoline() +var libc_getfsstat_trampoline_addr uintptr //go:cgo_import_dynamic libc_getfsstat getfsstat "/usr/lib/libSystem.B.dylib" @@ -2367,28 +2367,28 @@ func Lstat(path string, stat *Stat_t) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_lstat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) + _, _, e1 := syscall_syscall(libc_lstat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_lstat_trampoline() +var libc_lstat_trampoline_addr uintptr //go:cgo_import_dynamic libc_lstat lstat "/usr/lib/libSystem.B.dylib" // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT func ptrace1(request int, pid int, addr uintptr, data uintptr) (err error) { - _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) + _, _, e1 := syscall_syscall6(libc_ptrace_trampoline_addr, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_ptrace_trampoline() +var libc_ptrace_trampoline_addr uintptr //go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" @@ -2400,14 +2400,14 @@ func Stat(path string, stat *Stat_t) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_stat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) + _, _, e1 := syscall_syscall(libc_stat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_stat_trampoline() +var libc_stat_trampoline_addr uintptr //go:cgo_import_dynamic libc_stat stat "/usr/lib/libSystem.B.dylib" @@ -2419,13 +2419,13 @@ func Statfs(path string, stat *Statfs_t) (err error) { if err != nil { return } - _, _, e1 := syscall_syscall(funcPC(libc_statfs_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) + _, _, e1 := syscall_syscall(libc_statfs_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) if e1 != 0 { err = errnoErr(e1) } return } -func libc_statfs_trampoline() +var libc_statfs_trampoline_addr uintptr //go:cgo_import_dynamic libc_statfs statfs "/usr/lib/libSystem.B.dylib" diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s index 53c402bf6..33e19776d 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s +++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s @@ -1,290 +1,859 @@ // go run mkasm_darwin.go arm64 // Code generated by the command above; DO NOT EDIT. +//go:build go1.12 // +build go1.12 #include "textflag.h" -TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0 + +TEXT libc_getgroups_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getgroups(SB) -TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getgroups_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getgroups_trampoline_addr(SB)/8, $libc_getgroups_trampoline<>(SB) + +TEXT libc_setgroups_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setgroups(SB) -TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setgroups_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setgroups_trampoline_addr(SB)/8, $libc_setgroups_trampoline<>(SB) + +TEXT libc_wait4_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_wait4(SB) -TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_wait4_trampoline_addr(SB), RODATA, $8 +DATA ·libc_wait4_trampoline_addr(SB)/8, $libc_wait4_trampoline<>(SB) + +TEXT libc_accept_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_accept(SB) -TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_accept_trampoline_addr(SB), RODATA, $8 +DATA ·libc_accept_trampoline_addr(SB)/8, $libc_accept_trampoline<>(SB) + +TEXT libc_bind_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_bind(SB) -TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_bind_trampoline_addr(SB), RODATA, $8 +DATA ·libc_bind_trampoline_addr(SB)/8, $libc_bind_trampoline<>(SB) + +TEXT libc_connect_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_connect(SB) -TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_connect_trampoline_addr(SB), RODATA, $8 +DATA ·libc_connect_trampoline_addr(SB)/8, $libc_connect_trampoline<>(SB) + +TEXT libc_socket_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_socket(SB) -TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_socket_trampoline_addr(SB), RODATA, $8 +DATA ·libc_socket_trampoline_addr(SB)/8, $libc_socket_trampoline<>(SB) + +TEXT libc_getsockopt_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getsockopt(SB) -TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getsockopt_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getsockopt_trampoline_addr(SB)/8, $libc_getsockopt_trampoline<>(SB) + +TEXT libc_setsockopt_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setsockopt(SB) -TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setsockopt_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setsockopt_trampoline_addr(SB)/8, $libc_setsockopt_trampoline<>(SB) + +TEXT libc_getpeername_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getpeername(SB) -TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getpeername_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getpeername_trampoline_addr(SB)/8, $libc_getpeername_trampoline<>(SB) + +TEXT libc_getsockname_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getsockname(SB) -TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getsockname_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getsockname_trampoline_addr(SB)/8, $libc_getsockname_trampoline<>(SB) + +TEXT libc_shutdown_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_shutdown(SB) -TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_shutdown_trampoline_addr(SB), RODATA, $8 +DATA ·libc_shutdown_trampoline_addr(SB)/8, $libc_shutdown_trampoline<>(SB) + +TEXT libc_socketpair_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_socketpair(SB) -TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_socketpair_trampoline_addr(SB), RODATA, $8 +DATA ·libc_socketpair_trampoline_addr(SB)/8, $libc_socketpair_trampoline<>(SB) + +TEXT libc_recvfrom_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_recvfrom(SB) -TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_recvfrom_trampoline_addr(SB), RODATA, $8 +DATA ·libc_recvfrom_trampoline_addr(SB)/8, $libc_recvfrom_trampoline<>(SB) + +TEXT libc_sendto_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sendto(SB) -TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_sendto_trampoline_addr(SB), RODATA, $8 +DATA ·libc_sendto_trampoline_addr(SB)/8, $libc_sendto_trampoline<>(SB) + +TEXT libc_recvmsg_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_recvmsg(SB) -TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_recvmsg_trampoline_addr(SB), RODATA, $8 +DATA ·libc_recvmsg_trampoline_addr(SB)/8, $libc_recvmsg_trampoline<>(SB) + +TEXT libc_sendmsg_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sendmsg(SB) -TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_sendmsg_trampoline_addr(SB), RODATA, $8 +DATA ·libc_sendmsg_trampoline_addr(SB)/8, $libc_sendmsg_trampoline<>(SB) + +TEXT libc_kevent_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_kevent(SB) -TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_kevent_trampoline_addr(SB), RODATA, $8 +DATA ·libc_kevent_trampoline_addr(SB)/8, $libc_kevent_trampoline<>(SB) + +TEXT libc_utimes_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_utimes(SB) -TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_utimes_trampoline_addr(SB), RODATA, $8 +DATA ·libc_utimes_trampoline_addr(SB)/8, $libc_utimes_trampoline<>(SB) + +TEXT libc_futimes_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_futimes(SB) -TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_futimes_trampoline_addr(SB), RODATA, $8 +DATA ·libc_futimes_trampoline_addr(SB)/8, $libc_futimes_trampoline<>(SB) + +TEXT libc_poll_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_poll(SB) -TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_poll_trampoline_addr(SB), RODATA, $8 +DATA ·libc_poll_trampoline_addr(SB)/8, $libc_poll_trampoline<>(SB) + +TEXT libc_madvise_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_madvise(SB) -TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_madvise_trampoline_addr(SB), RODATA, $8 +DATA ·libc_madvise_trampoline_addr(SB)/8, $libc_madvise_trampoline<>(SB) + +TEXT libc_mlock_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mlock(SB) -TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mlock_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mlock_trampoline_addr(SB)/8, $libc_mlock_trampoline<>(SB) + +TEXT libc_mlockall_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mlockall(SB) -TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mlockall_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mlockall_trampoline_addr(SB)/8, $libc_mlockall_trampoline<>(SB) + +TEXT libc_mprotect_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mprotect(SB) -TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mprotect_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mprotect_trampoline_addr(SB)/8, $libc_mprotect_trampoline<>(SB) + +TEXT libc_msync_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_msync(SB) -TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_msync_trampoline_addr(SB), RODATA, $8 +DATA ·libc_msync_trampoline_addr(SB)/8, $libc_msync_trampoline<>(SB) + +TEXT libc_munlock_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_munlock(SB) -TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_munlock_trampoline_addr(SB), RODATA, $8 +DATA ·libc_munlock_trampoline_addr(SB)/8, $libc_munlock_trampoline<>(SB) + +TEXT libc_munlockall_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_munlockall(SB) -TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_munlockall_trampoline_addr(SB), RODATA, $8 +DATA ·libc_munlockall_trampoline_addr(SB)/8, $libc_munlockall_trampoline<>(SB) + +TEXT libc_pipe_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_pipe(SB) -TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_pipe_trampoline_addr(SB), RODATA, $8 +DATA ·libc_pipe_trampoline_addr(SB)/8, $libc_pipe_trampoline<>(SB) + +TEXT libc_getxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getxattr(SB) -TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getxattr_trampoline_addr(SB)/8, $libc_getxattr_trampoline<>(SB) + +TEXT libc_fgetxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fgetxattr(SB) -TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fgetxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fgetxattr_trampoline_addr(SB)/8, $libc_fgetxattr_trampoline<>(SB) + +TEXT libc_setxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setxattr(SB) -TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setxattr_trampoline_addr(SB)/8, $libc_setxattr_trampoline<>(SB) + +TEXT libc_fsetxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fsetxattr(SB) -TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fsetxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fsetxattr_trampoline_addr(SB)/8, $libc_fsetxattr_trampoline<>(SB) + +TEXT libc_removexattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_removexattr(SB) -TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_removexattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_removexattr_trampoline_addr(SB)/8, $libc_removexattr_trampoline<>(SB) + +TEXT libc_fremovexattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fremovexattr(SB) -TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fremovexattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fremovexattr_trampoline_addr(SB)/8, $libc_fremovexattr_trampoline<>(SB) + +TEXT libc_listxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_listxattr(SB) -TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_listxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_listxattr_trampoline_addr(SB)/8, $libc_listxattr_trampoline<>(SB) + +TEXT libc_flistxattr_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_flistxattr(SB) -TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_flistxattr_trampoline_addr(SB), RODATA, $8 +DATA ·libc_flistxattr_trampoline_addr(SB)/8, $libc_flistxattr_trampoline<>(SB) + +TEXT libc_setattrlist_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setattrlist(SB) -TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setattrlist_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setattrlist_trampoline_addr(SB)/8, $libc_setattrlist_trampoline<>(SB) + +TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fcntl(SB) -TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fcntl_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fcntl_trampoline_addr(SB)/8, $libc_fcntl_trampoline<>(SB) + +TEXT libc_kill_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_kill(SB) -TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_kill_trampoline_addr(SB), RODATA, $8 +DATA ·libc_kill_trampoline_addr(SB)/8, $libc_kill_trampoline<>(SB) + +TEXT libc_ioctl_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_ioctl(SB) -TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_ioctl_trampoline_addr(SB), RODATA, $8 +DATA ·libc_ioctl_trampoline_addr(SB)/8, $libc_ioctl_trampoline<>(SB) + +TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sysctl(SB) -TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $8 +DATA ·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB) + +TEXT libc_sendfile_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sendfile(SB) -TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_sendfile_trampoline_addr(SB), RODATA, $8 +DATA ·libc_sendfile_trampoline_addr(SB)/8, $libc_sendfile_trampoline<>(SB) + +TEXT libc_access_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_access(SB) -TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_access_trampoline_addr(SB), RODATA, $8 +DATA ·libc_access_trampoline_addr(SB)/8, $libc_access_trampoline<>(SB) + +TEXT libc_adjtime_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_adjtime(SB) -TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_adjtime_trampoline_addr(SB), RODATA, $8 +DATA ·libc_adjtime_trampoline_addr(SB)/8, $libc_adjtime_trampoline<>(SB) + +TEXT libc_chdir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_chdir(SB) -TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_chdir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_chdir_trampoline_addr(SB)/8, $libc_chdir_trampoline<>(SB) + +TEXT libc_chflags_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_chflags(SB) -TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_chflags_trampoline_addr(SB), RODATA, $8 +DATA ·libc_chflags_trampoline_addr(SB)/8, $libc_chflags_trampoline<>(SB) + +TEXT libc_chmod_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_chmod(SB) -TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_chmod_trampoline_addr(SB), RODATA, $8 +DATA ·libc_chmod_trampoline_addr(SB)/8, $libc_chmod_trampoline<>(SB) + +TEXT libc_chown_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_chown(SB) -TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_chown_trampoline_addr(SB), RODATA, $8 +DATA ·libc_chown_trampoline_addr(SB)/8, $libc_chown_trampoline<>(SB) + +TEXT libc_chroot_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_chroot(SB) -TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_chroot_trampoline_addr(SB), RODATA, $8 +DATA ·libc_chroot_trampoline_addr(SB)/8, $libc_chroot_trampoline<>(SB) + +TEXT libc_clock_gettime_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_clock_gettime(SB) -TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_clock_gettime_trampoline_addr(SB), RODATA, $8 +DATA ·libc_clock_gettime_trampoline_addr(SB)/8, $libc_clock_gettime_trampoline<>(SB) + +TEXT libc_close_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_close(SB) -TEXT ·libc_clonefile_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_close_trampoline_addr(SB), RODATA, $8 +DATA ·libc_close_trampoline_addr(SB)/8, $libc_close_trampoline<>(SB) + +TEXT libc_clonefile_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_clonefile(SB) -TEXT ·libc_clonefileat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_clonefile_trampoline_addr(SB), RODATA, $8 +DATA ·libc_clonefile_trampoline_addr(SB)/8, $libc_clonefile_trampoline<>(SB) + +TEXT libc_clonefileat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_clonefileat(SB) -TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_clonefileat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_clonefileat_trampoline_addr(SB)/8, $libc_clonefileat_trampoline<>(SB) + +TEXT libc_dup_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_dup(SB) -TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_dup_trampoline_addr(SB), RODATA, $8 +DATA ·libc_dup_trampoline_addr(SB)/8, $libc_dup_trampoline<>(SB) + +TEXT libc_dup2_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_dup2(SB) -TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_dup2_trampoline_addr(SB), RODATA, $8 +DATA ·libc_dup2_trampoline_addr(SB)/8, $libc_dup2_trampoline<>(SB) + +TEXT libc_exchangedata_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_exchangedata(SB) -TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_exchangedata_trampoline_addr(SB), RODATA, $8 +DATA ·libc_exchangedata_trampoline_addr(SB)/8, $libc_exchangedata_trampoline<>(SB) + +TEXT libc_exit_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_exit(SB) -TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_exit_trampoline_addr(SB), RODATA, $8 +DATA ·libc_exit_trampoline_addr(SB)/8, $libc_exit_trampoline<>(SB) + +TEXT libc_faccessat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_faccessat(SB) -TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_faccessat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_faccessat_trampoline_addr(SB)/8, $libc_faccessat_trampoline<>(SB) + +TEXT libc_fchdir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchdir(SB) -TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchdir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchdir_trampoline_addr(SB)/8, $libc_fchdir_trampoline<>(SB) + +TEXT libc_fchflags_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchflags(SB) -TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchflags_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchflags_trampoline_addr(SB)/8, $libc_fchflags_trampoline<>(SB) + +TEXT libc_fchmod_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchmod(SB) -TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchmod_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchmod_trampoline_addr(SB)/8, $libc_fchmod_trampoline<>(SB) + +TEXT libc_fchmodat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchmodat(SB) -TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchmodat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchmodat_trampoline_addr(SB)/8, $libc_fchmodat_trampoline<>(SB) + +TEXT libc_fchown_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchown(SB) -TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchown_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchown_trampoline_addr(SB)/8, $libc_fchown_trampoline<>(SB) + +TEXT libc_fchownat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fchownat(SB) -TEXT ·libc_fclonefileat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fchownat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fchownat_trampoline_addr(SB)/8, $libc_fchownat_trampoline<>(SB) + +TEXT libc_fclonefileat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fclonefileat(SB) -TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fclonefileat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fclonefileat_trampoline_addr(SB)/8, $libc_fclonefileat_trampoline<>(SB) + +TEXT libc_flock_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_flock(SB) -TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_flock_trampoline_addr(SB), RODATA, $8 +DATA ·libc_flock_trampoline_addr(SB)/8, $libc_flock_trampoline<>(SB) + +TEXT libc_fpathconf_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fpathconf(SB) -TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fpathconf_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fpathconf_trampoline_addr(SB)/8, $libc_fpathconf_trampoline<>(SB) + +TEXT libc_fsync_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fsync(SB) -TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fsync_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fsync_trampoline_addr(SB)/8, $libc_fsync_trampoline<>(SB) + +TEXT libc_ftruncate_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_ftruncate(SB) -TEXT ·libc_getcwd_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_ftruncate_trampoline_addr(SB), RODATA, $8 +DATA ·libc_ftruncate_trampoline_addr(SB)/8, $libc_ftruncate_trampoline<>(SB) + +TEXT libc_getcwd_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getcwd(SB) -TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getcwd_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getcwd_trampoline_addr(SB)/8, $libc_getcwd_trampoline<>(SB) + +TEXT libc_getdtablesize_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getdtablesize(SB) -TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getdtablesize_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getdtablesize_trampoline_addr(SB)/8, $libc_getdtablesize_trampoline<>(SB) + +TEXT libc_getegid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getegid(SB) -TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getegid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getegid_trampoline_addr(SB)/8, $libc_getegid_trampoline<>(SB) + +TEXT libc_geteuid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_geteuid(SB) -TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_geteuid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_geteuid_trampoline_addr(SB)/8, $libc_geteuid_trampoline<>(SB) + +TEXT libc_getgid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getgid(SB) -TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getgid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getgid_trampoline_addr(SB)/8, $libc_getgid_trampoline<>(SB) + +TEXT libc_getpgid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getpgid(SB) -TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getpgid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getpgid_trampoline_addr(SB)/8, $libc_getpgid_trampoline<>(SB) + +TEXT libc_getpgrp_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getpgrp(SB) -TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getpgrp_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getpgrp_trampoline_addr(SB)/8, $libc_getpgrp_trampoline<>(SB) + +TEXT libc_getpid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getpid(SB) -TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getpid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getpid_trampoline_addr(SB)/8, $libc_getpid_trampoline<>(SB) + +TEXT libc_getppid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getppid(SB) -TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getppid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getppid_trampoline_addr(SB)/8, $libc_getppid_trampoline<>(SB) + +TEXT libc_getpriority_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getpriority(SB) -TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getpriority_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getpriority_trampoline_addr(SB)/8, $libc_getpriority_trampoline<>(SB) + +TEXT libc_getrlimit_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getrlimit(SB) -TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getrlimit_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getrlimit_trampoline_addr(SB)/8, $libc_getrlimit_trampoline<>(SB) + +TEXT libc_getrusage_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getrusage(SB) -TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getrusage_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getrusage_trampoline_addr(SB)/8, $libc_getrusage_trampoline<>(SB) + +TEXT libc_getsid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getsid(SB) -TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getsid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getsid_trampoline_addr(SB)/8, $libc_getsid_trampoline<>(SB) + +TEXT libc_gettimeofday_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_gettimeofday(SB) -TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_gettimeofday_trampoline_addr(SB), RODATA, $8 +DATA ·libc_gettimeofday_trampoline_addr(SB)/8, $libc_gettimeofday_trampoline<>(SB) + +TEXT libc_getuid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getuid(SB) -TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getuid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getuid_trampoline_addr(SB)/8, $libc_getuid_trampoline<>(SB) + +TEXT libc_issetugid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_issetugid(SB) -TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_issetugid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_issetugid_trampoline_addr(SB)/8, $libc_issetugid_trampoline<>(SB) + +TEXT libc_kqueue_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_kqueue(SB) -TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_kqueue_trampoline_addr(SB), RODATA, $8 +DATA ·libc_kqueue_trampoline_addr(SB)/8, $libc_kqueue_trampoline<>(SB) + +TEXT libc_lchown_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_lchown(SB) -TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_lchown_trampoline_addr(SB), RODATA, $8 +DATA ·libc_lchown_trampoline_addr(SB)/8, $libc_lchown_trampoline<>(SB) + +TEXT libc_link_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_link(SB) -TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_link_trampoline_addr(SB), RODATA, $8 +DATA ·libc_link_trampoline_addr(SB)/8, $libc_link_trampoline<>(SB) + +TEXT libc_linkat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_linkat(SB) -TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_linkat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_linkat_trampoline_addr(SB)/8, $libc_linkat_trampoline<>(SB) + +TEXT libc_listen_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_listen(SB) -TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_listen_trampoline_addr(SB), RODATA, $8 +DATA ·libc_listen_trampoline_addr(SB)/8, $libc_listen_trampoline<>(SB) + +TEXT libc_mkdir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mkdir(SB) -TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mkdir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mkdir_trampoline_addr(SB)/8, $libc_mkdir_trampoline<>(SB) + +TEXT libc_mkdirat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mkdirat(SB) -TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mkdirat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mkdirat_trampoline_addr(SB)/8, $libc_mkdirat_trampoline<>(SB) + +TEXT libc_mkfifo_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mkfifo(SB) -TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mkfifo_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mkfifo_trampoline_addr(SB)/8, $libc_mkfifo_trampoline<>(SB) + +TEXT libc_mknod_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mknod(SB) -TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mknod_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mknod_trampoline_addr(SB)/8, $libc_mknod_trampoline<>(SB) + +TEXT libc_open_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_open(SB) -TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_open_trampoline_addr(SB), RODATA, $8 +DATA ·libc_open_trampoline_addr(SB)/8, $libc_open_trampoline<>(SB) + +TEXT libc_openat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_openat(SB) -TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_openat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_openat_trampoline_addr(SB)/8, $libc_openat_trampoline<>(SB) + +TEXT libc_pathconf_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_pathconf(SB) -TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_pathconf_trampoline_addr(SB), RODATA, $8 +DATA ·libc_pathconf_trampoline_addr(SB)/8, $libc_pathconf_trampoline<>(SB) + +TEXT libc_pread_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_pread(SB) -TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_pread_trampoline_addr(SB), RODATA, $8 +DATA ·libc_pread_trampoline_addr(SB)/8, $libc_pread_trampoline<>(SB) + +TEXT libc_pwrite_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_pwrite(SB) -TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_pwrite_trampoline_addr(SB), RODATA, $8 +DATA ·libc_pwrite_trampoline_addr(SB)/8, $libc_pwrite_trampoline<>(SB) + +TEXT libc_read_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_read(SB) -TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_read_trampoline_addr(SB), RODATA, $8 +DATA ·libc_read_trampoline_addr(SB)/8, $libc_read_trampoline<>(SB) + +TEXT libc_readlink_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_readlink(SB) -TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_readlink_trampoline_addr(SB), RODATA, $8 +DATA ·libc_readlink_trampoline_addr(SB)/8, $libc_readlink_trampoline<>(SB) + +TEXT libc_readlinkat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_readlinkat(SB) -TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_readlinkat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_readlinkat_trampoline_addr(SB)/8, $libc_readlinkat_trampoline<>(SB) + +TEXT libc_rename_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_rename(SB) -TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_rename_trampoline_addr(SB), RODATA, $8 +DATA ·libc_rename_trampoline_addr(SB)/8, $libc_rename_trampoline<>(SB) + +TEXT libc_renameat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_renameat(SB) -TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_renameat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_renameat_trampoline_addr(SB)/8, $libc_renameat_trampoline<>(SB) + +TEXT libc_revoke_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_revoke(SB) -TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_revoke_trampoline_addr(SB), RODATA, $8 +DATA ·libc_revoke_trampoline_addr(SB)/8, $libc_revoke_trampoline<>(SB) + +TEXT libc_rmdir_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_rmdir(SB) -TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_rmdir_trampoline_addr(SB), RODATA, $8 +DATA ·libc_rmdir_trampoline_addr(SB)/8, $libc_rmdir_trampoline<>(SB) + +TEXT libc_lseek_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_lseek(SB) -TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_lseek_trampoline_addr(SB), RODATA, $8 +DATA ·libc_lseek_trampoline_addr(SB)/8, $libc_lseek_trampoline<>(SB) + +TEXT libc_select_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_select(SB) -TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_select_trampoline_addr(SB), RODATA, $8 +DATA ·libc_select_trampoline_addr(SB)/8, $libc_select_trampoline<>(SB) + +TEXT libc_setegid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setegid(SB) -TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setegid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setegid_trampoline_addr(SB)/8, $libc_setegid_trampoline<>(SB) + +TEXT libc_seteuid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_seteuid(SB) -TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_seteuid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_seteuid_trampoline_addr(SB)/8, $libc_seteuid_trampoline<>(SB) + +TEXT libc_setgid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setgid(SB) -TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setgid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setgid_trampoline_addr(SB)/8, $libc_setgid_trampoline<>(SB) + +TEXT libc_setlogin_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setlogin(SB) -TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setlogin_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setlogin_trampoline_addr(SB)/8, $libc_setlogin_trampoline<>(SB) + +TEXT libc_setpgid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setpgid(SB) -TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setpgid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setpgid_trampoline_addr(SB)/8, $libc_setpgid_trampoline<>(SB) + +TEXT libc_setpriority_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setpriority(SB) -TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setpriority_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setpriority_trampoline_addr(SB)/8, $libc_setpriority_trampoline<>(SB) + +TEXT libc_setprivexec_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setprivexec(SB) -TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setprivexec_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setprivexec_trampoline_addr(SB)/8, $libc_setprivexec_trampoline<>(SB) + +TEXT libc_setregid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setregid(SB) -TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setregid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setregid_trampoline_addr(SB)/8, $libc_setregid_trampoline<>(SB) + +TEXT libc_setreuid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setreuid(SB) -TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setreuid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setreuid_trampoline_addr(SB)/8, $libc_setreuid_trampoline<>(SB) + +TEXT libc_setrlimit_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setrlimit(SB) -TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setrlimit_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setrlimit_trampoline_addr(SB)/8, $libc_setrlimit_trampoline<>(SB) + +TEXT libc_setsid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setsid(SB) -TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setsid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setsid_trampoline_addr(SB)/8, $libc_setsid_trampoline<>(SB) + +TEXT libc_settimeofday_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_settimeofday(SB) -TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_settimeofday_trampoline_addr(SB), RODATA, $8 +DATA ·libc_settimeofday_trampoline_addr(SB)/8, $libc_settimeofday_trampoline<>(SB) + +TEXT libc_setuid_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_setuid(SB) -TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_setuid_trampoline_addr(SB), RODATA, $8 +DATA ·libc_setuid_trampoline_addr(SB)/8, $libc_setuid_trampoline<>(SB) + +TEXT libc_symlink_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_symlink(SB) -TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_symlink_trampoline_addr(SB), RODATA, $8 +DATA ·libc_symlink_trampoline_addr(SB)/8, $libc_symlink_trampoline<>(SB) + +TEXT libc_symlinkat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_symlinkat(SB) -TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_symlinkat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_symlinkat_trampoline_addr(SB)/8, $libc_symlinkat_trampoline<>(SB) + +TEXT libc_sync_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_sync(SB) -TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_sync_trampoline_addr(SB), RODATA, $8 +DATA ·libc_sync_trampoline_addr(SB)/8, $libc_sync_trampoline<>(SB) + +TEXT libc_truncate_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_truncate(SB) -TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_truncate_trampoline_addr(SB), RODATA, $8 +DATA ·libc_truncate_trampoline_addr(SB)/8, $libc_truncate_trampoline<>(SB) + +TEXT libc_umask_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_umask(SB) -TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_umask_trampoline_addr(SB), RODATA, $8 +DATA ·libc_umask_trampoline_addr(SB)/8, $libc_umask_trampoline<>(SB) + +TEXT libc_undelete_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_undelete(SB) -TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_undelete_trampoline_addr(SB), RODATA, $8 +DATA ·libc_undelete_trampoline_addr(SB)/8, $libc_undelete_trampoline<>(SB) + +TEXT libc_unlink_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_unlink(SB) -TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_unlink_trampoline_addr(SB), RODATA, $8 +DATA ·libc_unlink_trampoline_addr(SB)/8, $libc_unlink_trampoline<>(SB) + +TEXT libc_unlinkat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_unlinkat(SB) -TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_unlinkat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_unlinkat_trampoline_addr(SB)/8, $libc_unlinkat_trampoline<>(SB) + +TEXT libc_unmount_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_unmount(SB) -TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_unmount_trampoline_addr(SB), RODATA, $8 +DATA ·libc_unmount_trampoline_addr(SB)/8, $libc_unmount_trampoline<>(SB) + +TEXT libc_write_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_write(SB) -TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_write_trampoline_addr(SB), RODATA, $8 +DATA ·libc_write_trampoline_addr(SB)/8, $libc_write_trampoline<>(SB) + +TEXT libc_mmap_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_mmap(SB) -TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_mmap_trampoline_addr(SB), RODATA, $8 +DATA ·libc_mmap_trampoline_addr(SB)/8, $libc_mmap_trampoline<>(SB) + +TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_munmap(SB) -TEXT ·libc_fstat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_munmap_trampoline_addr(SB), RODATA, $8 +DATA ·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB) + +TEXT libc_fstat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fstat(SB) -TEXT ·libc_fstatat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fstat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fstat_trampoline_addr(SB)/8, $libc_fstat_trampoline<>(SB) + +TEXT libc_fstatat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fstatat(SB) -TEXT ·libc_fstatfs_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fstatat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fstatat_trampoline_addr(SB)/8, $libc_fstatat_trampoline<>(SB) + +TEXT libc_fstatfs_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_fstatfs(SB) -TEXT ·libc_getfsstat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_fstatfs_trampoline_addr(SB), RODATA, $8 +DATA ·libc_fstatfs_trampoline_addr(SB)/8, $libc_fstatfs_trampoline<>(SB) + +TEXT libc_getfsstat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_getfsstat(SB) -TEXT ·libc_lstat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_getfsstat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_getfsstat_trampoline_addr(SB)/8, $libc_getfsstat_trampoline<>(SB) + +TEXT libc_lstat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_lstat(SB) -TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_lstat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_lstat_trampoline_addr(SB)/8, $libc_lstat_trampoline<>(SB) + +TEXT libc_ptrace_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_ptrace(SB) -TEXT ·libc_stat_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_ptrace_trampoline_addr(SB), RODATA, $8 +DATA ·libc_ptrace_trampoline_addr(SB)/8, $libc_ptrace_trampoline<>(SB) + +TEXT libc_stat_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_stat(SB) -TEXT ·libc_statfs_trampoline(SB),NOSPLIT,$0-0 + +GLOBL ·libc_stat_trampoline_addr(SB), RODATA, $8 +DATA ·libc_stat_trampoline_addr(SB)/8, $libc_stat_trampoline<>(SB) + +TEXT libc_statfs_trampoline<>(SB),NOSPLIT,$0-0 JMP libc_statfs(SB) + +GLOBL ·libc_statfs_trampoline_addr(SB), RODATA, $8 +DATA ·libc_statfs_trampoline_addr(SB)/8, $libc_statfs_trampoline<>(SB) diff --git a/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go b/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go index 8285ab841..f2079457c 100644 --- a/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go +++ b/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go @@ -364,6 +364,22 @@ func Dup2(oldfd int, newfd int) (err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT +func Errno2() (er2 int) { + uer2, _, _ := syscall_syscall(SYS___ERRNO2, 0, 0, 0) + er2 = int(uer2) + return +} + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + +func Err2ad() (eadd *int) { + ueadd, _, _ := syscall_syscall(SYS___ERR2AD, 0, 0, 0) + eadd = (*int)(unsafe.Pointer(ueadd)) + return +} + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + func Exit(code int) { syscall_syscall(SYS_EXIT, uintptr(code), 0, 0) return @@ -531,7 +547,18 @@ func W_Getmntent(buff *byte, size int) (lastsys int, err error) { // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -func Mount(path string, filesystem string, fstype string, mtm uint32, parmlen int32, parm string) (err error) { +func W_Getmntent_A(buff *byte, size int) (lastsys int, err error) { + r0, _, e1 := syscall_syscall(SYS___W_GETMNTENT_A, uintptr(unsafe.Pointer(buff)), uintptr(size), 0) + lastsys = int(r0) + if e1 != 0 { + err = errnoErr(e1) + } + return +} + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + +func mount_LE(path string, filesystem string, fstype string, mtm uint32, parmlen int32, parm string) (err error) { var _p0 *byte _p0, err = BytePtrFromString(path) if err != nil { @@ -561,7 +588,7 @@ func Mount(path string, filesystem string, fstype string, mtm uint32, parmlen in // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -func Unmount(filesystem string, mtm int) (err error) { +func unmount(filesystem string, mtm int) (err error) { var _p0 *byte _p0, err = BytePtrFromString(filesystem) if err != nil { @@ -1215,3 +1242,14 @@ func utimes(path string, timeval *[2]Timeval) (err error) { } return } + +// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT + +func Select(nmsgsfds int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (ret int, err error) { + r0, _, e1 := syscall_syscall6(SYS_SELECT, uintptr(nmsgsfds), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) + ret = int(r0) + if e1 != 0 { + err = errnoErr(e1) + } + return +} diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go deleted file mode 100644 index 1794ffc92..000000000 --- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go +++ /dev/null @@ -1,438 +0,0 @@ -// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/sys/syscall.h -// Code generated by the command above; see README.md. DO NOT EDIT. - -//go:build 386 && darwin -// +build 386,darwin - -package unix - -// Deprecated: Use libSystem wrappers instead of direct syscalls. -const ( - SYS_SYSCALL = 0 - SYS_EXIT = 1 - SYS_FORK = 2 - SYS_READ = 3 - SYS_WRITE = 4 - SYS_OPEN = 5 - SYS_CLOSE = 6 - SYS_WAIT4 = 7 - SYS_LINK = 9 - SYS_UNLINK = 10 - SYS_CHDIR = 12 - SYS_FCHDIR = 13 - SYS_MKNOD = 14 - SYS_CHMOD = 15 - SYS_CHOWN = 16 - SYS_GETFSSTAT = 18 - SYS_GETPID = 20 - SYS_SETUID = 23 - SYS_GETUID = 24 - SYS_GETEUID = 25 - SYS_PTRACE = 26 - SYS_RECVMSG = 27 - SYS_SENDMSG = 28 - SYS_RECVFROM = 29 - SYS_ACCEPT = 30 - SYS_GETPEERNAME = 31 - SYS_GETSOCKNAME = 32 - SYS_ACCESS = 33 - SYS_CHFLAGS = 34 - SYS_FCHFLAGS = 35 - SYS_SYNC = 36 - SYS_KILL = 37 - SYS_GETPPID = 39 - SYS_DUP = 41 - SYS_PIPE = 42 - SYS_GETEGID = 43 - SYS_SIGACTION = 46 - SYS_GETGID = 47 - SYS_SIGPROCMASK = 48 - SYS_GETLOGIN = 49 - SYS_SETLOGIN = 50 - SYS_ACCT = 51 - SYS_SIGPENDING = 52 - SYS_SIGALTSTACK = 53 - SYS_IOCTL = 54 - SYS_REBOOT = 55 - SYS_REVOKE = 56 - SYS_SYMLINK = 57 - SYS_READLINK = 58 - SYS_EXECVE = 59 - SYS_UMASK = 60 - SYS_CHROOT = 61 - SYS_MSYNC = 65 - SYS_VFORK = 66 - SYS_MUNMAP = 73 - SYS_MPROTECT = 74 - SYS_MADVISE = 75 - SYS_MINCORE = 78 - SYS_GETGROUPS = 79 - SYS_SETGROUPS = 80 - SYS_GETPGRP = 81 - SYS_SETPGID = 82 - SYS_SETITIMER = 83 - SYS_SWAPON = 85 - SYS_GETITIMER = 86 - SYS_GETDTABLESIZE = 89 - SYS_DUP2 = 90 - SYS_FCNTL = 92 - SYS_SELECT = 93 - SYS_FSYNC = 95 - SYS_SETPRIORITY = 96 - SYS_SOCKET = 97 - SYS_CONNECT = 98 - SYS_GETPRIORITY = 100 - SYS_BIND = 104 - SYS_SETSOCKOPT = 105 - SYS_LISTEN = 106 - SYS_SIGSUSPEND = 111 - SYS_GETTIMEOFDAY = 116 - SYS_GETRUSAGE = 117 - SYS_GETSOCKOPT = 118 - SYS_READV = 120 - SYS_WRITEV = 121 - SYS_SETTIMEOFDAY = 122 - SYS_FCHOWN = 123 - SYS_FCHMOD = 124 - SYS_SETREUID = 126 - SYS_SETREGID = 127 - SYS_RENAME = 128 - SYS_FLOCK = 131 - SYS_MKFIFO = 132 - SYS_SENDTO = 133 - SYS_SHUTDOWN = 134 - SYS_SOCKETPAIR = 135 - SYS_MKDIR = 136 - SYS_RMDIR = 137 - SYS_UTIMES = 138 - SYS_FUTIMES = 139 - SYS_ADJTIME = 140 - SYS_GETHOSTUUID = 142 - SYS_SETSID = 147 - SYS_GETPGID = 151 - SYS_SETPRIVEXEC = 152 - SYS_PREAD = 153 - SYS_PWRITE = 154 - SYS_NFSSVC = 155 - SYS_STATFS = 157 - SYS_FSTATFS = 158 - SYS_UNMOUNT = 159 - SYS_GETFH = 161 - SYS_QUOTACTL = 165 - SYS_MOUNT = 167 - SYS_CSOPS = 169 - SYS_CSOPS_AUDITTOKEN = 170 - SYS_WAITID = 173 - SYS_KDEBUG_TYPEFILTER = 177 - SYS_KDEBUG_TRACE_STRING = 178 - SYS_KDEBUG_TRACE64 = 179 - SYS_KDEBUG_TRACE = 180 - SYS_SETGID = 181 - SYS_SETEGID = 182 - SYS_SETEUID = 183 - SYS_SIGRETURN = 184 - SYS_THREAD_SELFCOUNTS = 186 - SYS_FDATASYNC = 187 - SYS_STAT = 188 - SYS_FSTAT = 189 - SYS_LSTAT = 190 - SYS_PATHCONF = 191 - SYS_FPATHCONF = 192 - SYS_GETRLIMIT = 194 - SYS_SETRLIMIT = 195 - SYS_GETDIRENTRIES = 196 - SYS_MMAP = 197 - SYS_LSEEK = 199 - SYS_TRUNCATE = 200 - SYS_FTRUNCATE = 201 - SYS_SYSCTL = 202 - SYS_MLOCK = 203 - SYS_MUNLOCK = 204 - SYS_UNDELETE = 205 - SYS_OPEN_DPROTECTED_NP = 216 - SYS_GETATTRLIST = 220 - SYS_SETATTRLIST = 221 - SYS_GETDIRENTRIESATTR = 222 - SYS_EXCHANGEDATA = 223 - SYS_SEARCHFS = 225 - SYS_DELETE = 226 - SYS_COPYFILE = 227 - SYS_FGETATTRLIST = 228 - SYS_FSETATTRLIST = 229 - SYS_POLL = 230 - SYS_WATCHEVENT = 231 - SYS_WAITEVENT = 232 - SYS_MODWATCH = 233 - SYS_GETXATTR = 234 - SYS_FGETXATTR = 235 - SYS_SETXATTR = 236 - SYS_FSETXATTR = 237 - SYS_REMOVEXATTR = 238 - SYS_FREMOVEXATTR = 239 - SYS_LISTXATTR = 240 - SYS_FLISTXATTR = 241 - SYS_FSCTL = 242 - SYS_INITGROUPS = 243 - SYS_POSIX_SPAWN = 244 - SYS_FFSCTL = 245 - SYS_NFSCLNT = 247 - SYS_FHOPEN = 248 - SYS_MINHERIT = 250 - SYS_SEMSYS = 251 - SYS_MSGSYS = 252 - SYS_SHMSYS = 253 - SYS_SEMCTL = 254 - SYS_SEMGET = 255 - SYS_SEMOP = 256 - SYS_MSGCTL = 258 - SYS_MSGGET = 259 - SYS_MSGSND = 260 - SYS_MSGRCV = 261 - SYS_SHMAT = 262 - SYS_SHMCTL = 263 - SYS_SHMDT = 264 - SYS_SHMGET = 265 - SYS_SHM_OPEN = 266 - SYS_SHM_UNLINK = 267 - SYS_SEM_OPEN = 268 - SYS_SEM_CLOSE = 269 - SYS_SEM_UNLINK = 270 - SYS_SEM_WAIT = 271 - SYS_SEM_TRYWAIT = 272 - SYS_SEM_POST = 273 - SYS_SYSCTLBYNAME = 274 - SYS_OPEN_EXTENDED = 277 - SYS_UMASK_EXTENDED = 278 - SYS_STAT_EXTENDED = 279 - SYS_LSTAT_EXTENDED = 280 - SYS_FSTAT_EXTENDED = 281 - SYS_CHMOD_EXTENDED = 282 - SYS_FCHMOD_EXTENDED = 283 - SYS_ACCESS_EXTENDED = 284 - SYS_SETTID = 285 - SYS_GETTID = 286 - SYS_SETSGROUPS = 287 - SYS_GETSGROUPS = 288 - SYS_SETWGROUPS = 289 - SYS_GETWGROUPS = 290 - SYS_MKFIFO_EXTENDED = 291 - SYS_MKDIR_EXTENDED = 292 - SYS_IDENTITYSVC = 293 - SYS_SHARED_REGION_CHECK_NP = 294 - SYS_VM_PRESSURE_MONITOR = 296 - SYS_PSYNCH_RW_LONGRDLOCK = 297 - SYS_PSYNCH_RW_YIELDWRLOCK = 298 - SYS_PSYNCH_RW_DOWNGRADE = 299 - SYS_PSYNCH_RW_UPGRADE = 300 - SYS_PSYNCH_MUTEXWAIT = 301 - SYS_PSYNCH_MUTEXDROP = 302 - SYS_PSYNCH_CVBROAD = 303 - SYS_PSYNCH_CVSIGNAL = 304 - SYS_PSYNCH_CVWAIT = 305 - SYS_PSYNCH_RW_RDLOCK = 306 - SYS_PSYNCH_RW_WRLOCK = 307 - SYS_PSYNCH_RW_UNLOCK = 308 - SYS_PSYNCH_RW_UNLOCK2 = 309 - SYS_GETSID = 310 - SYS_SETTID_WITH_PID = 311 - SYS_PSYNCH_CVCLRPREPOST = 312 - SYS_AIO_FSYNC = 313 - SYS_AIO_RETURN = 314 - SYS_AIO_SUSPEND = 315 - SYS_AIO_CANCEL = 316 - SYS_AIO_ERROR = 317 - SYS_AIO_READ = 318 - SYS_AIO_WRITE = 319 - SYS_LIO_LISTIO = 320 - SYS_IOPOLICYSYS = 322 - SYS_PROCESS_POLICY = 323 - SYS_MLOCKALL = 324 - SYS_MUNLOCKALL = 325 - SYS_ISSETUGID = 327 - SYS___PTHREAD_KILL = 328 - SYS___PTHREAD_SIGMASK = 329 - SYS___SIGWAIT = 330 - SYS___DISABLE_THREADSIGNAL = 331 - SYS___PTHREAD_MARKCANCEL = 332 - SYS___PTHREAD_CANCELED = 333 - SYS___SEMWAIT_SIGNAL = 334 - SYS_PROC_INFO = 336 - SYS_SENDFILE = 337 - SYS_STAT64 = 338 - SYS_FSTAT64 = 339 - SYS_LSTAT64 = 340 - SYS_STAT64_EXTENDED = 341 - SYS_LSTAT64_EXTENDED = 342 - SYS_FSTAT64_EXTENDED = 343 - SYS_GETDIRENTRIES64 = 344 - SYS_STATFS64 = 345 - SYS_FSTATFS64 = 346 - SYS_GETFSSTAT64 = 347 - SYS___PTHREAD_CHDIR = 348 - SYS___PTHREAD_FCHDIR = 349 - SYS_AUDIT = 350 - SYS_AUDITON = 351 - SYS_GETAUID = 353 - SYS_SETAUID = 354 - SYS_GETAUDIT_ADDR = 357 - SYS_SETAUDIT_ADDR = 358 - SYS_AUDITCTL = 359 - SYS_BSDTHREAD_CREATE = 360 - SYS_BSDTHREAD_TERMINATE = 361 - SYS_KQUEUE = 362 - SYS_KEVENT = 363 - SYS_LCHOWN = 364 - SYS_BSDTHREAD_REGISTER = 366 - SYS_WORKQ_OPEN = 367 - SYS_WORKQ_KERNRETURN = 368 - SYS_KEVENT64 = 369 - SYS___OLD_SEMWAIT_SIGNAL = 370 - SYS___OLD_SEMWAIT_SIGNAL_NOCANCEL = 371 - SYS_THREAD_SELFID = 372 - SYS_LEDGER = 373 - SYS_KEVENT_QOS = 374 - SYS_KEVENT_ID = 375 - SYS___MAC_EXECVE = 380 - SYS___MAC_SYSCALL = 381 - SYS___MAC_GET_FILE = 382 - SYS___MAC_SET_FILE = 383 - SYS___MAC_GET_LINK = 384 - SYS___MAC_SET_LINK = 385 - SYS___MAC_GET_PROC = 386 - SYS___MAC_SET_PROC = 387 - SYS___MAC_GET_FD = 388 - SYS___MAC_SET_FD = 389 - SYS___MAC_GET_PID = 390 - SYS_PSELECT = 394 - SYS_PSELECT_NOCANCEL = 395 - SYS_READ_NOCANCEL = 396 - SYS_WRITE_NOCANCEL = 397 - SYS_OPEN_NOCANCEL = 398 - SYS_CLOSE_NOCANCEL = 399 - SYS_WAIT4_NOCANCEL = 400 - SYS_RECVMSG_NOCANCEL = 401 - SYS_SENDMSG_NOCANCEL = 402 - SYS_RECVFROM_NOCANCEL = 403 - SYS_ACCEPT_NOCANCEL = 404 - SYS_MSYNC_NOCANCEL = 405 - SYS_FCNTL_NOCANCEL = 406 - SYS_SELECT_NOCANCEL = 407 - SYS_FSYNC_NOCANCEL = 408 - SYS_CONNECT_NOCANCEL = 409 - SYS_SIGSUSPEND_NOCANCEL = 410 - SYS_READV_NOCANCEL = 411 - SYS_WRITEV_NOCANCEL = 412 - SYS_SENDTO_NOCANCEL = 413 - SYS_PREAD_NOCANCEL = 414 - SYS_PWRITE_NOCANCEL = 415 - SYS_WAITID_NOCANCEL = 416 - SYS_POLL_NOCANCEL = 417 - SYS_MSGSND_NOCANCEL = 418 - SYS_MSGRCV_NOCANCEL = 419 - SYS_SEM_WAIT_NOCANCEL = 420 - SYS_AIO_SUSPEND_NOCANCEL = 421 - SYS___SIGWAIT_NOCANCEL = 422 - SYS___SEMWAIT_SIGNAL_NOCANCEL = 423 - SYS___MAC_MOUNT = 424 - SYS___MAC_GET_MOUNT = 425 - SYS___MAC_GETFSSTAT = 426 - SYS_FSGETPATH = 427 - SYS_AUDIT_SESSION_SELF = 428 - SYS_AUDIT_SESSION_JOIN = 429 - SYS_FILEPORT_MAKEPORT = 430 - SYS_FILEPORT_MAKEFD = 431 - SYS_AUDIT_SESSION_PORT = 432 - SYS_PID_SUSPEND = 433 - SYS_PID_RESUME = 434 - SYS_PID_HIBERNATE = 435 - SYS_PID_SHUTDOWN_SOCKETS = 436 - SYS_SHARED_REGION_MAP_AND_SLIDE_NP = 438 - SYS_KAS_INFO = 439 - SYS_MEMORYSTATUS_CONTROL = 440 - SYS_GUARDED_OPEN_NP = 441 - SYS_GUARDED_CLOSE_NP = 442 - SYS_GUARDED_KQUEUE_NP = 443 - SYS_CHANGE_FDGUARD_NP = 444 - SYS_USRCTL = 445 - SYS_PROC_RLIMIT_CONTROL = 446 - SYS_CONNECTX = 447 - SYS_DISCONNECTX = 448 - SYS_PEELOFF = 449 - SYS_SOCKET_DELEGATE = 450 - SYS_TELEMETRY = 451 - SYS_PROC_UUID_POLICY = 452 - SYS_MEMORYSTATUS_GET_LEVEL = 453 - SYS_SYSTEM_OVERRIDE = 454 - SYS_VFS_PURGE = 455 - SYS_SFI_CTL = 456 - SYS_SFI_PIDCTL = 457 - SYS_COALITION = 458 - SYS_COALITION_INFO = 459 - SYS_NECP_MATCH_POLICY = 460 - SYS_GETATTRLISTBULK = 461 - SYS_CLONEFILEAT = 462 - SYS_OPENAT = 463 - SYS_OPENAT_NOCANCEL = 464 - SYS_RENAMEAT = 465 - SYS_FACCESSAT = 466 - SYS_FCHMODAT = 467 - SYS_FCHOWNAT = 468 - SYS_FSTATAT = 469 - SYS_FSTATAT64 = 470 - SYS_LINKAT = 471 - SYS_UNLINKAT = 472 - SYS_READLINKAT = 473 - SYS_SYMLINKAT = 474 - SYS_MKDIRAT = 475 - SYS_GETATTRLISTAT = 476 - SYS_PROC_TRACE_LOG = 477 - SYS_BSDTHREAD_CTL = 478 - SYS_OPENBYID_NP = 479 - SYS_RECVMSG_X = 480 - SYS_SENDMSG_X = 481 - SYS_THREAD_SELFUSAGE = 482 - SYS_CSRCTL = 483 - SYS_GUARDED_OPEN_DPROTECTED_NP = 484 - SYS_GUARDED_WRITE_NP = 485 - SYS_GUARDED_PWRITE_NP = 486 - SYS_GUARDED_WRITEV_NP = 487 - SYS_RENAMEATX_NP = 488 - SYS_MREMAP_ENCRYPTED = 489 - SYS_NETAGENT_TRIGGER = 490 - SYS_STACK_SNAPSHOT_WITH_CONFIG = 491 - SYS_MICROSTACKSHOT = 492 - SYS_GRAB_PGO_DATA = 493 - SYS_PERSONA = 494 - SYS_WORK_INTERVAL_CTL = 499 - SYS_GETENTROPY = 500 - SYS_NECP_OPEN = 501 - SYS_NECP_CLIENT_ACTION = 502 - SYS___NEXUS_OPEN = 503 - SYS___NEXUS_REGISTER = 504 - SYS___NEXUS_DEREGISTER = 505 - SYS___NEXUS_CREATE = 506 - SYS___NEXUS_DESTROY = 507 - SYS___NEXUS_GET_OPT = 508 - SYS___NEXUS_SET_OPT = 509 - SYS___CHANNEL_OPEN = 510 - SYS___CHANNEL_GET_INFO = 511 - SYS___CHANNEL_SYNC = 512 - SYS___CHANNEL_GET_OPT = 513 - SYS___CHANNEL_SET_OPT = 514 - SYS_ULOCK_WAIT = 515 - SYS_ULOCK_WAKE = 516 - SYS_FCLONEFILEAT = 517 - SYS_FS_SNAPSHOT = 518 - SYS_TERMINATE_WITH_PAYLOAD = 520 - SYS_ABORT_WITH_PAYLOAD = 521 - SYS_NECP_SESSION_OPEN = 522 - SYS_NECP_SESSION_ACTION = 523 - SYS_SETATTRLISTAT = 524 - SYS_NET_QOS_GUIDELINE = 525 - SYS_FMOUNT = 526 - SYS_NTP_ADJTIME = 527 - SYS_NTP_GETTIME = 528 - SYS_OS_FAULT_WITH_PAYLOAD = 529 - SYS_MAXSYSCALL = 530 - SYS_INVALID = 63 -) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go deleted file mode 100644 index 6dc736449..000000000 --- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go +++ /dev/null @@ -1,438 +0,0 @@ -// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.1.sdk/usr/include/sys/syscall.h -// Code generated by the command above; see README.md. DO NOT EDIT. - -//go:build arm && darwin -// +build arm,darwin - -package unix - -// Deprecated: Use libSystem wrappers instead of direct syscalls. -const ( - SYS_SYSCALL = 0 - SYS_EXIT = 1 - SYS_FORK = 2 - SYS_READ = 3 - SYS_WRITE = 4 - SYS_OPEN = 5 - SYS_CLOSE = 6 - SYS_WAIT4 = 7 - SYS_LINK = 9 - SYS_UNLINK = 10 - SYS_CHDIR = 12 - SYS_FCHDIR = 13 - SYS_MKNOD = 14 - SYS_CHMOD = 15 - SYS_CHOWN = 16 - SYS_GETFSSTAT = 18 - SYS_GETPID = 20 - SYS_SETUID = 23 - SYS_GETUID = 24 - SYS_GETEUID = 25 - SYS_PTRACE = 26 - SYS_RECVMSG = 27 - SYS_SENDMSG = 28 - SYS_RECVFROM = 29 - SYS_ACCEPT = 30 - SYS_GETPEERNAME = 31 - SYS_GETSOCKNAME = 32 - SYS_ACCESS = 33 - SYS_CHFLAGS = 34 - SYS_FCHFLAGS = 35 - SYS_SYNC = 36 - SYS_KILL = 37 - SYS_GETPPID = 39 - SYS_DUP = 41 - SYS_PIPE = 42 - SYS_GETEGID = 43 - SYS_SIGACTION = 46 - SYS_GETGID = 47 - SYS_SIGPROCMASK = 48 - SYS_GETLOGIN = 49 - SYS_SETLOGIN = 50 - SYS_ACCT = 51 - SYS_SIGPENDING = 52 - SYS_SIGALTSTACK = 53 - SYS_IOCTL = 54 - SYS_REBOOT = 55 - SYS_REVOKE = 56 - SYS_SYMLINK = 57 - SYS_READLINK = 58 - SYS_EXECVE = 59 - SYS_UMASK = 60 - SYS_CHROOT = 61 - SYS_MSYNC = 65 - SYS_VFORK = 66 - SYS_MUNMAP = 73 - SYS_MPROTECT = 74 - SYS_MADVISE = 75 - SYS_MINCORE = 78 - SYS_GETGROUPS = 79 - SYS_SETGROUPS = 80 - SYS_GETPGRP = 81 - SYS_SETPGID = 82 - SYS_SETITIMER = 83 - SYS_SWAPON = 85 - SYS_GETITIMER = 86 - SYS_GETDTABLESIZE = 89 - SYS_DUP2 = 90 - SYS_FCNTL = 92 - SYS_SELECT = 93 - SYS_FSYNC = 95 - SYS_SETPRIORITY = 96 - SYS_SOCKET = 97 - SYS_CONNECT = 98 - SYS_GETPRIORITY = 100 - SYS_BIND = 104 - SYS_SETSOCKOPT = 105 - SYS_LISTEN = 106 - SYS_SIGSUSPEND = 111 - SYS_GETTIMEOFDAY = 116 - SYS_GETRUSAGE = 117 - SYS_GETSOCKOPT = 118 - SYS_READV = 120 - SYS_WRITEV = 121 - SYS_SETTIMEOFDAY = 122 - SYS_FCHOWN = 123 - SYS_FCHMOD = 124 - SYS_SETREUID = 126 - SYS_SETREGID = 127 - SYS_RENAME = 128 - SYS_FLOCK = 131 - SYS_MKFIFO = 132 - SYS_SENDTO = 133 - SYS_SHUTDOWN = 134 - SYS_SOCKETPAIR = 135 - SYS_MKDIR = 136 - SYS_RMDIR = 137 - SYS_UTIMES = 138 - SYS_FUTIMES = 139 - SYS_ADJTIME = 140 - SYS_GETHOSTUUID = 142 - SYS_SETSID = 147 - SYS_GETPGID = 151 - SYS_SETPRIVEXEC = 152 - SYS_PREAD = 153 - SYS_PWRITE = 154 - SYS_NFSSVC = 155 - SYS_STATFS = 157 - SYS_FSTATFS = 158 - SYS_UNMOUNT = 159 - SYS_GETFH = 161 - SYS_QUOTACTL = 165 - SYS_MOUNT = 167 - SYS_CSOPS = 169 - SYS_CSOPS_AUDITTOKEN = 170 - SYS_WAITID = 173 - SYS_KDEBUG_TYPEFILTER = 177 - SYS_KDEBUG_TRACE_STRING = 178 - SYS_KDEBUG_TRACE64 = 179 - SYS_KDEBUG_TRACE = 180 - SYS_SETGID = 181 - SYS_SETEGID = 182 - SYS_SETEUID = 183 - SYS_SIGRETURN = 184 - SYS_THREAD_SELFCOUNTS = 186 - SYS_FDATASYNC = 187 - SYS_STAT = 188 - SYS_FSTAT = 189 - SYS_LSTAT = 190 - SYS_PATHCONF = 191 - SYS_FPATHCONF = 192 - SYS_GETRLIMIT = 194 - SYS_SETRLIMIT = 195 - SYS_GETDIRENTRIES = 196 - SYS_MMAP = 197 - SYS_LSEEK = 199 - SYS_TRUNCATE = 200 - SYS_FTRUNCATE = 201 - SYS_SYSCTL = 202 - SYS_MLOCK = 203 - SYS_MUNLOCK = 204 - SYS_UNDELETE = 205 - SYS_OPEN_DPROTECTED_NP = 216 - SYS_GETATTRLIST = 220 - SYS_SETATTRLIST = 221 - SYS_GETDIRENTRIESATTR = 222 - SYS_EXCHANGEDATA = 223 - SYS_SEARCHFS = 225 - SYS_DELETE = 226 - SYS_COPYFILE = 227 - SYS_FGETATTRLIST = 228 - SYS_FSETATTRLIST = 229 - SYS_POLL = 230 - SYS_WATCHEVENT = 231 - SYS_WAITEVENT = 232 - SYS_MODWATCH = 233 - SYS_GETXATTR = 234 - SYS_FGETXATTR = 235 - SYS_SETXATTR = 236 - SYS_FSETXATTR = 237 - SYS_REMOVEXATTR = 238 - SYS_FREMOVEXATTR = 239 - SYS_LISTXATTR = 240 - SYS_FLISTXATTR = 241 - SYS_FSCTL = 242 - SYS_INITGROUPS = 243 - SYS_POSIX_SPAWN = 244 - SYS_FFSCTL = 245 - SYS_NFSCLNT = 247 - SYS_FHOPEN = 248 - SYS_MINHERIT = 250 - SYS_SEMSYS = 251 - SYS_MSGSYS = 252 - SYS_SHMSYS = 253 - SYS_SEMCTL = 254 - SYS_SEMGET = 255 - SYS_SEMOP = 256 - SYS_MSGCTL = 258 - SYS_MSGGET = 259 - SYS_MSGSND = 260 - SYS_MSGRCV = 261 - SYS_SHMAT = 262 - SYS_SHMCTL = 263 - SYS_SHMDT = 264 - SYS_SHMGET = 265 - SYS_SHM_OPEN = 266 - SYS_SHM_UNLINK = 267 - SYS_SEM_OPEN = 268 - SYS_SEM_CLOSE = 269 - SYS_SEM_UNLINK = 270 - SYS_SEM_WAIT = 271 - SYS_SEM_TRYWAIT = 272 - SYS_SEM_POST = 273 - SYS_SYSCTLBYNAME = 274 - SYS_OPEN_EXTENDED = 277 - SYS_UMASK_EXTENDED = 278 - SYS_STAT_EXTENDED = 279 - SYS_LSTAT_EXTENDED = 280 - SYS_FSTAT_EXTENDED = 281 - SYS_CHMOD_EXTENDED = 282 - SYS_FCHMOD_EXTENDED = 283 - SYS_ACCESS_EXTENDED = 284 - SYS_SETTID = 285 - SYS_GETTID = 286 - SYS_SETSGROUPS = 287 - SYS_GETSGROUPS = 288 - SYS_SETWGROUPS = 289 - SYS_GETWGROUPS = 290 - SYS_MKFIFO_EXTENDED = 291 - SYS_MKDIR_EXTENDED = 292 - SYS_IDENTITYSVC = 293 - SYS_SHARED_REGION_CHECK_NP = 294 - SYS_VM_PRESSURE_MONITOR = 296 - SYS_PSYNCH_RW_LONGRDLOCK = 297 - SYS_PSYNCH_RW_YIELDWRLOCK = 298 - SYS_PSYNCH_RW_DOWNGRADE = 299 - SYS_PSYNCH_RW_UPGRADE = 300 - SYS_PSYNCH_MUTEXWAIT = 301 - SYS_PSYNCH_MUTEXDROP = 302 - SYS_PSYNCH_CVBROAD = 303 - SYS_PSYNCH_CVSIGNAL = 304 - SYS_PSYNCH_CVWAIT = 305 - SYS_PSYNCH_RW_RDLOCK = 306 - SYS_PSYNCH_RW_WRLOCK = 307 - SYS_PSYNCH_RW_UNLOCK = 308 - SYS_PSYNCH_RW_UNLOCK2 = 309 - SYS_GETSID = 310 - SYS_SETTID_WITH_PID = 311 - SYS_PSYNCH_CVCLRPREPOST = 312 - SYS_AIO_FSYNC = 313 - SYS_AIO_RETURN = 314 - SYS_AIO_SUSPEND = 315 - SYS_AIO_CANCEL = 316 - SYS_AIO_ERROR = 317 - SYS_AIO_READ = 318 - SYS_AIO_WRITE = 319 - SYS_LIO_LISTIO = 320 - SYS_IOPOLICYSYS = 322 - SYS_PROCESS_POLICY = 323 - SYS_MLOCKALL = 324 - SYS_MUNLOCKALL = 325 - SYS_ISSETUGID = 327 - SYS___PTHREAD_KILL = 328 - SYS___PTHREAD_SIGMASK = 329 - SYS___SIGWAIT = 330 - SYS___DISABLE_THREADSIGNAL = 331 - SYS___PTHREAD_MARKCANCEL = 332 - SYS___PTHREAD_CANCELED = 333 - SYS___SEMWAIT_SIGNAL = 334 - SYS_PROC_INFO = 336 - SYS_SENDFILE = 337 - SYS_STAT64 = 338 - SYS_FSTAT64 = 339 - SYS_LSTAT64 = 340 - SYS_STAT64_EXTENDED = 341 - SYS_LSTAT64_EXTENDED = 342 - SYS_FSTAT64_EXTENDED = 343 - SYS_GETDIRENTRIES64 = 344 - SYS_STATFS64 = 345 - SYS_FSTATFS64 = 346 - SYS_GETFSSTAT64 = 347 - SYS___PTHREAD_CHDIR = 348 - SYS___PTHREAD_FCHDIR = 349 - SYS_AUDIT = 350 - SYS_AUDITON = 351 - SYS_GETAUID = 353 - SYS_SETAUID = 354 - SYS_GETAUDIT_ADDR = 357 - SYS_SETAUDIT_ADDR = 358 - SYS_AUDITCTL = 359 - SYS_BSDTHREAD_CREATE = 360 - SYS_BSDTHREAD_TERMINATE = 361 - SYS_KQUEUE = 362 - SYS_KEVENT = 363 - SYS_LCHOWN = 364 - SYS_BSDTHREAD_REGISTER = 366 - SYS_WORKQ_OPEN = 367 - SYS_WORKQ_KERNRETURN = 368 - SYS_KEVENT64 = 369 - SYS___OLD_SEMWAIT_SIGNAL = 370 - SYS___OLD_SEMWAIT_SIGNAL_NOCANCEL = 371 - SYS_THREAD_SELFID = 372 - SYS_LEDGER = 373 - SYS_KEVENT_QOS = 374 - SYS_KEVENT_ID = 375 - SYS___MAC_EXECVE = 380 - SYS___MAC_SYSCALL = 381 - SYS___MAC_GET_FILE = 382 - SYS___MAC_SET_FILE = 383 - SYS___MAC_GET_LINK = 384 - SYS___MAC_SET_LINK = 385 - SYS___MAC_GET_PROC = 386 - SYS___MAC_SET_PROC = 387 - SYS___MAC_GET_FD = 388 - SYS___MAC_SET_FD = 389 - SYS___MAC_GET_PID = 390 - SYS_PSELECT = 394 - SYS_PSELECT_NOCANCEL = 395 - SYS_READ_NOCANCEL = 396 - SYS_WRITE_NOCANCEL = 397 - SYS_OPEN_NOCANCEL = 398 - SYS_CLOSE_NOCANCEL = 399 - SYS_WAIT4_NOCANCEL = 400 - SYS_RECVMSG_NOCANCEL = 401 - SYS_SENDMSG_NOCANCEL = 402 - SYS_RECVFROM_NOCANCEL = 403 - SYS_ACCEPT_NOCANCEL = 404 - SYS_MSYNC_NOCANCEL = 405 - SYS_FCNTL_NOCANCEL = 406 - SYS_SELECT_NOCANCEL = 407 - SYS_FSYNC_NOCANCEL = 408 - SYS_CONNECT_NOCANCEL = 409 - SYS_SIGSUSPEND_NOCANCEL = 410 - SYS_READV_NOCANCEL = 411 - SYS_WRITEV_NOCANCEL = 412 - SYS_SENDTO_NOCANCEL = 413 - SYS_PREAD_NOCANCEL = 414 - SYS_PWRITE_NOCANCEL = 415 - SYS_WAITID_NOCANCEL = 416 - SYS_POLL_NOCANCEL = 417 - SYS_MSGSND_NOCANCEL = 418 - SYS_MSGRCV_NOCANCEL = 419 - SYS_SEM_WAIT_NOCANCEL = 420 - SYS_AIO_SUSPEND_NOCANCEL = 421 - SYS___SIGWAIT_NOCANCEL = 422 - SYS___SEMWAIT_SIGNAL_NOCANCEL = 423 - SYS___MAC_MOUNT = 424 - SYS___MAC_GET_MOUNT = 425 - SYS___MAC_GETFSSTAT = 426 - SYS_FSGETPATH = 427 - SYS_AUDIT_SESSION_SELF = 428 - SYS_AUDIT_SESSION_JOIN = 429 - SYS_FILEPORT_MAKEPORT = 430 - SYS_FILEPORT_MAKEFD = 431 - SYS_AUDIT_SESSION_PORT = 432 - SYS_PID_SUSPEND = 433 - SYS_PID_RESUME = 434 - SYS_PID_HIBERNATE = 435 - SYS_PID_SHUTDOWN_SOCKETS = 436 - SYS_SHARED_REGION_MAP_AND_SLIDE_NP = 438 - SYS_KAS_INFO = 439 - SYS_MEMORYSTATUS_CONTROL = 440 - SYS_GUARDED_OPEN_NP = 441 - SYS_GUARDED_CLOSE_NP = 442 - SYS_GUARDED_KQUEUE_NP = 443 - SYS_CHANGE_FDGUARD_NP = 444 - SYS_USRCTL = 445 - SYS_PROC_RLIMIT_CONTROL = 446 - SYS_CONNECTX = 447 - SYS_DISCONNECTX = 448 - SYS_PEELOFF = 449 - SYS_SOCKET_DELEGATE = 450 - SYS_TELEMETRY = 451 - SYS_PROC_UUID_POLICY = 452 - SYS_MEMORYSTATUS_GET_LEVEL = 453 - SYS_SYSTEM_OVERRIDE = 454 - SYS_VFS_PURGE = 455 - SYS_SFI_CTL = 456 - SYS_SFI_PIDCTL = 457 - SYS_COALITION = 458 - SYS_COALITION_INFO = 459 - SYS_NECP_MATCH_POLICY = 460 - SYS_GETATTRLISTBULK = 461 - SYS_CLONEFILEAT = 462 - SYS_OPENAT = 463 - SYS_OPENAT_NOCANCEL = 464 - SYS_RENAMEAT = 465 - SYS_FACCESSAT = 466 - SYS_FCHMODAT = 467 - SYS_FCHOWNAT = 468 - SYS_FSTATAT = 469 - SYS_FSTATAT64 = 470 - SYS_LINKAT = 471 - SYS_UNLINKAT = 472 - SYS_READLINKAT = 473 - SYS_SYMLINKAT = 474 - SYS_MKDIRAT = 475 - SYS_GETATTRLISTAT = 476 - SYS_PROC_TRACE_LOG = 477 - SYS_BSDTHREAD_CTL = 478 - SYS_OPENBYID_NP = 479 - SYS_RECVMSG_X = 480 - SYS_SENDMSG_X = 481 - SYS_THREAD_SELFUSAGE = 482 - SYS_CSRCTL = 483 - SYS_GUARDED_OPEN_DPROTECTED_NP = 484 - SYS_GUARDED_WRITE_NP = 485 - SYS_GUARDED_PWRITE_NP = 486 - SYS_GUARDED_WRITEV_NP = 487 - SYS_RENAMEATX_NP = 488 - SYS_MREMAP_ENCRYPTED = 489 - SYS_NETAGENT_TRIGGER = 490 - SYS_STACK_SNAPSHOT_WITH_CONFIG = 491 - SYS_MICROSTACKSHOT = 492 - SYS_GRAB_PGO_DATA = 493 - SYS_PERSONA = 494 - SYS_WORK_INTERVAL_CTL = 499 - SYS_GETENTROPY = 500 - SYS_NECP_OPEN = 501 - SYS_NECP_CLIENT_ACTION = 502 - SYS___NEXUS_OPEN = 503 - SYS___NEXUS_REGISTER = 504 - SYS___NEXUS_DEREGISTER = 505 - SYS___NEXUS_CREATE = 506 - SYS___NEXUS_DESTROY = 507 - SYS___NEXUS_GET_OPT = 508 - SYS___NEXUS_SET_OPT = 509 - SYS___CHANNEL_OPEN = 510 - SYS___CHANNEL_GET_INFO = 511 - SYS___CHANNEL_SYNC = 512 - SYS___CHANNEL_GET_OPT = 513 - SYS___CHANNEL_SET_OPT = 514 - SYS_ULOCK_WAIT = 515 - SYS_ULOCK_WAKE = 516 - SYS_FCLONEFILEAT = 517 - SYS_FS_SNAPSHOT = 518 - SYS_TERMINATE_WITH_PAYLOAD = 520 - SYS_ABORT_WITH_PAYLOAD = 521 - SYS_NECP_SESSION_OPEN = 522 - SYS_NECP_SESSION_ACTION = 523 - SYS_SETATTRLISTAT = 524 - SYS_NET_QOS_GUIDELINE = 525 - SYS_FMOUNT = 526 - SYS_NTP_ADJTIME = 527 - SYS_NTP_GETTIME = 528 - SYS_OS_FAULT_WITH_PAYLOAD = 529 - SYS_MAXSYSCALL = 530 - SYS_INVALID = 63 -) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go index 8e5359713..fbc59b7fd 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go @@ -438,4 +438,5 @@ const ( SYS_FACCESSAT2 = 439 SYS_PROCESS_MADVISE = 440 SYS_EPOLL_PWAIT2 = 441 + SYS_MOUNT_SETATTR = 442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go index d7dceb769..04d16d771 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go @@ -360,4 +360,5 @@ const ( SYS_FACCESSAT2 = 439 SYS_PROCESS_MADVISE = 440 SYS_EPOLL_PWAIT2 = 441 + SYS_MOUNT_SETATTR = 442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go index 04093a69f..3b1c10513 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go @@ -402,4 +402,5 @@ const ( SYS_FACCESSAT2 = 439 SYS_PROCESS_MADVISE = 440 SYS_EPOLL_PWAIT2 = 441 + SYS_MOUNT_SETATTR = 442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go index 48f94f135..3198adcf7 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go @@ -305,4 +305,5 @@ const ( SYS_FACCESSAT2 = 439 SYS_PROCESS_MADVISE = 440 SYS_EPOLL_PWAIT2 = 441 + SYS_MOUNT_SETATTR = 442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go index 499978c3e..c877ec6e6 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go @@ -423,4 +423,5 @@ const ( SYS_FACCESSAT2 = 4439 SYS_PROCESS_MADVISE = 4440 SYS_EPOLL_PWAIT2 = 4441 + SYS_MOUNT_SETATTR = 4442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go index 10d1db2be..b5f290372 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go @@ -353,4 +353,5 @@ const ( SYS_FACCESSAT2 = 5439 SYS_PROCESS_MADVISE = 5440 SYS_EPOLL_PWAIT2 = 5441 + SYS_MOUNT_SETATTR = 5442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go index 208d5dcd5..46077689a 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go @@ -353,4 +353,5 @@ const ( SYS_FACCESSAT2 = 5439 SYS_PROCESS_MADVISE = 5440 SYS_EPOLL_PWAIT2 = 5441 + SYS_MOUNT_SETATTR = 5442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go index f8250602e..80e6696b3 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go @@ -423,4 +423,5 @@ const ( SYS_FACCESSAT2 = 4439 SYS_PROCESS_MADVISE = 4440 SYS_EPOLL_PWAIT2 = 4441 + SYS_MOUNT_SETATTR = 4442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go index 7693656a6..b9d697ffb 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go @@ -430,4 +430,5 @@ const ( SYS_FACCESSAT2 = 439 SYS_PROCESS_MADVISE = 440 SYS_EPOLL_PWAIT2 = 441 + SYS_MOUNT_SETATTR = 442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go index d5ed3ff51..08edc54d3 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go @@ -402,4 +402,5 @@ const ( SYS_FACCESSAT2 = 439 SYS_PROCESS_MADVISE = 440 SYS_EPOLL_PWAIT2 = 441 + SYS_MOUNT_SETATTR = 442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go index e29b4424c..33b33b083 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go @@ -402,4 +402,5 @@ const ( SYS_FACCESSAT2 = 439 SYS_PROCESS_MADVISE = 440 SYS_EPOLL_PWAIT2 = 441 + SYS_MOUNT_SETATTR = 442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go index 41deed6c3..66c8a8e09 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go @@ -304,4 +304,5 @@ const ( SYS_FACCESSAT2 = 439 SYS_PROCESS_MADVISE = 440 SYS_EPOLL_PWAIT2 = 441 + SYS_MOUNT_SETATTR = 442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go index 8e53a9e8c..aea5760ce 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go @@ -367,4 +367,5 @@ const ( SYS_FACCESSAT2 = 439 SYS_PROCESS_MADVISE = 440 SYS_EPOLL_PWAIT2 = 441 + SYS_MOUNT_SETATTR = 442 ) diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go index 596e5bc7d..488ca848d 100644 --- a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go +++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go @@ -381,4 +381,5 @@ const ( SYS_FACCESSAT2 = 439 SYS_PROCESS_MADVISE = 440 SYS_EPOLL_PWAIT2 = 441 + SYS_MOUNT_SETATTR = 442 ) diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go deleted file mode 100644 index 883b64a27..000000000 --- a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go +++ /dev/null @@ -1,524 +0,0 @@ -// cgo -godefs types_darwin.go | go run mkpost.go -// Code generated by the command above; see README.md. DO NOT EDIT. - -//go:build 386 && darwin -// +build 386,darwin - -package unix - -const ( - SizeofPtr = 0x4 - SizeofShort = 0x2 - SizeofInt = 0x4 - SizeofLong = 0x4 - SizeofLongLong = 0x8 -) - -type ( - _C_short int16 - _C_int int32 - _C_long int32 - _C_long_long int64 -) - -type Timespec struct { - Sec int32 - Nsec int32 -} - -type Timeval struct { - Sec int32 - Usec int32 -} - -type Timeval32 struct{} - -type Rusage struct { - Utime Timeval - Stime Timeval - Maxrss int32 - Ixrss int32 - Idrss int32 - Isrss int32 - Minflt int32 - Majflt int32 - Nswap int32 - Inblock int32 - Oublock int32 - Msgsnd int32 - Msgrcv int32 - Nsignals int32 - Nvcsw int32 - Nivcsw int32 -} - -type Rlimit struct { - Cur uint64 - Max uint64 -} - -type _Gid_t uint32 - -type Stat_t struct { - Dev int32 - Mode uint16 - Nlink uint16 - Ino uint64 - Uid uint32 - Gid uint32 - Rdev int32 - Atim Timespec - Mtim Timespec - Ctim Timespec - Btim Timespec - Size int64 - Blocks int64 - Blksize int32 - Flags uint32 - Gen uint32 - Lspare int32 - Qspare [2]int64 -} - -type Statfs_t struct { - Bsize uint32 - Iosize int32 - Blocks uint64 - Bfree uint64 - Bavail uint64 - Files uint64 - Ffree uint64 - Fsid Fsid - Owner uint32 - Type uint32 - Flags uint32 - Fssubtype uint32 - Fstypename [16]byte - Mntonname [1024]byte - Mntfromname [1024]byte - Reserved [8]uint32 -} - -type Flock_t struct { - Start int64 - Len int64 - Pid int32 - Type int16 - Whence int16 -} - -type Fstore_t struct { - Flags uint32 - Posmode int32 - Offset int64 - Length int64 - Bytesalloc int64 -} - -type Radvisory_t struct { - Offset int64 - Count int32 -} - -type Fbootstraptransfer_t struct { - Offset int64 - Length uint32 - Buffer *byte -} - -type Log2phys_t struct { - Flags uint32 - Contigbytes int64 - Devoffset int64 -} - -type Fsid struct { - Val [2]int32 -} - -type Dirent struct { - Ino uint64 - Seekoff uint64 - Reclen uint16 - Namlen uint16 - Type uint8 - Name [1024]int8 - _ [3]byte -} - -const ( - PathMax = 0x400 -) - -type RawSockaddrInet4 struct { - Len uint8 - Family uint8 - Port uint16 - Addr [4]byte /* in_addr */ - Zero [8]int8 -} - -type RawSockaddrInet6 struct { - Len uint8 - Family uint8 - Port uint16 - Flowinfo uint32 - Addr [16]byte /* in6_addr */ - Scope_id uint32 -} - -type RawSockaddrUnix struct { - Len uint8 - Family uint8 - Path [104]int8 -} - -type RawSockaddrDatalink struct { - Len uint8 - Family uint8 - Index uint16 - Type uint8 - Nlen uint8 - Alen uint8 - Slen uint8 - Data [12]int8 -} - -type RawSockaddr struct { - Len uint8 - Family uint8 - Data [14]int8 -} - -type RawSockaddrAny struct { - Addr RawSockaddr - Pad [92]int8 -} - -type RawSockaddrCtl struct { - Sc_len uint8 - Sc_family uint8 - Ss_sysaddr uint16 - Sc_id uint32 - Sc_unit uint32 - Sc_reserved [5]uint32 -} - -type _Socklen uint32 - -type Linger struct { - Onoff int32 - Linger int32 -} - -type Iovec struct { - Base *byte - Len uint32 -} - -type IPMreq struct { - Multiaddr [4]byte /* in_addr */ - Interface [4]byte /* in_addr */ -} - -type IPMreqn struct { - Multiaddr [4]byte /* in_addr */ - Address [4]byte /* in_addr */ - Ifindex int32 -} - -type IPv6Mreq struct { - Multiaddr [16]byte /* in6_addr */ - Interface uint32 -} - -type Msghdr struct { - Name *byte - Namelen uint32 - Iov *Iovec - Iovlen int32 - Control *byte - Controllen uint32 - Flags int32 -} - -type Cmsghdr struct { - Len uint32 - Level int32 - Type int32 -} - -type Inet4Pktinfo struct { - Ifindex uint32 - Spec_dst [4]byte /* in_addr */ - Addr [4]byte /* in_addr */ -} - -type Inet6Pktinfo struct { - Addr [16]byte /* in6_addr */ - Ifindex uint32 -} - -type IPv6MTUInfo struct { - Addr RawSockaddrInet6 - Mtu uint32 -} - -type ICMPv6Filter struct { - Filt [8]uint32 -} - -const ( - SizeofSockaddrInet4 = 0x10 - SizeofSockaddrInet6 = 0x1c - SizeofSockaddrAny = 0x6c - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x14 - SizeofSockaddrCtl = 0x20 - SizeofLinger = 0x8 - SizeofIovec = 0x8 - SizeofIPMreq = 0x8 - SizeofIPMreqn = 0xc - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x1c - SizeofCmsghdr = 0xc - SizeofInet4Pktinfo = 0xc - SizeofInet6Pktinfo = 0x14 - SizeofIPv6MTUInfo = 0x20 - SizeofICMPv6Filter = 0x20 -) - -const ( - PTRACE_TRACEME = 0x0 - PTRACE_CONT = 0x7 - PTRACE_KILL = 0x8 -) - -type Kevent_t struct { - Ident uint32 - Filter int16 - Flags uint16 - Fflags uint32 - Data int32 - Udata *byte -} - -type FdSet struct { - Bits [32]int32 -} - -const ( - SizeofIfMsghdr = 0x70 - SizeofIfData = 0x60 - SizeofIfaMsghdr = 0x14 - SizeofIfmaMsghdr = 0x10 - SizeofIfmaMsghdr2 = 0x14 - SizeofRtMsghdr = 0x5c - SizeofRtMetrics = 0x38 -) - -type IfMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 - Addrs int32 - Flags int32 - Index uint16 - Data IfData -} - -type IfData struct { - Type uint8 - Typelen uint8 - Physical uint8 - Addrlen uint8 - Hdrlen uint8 - Recvquota uint8 - Xmitquota uint8 - Unused1 uint8 - Mtu uint32 - Metric uint32 - Baudrate uint32 - Ipackets uint32 - Ierrors uint32 - Opackets uint32 - Oerrors uint32 - Collisions uint32 - Ibytes uint32 - Obytes uint32 - Imcasts uint32 - Omcasts uint32 - Iqdrops uint32 - Noproto uint32 - Recvtiming uint32 - Xmittiming uint32 - Lastchange Timeval - Unused2 uint32 - Hwassist uint32 - Reserved1 uint32 - Reserved2 uint32 -} - -type IfaMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 - Addrs int32 - Flags int32 - Index uint16 - Metric int32 -} - -type IfmaMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 - Addrs int32 - Flags int32 - Index uint16 - _ [2]byte -} - -type IfmaMsghdr2 struct { - Msglen uint16 - Version uint8 - Type uint8 - Addrs int32 - Flags int32 - Index uint16 - Refcount int32 -} - -type RtMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 - Index uint16 - Flags int32 - Addrs int32 - Pid int32 - Seq int32 - Errno int32 - Use int32 - Inits uint32 - Rmx RtMetrics -} - -type RtMetrics struct { - Locks uint32 - Mtu uint32 - Hopcount uint32 - Expire int32 - Recvpipe uint32 - Sendpipe uint32 - Ssthresh uint32 - Rtt uint32 - Rttvar uint32 - Pksent uint32 - State uint32 - Filler [3]uint32 -} - -const ( - SizeofBpfVersion = 0x4 - SizeofBpfStat = 0x8 - SizeofBpfProgram = 0x8 - SizeofBpfInsn = 0x8 - SizeofBpfHdr = 0x14 -) - -type BpfVersion struct { - Major uint16 - Minor uint16 -} - -type BpfStat struct { - Recv uint32 - Drop uint32 -} - -type BpfProgram struct { - Len uint32 - Insns *BpfInsn -} - -type BpfInsn struct { - Code uint16 - Jt uint8 - Jf uint8 - K uint32 -} - -type BpfHdr struct { - Tstamp Timeval - Caplen uint32 - Datalen uint32 - Hdrlen uint16 - _ [2]byte -} - -type Termios struct { - Iflag uint32 - Oflag uint32 - Cflag uint32 - Lflag uint32 - Cc [20]uint8 - Ispeed uint32 - Ospeed uint32 -} - -type Winsize struct { - Row uint16 - Col uint16 - Xpixel uint16 - Ypixel uint16 -} - -const ( - AT_FDCWD = -0x2 - AT_REMOVEDIR = 0x80 - AT_SYMLINK_FOLLOW = 0x40 - AT_SYMLINK_NOFOLLOW = 0x20 -) - -type PollFd struct { - Fd int32 - Events int16 - Revents int16 -} - -const ( - POLLERR = 0x8 - POLLHUP = 0x10 - POLLIN = 0x1 - POLLNVAL = 0x20 - POLLOUT = 0x4 - POLLPRI = 0x2 - POLLRDBAND = 0x80 - POLLRDNORM = 0x40 - POLLWRBAND = 0x100 - POLLWRNORM = 0x4 -) - -type Utsname struct { - Sysname [256]byte - Nodename [256]byte - Release [256]byte - Version [256]byte - Machine [256]byte -} - -const SizeofClockinfo = 0x14 - -type Clockinfo struct { - Hz int32 - Tick int32 - Tickadj int32 - Stathz int32 - Profhz int32 -} - -type CtlInfo struct { - Id uint32 - Name [96]byte -} diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go deleted file mode 100644 index eef513385..000000000 --- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go +++ /dev/null @@ -1,524 +0,0 @@ -// cgo -godefs types_darwin.go | go run mkpost.go -// Code generated by the command above; see README.md. DO NOT EDIT. - -//go:build arm && darwin -// +build arm,darwin - -package unix - -const ( - SizeofPtr = 0x4 - SizeofShort = 0x2 - SizeofInt = 0x4 - SizeofLong = 0x4 - SizeofLongLong = 0x8 -) - -type ( - _C_short int16 - _C_int int32 - _C_long int32 - _C_long_long int64 -) - -type Timespec struct { - Sec int32 - Nsec int32 -} - -type Timeval struct { - Sec int32 - Usec int32 -} - -type Timeval32 struct{} - -type Rusage struct { - Utime Timeval - Stime Timeval - Maxrss int32 - Ixrss int32 - Idrss int32 - Isrss int32 - Minflt int32 - Majflt int32 - Nswap int32 - Inblock int32 - Oublock int32 - Msgsnd int32 - Msgrcv int32 - Nsignals int32 - Nvcsw int32 - Nivcsw int32 -} - -type Rlimit struct { - Cur uint64 - Max uint64 -} - -type _Gid_t uint32 - -type Stat_t struct { - Dev int32 - Mode uint16 - Nlink uint16 - Ino uint64 - Uid uint32 - Gid uint32 - Rdev int32 - Atim Timespec - Mtim Timespec - Ctim Timespec - Btim Timespec - Size int64 - Blocks int64 - Blksize int32 - Flags uint32 - Gen uint32 - Lspare int32 - Qspare [2]int64 -} - -type Statfs_t struct { - Bsize uint32 - Iosize int32 - Blocks uint64 - Bfree uint64 - Bavail uint64 - Files uint64 - Ffree uint64 - Fsid Fsid - Owner uint32 - Type uint32 - Flags uint32 - Fssubtype uint32 - Fstypename [16]byte - Mntonname [1024]byte - Mntfromname [1024]byte - Reserved [8]uint32 -} - -type Flock_t struct { - Start int64 - Len int64 - Pid int32 - Type int16 - Whence int16 -} - -type Fstore_t struct { - Flags uint32 - Posmode int32 - Offset int64 - Length int64 - Bytesalloc int64 -} - -type Radvisory_t struct { - Offset int64 - Count int32 -} - -type Fbootstraptransfer_t struct { - Offset int64 - Length uint32 - Buffer *byte -} - -type Log2phys_t struct { - Flags uint32 - Contigbytes int64 - Devoffset int64 -} - -type Fsid struct { - Val [2]int32 -} - -type Dirent struct { - Ino uint64 - Seekoff uint64 - Reclen uint16 - Namlen uint16 - Type uint8 - Name [1024]int8 - _ [3]byte -} - -const ( - PathMax = 0x400 -) - -type RawSockaddrInet4 struct { - Len uint8 - Family uint8 - Port uint16 - Addr [4]byte /* in_addr */ - Zero [8]int8 -} - -type RawSockaddrInet6 struct { - Len uint8 - Family uint8 - Port uint16 - Flowinfo uint32 - Addr [16]byte /* in6_addr */ - Scope_id uint32 -} - -type RawSockaddrUnix struct { - Len uint8 - Family uint8 - Path [104]int8 -} - -type RawSockaddrDatalink struct { - Len uint8 - Family uint8 - Index uint16 - Type uint8 - Nlen uint8 - Alen uint8 - Slen uint8 - Data [12]int8 -} - -type RawSockaddr struct { - Len uint8 - Family uint8 - Data [14]int8 -} - -type RawSockaddrAny struct { - Addr RawSockaddr - Pad [92]int8 -} - -type RawSockaddrCtl struct { - Sc_len uint8 - Sc_family uint8 - Ss_sysaddr uint16 - Sc_id uint32 - Sc_unit uint32 - Sc_reserved [5]uint32 -} - -type _Socklen uint32 - -type Linger struct { - Onoff int32 - Linger int32 -} - -type Iovec struct { - Base *byte - Len uint32 -} - -type IPMreq struct { - Multiaddr [4]byte /* in_addr */ - Interface [4]byte /* in_addr */ -} - -type IPMreqn struct { - Multiaddr [4]byte /* in_addr */ - Address [4]byte /* in_addr */ - Ifindex int32 -} - -type IPv6Mreq struct { - Multiaddr [16]byte /* in6_addr */ - Interface uint32 -} - -type Msghdr struct { - Name *byte - Namelen uint32 - Iov *Iovec - Iovlen int32 - Control *byte - Controllen uint32 - Flags int32 -} - -type Cmsghdr struct { - Len uint32 - Level int32 - Type int32 -} - -type Inet4Pktinfo struct { - Ifindex uint32 - Spec_dst [4]byte /* in_addr */ - Addr [4]byte /* in_addr */ -} - -type Inet6Pktinfo struct { - Addr [16]byte /* in6_addr */ - Ifindex uint32 -} - -type IPv6MTUInfo struct { - Addr RawSockaddrInet6 - Mtu uint32 -} - -type ICMPv6Filter struct { - Filt [8]uint32 -} - -const ( - SizeofSockaddrInet4 = 0x10 - SizeofSockaddrInet6 = 0x1c - SizeofSockaddrAny = 0x6c - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x14 - SizeofSockaddrCtl = 0x20 - SizeofLinger = 0x8 - SizeofIovec = 0x8 - SizeofIPMreq = 0x8 - SizeofIPMreqn = 0xc - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x1c - SizeofCmsghdr = 0xc - SizeofInet4Pktinfo = 0xc - SizeofInet6Pktinfo = 0x14 - SizeofIPv6MTUInfo = 0x20 - SizeofICMPv6Filter = 0x20 -) - -const ( - PTRACE_TRACEME = 0x0 - PTRACE_CONT = 0x7 - PTRACE_KILL = 0x8 -) - -type Kevent_t struct { - Ident uint32 - Filter int16 - Flags uint16 - Fflags uint32 - Data int32 - Udata *byte -} - -type FdSet struct { - Bits [32]int32 -} - -const ( - SizeofIfMsghdr = 0x70 - SizeofIfData = 0x60 - SizeofIfaMsghdr = 0x14 - SizeofIfmaMsghdr = 0x10 - SizeofIfmaMsghdr2 = 0x14 - SizeofRtMsghdr = 0x5c - SizeofRtMetrics = 0x38 -) - -type IfMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 - Addrs int32 - Flags int32 - Index uint16 - Data IfData -} - -type IfData struct { - Type uint8 - Typelen uint8 - Physical uint8 - Addrlen uint8 - Hdrlen uint8 - Recvquota uint8 - Xmitquota uint8 - Unused1 uint8 - Mtu uint32 - Metric uint32 - Baudrate uint32 - Ipackets uint32 - Ierrors uint32 - Opackets uint32 - Oerrors uint32 - Collisions uint32 - Ibytes uint32 - Obytes uint32 - Imcasts uint32 - Omcasts uint32 - Iqdrops uint32 - Noproto uint32 - Recvtiming uint32 - Xmittiming uint32 - Lastchange Timeval - Unused2 uint32 - Hwassist uint32 - Reserved1 uint32 - Reserved2 uint32 -} - -type IfaMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 - Addrs int32 - Flags int32 - Index uint16 - Metric int32 -} - -type IfmaMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 - Addrs int32 - Flags int32 - Index uint16 - _ [2]byte -} - -type IfmaMsghdr2 struct { - Msglen uint16 - Version uint8 - Type uint8 - Addrs int32 - Flags int32 - Index uint16 - Refcount int32 -} - -type RtMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 - Index uint16 - Flags int32 - Addrs int32 - Pid int32 - Seq int32 - Errno int32 - Use int32 - Inits uint32 - Rmx RtMetrics -} - -type RtMetrics struct { - Locks uint32 - Mtu uint32 - Hopcount uint32 - Expire int32 - Recvpipe uint32 - Sendpipe uint32 - Ssthresh uint32 - Rtt uint32 - Rttvar uint32 - Pksent uint32 - State uint32 - Filler [3]uint32 -} - -const ( - SizeofBpfVersion = 0x4 - SizeofBpfStat = 0x8 - SizeofBpfProgram = 0x8 - SizeofBpfInsn = 0x8 - SizeofBpfHdr = 0x14 -) - -type BpfVersion struct { - Major uint16 - Minor uint16 -} - -type BpfStat struct { - Recv uint32 - Drop uint32 -} - -type BpfProgram struct { - Len uint32 - Insns *BpfInsn -} - -type BpfInsn struct { - Code uint16 - Jt uint8 - Jf uint8 - K uint32 -} - -type BpfHdr struct { - Tstamp Timeval - Caplen uint32 - Datalen uint32 - Hdrlen uint16 - _ [2]byte -} - -type Termios struct { - Iflag uint32 - Oflag uint32 - Cflag uint32 - Lflag uint32 - Cc [20]uint8 - Ispeed uint32 - Ospeed uint32 -} - -type Winsize struct { - Row uint16 - Col uint16 - Xpixel uint16 - Ypixel uint16 -} - -const ( - AT_FDCWD = -0x2 - AT_REMOVEDIR = 0x80 - AT_SYMLINK_FOLLOW = 0x40 - AT_SYMLINK_NOFOLLOW = 0x20 -) - -type PollFd struct { - Fd int32 - Events int16 - Revents int16 -} - -const ( - POLLERR = 0x8 - POLLHUP = 0x10 - POLLIN = 0x1 - POLLNVAL = 0x20 - POLLOUT = 0x4 - POLLPRI = 0x2 - POLLRDBAND = 0x80 - POLLRDNORM = 0x40 - POLLWRBAND = 0x100 - POLLWRNORM = 0x4 -) - -type Utsname struct { - Sysname [256]byte - Nodename [256]byte - Release [256]byte - Version [256]byte - Machine [256]byte -} - -const SizeofClockinfo = 0x14 - -type Clockinfo struct { - Hz int32 - Tick int32 - Tickadj int32 - Stathz int32 - Profhz int32 -} - -type CtlInfo struct { - Id uint32 - Name [96]byte -} diff --git a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go index 1d049d7a1..d0ba8e9b8 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go @@ -431,6 +431,9 @@ type Winsize struct { const ( AT_FDCWD = 0xfffafdcd AT_SYMLINK_NOFOLLOW = 0x1 + AT_REMOVEDIR = 0x2 + AT_EACCESS = 0x4 + AT_SYMLINK_FOLLOW = 0x8 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go index c51bc88ff..1f99c024a 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go +++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go @@ -672,9 +672,10 @@ type Winsize struct { const ( AT_FDCWD = -0x64 - AT_REMOVEDIR = 0x800 - AT_SYMLINK_FOLLOW = 0x400 + AT_EACCESS = 0x100 AT_SYMLINK_NOFOLLOW = 0x200 + AT_SYMLINK_FOLLOW = 0x400 + AT_REMOVEDIR = 0x800 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go index 395b69187..ddf0305a5 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go @@ -675,9 +675,10 @@ type Winsize struct { const ( AT_FDCWD = -0x64 - AT_REMOVEDIR = 0x800 - AT_SYMLINK_FOLLOW = 0x400 + AT_EACCESS = 0x100 AT_SYMLINK_NOFOLLOW = 0x200 + AT_SYMLINK_FOLLOW = 0x400 + AT_REMOVEDIR = 0x800 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go index d3f9d2541..dce0a5c80 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go +++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go @@ -656,9 +656,10 @@ type Winsize struct { const ( AT_FDCWD = -0x64 - AT_REMOVEDIR = 0x800 - AT_SYMLINK_FOLLOW = 0x400 + AT_EACCESS = 0x100 AT_SYMLINK_NOFOLLOW = 0x200 + AT_SYMLINK_FOLLOW = 0x400 + AT_REMOVEDIR = 0x800 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go index 434d6e8e8..e23244702 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go @@ -653,9 +653,10 @@ type Winsize struct { const ( AT_FDCWD = -0x64 - AT_REMOVEDIR = 0x800 - AT_SYMLINK_FOLLOW = 0x400 + AT_EACCESS = 0x100 AT_SYMLINK_NOFOLLOW = 0x200 + AT_SYMLINK_FOLLOW = 0x400 + AT_REMOVEDIR = 0x800 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go index 1137a5a1f..236f37ef6 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go @@ -25,14 +25,14 @@ type strbuf struct { Buf *int8 } -type strioctl struct { +type Strioctl struct { Cmd int32 Timout int32 Len int32 Dp *int8 } -type lifreq struct { +type Lifreq struct { Name [32]int8 Lifru1 [4]byte Type uint32 diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux.go b/vendor/golang.org/x/sys/unix/ztypes_linux.go index 3bfc6f732..72887abe5 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux.go @@ -351,6 +351,13 @@ type RawSockaddrIUCV struct { Name [8]int8 } +type RawSockaddrNFC struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 +} + type _Socklen uint32 type Linger struct { @@ -464,6 +471,7 @@ const ( SizeofSockaddrL2TPIP = 0x10 SizeofSockaddrL2TPIP6 = 0x20 SizeofSockaddrIUCV = 0x20 + SizeofSockaddrNFC = 0x10 SizeofLinger = 0x8 SizeofIPMreq = 0x8 SizeofIPMreqn = 0xc @@ -1016,7 +1024,10 @@ const ( PERF_SAMPLE_PHYS_ADDR = 0x80000 PERF_SAMPLE_AUX = 0x100000 PERF_SAMPLE_CGROUP = 0x200000 - PERF_SAMPLE_MAX = 0x1000000 + PERF_SAMPLE_DATA_PAGE_SIZE = 0x400000 + PERF_SAMPLE_CODE_PAGE_SIZE = 0x800000 + PERF_SAMPLE_WEIGHT_STRUCT = 0x1000000 + PERF_SAMPLE_MAX = 0x2000000 PERF_SAMPLE_BRANCH_USER_SHIFT = 0x0 PERF_SAMPLE_BRANCH_KERNEL_SHIFT = 0x1 PERF_SAMPLE_BRANCH_HV_SHIFT = 0x2 @@ -3126,7 +3137,8 @@ const ( DEVLINK_ATTR_REMOTE_RELOAD_STATS = 0xa1 DEVLINK_ATTR_RELOAD_ACTION_INFO = 0xa2 DEVLINK_ATTR_RELOAD_ACTION_STATS = 0xa3 - DEVLINK_ATTR_MAX = 0xa3 + DEVLINK_ATTR_PORT_PCI_SF_NUMBER = 0xa4 + DEVLINK_ATTR_MAX = 0xa4 DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = 0x0 DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 0x1 DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = 0x0 @@ -3140,7 +3152,9 @@ const ( DEVLINK_RESOURCE_UNIT_ENTRY = 0x0 DEVLINK_PORT_FUNCTION_ATTR_UNSPEC = 0x0 DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR = 0x1 - DEVLINK_PORT_FUNCTION_ATTR_MAX = 0x1 + DEVLINK_PORT_FN_ATTR_STATE = 0x2 + DEVLINK_PORT_FN_ATTR_OPSTATE = 0x3 + DEVLINK_PORT_FUNCTION_ATTR_MAX = 0x3 ) type FsverityDigest struct { @@ -3509,7 +3523,8 @@ const ( ETHTOOL_A_LINKMODES_DUPLEX = 0x6 ETHTOOL_A_LINKMODES_MASTER_SLAVE_CFG = 0x7 ETHTOOL_A_LINKMODES_MASTER_SLAVE_STATE = 0x8 - ETHTOOL_A_LINKMODES_MAX = 0x8 + ETHTOOL_A_LINKMODES_LANES = 0x9 + ETHTOOL_A_LINKMODES_MAX = 0x9 ETHTOOL_A_LINKSTATE_UNSPEC = 0x0 ETHTOOL_A_LINKSTATE_HEADER = 0x1 ETHTOOL_A_LINKSTATE_LINK = 0x2 @@ -3735,3 +3750,158 @@ const ( NLMSGERR_ATTR_OFFS = 0x2 NLMSGERR_ATTR_COOKIE = 0x3 ) + +type ( + EraseInfo struct { + Start uint32 + Length uint32 + } + EraseInfo64 struct { + Start uint64 + Length uint64 + } + MtdOobBuf struct { + Start uint32 + Length uint32 + Ptr *uint8 + } + MtdOobBuf64 struct { + Start uint64 + Pad uint32 + Length uint32 + Ptr uint64 + } + MtdWriteReq struct { + Start uint64 + Len uint64 + Ooblen uint64 + Data uint64 + Oob uint64 + Mode uint8 + _ [7]uint8 + } + MtdInfo struct { + Type uint8 + Flags uint32 + Size uint32 + Erasesize uint32 + Writesize uint32 + Oobsize uint32 + _ uint64 + } + RegionInfo struct { + Offset uint32 + Erasesize uint32 + Numblocks uint32 + Regionindex uint32 + } + OtpInfo struct { + Start uint32 + Length uint32 + Locked uint32 + } + NandOobinfo struct { + Useecc uint32 + Eccbytes uint32 + Oobfree [8][2]uint32 + Eccpos [32]uint32 + } + NandOobfree struct { + Offset uint32 + Length uint32 + } + NandEcclayout struct { + Eccbytes uint32 + Eccpos [64]uint32 + Oobavail uint32 + Oobfree [8]NandOobfree + } + MtdEccStats struct { + Corrected uint32 + Failed uint32 + Badblocks uint32 + Bbtblocks uint32 + } +) + +const ( + MTD_OPS_PLACE_OOB = 0x0 + MTD_OPS_AUTO_OOB = 0x1 + MTD_OPS_RAW = 0x2 +) + +const ( + MTD_FILE_MODE_NORMAL = 0x0 + MTD_FILE_MODE_OTP_FACTORY = 0x1 + MTD_FILE_MODE_OTP_USER = 0x2 + MTD_FILE_MODE_RAW = 0x3 +) + +const ( + NFC_CMD_UNSPEC = 0x0 + NFC_CMD_GET_DEVICE = 0x1 + NFC_CMD_DEV_UP = 0x2 + NFC_CMD_DEV_DOWN = 0x3 + NFC_CMD_DEP_LINK_UP = 0x4 + NFC_CMD_DEP_LINK_DOWN = 0x5 + NFC_CMD_START_POLL = 0x6 + NFC_CMD_STOP_POLL = 0x7 + NFC_CMD_GET_TARGET = 0x8 + NFC_EVENT_TARGETS_FOUND = 0x9 + NFC_EVENT_DEVICE_ADDED = 0xa + NFC_EVENT_DEVICE_REMOVED = 0xb + NFC_EVENT_TARGET_LOST = 0xc + NFC_EVENT_TM_ACTIVATED = 0xd + NFC_EVENT_TM_DEACTIVATED = 0xe + NFC_CMD_LLC_GET_PARAMS = 0xf + NFC_CMD_LLC_SET_PARAMS = 0x10 + NFC_CMD_ENABLE_SE = 0x11 + NFC_CMD_DISABLE_SE = 0x12 + NFC_CMD_LLC_SDREQ = 0x13 + NFC_EVENT_LLC_SDRES = 0x14 + NFC_CMD_FW_DOWNLOAD = 0x15 + NFC_EVENT_SE_ADDED = 0x16 + NFC_EVENT_SE_REMOVED = 0x17 + NFC_EVENT_SE_CONNECTIVITY = 0x18 + NFC_EVENT_SE_TRANSACTION = 0x19 + NFC_CMD_GET_SE = 0x1a + NFC_CMD_SE_IO = 0x1b + NFC_CMD_ACTIVATE_TARGET = 0x1c + NFC_CMD_VENDOR = 0x1d + NFC_CMD_DEACTIVATE_TARGET = 0x1e + NFC_ATTR_UNSPEC = 0x0 + NFC_ATTR_DEVICE_INDEX = 0x1 + NFC_ATTR_DEVICE_NAME = 0x2 + NFC_ATTR_PROTOCOLS = 0x3 + NFC_ATTR_TARGET_INDEX = 0x4 + NFC_ATTR_TARGET_SENS_RES = 0x5 + NFC_ATTR_TARGET_SEL_RES = 0x6 + NFC_ATTR_TARGET_NFCID1 = 0x7 + NFC_ATTR_TARGET_SENSB_RES = 0x8 + NFC_ATTR_TARGET_SENSF_RES = 0x9 + NFC_ATTR_COMM_MODE = 0xa + NFC_ATTR_RF_MODE = 0xb + NFC_ATTR_DEVICE_POWERED = 0xc + NFC_ATTR_IM_PROTOCOLS = 0xd + NFC_ATTR_TM_PROTOCOLS = 0xe + NFC_ATTR_LLC_PARAM_LTO = 0xf + NFC_ATTR_LLC_PARAM_RW = 0x10 + NFC_ATTR_LLC_PARAM_MIUX = 0x11 + NFC_ATTR_SE = 0x12 + NFC_ATTR_LLC_SDP = 0x13 + NFC_ATTR_FIRMWARE_NAME = 0x14 + NFC_ATTR_SE_INDEX = 0x15 + NFC_ATTR_SE_TYPE = 0x16 + NFC_ATTR_SE_AID = 0x17 + NFC_ATTR_FIRMWARE_DOWNLOAD_STATUS = 0x18 + NFC_ATTR_SE_APDU = 0x19 + NFC_ATTR_TARGET_ISO15693_DSFID = 0x1a + NFC_ATTR_TARGET_ISO15693_UID = 0x1b + NFC_ATTR_SE_PARAMS = 0x1c + NFC_ATTR_VENDOR_ID = 0x1d + NFC_ATTR_VENDOR_SUBCMD = 0x1e + NFC_ATTR_VENDOR_DATA = 0x1f + NFC_SDP_ATTR_UNSPEC = 0x0 + NFC_SDP_ATTR_URI = 0x1 + NFC_SDP_ATTR_SAP = 0x2 +) diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_386.go b/vendor/golang.org/x/sys/unix/ztypes_linux_386.go index 4d4d283de..235c62e46 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_386.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_386.go @@ -128,6 +128,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint32 +} + type RawSockaddr struct { Family uint16 Data [14]int8 @@ -160,9 +171,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x8 - SizeofMsghdr = 0x1c - SizeofCmsghdr = 0xc + SizeofSockaddrNFCLLCP = 0x58 + SizeofIovec = 0x8 + SizeofMsghdr = 0x1c + SizeofCmsghdr = 0xc ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go index 8a2eed5ec..99b1e5b6a 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go @@ -130,6 +130,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint64 +} + type RawSockaddr struct { Family uint16 Data [14]int8 @@ -163,9 +174,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x10 - SizeofMsghdr = 0x38 - SizeofCmsghdr = 0x10 + SizeofSockaddrNFCLLCP = 0x60 + SizeofIovec = 0x10 + SizeofMsghdr = 0x38 + SizeofCmsghdr = 0x10 ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go b/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go index 94b34add6..cc8bba791 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go @@ -134,6 +134,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint32 +} + type RawSockaddr struct { Family uint16 Data [14]uint8 @@ -166,9 +177,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x8 - SizeofMsghdr = 0x1c - SizeofCmsghdr = 0xc + SizeofSockaddrNFCLLCP = 0x58 + SizeofIovec = 0x8 + SizeofMsghdr = 0x1c + SizeofCmsghdr = 0xc ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go index 2143de4d5..fa8fe3a75 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go @@ -131,6 +131,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint64 +} + type RawSockaddr struct { Family uint16 Data [14]int8 @@ -164,9 +175,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x10 - SizeofMsghdr = 0x38 - SizeofCmsghdr = 0x10 + SizeofSockaddrNFCLLCP = 0x60 + SizeofIovec = 0x10 + SizeofMsghdr = 0x38 + SizeofCmsghdr = 0x10 ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go index a40216eee..e7fb8d9b7 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go @@ -133,6 +133,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint32 +} + type RawSockaddr struct { Family uint16 Data [14]int8 @@ -165,9 +176,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x8 - SizeofMsghdr = 0x1c - SizeofCmsghdr = 0xc + SizeofSockaddrNFCLLCP = 0x58 + SizeofIovec = 0x8 + SizeofMsghdr = 0x1c + SizeofCmsghdr = 0xc ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go index e834b069f..2fa61d593 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go @@ -131,6 +131,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint64 +} + type RawSockaddr struct { Family uint16 Data [14]int8 @@ -164,9 +175,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x10 - SizeofMsghdr = 0x38 - SizeofCmsghdr = 0x10 + SizeofSockaddrNFCLLCP = 0x60 + SizeofIovec = 0x10 + SizeofMsghdr = 0x38 + SizeofCmsghdr = 0x10 ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go index e31083b04..7f3639933 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go @@ -131,6 +131,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint64 +} + type RawSockaddr struct { Family uint16 Data [14]int8 @@ -164,9 +175,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x10 - SizeofMsghdr = 0x38 - SizeofCmsghdr = 0x10 + SizeofSockaddrNFCLLCP = 0x60 + SizeofIovec = 0x10 + SizeofMsghdr = 0x38 + SizeofCmsghdr = 0x10 ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go index 42811f7fb..f3c20cb86 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go @@ -133,6 +133,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint32 +} + type RawSockaddr struct { Family uint16 Data [14]int8 @@ -165,9 +176,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x8 - SizeofMsghdr = 0x1c - SizeofCmsghdr = 0xc + SizeofSockaddrNFCLLCP = 0x58 + SizeofIovec = 0x8 + SizeofMsghdr = 0x1c + SizeofCmsghdr = 0xc ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go index af7a72017..885d27950 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go @@ -134,6 +134,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint32 +} + type RawSockaddr struct { Family uint16 Data [14]uint8 @@ -166,9 +177,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x8 - SizeofMsghdr = 0x1c - SizeofCmsghdr = 0xc + SizeofSockaddrNFCLLCP = 0x58 + SizeofIovec = 0x8 + SizeofMsghdr = 0x1c + SizeofCmsghdr = 0xc ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go index 2a3afbaef..a94eb8e18 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go @@ -132,6 +132,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint64 +} + type RawSockaddr struct { Family uint16 Data [14]uint8 @@ -165,9 +176,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x10 - SizeofMsghdr = 0x38 - SizeofCmsghdr = 0x10 + SizeofSockaddrNFCLLCP = 0x60 + SizeofIovec = 0x10 + SizeofMsghdr = 0x38 + SizeofCmsghdr = 0x10 ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go index c0de30a65..659e32ebd 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go @@ -132,6 +132,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint64 +} + type RawSockaddr struct { Family uint16 Data [14]uint8 @@ -165,9 +176,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x10 - SizeofMsghdr = 0x38 - SizeofCmsghdr = 0x10 + SizeofSockaddrNFCLLCP = 0x60 + SizeofIovec = 0x10 + SizeofMsghdr = 0x38 + SizeofCmsghdr = 0x10 ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go index 74faf2e91..ab8ec604f 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go @@ -131,6 +131,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint64 +} + type RawSockaddr struct { Family uint16 Data [14]uint8 @@ -164,9 +175,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x10 - SizeofMsghdr = 0x38 - SizeofCmsghdr = 0x10 + SizeofSockaddrNFCLLCP = 0x60 + SizeofIovec = 0x10 + SizeofMsghdr = 0x38 + SizeofCmsghdr = 0x10 ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go b/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go index 9a8f0c2c6..3ec08237f 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go @@ -130,6 +130,17 @@ const ( FADV_NOREUSE = 0x7 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint64 +} + type RawSockaddr struct { Family uint16 Data [14]int8 @@ -163,9 +174,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x10 - SizeofMsghdr = 0x38 - SizeofCmsghdr = 0x10 + SizeofSockaddrNFCLLCP = 0x60 + SizeofIovec = 0x10 + SizeofMsghdr = 0x38 + SizeofCmsghdr = 0x10 ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go index 72cdda75b..23d474470 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go @@ -134,6 +134,17 @@ const ( FADV_NOREUSE = 0x5 ) +type RawSockaddrNFCLLCP struct { + Sa_family uint16 + Dev_idx uint32 + Target_idx uint32 + Nfc_protocol uint32 + Dsap uint8 + Ssap uint8 + Service_name [63]uint8 + Service_name_len uint64 +} + type RawSockaddr struct { Family uint16 Data [14]int8 @@ -167,9 +178,10 @@ type Cmsghdr struct { } const ( - SizeofIovec = 0x10 - SizeofMsghdr = 0x38 - SizeofCmsghdr = 0x10 + SizeofSockaddrNFCLLCP = 0x60 + SizeofIovec = 0x10 + SizeofMsghdr = 0x38 + SizeofCmsghdr = 0x10 ) const ( diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go index b10e73abf..2fd2060e6 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go +++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go @@ -445,8 +445,10 @@ type Ptmget struct { const ( AT_FDCWD = -0x64 - AT_SYMLINK_FOLLOW = 0x400 + AT_EACCESS = 0x100 AT_SYMLINK_NOFOLLOW = 0x200 + AT_SYMLINK_FOLLOW = 0x400 + AT_REMOVEDIR = 0x800 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go index 28ed6d55a..6a5a1a8ae 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go @@ -453,8 +453,10 @@ type Ptmget struct { const ( AT_FDCWD = -0x64 - AT_SYMLINK_FOLLOW = 0x400 + AT_EACCESS = 0x100 AT_SYMLINK_NOFOLLOW = 0x200 + AT_SYMLINK_FOLLOW = 0x400 + AT_REMOVEDIR = 0x800 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go index 4ba196ebe..84cc8d01e 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go +++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go @@ -450,8 +450,10 @@ type Ptmget struct { const ( AT_FDCWD = -0x64 - AT_SYMLINK_FOLLOW = 0x400 + AT_EACCESS = 0x100 AT_SYMLINK_NOFOLLOW = 0x200 + AT_SYMLINK_FOLLOW = 0x400 + AT_REMOVEDIR = 0x800 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go index dd642bd9c..c844e7096 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go @@ -453,8 +453,10 @@ type Ptmget struct { const ( AT_FDCWD = -0x64 - AT_SYMLINK_FOLLOW = 0x400 + AT_EACCESS = 0x100 AT_SYMLINK_NOFOLLOW = 0x200 + AT_SYMLINK_FOLLOW = 0x400 + AT_REMOVEDIR = 0x800 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go index 1fdb0e5fa..2a8b1e6f7 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go +++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go @@ -438,8 +438,10 @@ type Winsize struct { const ( AT_FDCWD = -0x64 - AT_SYMLINK_FOLLOW = 0x4 + AT_EACCESS = 0x1 AT_SYMLINK_NOFOLLOW = 0x2 + AT_SYMLINK_FOLLOW = 0x4 + AT_REMOVEDIR = 0x8 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go index e2fc93c7c..b1759cf70 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go @@ -438,8 +438,10 @@ type Winsize struct { const ( AT_FDCWD = -0x64 - AT_SYMLINK_FOLLOW = 0x4 + AT_EACCESS = 0x1 AT_SYMLINK_NOFOLLOW = 0x2 + AT_SYMLINK_FOLLOW = 0x4 + AT_REMOVEDIR = 0x8 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go index 8d34b5a2f..e807de206 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go +++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go @@ -439,8 +439,10 @@ type Winsize struct { const ( AT_FDCWD = -0x64 - AT_SYMLINK_FOLLOW = 0x4 + AT_EACCESS = 0x1 AT_SYMLINK_NOFOLLOW = 0x2 + AT_SYMLINK_FOLLOW = 0x4 + AT_REMOVEDIR = 0x8 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go index ea8f1a0d9..ff3aecaee 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go @@ -432,8 +432,10 @@ type Winsize struct { const ( AT_FDCWD = -0x64 - AT_SYMLINK_FOLLOW = 0x4 + AT_EACCESS = 0x1 AT_SYMLINK_NOFOLLOW = 0x2 + AT_SYMLINK_FOLLOW = 0x4 + AT_REMOVEDIR = 0x8 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go index ec6e8bc3f..9ecda6917 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go +++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go @@ -432,8 +432,10 @@ type Winsize struct { const ( AT_FDCWD = -0x64 - AT_SYMLINK_FOLLOW = 0x4 + AT_EACCESS = 0x1 AT_SYMLINK_NOFOLLOW = 0x2 + AT_SYMLINK_FOLLOW = 0x4 + AT_REMOVEDIR = 0x8 ) type PollFd struct { diff --git a/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go b/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go index 8bffde78e..4ab638cb9 100644 --- a/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go +++ b/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go @@ -347,6 +347,10 @@ type Dirent struct { Name [256]byte } +type FdSet struct { + Bits [64]int32 +} + // This struct is packed on z/OS so it can't be used directly. type Flock_t struct { Type int16 diff --git a/vendor/golang.org/x/sys/windows/empty.s b/vendor/golang.org/x/sys/windows/empty.s index 69309e4da..fdbbbcd31 100644 --- a/vendor/golang.org/x/sys/windows/empty.s +++ b/vendor/golang.org/x/sys/windows/empty.s @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. +//go:build !go1.12 // +build !go1.12 // This file is here to allow bodyless functions with go:linkname for Go 1.11 diff --git a/vendor/golang.org/x/sys/windows/exec_windows.go b/vendor/golang.org/x/sys/windows/exec_windows.go index 9eb1fb633..7a11e83b7 100644 --- a/vendor/golang.org/x/sys/windows/exec_windows.go +++ b/vendor/golang.org/x/sys/windows/exec_windows.go @@ -9,6 +9,8 @@ package windows import ( errorspkg "errors" "unsafe" + + "golang.org/x/sys/internal/unsafeheader" ) // EscapeArg rewrites command line argument s as prescribed @@ -78,6 +80,40 @@ func EscapeArg(s string) string { return string(qs[:j]) } +// ComposeCommandLine escapes and joins the given arguments suitable for use as a Windows command line, +// in CreateProcess's CommandLine argument, CreateService/ChangeServiceConfig's BinaryPathName argument, +// or any program that uses CommandLineToArgv. +func ComposeCommandLine(args []string) string { + var commandLine string + for i := range args { + if i > 0 { + commandLine += " " + } + commandLine += EscapeArg(args[i]) + } + return commandLine +} + +// DecomposeCommandLine breaks apart its argument command line into unescaped parts using CommandLineToArgv, +// as gathered from GetCommandLine, QUERY_SERVICE_CONFIG's BinaryPathName argument, or elsewhere that +// command lines are passed around. +func DecomposeCommandLine(commandLine string) ([]string, error) { + if len(commandLine) == 0 { + return []string{}, nil + } + var argc int32 + argv, err := CommandLineToArgv(StringToUTF16Ptr(commandLine), &argc) + if err != nil { + return nil, err + } + defer LocalFree(Handle(unsafe.Pointer(argv))) + var args []string + for _, v := range (*argv)[:argc] { + args = append(args, UTF16ToString((*v)[:])) + } + return args, nil +} + func CloseOnExec(fd Handle) { SetHandleInformation(Handle(fd), HANDLE_FLAG_INHERIT, 0) } @@ -101,8 +137,8 @@ func FullPath(name string) (path string, err error) { } } -// NewProcThreadAttributeList allocates a new ProcThreadAttributeList, with the requested maximum number of attributes. -func NewProcThreadAttributeList(maxAttrCount uint32) (*ProcThreadAttributeList, error) { +// NewProcThreadAttributeList allocates a new ProcThreadAttributeListContainer, with the requested maximum number of attributes. +func NewProcThreadAttributeList(maxAttrCount uint32) (*ProcThreadAttributeListContainer, error) { var size uintptr err := initializeProcThreadAttributeList(nil, maxAttrCount, 0, &size) if err != ERROR_INSUFFICIENT_BUFFER { @@ -111,10 +147,9 @@ func NewProcThreadAttributeList(maxAttrCount uint32) (*ProcThreadAttributeList, } return nil, err } - const psize = unsafe.Sizeof(uintptr(0)) // size is guaranteed to be ≥1 by InitializeProcThreadAttributeList. - al := (*ProcThreadAttributeList)(unsafe.Pointer(&make([]unsafe.Pointer, (size+psize-1)/psize)[0])) - err = initializeProcThreadAttributeList(al, maxAttrCount, 0, &size) + al := &ProcThreadAttributeListContainer{data: (*ProcThreadAttributeList)(unsafe.Pointer(&make([]byte, size)[0]))} + err = initializeProcThreadAttributeList(al.data, maxAttrCount, 0, &size) if err != nil { return nil, err } @@ -122,11 +157,39 @@ func NewProcThreadAttributeList(maxAttrCount uint32) (*ProcThreadAttributeList, } // Update modifies the ProcThreadAttributeList using UpdateProcThreadAttribute. -func (al *ProcThreadAttributeList) Update(attribute uintptr, flags uint32, value unsafe.Pointer, size uintptr, prevValue unsafe.Pointer, returnedSize *uintptr) error { - return updateProcThreadAttribute(al, flags, attribute, value, size, prevValue, returnedSize) +// Note that the value passed to this function will be copied into memory +// allocated by LocalAlloc, the contents of which should not contain any +// Go-managed pointers, even if the passed value itself is a Go-managed +// pointer. +func (al *ProcThreadAttributeListContainer) Update(attribute uintptr, value unsafe.Pointer, size uintptr) error { + alloc, err := LocalAlloc(LMEM_FIXED, uint32(size)) + if err != nil { + return err + } + var src, dst []byte + hdr := (*unsafeheader.Slice)(unsafe.Pointer(&src)) + hdr.Data = value + hdr.Cap = int(size) + hdr.Len = int(size) + hdr = (*unsafeheader.Slice)(unsafe.Pointer(&dst)) + hdr.Data = unsafe.Pointer(alloc) + hdr.Cap = int(size) + hdr.Len = int(size) + copy(dst, src) + al.heapAllocations = append(al.heapAllocations, alloc) + return updateProcThreadAttribute(al.data, 0, attribute, unsafe.Pointer(alloc), size, nil, nil) } // Delete frees ProcThreadAttributeList's resources. -func (al *ProcThreadAttributeList) Delete() { - deleteProcThreadAttributeList(al) +func (al *ProcThreadAttributeListContainer) Delete() { + deleteProcThreadAttributeList(al.data) + for i := range al.heapAllocations { + LocalFree(Handle(al.heapAllocations[i])) + } + al.heapAllocations = nil +} + +// List returns the actual ProcThreadAttributeList to be passed to StartupInfoEx. +func (al *ProcThreadAttributeListContainer) List() *ProcThreadAttributeList { + return al.data } diff --git a/vendor/golang.org/x/sys/windows/syscall_windows.go b/vendor/golang.org/x/sys/windows/syscall_windows.go index bb6aaf89e..1215b2ae2 100644 --- a/vendor/golang.org/x/sys/windows/syscall_windows.go +++ b/vendor/golang.org/x/sys/windows/syscall_windows.go @@ -220,6 +220,7 @@ func NewCallbackCDecl(fn interface{}) uintptr { //sys CancelIo(s Handle) (err error) //sys CancelIoEx(s Handle, o *Overlapped) (err error) //sys CreateProcess(appName *uint16, commandLine *uint16, procSecurity *SecurityAttributes, threadSecurity *SecurityAttributes, inheritHandles bool, creationFlags uint32, env *uint16, currentDir *uint16, startupInfo *StartupInfo, outProcInfo *ProcessInformation) (err error) = CreateProcessW +//sys CreateProcessAsUser(token Token, appName *uint16, commandLine *uint16, procSecurity *SecurityAttributes, threadSecurity *SecurityAttributes, inheritHandles bool, creationFlags uint32, env *uint16, currentDir *uint16, startupInfo *StartupInfo, outProcInfo *ProcessInformation) (err error) = advapi32.CreateProcessAsUserW //sys initializeProcThreadAttributeList(attrlist *ProcThreadAttributeList, attrcount uint32, flags uint32, size *uintptr) (err error) = InitializeProcThreadAttributeList //sys deleteProcThreadAttributeList(attrlist *ProcThreadAttributeList) = DeleteProcThreadAttributeList //sys updateProcThreadAttribute(attrlist *ProcThreadAttributeList, flags uint32, attr uintptr, value unsafe.Pointer, size uintptr, prevvalue unsafe.Pointer, returnedsize *uintptr) (err error) = UpdateProcThreadAttribute diff --git a/vendor/golang.org/x/sys/windows/types_windows.go b/vendor/golang.org/x/sys/windows/types_windows.go index 23fe18ece..1f733398e 100644 --- a/vendor/golang.org/x/sys/windows/types_windows.go +++ b/vendor/golang.org/x/sys/windows/types_windows.go @@ -909,14 +909,15 @@ type StartupInfoEx struct { // ProcThreadAttributeList is a placeholder type to represent a PROC_THREAD_ATTRIBUTE_LIST. // -// To create a *ProcThreadAttributeList, use NewProcThreadAttributeList, and -// free its memory using ProcThreadAttributeList.Delete. -type ProcThreadAttributeList struct { - // This is of type unsafe.Pointer, not of type byte or uintptr, because - // the contents of it is mostly a list of pointers, and in most cases, - // that's a list of pointers to Go-allocated objects. In order to keep - // the GC from collecting these objects, we declare this as unsafe.Pointer. - _ [1]unsafe.Pointer +// To create a *ProcThreadAttributeList, use NewProcThreadAttributeList, update +// it with ProcThreadAttributeListContainer.Update, free its memory using +// ProcThreadAttributeListContainer.Delete, and access the list itself using +// ProcThreadAttributeListContainer.List. +type ProcThreadAttributeList struct{} + +type ProcThreadAttributeListContainer struct { + data *ProcThreadAttributeList + heapAllocations []uintptr } type ProcessInformation struct { diff --git a/vendor/golang.org/x/sys/windows/zsyscall_windows.go b/vendor/golang.org/x/sys/windows/zsyscall_windows.go index 559bc845c..148de0ffb 100644 --- a/vendor/golang.org/x/sys/windows/zsyscall_windows.go +++ b/vendor/golang.org/x/sys/windows/zsyscall_windows.go @@ -69,6 +69,7 @@ var ( procConvertStringSecurityDescriptorToSecurityDescriptorW = modadvapi32.NewProc("ConvertStringSecurityDescriptorToSecurityDescriptorW") procConvertStringSidToSidW = modadvapi32.NewProc("ConvertStringSidToSidW") procCopySid = modadvapi32.NewProc("CopySid") + procCreateProcessAsUserW = modadvapi32.NewProc("CreateProcessAsUserW") procCreateServiceW = modadvapi32.NewProc("CreateServiceW") procCreateWellKnownSid = modadvapi32.NewProc("CreateWellKnownSid") procCryptAcquireContextW = modadvapi32.NewProc("CryptAcquireContextW") @@ -553,6 +554,18 @@ func CopySid(destSidLen uint32, destSid *SID, srcSid *SID) (err error) { return } +func CreateProcessAsUser(token Token, appName *uint16, commandLine *uint16, procSecurity *SecurityAttributes, threadSecurity *SecurityAttributes, inheritHandles bool, creationFlags uint32, env *uint16, currentDir *uint16, startupInfo *StartupInfo, outProcInfo *ProcessInformation) (err error) { + var _p0 uint32 + if inheritHandles { + _p0 = 1 + } + r1, _, e1 := syscall.Syscall12(procCreateProcessAsUserW.Addr(), 11, uintptr(token), uintptr(unsafe.Pointer(appName)), uintptr(unsafe.Pointer(commandLine)), uintptr(unsafe.Pointer(procSecurity)), uintptr(unsafe.Pointer(threadSecurity)), uintptr(_p0), uintptr(creationFlags), uintptr(unsafe.Pointer(env)), uintptr(unsafe.Pointer(currentDir)), uintptr(unsafe.Pointer(startupInfo)), uintptr(unsafe.Pointer(outProcInfo)), 0) + if r1 == 0 { + err = errnoErr(e1) + } + return +} + func CreateService(mgr Handle, serviceName *uint16, displayName *uint16, access uint32, srvType uint32, startType uint32, errCtl uint32, pathName *uint16, loadOrderGroup *uint16, tagId *uint32, dependencies *uint16, serviceStartName *uint16, password *uint16) (handle Handle, err error) { r0, _, e1 := syscall.Syscall15(procCreateServiceW.Addr(), 13, uintptr(mgr), uintptr(unsafe.Pointer(serviceName)), uintptr(unsafe.Pointer(displayName)), uintptr(access), uintptr(srvType), uintptr(startType), uintptr(errCtl), uintptr(unsafe.Pointer(pathName)), uintptr(unsafe.Pointer(loadOrderGroup)), uintptr(unsafe.Pointer(tagId)), uintptr(unsafe.Pointer(dependencies)), uintptr(unsafe.Pointer(serviceStartName)), uintptr(unsafe.Pointer(password)), 0, 0) handle = Handle(r0) diff --git a/vendor/golang.org/x/text/unicode/rangetable/merge.go b/vendor/golang.org/x/text/unicode/rangetable/merge.go new file mode 100644 index 000000000..ea2a0803e --- /dev/null +++ b/vendor/golang.org/x/text/unicode/rangetable/merge.go @@ -0,0 +1,260 @@ +// Copyright 2015 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package rangetable + +import ( + "unicode" +) + +// atEnd is used to mark a completed iteration. +const atEnd = unicode.MaxRune + 1 + +// Merge returns a new RangeTable that is the union of the given tables. +// It can also be used to compact user-created RangeTables. The entries in +// R16 and R32 for any given RangeTable should be sorted and non-overlapping. +// +// A lookup in the resulting table can be several times faster than using In +// directly on the ranges. Merge is an expensive operation, however, and only +// makes sense if one intends to use the result for more than a couple of +// hundred lookups. +func Merge(ranges ...*unicode.RangeTable) *unicode.RangeTable { + rt := &unicode.RangeTable{} + if len(ranges) == 0 { + return rt + } + + iter := tablesIter(make([]tableIndex, len(ranges))) + + for i, t := range ranges { + iter[i] = tableIndex{t, 0, atEnd} + if len(t.R16) > 0 { + iter[i].next = rune(t.R16[0].Lo) + } + } + + if r0 := iter.next16(); r0.Stride != 0 { + for { + r1 := iter.next16() + if r1.Stride == 0 { + rt.R16 = append(rt.R16, r0) + break + } + stride := r1.Lo - r0.Hi + if (r1.Lo == r1.Hi || stride == r1.Stride) && (r0.Lo == r0.Hi || stride == r0.Stride) { + // Fully merge the next range into the previous one. + r0.Hi, r0.Stride = r1.Hi, stride + continue + } else if stride == r0.Stride { + // Move the first element of r1 to r0. This may eliminate an + // entry. + r0.Hi = r1.Lo + r0.Stride = stride + r1.Lo = r1.Lo + r1.Stride + if r1.Lo > r1.Hi { + continue + } + } + rt.R16 = append(rt.R16, r0) + r0 = r1 + } + } + + for i, t := range ranges { + iter[i] = tableIndex{t, 0, atEnd} + if len(t.R32) > 0 { + iter[i].next = rune(t.R32[0].Lo) + } + } + + if r0 := iter.next32(); r0.Stride != 0 { + for { + r1 := iter.next32() + if r1.Stride == 0 { + rt.R32 = append(rt.R32, r0) + break + } + stride := r1.Lo - r0.Hi + if (r1.Lo == r1.Hi || stride == r1.Stride) && (r0.Lo == r0.Hi || stride == r0.Stride) { + // Fully merge the next range into the previous one. + r0.Hi, r0.Stride = r1.Hi, stride + continue + } else if stride == r0.Stride { + // Move the first element of r1 to r0. This may eliminate an + // entry. + r0.Hi = r1.Lo + r1.Lo = r1.Lo + r1.Stride + if r1.Lo > r1.Hi { + continue + } + } + rt.R32 = append(rt.R32, r0) + r0 = r1 + } + } + + for i := 0; i < len(rt.R16) && rt.R16[i].Hi <= unicode.MaxLatin1; i++ { + rt.LatinOffset = i + 1 + } + + return rt +} + +type tableIndex struct { + t *unicode.RangeTable + p uint32 + next rune +} + +type tablesIter []tableIndex + +// sortIter does an insertion sort using the next field of tableIndex. Insertion +// sort is a good sorting algorithm for this case. +func sortIter(t []tableIndex) { + for i := range t { + for j := i; j > 0 && t[j-1].next > t[j].next; j-- { + t[j], t[j-1] = t[j-1], t[j] + } + } +} + +// next16 finds the ranged to be added to the table. If ranges overlap between +// multiple tables it clips the result to a non-overlapping range if the +// elements are not fully subsumed. It returns a zero range if there are no more +// ranges. +func (ti tablesIter) next16() unicode.Range16 { + sortIter(ti) + + t0 := ti[0] + if t0.next == atEnd { + return unicode.Range16{} + } + r0 := t0.t.R16[t0.p] + r0.Lo = uint16(t0.next) + + // We restrict the Hi of the current range if it overlaps with another range. + for i := range ti { + tn := ti[i] + // Since our tableIndices are sorted by next, we can break if the there + // is no overlap. The first value of a next range can always be merged + // into the current one, so we can break in case of equality as well. + if rune(r0.Hi) <= tn.next { + break + } + rn := tn.t.R16[tn.p] + rn.Lo = uint16(tn.next) + + // Limit r0.Hi based on next ranges in list, but allow it to overlap + // with ranges as long as it subsumes it. + m := (rn.Lo - r0.Lo) % r0.Stride + if m == 0 && (rn.Stride == r0.Stride || rn.Lo == rn.Hi) { + // Overlap, take the min of the two Hi values: for simplicity's sake + // we only process one range at a time. + if r0.Hi > rn.Hi { + r0.Hi = rn.Hi + } + } else { + // Not a compatible stride. Set to the last possible value before + // rn.Lo, but ensure there is at least one value. + if x := rn.Lo - m; r0.Lo <= x { + r0.Hi = x + } + break + } + } + + // Update the next values for each table. + for i := range ti { + tn := &ti[i] + if rune(r0.Hi) < tn.next { + break + } + rn := tn.t.R16[tn.p] + stride := rune(rn.Stride) + tn.next += stride * (1 + ((rune(r0.Hi) - tn.next) / stride)) + if rune(rn.Hi) < tn.next { + if tn.p++; int(tn.p) == len(tn.t.R16) { + tn.next = atEnd + } else { + tn.next = rune(tn.t.R16[tn.p].Lo) + } + } + } + + if r0.Lo == r0.Hi { + r0.Stride = 1 + } + + return r0 +} + +// next32 finds the ranged to be added to the table. If ranges overlap between +// multiple tables it clips the result to a non-overlapping range if the +// elements are not fully subsumed. It returns a zero range if there are no more +// ranges. +func (ti tablesIter) next32() unicode.Range32 { + sortIter(ti) + + t0 := ti[0] + if t0.next == atEnd { + return unicode.Range32{} + } + r0 := t0.t.R32[t0.p] + r0.Lo = uint32(t0.next) + + // We restrict the Hi of the current range if it overlaps with another range. + for i := range ti { + tn := ti[i] + // Since our tableIndices are sorted by next, we can break if the there + // is no overlap. The first value of a next range can always be merged + // into the current one, so we can break in case of equality as well. + if rune(r0.Hi) <= tn.next { + break + } + rn := tn.t.R32[tn.p] + rn.Lo = uint32(tn.next) + + // Limit r0.Hi based on next ranges in list, but allow it to overlap + // with ranges as long as it subsumes it. + m := (rn.Lo - r0.Lo) % r0.Stride + if m == 0 && (rn.Stride == r0.Stride || rn.Lo == rn.Hi) { + // Overlap, take the min of the two Hi values: for simplicity's sake + // we only process one range at a time. + if r0.Hi > rn.Hi { + r0.Hi = rn.Hi + } + } else { + // Not a compatible stride. Set to the last possible value before + // rn.Lo, but ensure there is at least one value. + if x := rn.Lo - m; r0.Lo <= x { + r0.Hi = x + } + break + } + } + + // Update the next values for each table. + for i := range ti { + tn := &ti[i] + if rune(r0.Hi) < tn.next { + break + } + rn := tn.t.R32[tn.p] + stride := rune(rn.Stride) + tn.next += stride * (1 + ((rune(r0.Hi) - tn.next) / stride)) + if rune(rn.Hi) < tn.next { + if tn.p++; int(tn.p) == len(tn.t.R32) { + tn.next = atEnd + } else { + tn.next = rune(tn.t.R32[tn.p].Lo) + } + } + } + + if r0.Lo == r0.Hi { + r0.Stride = 1 + } + + return r0 +} diff --git a/vendor/golang.org/x/text/unicode/rangetable/rangetable.go b/vendor/golang.org/x/text/unicode/rangetable/rangetable.go new file mode 100644 index 000000000..187882cc3 --- /dev/null +++ b/vendor/golang.org/x/text/unicode/rangetable/rangetable.go @@ -0,0 +1,70 @@ +// Copyright 2015 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Package rangetable provides utilities for creating and inspecting +// unicode.RangeTables. +package rangetable + +import ( + "sort" + "unicode" +) + +// New creates a RangeTable from the given runes, which may contain duplicates. +func New(r ...rune) *unicode.RangeTable { + if len(r) == 0 { + return &unicode.RangeTable{} + } + + sort.Sort(byRune(r)) + + // Remove duplicates. + k := 1 + for i := 1; i < len(r); i++ { + if r[k-1] != r[i] { + r[k] = r[i] + k++ + } + } + + var rt unicode.RangeTable + for _, r := range r[:k] { + if r <= 0xFFFF { + rt.R16 = append(rt.R16, unicode.Range16{Lo: uint16(r), Hi: uint16(r), Stride: 1}) + } else { + rt.R32 = append(rt.R32, unicode.Range32{Lo: uint32(r), Hi: uint32(r), Stride: 1}) + } + } + + // Optimize RangeTable. + return Merge(&rt) +} + +type byRune []rune + +func (r byRune) Len() int { return len(r) } +func (r byRune) Swap(i, j int) { r[i], r[j] = r[j], r[i] } +func (r byRune) Less(i, j int) bool { return r[i] < r[j] } + +// Visit visits all runes in the given RangeTable in order, calling fn for each. +func Visit(rt *unicode.RangeTable, fn func(rune)) { + for _, r16 := range rt.R16 { + for r := rune(r16.Lo); r <= rune(r16.Hi); r += rune(r16.Stride) { + fn(r) + } + } + for _, r32 := range rt.R32 { + for r := rune(r32.Lo); r <= rune(r32.Hi); r += rune(r32.Stride) { + fn(r) + } + } +} + +// Assigned returns a RangeTable with all assigned code points for a given +// Unicode version. This includes graphic, format, control, and private-use +// characters. It returns nil if the data for the given version is not +// available. +func Assigned(version string) *unicode.RangeTable { + return assigned[version] +} diff --git a/vendor/golang.org/x/text/unicode/rangetable/tables10.0.0.go b/vendor/golang.org/x/text/unicode/rangetable/tables10.0.0.go new file mode 100644 index 000000000..a34fbe294 --- /dev/null +++ b/vendor/golang.org/x/text/unicode/rangetable/tables10.0.0.go @@ -0,0 +1,6379 @@ +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. + +//go:build go1.10 && !go1.13 +// +build go1.10,!go1.13 + +package rangetable + +//go:generate go run gen.go --versions=4.1.0,5.1.0,5.2.0,5.0.0,6.1.0,6.2.0,6.3.0,6.0.0,7.0.0,8.0.0,9.0.0,10.0.0 + +import "unicode" + +var assigned = map[string]*unicode.RangeTable{ + "4.1.0": assigned4_1_0, + "5.1.0": assigned5_1_0, + "5.2.0": assigned5_2_0, + "5.0.0": assigned5_0_0, + "6.1.0": assigned6_1_0, + "6.2.0": assigned6_2_0, + "6.3.0": assigned6_3_0, + "6.0.0": assigned6_0_0, + "7.0.0": assigned7_0_0, + "8.0.0": assigned8_0_0, + "9.0.0": assigned9_0_0, + "10.0.0": assigned10_0_0, +} + +// size 2924 bytes (2 KiB) +var assigned4_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0241, 1}, + {0x0250, 0x036f, 1}, + {0x0374, 0x0375, 1}, + {0x037a, 0x037e, 4}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x03ce, 1}, + {0x03d0, 0x0486, 1}, + {0x0488, 0x04ce, 1}, + {0x04d0, 0x04f9, 1}, + {0x0500, 0x050f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05b9, 1}, + {0x05bb, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x060b, 0x0615, 1}, + {0x061b, 0x061e, 3}, + {0x061f, 0x0621, 2}, + {0x0622, 0x063a, 1}, + {0x0640, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x076d, 1}, + {0x0780, 0x07b1, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0970, 1}, + {0x097d, 0x0981, 4}, + {0x0982, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a59, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a74, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b43, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b61, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd7, 0x0be6, 15}, + {0x0be7, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3e, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c60, 0x0c61, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce6, 5}, + {0x0ce7, 0x0cef, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3e, 0x0d43, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d66, 5}, + {0x0d67, 0x0d6f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6a, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fcf, 0x0fd1, 1}, + {0x1000, 0x1021, 1}, + {0x1023, 0x1027, 1}, + {0x1029, 0x102a, 1}, + {0x102c, 0x1032, 1}, + {0x1036, 0x1039, 1}, + {0x1040, 0x1059, 1}, + {0x10a0, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18a9, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1d00, 0x1dc3, 1}, + {0x1e00, 0x1e9b, 1}, + {0x1ea0, 0x1ef9, 1}, + {0x1f00, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2063, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20eb, 1}, + {0x2100, 0x214c, 1}, + {0x2153, 0x2183, 1}, + {0x2190, 0x23db, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269c, 1}, + {0x26a0, 0x26b1, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27c6, 1}, + {0x27d0, 0x27eb, 1}, + {0x27f0, 0x2b13, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2e00, 0x2e17, 1}, + {0x2e1c, 0x2e1d, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312c, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31cf, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fbb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa700, 0xa716, 1}, + {0xa800, 0xa82b, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe23, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d12a, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7c9, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3152 bytes (3 KiB) +var assigned5_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0523, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x061f, 1}, + {0x0621, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0972, 1}, + {0x097b, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fd4, 1}, + {0x1000, 0x1099, 1}, + {0x109e, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1c00, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfe, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x214f, 1}, + {0x2153, 0x2188, 1}, + {0x2190, 0x23e7, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269d, 1}, + {0x26a0, 0x26bc, 1}, + {0x26c0, 0x26c3, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27cc, 0x27d0, 4}, + {0x27d1, 0x2b4c, 1}, + {0x2b50, 0x2b54, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2c6f, 1}, + {0x2c71, 0x2c7d, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e30, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fc3, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa500, 0xa62b, 1}, + {0xa640, 0xa65f, 1}, + {0xa662, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa700, 0xa78c, 1}, + {0xa7fb, 0xa82b, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xaa00, 161}, + {0xaa01, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa5f, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010900, 0x00010919, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3518 bytes (3 KiB) +var assigned5_2_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0525, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x061f, 1}, + {0x0621, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0900, 0x0939, 1}, + {0x093c, 0x094e, 1}, + {0x0950, 0x0955, 1}, + {0x0958, 0x0972, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fd8, 1}, + {0x1000, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1c00, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cd0, 0x1cf2, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfd, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b8, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23e8, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26cd, 1}, + {0x26cf, 0x26e1, 1}, + {0x26e3, 0x26e8, 5}, + {0x26e9, 0x26ff, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27cc, 0x27d0, 4}, + {0x27d1, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf1, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e31, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa65f, 1}, + {0xa662, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa6a0, 0xa6f7, 1}, + {0xa700, 0xa78c, 1}, + {0xa7fb, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaadf, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011080, 0x000110c1, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f131, 0x0001f13d, 12}, + {0x0001f13f, 0x0001f142, 3}, + {0x0001f146, 0x0001f14a, 4}, + {0x0001f14b, 0x0001f14e, 1}, + {0x0001f157, 0x0001f15f, 8}, + {0x0001f179, 0x0001f17b, 2}, + {0x0001f17c, 0x0001f17f, 3}, + {0x0001f18a, 0x0001f18d, 1}, + {0x0001f190, 0x0001f200, 112}, + {0x0001f210, 0x0001f231, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3026 bytes (2 KiB) +var assigned5_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x036f, 1}, + {0x0374, 0x0375, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x03ce, 1}, + {0x03d0, 0x0486, 1}, + {0x0488, 0x0513, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x060b, 0x0615, 1}, + {0x061b, 0x061e, 3}, + {0x061f, 0x0621, 2}, + {0x0622, 0x063a, 1}, + {0x0640, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x076d, 1}, + {0x0780, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0970, 1}, + {0x097b, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a59, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a74, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b43, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b61, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd7, 0x0be6, 15}, + {0x0be7, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3e, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c60, 0x0c61, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3e, 0x0d43, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d66, 5}, + {0x0d67, 0x0d6f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6a, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fcf, 0x0fd1, 1}, + {0x1000, 0x1021, 1}, + {0x1023, 0x1027, 1}, + {0x1029, 0x102a, 1}, + {0x102c, 0x1032, 1}, + {0x1036, 0x1039, 1}, + {0x1040, 0x1059, 1}, + {0x10a0, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18a9, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1d00, 0x1dca, 1}, + {0x1dfe, 0x1e9b, 1}, + {0x1ea0, 0x1ef9, 1}, + {0x1f00, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2063, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20ef, 1}, + {0x2100, 0x214e, 1}, + {0x2153, 0x2184, 1}, + {0x2190, 0x23e7, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269c, 1}, + {0x26a0, 0x26b2, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27d0, 0x27eb, 1}, + {0x27f0, 0x2b1a, 1}, + {0x2b20, 0x2b23, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2c6c, 1}, + {0x2c74, 0x2c77, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2e00, 0x2e17, 1}, + {0x2e1c, 0x2e1d, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312c, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31cf, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fbb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa700, 0xa71a, 1}, + {0xa720, 0xa721, 1}, + {0xa800, 0xa82b, 1}, + {0xa840, 0xa877, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe23, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010900, 0x00010919, 1}, + {0x0001091f, 0x00010a00, 225}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d12a, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20b9, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_2_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20ba, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_3_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20ba, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3812 bytes (3 KiB) +var assigned6_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0900, 162}, + {0x0901, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1bc0, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cd0, 0x1cf2, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20b9, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x27ca, 1}, + {0x27cc, 0x27ce, 2}, + {0x27cf, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf1, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e31, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa6a0, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa791, 1}, + {0xa7a0, 0xa7a9, 1}, + {0xa7fa, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaadf, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f169, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f5ff, 1}, + {0x0001f601, 0x0001f610, 1}, + {0x0001f612, 0x0001f614, 1}, + {0x0001f616, 0x0001f61c, 2}, + {0x0001f61d, 0x0001f61e, 1}, + {0x0001f620, 0x0001f625, 1}, + {0x0001f628, 0x0001f62b, 1}, + {0x0001f62d, 0x0001f630, 3}, + {0x0001f631, 0x0001f633, 1}, + {0x0001f635, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4898 bytes (4 KiB) +var assigned7_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b2, 1}, + {0x08e4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c81, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bd, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23fa, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e42, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa69d, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa7ad, 1}, + {0xa7b0, 0xa7b1, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab5f, 1}, + {0xab64, 0xab65, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe2d, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018c, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111cd, 0x000111d0, 3}, + {0x000111d1, 0x000111da, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123d, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011301, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011357, 0x0001135d, 6}, + {0x0001135e, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115c9, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00012000, 0x00012398, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f32c, 1}, + {0x0001f330, 0x0001f37d, 1}, + {0x0001f380, 0x0001f3ce, 1}, + {0x0001f3d4, 0x0001f3f7, 1}, + {0x0001f400, 0x0001f4fe, 1}, + {0x0001f500, 0x0001f54a, 1}, + {0x0001f550, 0x0001f579, 1}, + {0x0001f57b, 0x0001f5a3, 1}, + {0x0001f5a5, 0x0001f642, 1}, + {0x0001f645, 0x0001f6cf, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f3, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5048 bytes (4 KiB) +var assigned8_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b4, 1}, + {0x08e3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0b01, 8}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c81, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d5f, 8}, + {0x0d60, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20be, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x23fa, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e42, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fd5, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ad, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018c, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123d, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f579, 1}, + {0x0001f57b, 0x0001f5a3, 1}, + {0x0001f5a5, 0x0001f6d0, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f3, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f910, 0x0001f918, 1}, + {0x0001f980, 0x0001f984, 1}, + {0x0001f9c0, 0x00020000, 1600}, + {0x00020001, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5348 bytes (5 KiB) +var assigned9_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0b01, 8}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20be, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x23fe, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e44, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fd5, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ae, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00017000, 32}, + {0x00017001, 0x000187ec, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f6d2, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f6, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f910, 0x0001f91e, 1}, + {0x0001f920, 0x0001f927, 1}, + {0x0001f930, 0x0001f933, 3}, + {0x0001f934, 0x0001f93e, 1}, + {0x0001f940, 0x0001f94b, 1}, + {0x0001f950, 0x0001f95e, 1}, + {0x0001f980, 0x0001f991, 1}, + {0x0001f9c0, 0x00020000, 1600}, + {0x00020001, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5492 bytes (5 KiB) +var assigned10_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0860, 2}, + {0x0861, 0x086a, 1}, + {0x08a0, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fd, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0aff, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d00, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf9, 1}, + {0x1d00, 0x1df9, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bf, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd2, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e49, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312e, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fea, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ae, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x0001032d, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011a00, 257}, + {0x00011a01, 0x00011a47, 1}, + {0x00011a50, 0x00011a83, 1}, + {0x00011a86, 0x00011a9c, 1}, + {0x00011a9e, 0x00011aa2, 1}, + {0x00011ac0, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00011d00, 0x00011d06, 1}, + {0x00011d08, 0x00011d09, 1}, + {0x00011d0b, 0x00011d36, 1}, + {0x00011d3a, 0x00011d3c, 2}, + {0x00011d3d, 0x00011d3f, 2}, + {0x00011d40, 0x00011d47, 1}, + {0x00011d50, 0x00011d59, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00016fe1, 1}, + {0x00017000, 0x000187ec, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b11e, 1}, + {0x0001b170, 0x0001b2fb, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f260, 0x0001f265, 1}, + {0x0001f300, 0x0001f6d4, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f8, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f900, 0x0001f90b, 1}, + {0x0001f910, 0x0001f93e, 1}, + {0x0001f940, 0x0001f94c, 1}, + {0x0001f950, 0x0001f96b, 1}, + {0x0001f980, 0x0001f997, 1}, + {0x0001f9c0, 0x0001f9d0, 16}, + {0x0001f9d1, 0x0001f9e6, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002ceb0, 0x0002ebe0, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// Total size 49698 bytes (48 KiB) diff --git a/vendor/golang.org/x/text/unicode/rangetable/tables11.0.0.go b/vendor/golang.org/x/text/unicode/rangetable/tables11.0.0.go new file mode 100644 index 000000000..31949f0ff --- /dev/null +++ b/vendor/golang.org/x/text/unicode/rangetable/tables11.0.0.go @@ -0,0 +1,7030 @@ +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. + +//go:build go1.13 && !go1.14 +// +build go1.13,!go1.14 + +package rangetable + +//go:generate go run gen.go --versions=4.1.0,5.1.0,5.2.0,5.0.0,6.1.0,6.2.0,6.3.0,6.0.0,7.0.0,8.0.0,9.0.0,10.0.0,11.0.0 + +import "unicode" + +var assigned = map[string]*unicode.RangeTable{ + "4.1.0": assigned4_1_0, + "5.1.0": assigned5_1_0, + "5.2.0": assigned5_2_0, + "5.0.0": assigned5_0_0, + "6.1.0": assigned6_1_0, + "6.2.0": assigned6_2_0, + "6.3.0": assigned6_3_0, + "6.0.0": assigned6_0_0, + "7.0.0": assigned7_0_0, + "8.0.0": assigned8_0_0, + "9.0.0": assigned9_0_0, + "10.0.0": assigned10_0_0, + "11.0.0": assigned11_0_0, +} + +// size 2924 bytes (2 KiB) +var assigned4_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0241, 1}, + {0x0250, 0x036f, 1}, + {0x0374, 0x0375, 1}, + {0x037a, 0x037e, 4}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x03ce, 1}, + {0x03d0, 0x0486, 1}, + {0x0488, 0x04ce, 1}, + {0x04d0, 0x04f9, 1}, + {0x0500, 0x050f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05b9, 1}, + {0x05bb, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x060b, 0x0615, 1}, + {0x061b, 0x061e, 3}, + {0x061f, 0x0621, 2}, + {0x0622, 0x063a, 1}, + {0x0640, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x076d, 1}, + {0x0780, 0x07b1, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0970, 1}, + {0x097d, 0x0981, 4}, + {0x0982, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a59, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a74, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b43, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b61, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd7, 0x0be6, 15}, + {0x0be7, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3e, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c60, 0x0c61, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce6, 5}, + {0x0ce7, 0x0cef, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3e, 0x0d43, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d66, 5}, + {0x0d67, 0x0d6f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6a, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fcf, 0x0fd1, 1}, + {0x1000, 0x1021, 1}, + {0x1023, 0x1027, 1}, + {0x1029, 0x102a, 1}, + {0x102c, 0x1032, 1}, + {0x1036, 0x1039, 1}, + {0x1040, 0x1059, 1}, + {0x10a0, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18a9, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1d00, 0x1dc3, 1}, + {0x1e00, 0x1e9b, 1}, + {0x1ea0, 0x1ef9, 1}, + {0x1f00, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2063, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20eb, 1}, + {0x2100, 0x214c, 1}, + {0x2153, 0x2183, 1}, + {0x2190, 0x23db, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269c, 1}, + {0x26a0, 0x26b1, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27c6, 1}, + {0x27d0, 0x27eb, 1}, + {0x27f0, 0x2b13, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2e00, 0x2e17, 1}, + {0x2e1c, 0x2e1d, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312c, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31cf, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fbb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa700, 0xa716, 1}, + {0xa800, 0xa82b, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe23, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d12a, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7c9, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3152 bytes (3 KiB) +var assigned5_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0523, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x061f, 1}, + {0x0621, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0972, 1}, + {0x097b, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fd4, 1}, + {0x1000, 0x1099, 1}, + {0x109e, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1c00, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfe, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x214f, 1}, + {0x2153, 0x2188, 1}, + {0x2190, 0x23e7, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269d, 1}, + {0x26a0, 0x26bc, 1}, + {0x26c0, 0x26c3, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27cc, 0x27d0, 4}, + {0x27d1, 0x2b4c, 1}, + {0x2b50, 0x2b54, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2c6f, 1}, + {0x2c71, 0x2c7d, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e30, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fc3, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa500, 0xa62b, 1}, + {0xa640, 0xa65f, 1}, + {0xa662, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa700, 0xa78c, 1}, + {0xa7fb, 0xa82b, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xaa00, 161}, + {0xaa01, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa5f, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010900, 0x00010919, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3518 bytes (3 KiB) +var assigned5_2_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0525, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x061f, 1}, + {0x0621, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0900, 0x0939, 1}, + {0x093c, 0x094e, 1}, + {0x0950, 0x0955, 1}, + {0x0958, 0x0972, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fd8, 1}, + {0x1000, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1c00, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cd0, 0x1cf2, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfd, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b8, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23e8, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26cd, 1}, + {0x26cf, 0x26e1, 1}, + {0x26e3, 0x26e8, 5}, + {0x26e9, 0x26ff, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27cc, 0x27d0, 4}, + {0x27d1, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf1, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e31, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa65f, 1}, + {0xa662, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa6a0, 0xa6f7, 1}, + {0xa700, 0xa78c, 1}, + {0xa7fb, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaadf, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011080, 0x000110c1, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f131, 0x0001f13d, 12}, + {0x0001f13f, 0x0001f142, 3}, + {0x0001f146, 0x0001f14a, 4}, + {0x0001f14b, 0x0001f14e, 1}, + {0x0001f157, 0x0001f15f, 8}, + {0x0001f179, 0x0001f17b, 2}, + {0x0001f17c, 0x0001f17f, 3}, + {0x0001f18a, 0x0001f18d, 1}, + {0x0001f190, 0x0001f200, 112}, + {0x0001f210, 0x0001f231, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3026 bytes (2 KiB) +var assigned5_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x036f, 1}, + {0x0374, 0x0375, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x03ce, 1}, + {0x03d0, 0x0486, 1}, + {0x0488, 0x0513, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x060b, 0x0615, 1}, + {0x061b, 0x061e, 3}, + {0x061f, 0x0621, 2}, + {0x0622, 0x063a, 1}, + {0x0640, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x076d, 1}, + {0x0780, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0970, 1}, + {0x097b, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a59, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a74, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b43, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b61, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd7, 0x0be6, 15}, + {0x0be7, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3e, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c60, 0x0c61, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3e, 0x0d43, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d66, 5}, + {0x0d67, 0x0d6f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6a, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fcf, 0x0fd1, 1}, + {0x1000, 0x1021, 1}, + {0x1023, 0x1027, 1}, + {0x1029, 0x102a, 1}, + {0x102c, 0x1032, 1}, + {0x1036, 0x1039, 1}, + {0x1040, 0x1059, 1}, + {0x10a0, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18a9, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1d00, 0x1dca, 1}, + {0x1dfe, 0x1e9b, 1}, + {0x1ea0, 0x1ef9, 1}, + {0x1f00, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2063, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20ef, 1}, + {0x2100, 0x214e, 1}, + {0x2153, 0x2184, 1}, + {0x2190, 0x23e7, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269c, 1}, + {0x26a0, 0x26b2, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27d0, 0x27eb, 1}, + {0x27f0, 0x2b1a, 1}, + {0x2b20, 0x2b23, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2c6c, 1}, + {0x2c74, 0x2c77, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2e00, 0x2e17, 1}, + {0x2e1c, 0x2e1d, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312c, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31cf, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fbb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa700, 0xa71a, 1}, + {0xa720, 0xa721, 1}, + {0xa800, 0xa82b, 1}, + {0xa840, 0xa877, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe23, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010900, 0x00010919, 1}, + {0x0001091f, 0x00010a00, 225}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d12a, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20b9, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_2_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20ba, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_3_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20ba, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3812 bytes (3 KiB) +var assigned6_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0900, 162}, + {0x0901, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1bc0, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cd0, 0x1cf2, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20b9, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x27ca, 1}, + {0x27cc, 0x27ce, 2}, + {0x27cf, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf1, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e31, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa6a0, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa791, 1}, + {0xa7a0, 0xa7a9, 1}, + {0xa7fa, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaadf, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f169, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f5ff, 1}, + {0x0001f601, 0x0001f610, 1}, + {0x0001f612, 0x0001f614, 1}, + {0x0001f616, 0x0001f61c, 2}, + {0x0001f61d, 0x0001f61e, 1}, + {0x0001f620, 0x0001f625, 1}, + {0x0001f628, 0x0001f62b, 1}, + {0x0001f62d, 0x0001f630, 3}, + {0x0001f631, 0x0001f633, 1}, + {0x0001f635, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4898 bytes (4 KiB) +var assigned7_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b2, 1}, + {0x08e4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c81, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bd, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23fa, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e42, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa69d, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa7ad, 1}, + {0xa7b0, 0xa7b1, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab5f, 1}, + {0xab64, 0xab65, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe2d, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018c, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111cd, 0x000111d0, 3}, + {0x000111d1, 0x000111da, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123d, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011301, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011357, 0x0001135d, 6}, + {0x0001135e, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115c9, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00012000, 0x00012398, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f32c, 1}, + {0x0001f330, 0x0001f37d, 1}, + {0x0001f380, 0x0001f3ce, 1}, + {0x0001f3d4, 0x0001f3f7, 1}, + {0x0001f400, 0x0001f4fe, 1}, + {0x0001f500, 0x0001f54a, 1}, + {0x0001f550, 0x0001f579, 1}, + {0x0001f57b, 0x0001f5a3, 1}, + {0x0001f5a5, 0x0001f642, 1}, + {0x0001f645, 0x0001f6cf, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f3, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5048 bytes (4 KiB) +var assigned8_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b4, 1}, + {0x08e3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0b01, 8}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c81, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d5f, 8}, + {0x0d60, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20be, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x23fa, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e42, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fd5, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ad, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018c, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123d, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f579, 1}, + {0x0001f57b, 0x0001f5a3, 1}, + {0x0001f5a5, 0x0001f6d0, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f3, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f910, 0x0001f918, 1}, + {0x0001f980, 0x0001f984, 1}, + {0x0001f9c0, 0x00020000, 1600}, + {0x00020001, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5348 bytes (5 KiB) +var assigned9_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0b01, 8}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20be, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x23fe, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e44, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fd5, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ae, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00017000, 32}, + {0x00017001, 0x000187ec, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f6d2, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f6, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f910, 0x0001f91e, 1}, + {0x0001f920, 0x0001f927, 1}, + {0x0001f930, 0x0001f933, 3}, + {0x0001f934, 0x0001f93e, 1}, + {0x0001f940, 0x0001f94b, 1}, + {0x0001f950, 0x0001f95e, 1}, + {0x0001f980, 0x0001f991, 1}, + {0x0001f9c0, 0x00020000, 1600}, + {0x00020001, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5492 bytes (5 KiB) +var assigned10_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0860, 2}, + {0x0861, 0x086a, 1}, + {0x08a0, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fd, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0aff, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d00, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf9, 1}, + {0x1d00, 0x1df9, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bf, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd2, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e49, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312e, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fea, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ae, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x0001032d, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011a00, 257}, + {0x00011a01, 0x00011a47, 1}, + {0x00011a50, 0x00011a83, 1}, + {0x00011a86, 0x00011a9c, 1}, + {0x00011a9e, 0x00011aa2, 1}, + {0x00011ac0, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00011d00, 0x00011d06, 1}, + {0x00011d08, 0x00011d09, 1}, + {0x00011d0b, 0x00011d36, 1}, + {0x00011d3a, 0x00011d3c, 2}, + {0x00011d3d, 0x00011d3f, 2}, + {0x00011d40, 0x00011d47, 1}, + {0x00011d50, 0x00011d59, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00016fe1, 1}, + {0x00017000, 0x000187ec, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b11e, 1}, + {0x0001b170, 0x0001b2fb, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f260, 0x0001f265, 1}, + {0x0001f300, 0x0001f6d4, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f8, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f900, 0x0001f90b, 1}, + {0x0001f910, 0x0001f93e, 1}, + {0x0001f940, 0x0001f94c, 1}, + {0x0001f950, 0x0001f96b, 1}, + {0x0001f980, 0x0001f997, 1}, + {0x0001f9c0, 0x0001f9d0, 16}, + {0x0001f9d1, 0x0001f9e6, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002ceb0, 0x0002ebe0, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5654 bytes (5 KiB) +var assigned11_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05ef, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x07fd, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0860, 2}, + {0x0861, 0x086a, 1}, + {0x08a0, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fe, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a76, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0aff, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d00, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1878, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1c90, 0x1cba, 1}, + {0x1cbd, 0x1cc7, 1}, + {0x1cd0, 0x1cf9, 1}, + {0x1d00, 0x1df9, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bf, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bc8, 1}, + {0x2bca, 0x2bfe, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e4e, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312f, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fef, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7b9, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x0001032d, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a35, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a48, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010d27, 1}, + {0x00010d30, 0x00010d39, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00010f00, 0x00010f27, 1}, + {0x00010f30, 0x00010f59, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110cd, 0x000110d0, 3}, + {0x000110d1, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011146, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133b, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x0001145e, 0x00011480, 34}, + {0x00011481, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x0001171a, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x00011800, 0x0001183b, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011a00, 257}, + {0x00011a01, 0x00011a47, 1}, + {0x00011a50, 0x00011a83, 1}, + {0x00011a86, 0x00011aa2, 1}, + {0x00011ac0, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00011d00, 0x00011d06, 1}, + {0x00011d08, 0x00011d09, 1}, + {0x00011d0b, 0x00011d36, 1}, + {0x00011d3a, 0x00011d3c, 2}, + {0x00011d3d, 0x00011d3f, 2}, + {0x00011d40, 0x00011d47, 1}, + {0x00011d50, 0x00011d59, 1}, + {0x00011d60, 0x00011d65, 1}, + {0x00011d67, 0x00011d68, 1}, + {0x00011d6a, 0x00011d8e, 1}, + {0x00011d90, 0x00011d91, 1}, + {0x00011d93, 0x00011d98, 1}, + {0x00011da0, 0x00011da9, 1}, + {0x00011ee0, 0x00011ef8, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016e40, 0x00016e9a, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00016fe1, 1}, + {0x00017000, 0x000187f1, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b11e, 1}, + {0x0001b170, 0x0001b2fb, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d2e0, 0x0001d2f3, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d378, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ec71, 0x0001ecb4, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f260, 0x0001f265, 1}, + {0x0001f300, 0x0001f6d4, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f9, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d8, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f900, 0x0001f90b, 1}, + {0x0001f910, 0x0001f93e, 1}, + {0x0001f940, 0x0001f970, 1}, + {0x0001f973, 0x0001f976, 1}, + {0x0001f97a, 0x0001f97c, 2}, + {0x0001f97d, 0x0001f9a2, 1}, + {0x0001f9b0, 0x0001f9b9, 1}, + {0x0001f9c0, 0x0001f9c2, 1}, + {0x0001f9d0, 0x0001f9ff, 1}, + {0x0001fa60, 0x0001fa6d, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002ceb0, 0x0002ebe0, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// Total size 55352 bytes (54 KiB) diff --git a/vendor/golang.org/x/text/unicode/rangetable/tables12.0.0.go b/vendor/golang.org/x/text/unicode/rangetable/tables12.0.0.go new file mode 100644 index 000000000..9d4d724a6 --- /dev/null +++ b/vendor/golang.org/x/text/unicode/rangetable/tables12.0.0.go @@ -0,0 +1,7692 @@ +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. + +//go:build go1.14 && !go1.16 +// +build go1.14,!go1.16 + +package rangetable + +//go:generate go run gen.go --versions=4.1.0,5.1.0,5.2.0,5.0.0,6.1.0,6.2.0,6.3.0,6.0.0,7.0.0,8.0.0,9.0.0,10.0.0,11.0.0,12.0.0 + +import "unicode" + +var assigned = map[string]*unicode.RangeTable{ + "4.1.0": assigned4_1_0, + "5.1.0": assigned5_1_0, + "5.2.0": assigned5_2_0, + "5.0.0": assigned5_0_0, + "6.1.0": assigned6_1_0, + "6.2.0": assigned6_2_0, + "6.3.0": assigned6_3_0, + "6.0.0": assigned6_0_0, + "7.0.0": assigned7_0_0, + "8.0.0": assigned8_0_0, + "9.0.0": assigned9_0_0, + "10.0.0": assigned10_0_0, + "11.0.0": assigned11_0_0, + "12.0.0": assigned12_0_0, +} + +// size 2924 bytes (2 KiB) +var assigned4_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0241, 1}, + {0x0250, 0x036f, 1}, + {0x0374, 0x0375, 1}, + {0x037a, 0x037e, 4}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x03ce, 1}, + {0x03d0, 0x0486, 1}, + {0x0488, 0x04ce, 1}, + {0x04d0, 0x04f9, 1}, + {0x0500, 0x050f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05b9, 1}, + {0x05bb, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x060b, 0x0615, 1}, + {0x061b, 0x061e, 3}, + {0x061f, 0x0621, 2}, + {0x0622, 0x063a, 1}, + {0x0640, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x076d, 1}, + {0x0780, 0x07b1, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0970, 1}, + {0x097d, 0x0981, 4}, + {0x0982, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a59, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a74, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b43, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b61, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd7, 0x0be6, 15}, + {0x0be7, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3e, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c60, 0x0c61, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce6, 5}, + {0x0ce7, 0x0cef, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3e, 0x0d43, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d66, 5}, + {0x0d67, 0x0d6f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6a, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fcf, 0x0fd1, 1}, + {0x1000, 0x1021, 1}, + {0x1023, 0x1027, 1}, + {0x1029, 0x102a, 1}, + {0x102c, 0x1032, 1}, + {0x1036, 0x1039, 1}, + {0x1040, 0x1059, 1}, + {0x10a0, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18a9, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1d00, 0x1dc3, 1}, + {0x1e00, 0x1e9b, 1}, + {0x1ea0, 0x1ef9, 1}, + {0x1f00, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2063, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20eb, 1}, + {0x2100, 0x214c, 1}, + {0x2153, 0x2183, 1}, + {0x2190, 0x23db, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269c, 1}, + {0x26a0, 0x26b1, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27c6, 1}, + {0x27d0, 0x27eb, 1}, + {0x27f0, 0x2b13, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2e00, 0x2e17, 1}, + {0x2e1c, 0x2e1d, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312c, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31cf, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fbb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa700, 0xa716, 1}, + {0xa800, 0xa82b, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe23, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d12a, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7c9, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3152 bytes (3 KiB) +var assigned5_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0523, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x061f, 1}, + {0x0621, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0972, 1}, + {0x097b, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fd4, 1}, + {0x1000, 0x1099, 1}, + {0x109e, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1c00, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfe, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x214f, 1}, + {0x2153, 0x2188, 1}, + {0x2190, 0x23e7, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269d, 1}, + {0x26a0, 0x26bc, 1}, + {0x26c0, 0x26c3, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27cc, 0x27d0, 4}, + {0x27d1, 0x2b4c, 1}, + {0x2b50, 0x2b54, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2c6f, 1}, + {0x2c71, 0x2c7d, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e30, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fc3, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa500, 0xa62b, 1}, + {0xa640, 0xa65f, 1}, + {0xa662, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa700, 0xa78c, 1}, + {0xa7fb, 0xa82b, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xaa00, 161}, + {0xaa01, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa5f, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010900, 0x00010919, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3518 bytes (3 KiB) +var assigned5_2_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0525, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x061f, 1}, + {0x0621, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0900, 0x0939, 1}, + {0x093c, 0x094e, 1}, + {0x0950, 0x0955, 1}, + {0x0958, 0x0972, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fd8, 1}, + {0x1000, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1c00, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cd0, 0x1cf2, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfd, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b8, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23e8, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26cd, 1}, + {0x26cf, 0x26e1, 1}, + {0x26e3, 0x26e8, 5}, + {0x26e9, 0x26ff, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27cc, 0x27d0, 4}, + {0x27d1, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf1, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e31, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa65f, 1}, + {0xa662, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa6a0, 0xa6f7, 1}, + {0xa700, 0xa78c, 1}, + {0xa7fb, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaadf, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011080, 0x000110c1, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f131, 0x0001f13d, 12}, + {0x0001f13f, 0x0001f142, 3}, + {0x0001f146, 0x0001f14a, 4}, + {0x0001f14b, 0x0001f14e, 1}, + {0x0001f157, 0x0001f15f, 8}, + {0x0001f179, 0x0001f17b, 2}, + {0x0001f17c, 0x0001f17f, 3}, + {0x0001f18a, 0x0001f18d, 1}, + {0x0001f190, 0x0001f200, 112}, + {0x0001f210, 0x0001f231, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3026 bytes (2 KiB) +var assigned5_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x036f, 1}, + {0x0374, 0x0375, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x03ce, 1}, + {0x03d0, 0x0486, 1}, + {0x0488, 0x0513, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x060b, 0x0615, 1}, + {0x061b, 0x061e, 3}, + {0x061f, 0x0621, 2}, + {0x0622, 0x063a, 1}, + {0x0640, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x076d, 1}, + {0x0780, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0970, 1}, + {0x097b, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a59, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a74, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b43, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b61, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd7, 0x0be6, 15}, + {0x0be7, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3e, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c60, 0x0c61, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3e, 0x0d43, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d66, 5}, + {0x0d67, 0x0d6f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6a, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fcf, 0x0fd1, 1}, + {0x1000, 0x1021, 1}, + {0x1023, 0x1027, 1}, + {0x1029, 0x102a, 1}, + {0x102c, 0x1032, 1}, + {0x1036, 0x1039, 1}, + {0x1040, 0x1059, 1}, + {0x10a0, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18a9, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1d00, 0x1dca, 1}, + {0x1dfe, 0x1e9b, 1}, + {0x1ea0, 0x1ef9, 1}, + {0x1f00, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2063, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20ef, 1}, + {0x2100, 0x214e, 1}, + {0x2153, 0x2184, 1}, + {0x2190, 0x23e7, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269c, 1}, + {0x26a0, 0x26b2, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27d0, 0x27eb, 1}, + {0x27f0, 0x2b1a, 1}, + {0x2b20, 0x2b23, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2c6c, 1}, + {0x2c74, 0x2c77, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2e00, 0x2e17, 1}, + {0x2e1c, 0x2e1d, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312c, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31cf, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fbb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa700, 0xa71a, 1}, + {0xa720, 0xa721, 1}, + {0xa800, 0xa82b, 1}, + {0xa840, 0xa877, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe23, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010900, 0x00010919, 1}, + {0x0001091f, 0x00010a00, 225}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d12a, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20b9, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_2_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20ba, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_3_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20ba, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3812 bytes (3 KiB) +var assigned6_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0900, 162}, + {0x0901, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1bc0, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cd0, 0x1cf2, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20b9, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x27ca, 1}, + {0x27cc, 0x27ce, 2}, + {0x27cf, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf1, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e31, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa6a0, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa791, 1}, + {0xa7a0, 0xa7a9, 1}, + {0xa7fa, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaadf, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f169, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f5ff, 1}, + {0x0001f601, 0x0001f610, 1}, + {0x0001f612, 0x0001f614, 1}, + {0x0001f616, 0x0001f61c, 2}, + {0x0001f61d, 0x0001f61e, 1}, + {0x0001f620, 0x0001f625, 1}, + {0x0001f628, 0x0001f62b, 1}, + {0x0001f62d, 0x0001f630, 3}, + {0x0001f631, 0x0001f633, 1}, + {0x0001f635, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4898 bytes (4 KiB) +var assigned7_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b2, 1}, + {0x08e4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c81, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bd, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23fa, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e42, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa69d, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa7ad, 1}, + {0xa7b0, 0xa7b1, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab5f, 1}, + {0xab64, 0xab65, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe2d, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018c, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111cd, 0x000111d0, 3}, + {0x000111d1, 0x000111da, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123d, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011301, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011357, 0x0001135d, 6}, + {0x0001135e, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115c9, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00012000, 0x00012398, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f32c, 1}, + {0x0001f330, 0x0001f37d, 1}, + {0x0001f380, 0x0001f3ce, 1}, + {0x0001f3d4, 0x0001f3f7, 1}, + {0x0001f400, 0x0001f4fe, 1}, + {0x0001f500, 0x0001f54a, 1}, + {0x0001f550, 0x0001f579, 1}, + {0x0001f57b, 0x0001f5a3, 1}, + {0x0001f5a5, 0x0001f642, 1}, + {0x0001f645, 0x0001f6cf, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f3, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5048 bytes (4 KiB) +var assigned8_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b4, 1}, + {0x08e3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0b01, 8}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c81, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d5f, 8}, + {0x0d60, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20be, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x23fa, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e42, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fd5, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ad, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018c, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123d, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f579, 1}, + {0x0001f57b, 0x0001f5a3, 1}, + {0x0001f5a5, 0x0001f6d0, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f3, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f910, 0x0001f918, 1}, + {0x0001f980, 0x0001f984, 1}, + {0x0001f9c0, 0x00020000, 1600}, + {0x00020001, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5348 bytes (5 KiB) +var assigned9_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0b01, 8}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20be, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x23fe, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e44, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fd5, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ae, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00017000, 32}, + {0x00017001, 0x000187ec, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f6d2, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f6, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f910, 0x0001f91e, 1}, + {0x0001f920, 0x0001f927, 1}, + {0x0001f930, 0x0001f933, 3}, + {0x0001f934, 0x0001f93e, 1}, + {0x0001f940, 0x0001f94b, 1}, + {0x0001f950, 0x0001f95e, 1}, + {0x0001f980, 0x0001f991, 1}, + {0x0001f9c0, 0x00020000, 1600}, + {0x00020001, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5492 bytes (5 KiB) +var assigned10_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0860, 2}, + {0x0861, 0x086a, 1}, + {0x08a0, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fd, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0aff, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d00, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf9, 1}, + {0x1d00, 0x1df9, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bf, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd2, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e49, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312e, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fea, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ae, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x0001032d, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011a00, 257}, + {0x00011a01, 0x00011a47, 1}, + {0x00011a50, 0x00011a83, 1}, + {0x00011a86, 0x00011a9c, 1}, + {0x00011a9e, 0x00011aa2, 1}, + {0x00011ac0, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00011d00, 0x00011d06, 1}, + {0x00011d08, 0x00011d09, 1}, + {0x00011d0b, 0x00011d36, 1}, + {0x00011d3a, 0x00011d3c, 2}, + {0x00011d3d, 0x00011d3f, 2}, + {0x00011d40, 0x00011d47, 1}, + {0x00011d50, 0x00011d59, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00016fe1, 1}, + {0x00017000, 0x000187ec, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b11e, 1}, + {0x0001b170, 0x0001b2fb, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f260, 0x0001f265, 1}, + {0x0001f300, 0x0001f6d4, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f8, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f900, 0x0001f90b, 1}, + {0x0001f910, 0x0001f93e, 1}, + {0x0001f940, 0x0001f94c, 1}, + {0x0001f950, 0x0001f96b, 1}, + {0x0001f980, 0x0001f997, 1}, + {0x0001f9c0, 0x0001f9d0, 16}, + {0x0001f9d1, 0x0001f9e6, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002ceb0, 0x0002ebe0, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5654 bytes (5 KiB) +var assigned11_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05ef, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x07fd, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0860, 2}, + {0x0861, 0x086a, 1}, + {0x08a0, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fe, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a76, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0aff, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d00, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1878, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1c90, 0x1cba, 1}, + {0x1cbd, 0x1cc7, 1}, + {0x1cd0, 0x1cf9, 1}, + {0x1d00, 0x1df9, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bf, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bc8, 1}, + {0x2bca, 0x2bfe, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e4e, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312f, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fef, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7b9, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x0001032d, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a35, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a48, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010d27, 1}, + {0x00010d30, 0x00010d39, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00010f00, 0x00010f27, 1}, + {0x00010f30, 0x00010f59, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110cd, 0x000110d0, 3}, + {0x000110d1, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011146, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133b, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x0001145e, 0x00011480, 34}, + {0x00011481, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x0001171a, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x00011800, 0x0001183b, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011a00, 257}, + {0x00011a01, 0x00011a47, 1}, + {0x00011a50, 0x00011a83, 1}, + {0x00011a86, 0x00011aa2, 1}, + {0x00011ac0, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00011d00, 0x00011d06, 1}, + {0x00011d08, 0x00011d09, 1}, + {0x00011d0b, 0x00011d36, 1}, + {0x00011d3a, 0x00011d3c, 2}, + {0x00011d3d, 0x00011d3f, 2}, + {0x00011d40, 0x00011d47, 1}, + {0x00011d50, 0x00011d59, 1}, + {0x00011d60, 0x00011d65, 1}, + {0x00011d67, 0x00011d68, 1}, + {0x00011d6a, 0x00011d8e, 1}, + {0x00011d90, 0x00011d91, 1}, + {0x00011d93, 0x00011d98, 1}, + {0x00011da0, 0x00011da9, 1}, + {0x00011ee0, 0x00011ef8, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016e40, 0x00016e9a, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00016fe1, 1}, + {0x00017000, 0x000187f1, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b11e, 1}, + {0x0001b170, 0x0001b2fb, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d2e0, 0x0001d2f3, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d378, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ec71, 0x0001ecb4, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f260, 0x0001f265, 1}, + {0x0001f300, 0x0001f6d4, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f9, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d8, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f900, 0x0001f90b, 1}, + {0x0001f910, 0x0001f93e, 1}, + {0x0001f940, 0x0001f970, 1}, + {0x0001f973, 0x0001f976, 1}, + {0x0001f97a, 0x0001f97c, 2}, + {0x0001f97d, 0x0001f9a2, 1}, + {0x0001f9b0, 0x0001f9b9, 1}, + {0x0001f9c0, 0x0001f9c2, 1}, + {0x0001f9d0, 0x0001f9ff, 1}, + {0x0001fa60, 0x0001fa6d, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002ceb0, 0x0002ebe0, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5822 bytes (5 KiB) +var assigned12_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05ef, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x07fd, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0860, 2}, + {0x0861, 0x086a, 1}, + {0x08a0, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fe, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a76, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0aff, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c77, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d00, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e86, 2}, + {0x0e87, 0x0e8a, 1}, + {0x0e8c, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0ea8, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1878, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1c90, 0x1cba, 1}, + {0x1cbd, 0x1cc7, 1}, + {0x1cd0, 0x1cfa, 1}, + {0x1d00, 0x1df9, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bf, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e4f, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312f, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fef, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7bf, 1}, + {0xa7c2, 0xa7c6, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab67, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x0001032d, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a35, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a48, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010d27, 1}, + {0x00010d30, 0x00010d39, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00010f00, 0x00010f27, 1}, + {0x00010f30, 0x00010f59, 1}, + {0x00010fe0, 0x00010ff6, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110cd, 0x000110d0, 3}, + {0x000110d1, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011146, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133b, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x0001145e, 0x0001145f, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b8, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x0001171a, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x00011800, 0x0001183b, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x000119a0, 161}, + {0x000119a1, 0x000119a7, 1}, + {0x000119aa, 0x000119d7, 1}, + {0x000119da, 0x000119e4, 1}, + {0x00011a00, 0x00011a47, 1}, + {0x00011a50, 0x00011aa2, 1}, + {0x00011ac0, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00011d00, 0x00011d06, 1}, + {0x00011d08, 0x00011d09, 1}, + {0x00011d0b, 0x00011d36, 1}, + {0x00011d3a, 0x00011d3c, 2}, + {0x00011d3d, 0x00011d3f, 2}, + {0x00011d40, 0x00011d47, 1}, + {0x00011d50, 0x00011d59, 1}, + {0x00011d60, 0x00011d65, 1}, + {0x00011d67, 0x00011d68, 1}, + {0x00011d6a, 0x00011d8e, 1}, + {0x00011d90, 0x00011d91, 1}, + {0x00011d93, 0x00011d98, 1}, + {0x00011da0, 0x00011da9, 1}, + {0x00011ee0, 0x00011ef8, 1}, + {0x00011fc0, 0x00011ff1, 1}, + {0x00011fff, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00013430, 0x00013438, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016e40, 0x00016e9a, 1}, + {0x00016f00, 0x00016f4a, 1}, + {0x00016f4f, 0x00016f87, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00016fe3, 1}, + {0x00017000, 0x000187f7, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b11e, 1}, + {0x0001b150, 0x0001b152, 1}, + {0x0001b164, 0x0001b167, 1}, + {0x0001b170, 0x0001b2fb, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d2e0, 0x0001d2f3, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d378, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e100, 0x0001e12c, 1}, + {0x0001e130, 0x0001e13d, 1}, + {0x0001e140, 0x0001e149, 1}, + {0x0001e14e, 0x0001e14f, 1}, + {0x0001e2c0, 0x0001e2f9, 1}, + {0x0001e2ff, 0x0001e800, 1281}, + {0x0001e801, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94b, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ec71, 0x0001ecb4, 1}, + {0x0001ed01, 0x0001ed3d, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f16c, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f260, 0x0001f265, 1}, + {0x0001f300, 0x0001f6d5, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6fa, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d8, 1}, + {0x0001f7e0, 0x0001f7eb, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f900, 0x0001f90b, 1}, + {0x0001f90d, 0x0001f971, 1}, + {0x0001f973, 0x0001f976, 1}, + {0x0001f97a, 0x0001f9a2, 1}, + {0x0001f9a5, 0x0001f9aa, 1}, + {0x0001f9ae, 0x0001f9ca, 1}, + {0x0001f9cd, 0x0001fa53, 1}, + {0x0001fa60, 0x0001fa6d, 1}, + {0x0001fa70, 0x0001fa73, 1}, + {0x0001fa78, 0x0001fa7a, 1}, + {0x0001fa80, 0x0001fa82, 1}, + {0x0001fa90, 0x0001fa95, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002ceb0, 0x0002ebe0, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// Total size 61174 bytes (59 KiB) diff --git a/vendor/golang.org/x/text/unicode/rangetable/tables13.0.0.go b/vendor/golang.org/x/text/unicode/rangetable/tables13.0.0.go new file mode 100644 index 000000000..3dcaad44e --- /dev/null +++ b/vendor/golang.org/x/text/unicode/rangetable/tables13.0.0.go @@ -0,0 +1,8364 @@ +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. + +//go:build go1.16 +// +build go1.16 + +package rangetable + +//go:generate go run gen.go --versions=4.1.0,5.1.0,5.2.0,5.0.0,6.1.0,6.2.0,6.3.0,6.0.0,7.0.0,8.0.0,9.0.0,10.0.0,11.0.0,12.0.0,13.0.0 + +import "unicode" + +var assigned = map[string]*unicode.RangeTable{ + "4.1.0": assigned4_1_0, + "5.1.0": assigned5_1_0, + "5.2.0": assigned5_2_0, + "5.0.0": assigned5_0_0, + "6.1.0": assigned6_1_0, + "6.2.0": assigned6_2_0, + "6.3.0": assigned6_3_0, + "6.0.0": assigned6_0_0, + "7.0.0": assigned7_0_0, + "8.0.0": assigned8_0_0, + "9.0.0": assigned9_0_0, + "10.0.0": assigned10_0_0, + "11.0.0": assigned11_0_0, + "12.0.0": assigned12_0_0, + "13.0.0": assigned13_0_0, +} + +// size 2924 bytes (2 KiB) +var assigned4_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0241, 1}, + {0x0250, 0x036f, 1}, + {0x0374, 0x0375, 1}, + {0x037a, 0x037e, 4}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x03ce, 1}, + {0x03d0, 0x0486, 1}, + {0x0488, 0x04ce, 1}, + {0x04d0, 0x04f9, 1}, + {0x0500, 0x050f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05b9, 1}, + {0x05bb, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x060b, 0x0615, 1}, + {0x061b, 0x061e, 3}, + {0x061f, 0x0621, 2}, + {0x0622, 0x063a, 1}, + {0x0640, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x076d, 1}, + {0x0780, 0x07b1, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0970, 1}, + {0x097d, 0x0981, 4}, + {0x0982, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a59, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a74, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b43, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b61, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd7, 0x0be6, 15}, + {0x0be7, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3e, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c60, 0x0c61, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce6, 5}, + {0x0ce7, 0x0cef, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3e, 0x0d43, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d66, 5}, + {0x0d67, 0x0d6f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6a, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fcf, 0x0fd1, 1}, + {0x1000, 0x1021, 1}, + {0x1023, 0x1027, 1}, + {0x1029, 0x102a, 1}, + {0x102c, 0x1032, 1}, + {0x1036, 0x1039, 1}, + {0x1040, 0x1059, 1}, + {0x10a0, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18a9, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1d00, 0x1dc3, 1}, + {0x1e00, 0x1e9b, 1}, + {0x1ea0, 0x1ef9, 1}, + {0x1f00, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2063, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20eb, 1}, + {0x2100, 0x214c, 1}, + {0x2153, 0x2183, 1}, + {0x2190, 0x23db, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269c, 1}, + {0x26a0, 0x26b1, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27c6, 1}, + {0x27d0, 0x27eb, 1}, + {0x27f0, 0x2b13, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2e00, 0x2e17, 1}, + {0x2e1c, 0x2e1d, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312c, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31cf, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fbb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa700, 0xa716, 1}, + {0xa800, 0xa82b, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe23, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d12a, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7c9, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3152 bytes (3 KiB) +var assigned5_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0523, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x061f, 1}, + {0x0621, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0972, 1}, + {0x097b, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fd4, 1}, + {0x1000, 0x1099, 1}, + {0x109e, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1c00, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfe, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x214f, 1}, + {0x2153, 0x2188, 1}, + {0x2190, 0x23e7, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269d, 1}, + {0x26a0, 0x26bc, 1}, + {0x26c0, 0x26c3, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27cc, 0x27d0, 4}, + {0x27d1, 0x2b4c, 1}, + {0x2b50, 0x2b54, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2c6f, 1}, + {0x2c71, 0x2c7d, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e30, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fc3, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa500, 0xa62b, 1}, + {0xa640, 0xa65f, 1}, + {0xa662, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa700, 0xa78c, 1}, + {0xa7fb, 0xa82b, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xaa00, 161}, + {0xaa01, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa5f, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010900, 0x00010919, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3518 bytes (3 KiB) +var assigned5_2_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0525, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x061f, 1}, + {0x0621, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0900, 0x0939, 1}, + {0x093c, 0x094e, 1}, + {0x0950, 0x0955, 1}, + {0x0958, 0x0972, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fd8, 1}, + {0x1000, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1c00, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cd0, 0x1cf2, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfd, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b8, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23e8, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26cd, 1}, + {0x26cf, 0x26e1, 1}, + {0x26e3, 0x26e8, 5}, + {0x26e9, 0x26ff, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27cc, 0x27d0, 4}, + {0x27d1, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf1, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e31, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa65f, 1}, + {0xa662, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa6a0, 0xa6f7, 1}, + {0xa700, 0xa78c, 1}, + {0xa7fb, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaadf, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011080, 0x000110c1, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f131, 0x0001f13d, 12}, + {0x0001f13f, 0x0001f142, 3}, + {0x0001f146, 0x0001f14a, 4}, + {0x0001f14b, 0x0001f14e, 1}, + {0x0001f157, 0x0001f15f, 8}, + {0x0001f179, 0x0001f17b, 2}, + {0x0001f17c, 0x0001f17f, 3}, + {0x0001f18a, 0x0001f18d, 1}, + {0x0001f190, 0x0001f200, 112}, + {0x0001f210, 0x0001f231, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3026 bytes (2 KiB) +var assigned5_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x036f, 1}, + {0x0374, 0x0375, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x03ce, 1}, + {0x03d0, 0x0486, 1}, + {0x0488, 0x0513, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x060b, 0x0615, 1}, + {0x061b, 0x061e, 3}, + {0x061f, 0x0621, 2}, + {0x0622, 0x063a, 1}, + {0x0640, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x076d, 1}, + {0x0780, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0970, 1}, + {0x097b, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a59, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a74, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b43, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b61, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd7, 0x0be6, 15}, + {0x0be7, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3e, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c60, 0x0c61, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3e, 0x0d43, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d66, 5}, + {0x0d67, 0x0d6f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6a, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fcf, 0x0fd1, 1}, + {0x1000, 0x1021, 1}, + {0x1023, 0x1027, 1}, + {0x1029, 0x102a, 1}, + {0x102c, 0x1032, 1}, + {0x1036, 0x1039, 1}, + {0x1040, 0x1059, 1}, + {0x10a0, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18a9, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1d00, 0x1dca, 1}, + {0x1dfe, 0x1e9b, 1}, + {0x1ea0, 0x1ef9, 1}, + {0x1f00, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2063, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20ef, 1}, + {0x2100, 0x214e, 1}, + {0x2153, 0x2184, 1}, + {0x2190, 0x23e7, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269c, 1}, + {0x26a0, 0x26b2, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27d0, 0x27eb, 1}, + {0x27f0, 0x2b1a, 1}, + {0x2b20, 0x2b23, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2c6c, 1}, + {0x2c74, 0x2c77, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2e00, 0x2e17, 1}, + {0x2e1c, 0x2e1d, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312c, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31cf, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fbb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa700, 0xa71a, 1}, + {0xa720, 0xa721, 1}, + {0xa800, 0xa82b, 1}, + {0xa840, 0xa877, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe23, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010900, 0x00010919, 1}, + {0x0001091f, 0x00010a00, 225}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d12a, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20b9, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_2_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20ba, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_3_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20ba, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3812 bytes (3 KiB) +var assigned6_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0900, 162}, + {0x0901, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1bc0, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cd0, 0x1cf2, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20b9, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x27ca, 1}, + {0x27cc, 0x27ce, 2}, + {0x27cf, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf1, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e31, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa6a0, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa791, 1}, + {0xa7a0, 0xa7a9, 1}, + {0xa7fa, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaadf, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f169, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f5ff, 1}, + {0x0001f601, 0x0001f610, 1}, + {0x0001f612, 0x0001f614, 1}, + {0x0001f616, 0x0001f61c, 2}, + {0x0001f61d, 0x0001f61e, 1}, + {0x0001f620, 0x0001f625, 1}, + {0x0001f628, 0x0001f62b, 1}, + {0x0001f62d, 0x0001f630, 3}, + {0x0001f631, 0x0001f633, 1}, + {0x0001f635, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4898 bytes (4 KiB) +var assigned7_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b2, 1}, + {0x08e4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c81, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bd, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23fa, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e42, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa69d, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa7ad, 1}, + {0xa7b0, 0xa7b1, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab5f, 1}, + {0xab64, 0xab65, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe2d, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018c, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111cd, 0x000111d0, 3}, + {0x000111d1, 0x000111da, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123d, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011301, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011357, 0x0001135d, 6}, + {0x0001135e, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115c9, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00012000, 0x00012398, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f32c, 1}, + {0x0001f330, 0x0001f37d, 1}, + {0x0001f380, 0x0001f3ce, 1}, + {0x0001f3d4, 0x0001f3f7, 1}, + {0x0001f400, 0x0001f4fe, 1}, + {0x0001f500, 0x0001f54a, 1}, + {0x0001f550, 0x0001f579, 1}, + {0x0001f57b, 0x0001f5a3, 1}, + {0x0001f5a5, 0x0001f642, 1}, + {0x0001f645, 0x0001f6cf, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f3, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5048 bytes (4 KiB) +var assigned8_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b4, 1}, + {0x08e3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0b01, 8}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c81, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d5f, 8}, + {0x0d60, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20be, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x23fa, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e42, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fd5, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ad, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018c, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123d, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f579, 1}, + {0x0001f57b, 0x0001f5a3, 1}, + {0x0001f5a5, 0x0001f6d0, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f3, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f910, 0x0001f918, 1}, + {0x0001f980, 0x0001f984, 1}, + {0x0001f9c0, 0x00020000, 1600}, + {0x00020001, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5348 bytes (5 KiB) +var assigned9_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0b01, 8}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20be, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x23fe, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e44, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fd5, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ae, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00017000, 32}, + {0x00017001, 0x000187ec, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f6d2, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f6, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f910, 0x0001f91e, 1}, + {0x0001f920, 0x0001f927, 1}, + {0x0001f930, 0x0001f933, 3}, + {0x0001f934, 0x0001f93e, 1}, + {0x0001f940, 0x0001f94b, 1}, + {0x0001f950, 0x0001f95e, 1}, + {0x0001f980, 0x0001f991, 1}, + {0x0001f9c0, 0x00020000, 1600}, + {0x00020001, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5492 bytes (5 KiB) +var assigned10_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0860, 2}, + {0x0861, 0x086a, 1}, + {0x08a0, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fd, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0aff, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d00, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf9, 1}, + {0x1d00, 0x1df9, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bf, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd2, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e49, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312e, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fea, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ae, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x0001032d, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011a00, 257}, + {0x00011a01, 0x00011a47, 1}, + {0x00011a50, 0x00011a83, 1}, + {0x00011a86, 0x00011a9c, 1}, + {0x00011a9e, 0x00011aa2, 1}, + {0x00011ac0, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00011d00, 0x00011d06, 1}, + {0x00011d08, 0x00011d09, 1}, + {0x00011d0b, 0x00011d36, 1}, + {0x00011d3a, 0x00011d3c, 2}, + {0x00011d3d, 0x00011d3f, 2}, + {0x00011d40, 0x00011d47, 1}, + {0x00011d50, 0x00011d59, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00016fe1, 1}, + {0x00017000, 0x000187ec, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b11e, 1}, + {0x0001b170, 0x0001b2fb, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f260, 0x0001f265, 1}, + {0x0001f300, 0x0001f6d4, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f8, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f900, 0x0001f90b, 1}, + {0x0001f910, 0x0001f93e, 1}, + {0x0001f940, 0x0001f94c, 1}, + {0x0001f950, 0x0001f96b, 1}, + {0x0001f980, 0x0001f997, 1}, + {0x0001f9c0, 0x0001f9d0, 16}, + {0x0001f9d1, 0x0001f9e6, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002ceb0, 0x0002ebe0, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5654 bytes (5 KiB) +var assigned11_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05ef, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x07fd, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0860, 2}, + {0x0861, 0x086a, 1}, + {0x08a0, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fe, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a76, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0aff, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d00, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1878, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1c90, 0x1cba, 1}, + {0x1cbd, 0x1cc7, 1}, + {0x1cd0, 0x1cf9, 1}, + {0x1d00, 0x1df9, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bf, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bc8, 1}, + {0x2bca, 0x2bfe, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e4e, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312f, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fef, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7b9, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x0001032d, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a35, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a48, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010d27, 1}, + {0x00010d30, 0x00010d39, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00010f00, 0x00010f27, 1}, + {0x00010f30, 0x00010f59, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110cd, 0x000110d0, 3}, + {0x000110d1, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011146, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133b, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x0001145e, 0x00011480, 34}, + {0x00011481, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x0001171a, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x00011800, 0x0001183b, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011a00, 257}, + {0x00011a01, 0x00011a47, 1}, + {0x00011a50, 0x00011a83, 1}, + {0x00011a86, 0x00011aa2, 1}, + {0x00011ac0, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00011d00, 0x00011d06, 1}, + {0x00011d08, 0x00011d09, 1}, + {0x00011d0b, 0x00011d36, 1}, + {0x00011d3a, 0x00011d3c, 2}, + {0x00011d3d, 0x00011d3f, 2}, + {0x00011d40, 0x00011d47, 1}, + {0x00011d50, 0x00011d59, 1}, + {0x00011d60, 0x00011d65, 1}, + {0x00011d67, 0x00011d68, 1}, + {0x00011d6a, 0x00011d8e, 1}, + {0x00011d90, 0x00011d91, 1}, + {0x00011d93, 0x00011d98, 1}, + {0x00011da0, 0x00011da9, 1}, + {0x00011ee0, 0x00011ef8, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016e40, 0x00016e9a, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00016fe1, 1}, + {0x00017000, 0x000187f1, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b11e, 1}, + {0x0001b170, 0x0001b2fb, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d2e0, 0x0001d2f3, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d378, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ec71, 0x0001ecb4, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f260, 0x0001f265, 1}, + {0x0001f300, 0x0001f6d4, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f9, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d8, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f900, 0x0001f90b, 1}, + {0x0001f910, 0x0001f93e, 1}, + {0x0001f940, 0x0001f970, 1}, + {0x0001f973, 0x0001f976, 1}, + {0x0001f97a, 0x0001f97c, 2}, + {0x0001f97d, 0x0001f9a2, 1}, + {0x0001f9b0, 0x0001f9b9, 1}, + {0x0001f9c0, 0x0001f9c2, 1}, + {0x0001f9d0, 0x0001f9ff, 1}, + {0x0001fa60, 0x0001fa6d, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002ceb0, 0x0002ebe0, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5822 bytes (5 KiB) +var assigned12_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05ef, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x07fd, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0860, 2}, + {0x0861, 0x086a, 1}, + {0x08a0, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fe, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a76, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0aff, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c77, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d00, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e86, 2}, + {0x0e87, 0x0e8a, 1}, + {0x0e8c, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0ea8, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1878, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1c90, 0x1cba, 1}, + {0x1cbd, 0x1cc7, 1}, + {0x1cd0, 0x1cfa, 1}, + {0x1d00, 0x1df9, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bf, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e4f, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312f, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fef, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7bf, 1}, + {0xa7c2, 0xa7c6, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab67, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x0001032d, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a35, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a48, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010d27, 1}, + {0x00010d30, 0x00010d39, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00010f00, 0x00010f27, 1}, + {0x00010f30, 0x00010f59, 1}, + {0x00010fe0, 0x00010ff6, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110cd, 0x000110d0, 3}, + {0x000110d1, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011146, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133b, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x0001145e, 0x0001145f, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b8, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x0001171a, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x00011800, 0x0001183b, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x000119a0, 161}, + {0x000119a1, 0x000119a7, 1}, + {0x000119aa, 0x000119d7, 1}, + {0x000119da, 0x000119e4, 1}, + {0x00011a00, 0x00011a47, 1}, + {0x00011a50, 0x00011aa2, 1}, + {0x00011ac0, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00011d00, 0x00011d06, 1}, + {0x00011d08, 0x00011d09, 1}, + {0x00011d0b, 0x00011d36, 1}, + {0x00011d3a, 0x00011d3c, 2}, + {0x00011d3d, 0x00011d3f, 2}, + {0x00011d40, 0x00011d47, 1}, + {0x00011d50, 0x00011d59, 1}, + {0x00011d60, 0x00011d65, 1}, + {0x00011d67, 0x00011d68, 1}, + {0x00011d6a, 0x00011d8e, 1}, + {0x00011d90, 0x00011d91, 1}, + {0x00011d93, 0x00011d98, 1}, + {0x00011da0, 0x00011da9, 1}, + {0x00011ee0, 0x00011ef8, 1}, + {0x00011fc0, 0x00011ff1, 1}, + {0x00011fff, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00013430, 0x00013438, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016e40, 0x00016e9a, 1}, + {0x00016f00, 0x00016f4a, 1}, + {0x00016f4f, 0x00016f87, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00016fe3, 1}, + {0x00017000, 0x000187f7, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b11e, 1}, + {0x0001b150, 0x0001b152, 1}, + {0x0001b164, 0x0001b167, 1}, + {0x0001b170, 0x0001b2fb, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d2e0, 0x0001d2f3, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d378, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e100, 0x0001e12c, 1}, + {0x0001e130, 0x0001e13d, 1}, + {0x0001e140, 0x0001e149, 1}, + {0x0001e14e, 0x0001e14f, 1}, + {0x0001e2c0, 0x0001e2f9, 1}, + {0x0001e2ff, 0x0001e800, 1281}, + {0x0001e801, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94b, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ec71, 0x0001ecb4, 1}, + {0x0001ed01, 0x0001ed3d, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f16c, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f260, 0x0001f265, 1}, + {0x0001f300, 0x0001f6d5, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6fa, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d8, 1}, + {0x0001f7e0, 0x0001f7eb, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f900, 0x0001f90b, 1}, + {0x0001f90d, 0x0001f971, 1}, + {0x0001f973, 0x0001f976, 1}, + {0x0001f97a, 0x0001f9a2, 1}, + {0x0001f9a5, 0x0001f9aa, 1}, + {0x0001f9ae, 0x0001f9ca, 1}, + {0x0001f9cd, 0x0001fa53, 1}, + {0x0001fa60, 0x0001fa6d, 1}, + {0x0001fa70, 0x0001fa73, 1}, + {0x0001fa78, 0x0001fa7a, 1}, + {0x0001fa80, 0x0001fa82, 1}, + {0x0001fa90, 0x0001fa95, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002ceb0, 0x0002ebe0, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5966 bytes (5 KiB) +var assigned13_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05ef, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x07fd, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0860, 2}, + {0x0861, 0x086a, 1}, + {0x08a0, 0x08b4, 1}, + {0x08b6, 0x08c7, 1}, + {0x08d3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fe, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a76, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0aff, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b55, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c77, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d00, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d81, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e86, 2}, + {0x0e87, 0x0e8a, 1}, + {0x0e8c, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0ea8, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1878, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1ac0, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1c90, 0x1cba, 1}, + {0x1cbd, 0x1cc7, 1}, + {0x1cd0, 0x1cfa, 1}, + {0x1d00, 0x1df9, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bf, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b97, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e52, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312f, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x9ffc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7bf, 1}, + {0xa7c2, 0xa7ca, 1}, + {0xa7f5, 0xa82c, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab6b, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019c, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x0001032d, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a35, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a48, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010d27, 1}, + {0x00010d30, 0x00010d39, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00010e80, 0x00010ea9, 1}, + {0x00010eab, 0x00010ead, 1}, + {0x00010eb0, 0x00010eb1, 1}, + {0x00010f00, 0x00010f27, 1}, + {0x00010f30, 0x00010f59, 1}, + {0x00010fb0, 0x00010fcb, 1}, + {0x00010fe0, 0x00010ff6, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110cd, 0x000110d0, 3}, + {0x000110d1, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011147, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133b, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x0001145b, 1}, + {0x0001145d, 0x00011461, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b8, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x0001171a, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x00011800, 0x0001183b, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011906, 1}, + {0x00011909, 0x0001190c, 3}, + {0x0001190d, 0x00011913, 1}, + {0x00011915, 0x00011916, 1}, + {0x00011918, 0x00011935, 1}, + {0x00011937, 0x00011938, 1}, + {0x0001193b, 0x00011946, 1}, + {0x00011950, 0x00011959, 1}, + {0x000119a0, 0x000119a7, 1}, + {0x000119aa, 0x000119d7, 1}, + {0x000119da, 0x000119e4, 1}, + {0x00011a00, 0x00011a47, 1}, + {0x00011a50, 0x00011aa2, 1}, + {0x00011ac0, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00011d00, 0x00011d06, 1}, + {0x00011d08, 0x00011d09, 1}, + {0x00011d0b, 0x00011d36, 1}, + {0x00011d3a, 0x00011d3c, 2}, + {0x00011d3d, 0x00011d3f, 2}, + {0x00011d40, 0x00011d47, 1}, + {0x00011d50, 0x00011d59, 1}, + {0x00011d60, 0x00011d65, 1}, + {0x00011d67, 0x00011d68, 1}, + {0x00011d6a, 0x00011d8e, 1}, + {0x00011d90, 0x00011d91, 1}, + {0x00011d93, 0x00011d98, 1}, + {0x00011da0, 0x00011da9, 1}, + {0x00011ee0, 0x00011ef8, 1}, + {0x00011fb0, 0x00011fc0, 16}, + {0x00011fc1, 0x00011ff1, 1}, + {0x00011fff, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00013430, 0x00013438, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016e40, 0x00016e9a, 1}, + {0x00016f00, 0x00016f4a, 1}, + {0x00016f4f, 0x00016f87, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00016fe4, 1}, + {0x00016ff0, 0x00016ff1, 1}, + {0x00017000, 0x000187f7, 1}, + {0x00018800, 0x00018cd5, 1}, + {0x00018d00, 0x00018d08, 1}, + {0x0001b000, 0x0001b11e, 1}, + {0x0001b150, 0x0001b152, 1}, + {0x0001b164, 0x0001b167, 1}, + {0x0001b170, 0x0001b2fb, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d2e0, 0x0001d2f3, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d378, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e100, 0x0001e12c, 1}, + {0x0001e130, 0x0001e13d, 1}, + {0x0001e140, 0x0001e149, 1}, + {0x0001e14e, 0x0001e14f, 1}, + {0x0001e2c0, 0x0001e2f9, 1}, + {0x0001e2ff, 0x0001e800, 1281}, + {0x0001e801, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94b, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ec71, 0x0001ecb4, 1}, + {0x0001ed01, 0x0001ed3d, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f1ad, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f260, 0x0001f265, 1}, + {0x0001f300, 0x0001f6d7, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6fc, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d8, 1}, + {0x0001f7e0, 0x0001f7eb, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f8b0, 0x0001f8b1, 1}, + {0x0001f900, 0x0001f978, 1}, + {0x0001f97a, 0x0001f9cb, 1}, + {0x0001f9cd, 0x0001fa53, 1}, + {0x0001fa60, 0x0001fa6d, 1}, + {0x0001fa70, 0x0001fa74, 1}, + {0x0001fa78, 0x0001fa7a, 1}, + {0x0001fa80, 0x0001fa86, 1}, + {0x0001fa90, 0x0001faa8, 1}, + {0x0001fab0, 0x0001fab6, 1}, + {0x0001fac0, 0x0001fac2, 1}, + {0x0001fad0, 0x0001fad6, 1}, + {0x0001fb00, 0x0001fb92, 1}, + {0x0001fb94, 0x0001fbca, 1}, + {0x0001fbf0, 0x0001fbf9, 1}, + {0x00020000, 0x0002a6dd, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002ceb0, 0x0002ebe0, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x00030000, 0x0003134a, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// Total size 67140 bytes (65 KiB) diff --git a/vendor/golang.org/x/text/unicode/rangetable/tables9.0.0.go b/vendor/golang.org/x/text/unicode/rangetable/tables9.0.0.go new file mode 100644 index 000000000..32a7ac1ce --- /dev/null +++ b/vendor/golang.org/x/text/unicode/rangetable/tables9.0.0.go @@ -0,0 +1,5738 @@ +// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. + +//go:build !go1.10 +// +build !go1.10 + +package rangetable + +//go:generate go run gen.go --versions=4.1.0,5.1.0,5.2.0,5.0.0,6.1.0,6.2.0,6.3.0,6.0.0,7.0.0,8.0.0,9.0.0 + +import "unicode" + +var assigned = map[string]*unicode.RangeTable{ + "4.1.0": assigned4_1_0, + "5.1.0": assigned5_1_0, + "5.2.0": assigned5_2_0, + "5.0.0": assigned5_0_0, + "6.1.0": assigned6_1_0, + "6.2.0": assigned6_2_0, + "6.3.0": assigned6_3_0, + "6.0.0": assigned6_0_0, + "7.0.0": assigned7_0_0, + "8.0.0": assigned8_0_0, + "9.0.0": assigned9_0_0, +} + +// size 2924 bytes (2 KiB) +var assigned4_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0241, 1}, + {0x0250, 0x036f, 1}, + {0x0374, 0x0375, 1}, + {0x037a, 0x037e, 4}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x03ce, 1}, + {0x03d0, 0x0486, 1}, + {0x0488, 0x04ce, 1}, + {0x04d0, 0x04f9, 1}, + {0x0500, 0x050f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05b9, 1}, + {0x05bb, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x060b, 0x0615, 1}, + {0x061b, 0x061e, 3}, + {0x061f, 0x0621, 2}, + {0x0622, 0x063a, 1}, + {0x0640, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x076d, 1}, + {0x0780, 0x07b1, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0970, 1}, + {0x097d, 0x0981, 4}, + {0x0982, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a59, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a74, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b43, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b61, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd7, 0x0be6, 15}, + {0x0be7, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3e, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c60, 0x0c61, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce6, 5}, + {0x0ce7, 0x0cef, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3e, 0x0d43, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d66, 5}, + {0x0d67, 0x0d6f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6a, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fcf, 0x0fd1, 1}, + {0x1000, 0x1021, 1}, + {0x1023, 0x1027, 1}, + {0x1029, 0x102a, 1}, + {0x102c, 0x1032, 1}, + {0x1036, 0x1039, 1}, + {0x1040, 0x1059, 1}, + {0x10a0, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18a9, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1d00, 0x1dc3, 1}, + {0x1e00, 0x1e9b, 1}, + {0x1ea0, 0x1ef9, 1}, + {0x1f00, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2063, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20eb, 1}, + {0x2100, 0x214c, 1}, + {0x2153, 0x2183, 1}, + {0x2190, 0x23db, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269c, 1}, + {0x26a0, 0x26b1, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27c6, 1}, + {0x27d0, 0x27eb, 1}, + {0x27f0, 0x2b13, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2e00, 0x2e17, 1}, + {0x2e1c, 0x2e1d, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312c, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31cf, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fbb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa700, 0xa716, 1}, + {0xa800, 0xa82b, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe23, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d12a, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7c9, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3152 bytes (3 KiB) +var assigned5_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0523, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x061f, 1}, + {0x0621, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0972, 1}, + {0x097b, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fd4, 1}, + {0x1000, 0x1099, 1}, + {0x109e, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1c00, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfe, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x214f, 1}, + {0x2153, 0x2188, 1}, + {0x2190, 0x23e7, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269d, 1}, + {0x26a0, 0x26bc, 1}, + {0x26c0, 0x26c3, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27cc, 0x27d0, 4}, + {0x27d1, 0x2b4c, 1}, + {0x2b50, 0x2b54, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2c6f, 1}, + {0x2c71, 0x2c7d, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e30, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fc3, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa500, 0xa62b, 1}, + {0xa640, 0xa65f, 1}, + {0xa662, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa700, 0xa78c, 1}, + {0xa7fb, 0xa82b, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xaa00, 161}, + {0xaa01, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa5f, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010900, 0x00010919, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3518 bytes (3 KiB) +var assigned5_2_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0525, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x061f, 1}, + {0x0621, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0900, 0x0939, 1}, + {0x093c, 0x094e, 1}, + {0x0950, 0x0955, 1}, + {0x0958, 0x0972, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fd8, 1}, + {0x1000, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1c00, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cd0, 0x1cf2, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfd, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b8, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23e8, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26cd, 1}, + {0x26cf, 0x26e1, 1}, + {0x26e3, 0x26e8, 5}, + {0x26e9, 0x26ff, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27cc, 0x27d0, 4}, + {0x27d1, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf1, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e31, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa65f, 1}, + {0xa662, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa6a0, 0xa6f7, 1}, + {0xa700, 0xa78c, 1}, + {0xa7fb, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaadf, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011080, 0x000110c1, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f131, 0x0001f13d, 12}, + {0x0001f13f, 0x0001f142, 3}, + {0x0001f146, 0x0001f14a, 4}, + {0x0001f14b, 0x0001f14e, 1}, + {0x0001f157, 0x0001f15f, 8}, + {0x0001f179, 0x0001f17b, 2}, + {0x0001f17c, 0x0001f17f, 3}, + {0x0001f18a, 0x0001f18d, 1}, + {0x0001f190, 0x0001f200, 112}, + {0x0001f210, 0x0001f231, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3026 bytes (2 KiB) +var assigned5_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x036f, 1}, + {0x0374, 0x0375, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x03ce, 1}, + {0x03d0, 0x0486, 1}, + {0x0488, 0x0513, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x060b, 0x0615, 1}, + {0x061b, 0x061e, 3}, + {0x061f, 0x0621, 2}, + {0x0622, 0x063a, 1}, + {0x0640, 0x065e, 1}, + {0x0660, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x076d, 1}, + {0x0780, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0901, 0x0939, 1}, + {0x093c, 0x094d, 1}, + {0x0950, 0x0954, 1}, + {0x0958, 0x0970, 1}, + {0x097b, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fa, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a59, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a74, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b43, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b61, 1}, + {0x0b66, 0x0b71, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd7, 0x0be6, 15}, + {0x0be7, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3e, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c60, 0x0c61, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d28, 1}, + {0x0d2a, 0x0d39, 1}, + {0x0d3e, 0x0d43, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4d, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d66, 5}, + {0x0d67, 0x0d6f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6a, 1}, + {0x0f71, 0x0f8b, 1}, + {0x0f90, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fcf, 0x0fd1, 1}, + {0x1000, 0x1021, 1}, + {0x1023, 0x1027, 1}, + {0x1029, 0x102a, 1}, + {0x102c, 0x1032, 1}, + {0x1036, 0x1039, 1}, + {0x1040, 0x1059, 1}, + {0x10a0, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1159, 1}, + {0x115f, 0x11a2, 1}, + {0x11a8, 0x11f9, 1}, + {0x1200, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135f, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1401, 0x1676, 1}, + {0x1680, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18a9, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19a9, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19d9, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a1f, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1d00, 0x1dca, 1}, + {0x1dfe, 0x1e9b, 1}, + {0x1ea0, 0x1ef9, 1}, + {0x1f00, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2063, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x2094, 1}, + {0x20a0, 0x20b5, 1}, + {0x20d0, 0x20ef, 1}, + {0x2100, 0x214e, 1}, + {0x2153, 0x2184, 1}, + {0x2190, 0x23e7, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x269c, 1}, + {0x26a0, 0x26b2, 1}, + {0x2701, 0x2704, 1}, + {0x2706, 0x2709, 1}, + {0x270c, 0x2727, 1}, + {0x2729, 0x274b, 1}, + {0x274d, 0x274f, 2}, + {0x2750, 0x2752, 1}, + {0x2756, 0x2758, 2}, + {0x2759, 0x275e, 1}, + {0x2761, 0x2794, 1}, + {0x2798, 0x27af, 1}, + {0x27b1, 0x27be, 1}, + {0x27c0, 0x27ca, 1}, + {0x27d0, 0x27eb, 1}, + {0x27f0, 0x2b1a, 1}, + {0x2b20, 0x2b23, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2c6c, 1}, + {0x2c74, 0x2c77, 1}, + {0x2c80, 0x2cea, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d80, 17}, + {0x2d81, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2e00, 0x2e17, 1}, + {0x2e1c, 0x2e1d, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312c, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31b7, 1}, + {0x31c0, 0x31cf, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x3243, 1}, + {0x3250, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fbb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa700, 0xa71a, 1}, + {0xa720, 0xa721, 1}, + {0xa800, 0xa82b, 1}, + {0xa840, 0xa877, 1}, + {0xac00, 0xd7a3, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6a, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbb1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe23, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010900, 0x00010919, 1}, + {0x0001091f, 0x00010a00, 225}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d12a, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_1_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20b9, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_2_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20ba, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4160 bytes (4 KiB) +var assigned6_3_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058f, 0x0591, 2}, + {0x0592, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0604, 1}, + {0x0606, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a2, 0x08ac, 1}, + {0x08e4, 0x08fe, 1}, + {0x0900, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20ba, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e3b, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa697, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa793, 1}, + {0xa7a0, 0xa7aa, 1}, + {0xa7f8, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111d0, 0x000111d9, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f540, 0x0001f543, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 3812 bytes (3 KiB) +var assigned6_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037e, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x0527, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x0603, 1}, + {0x0606, 0x061b, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x0900, 162}, + {0x0901, 0x0977, 1}, + {0x0979, 0x097f, 1}, + {0x0981, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0aef, 1}, + {0x0af1, 0x0b01, 16}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c01, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c33, 1}, + {0x0c35, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c82, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d02, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edd, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10d0, 0x10fc, 1}, + {0x1100, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f0, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191c, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1baa, 1}, + {0x1bae, 0x1bb9, 1}, + {0x1bc0, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cd0, 0x1cf2, 1}, + {0x1d00, 0x1de6, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x206a, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20b9, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23f3, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x26ff, 1}, + {0x2701, 0x27ca, 1}, + {0x27cc, 0x27ce, 2}, + {0x27cf, 0x2b4c, 1}, + {0x2b50, 0x2b59, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf1, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d30, 0x2d65, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e31, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcb, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa673, 1}, + {0xa67c, 0xa697, 1}, + {0xa6a0, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa791, 1}, + {0xa7a0, 0xa7a9, 1}, + {0xa7fa, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9df, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaa7b, 1}, + {0xaa80, 0xaac2, 1}, + {0xaadb, 0xaadf, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa2d, 1}, + {0xfa30, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe26, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018a, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101d0, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x00010300, 0x0001031e, 1}, + {0x00010320, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001085f, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010a00, 193}, + {0x00010a01, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a7f, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b7f, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x00011080, 0x000110c1, 1}, + {0x00012000, 0x0001236e, 1}, + {0x00012400, 0x00012462, 1}, + {0x00012470, 0x00012473, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0be, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0df, 1}, + {0x0001f100, 0x0001f10a, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f169, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f320, 1}, + {0x0001f330, 0x0001f335, 1}, + {0x0001f337, 0x0001f37c, 1}, + {0x0001f380, 0x0001f393, 1}, + {0x0001f3a0, 0x0001f3c4, 1}, + {0x0001f3c6, 0x0001f3ca, 1}, + {0x0001f3e0, 0x0001f3f0, 1}, + {0x0001f400, 0x0001f43e, 1}, + {0x0001f440, 0x0001f442, 2}, + {0x0001f443, 0x0001f4f7, 1}, + {0x0001f4f9, 0x0001f4fc, 1}, + {0x0001f500, 0x0001f53d, 1}, + {0x0001f550, 0x0001f567, 1}, + {0x0001f5fb, 0x0001f5ff, 1}, + {0x0001f601, 0x0001f610, 1}, + {0x0001f612, 0x0001f614, 1}, + {0x0001f616, 0x0001f61c, 2}, + {0x0001f61d, 0x0001f61e, 1}, + {0x0001f620, 0x0001f625, 1}, + {0x0001f628, 0x0001f62b, 1}, + {0x0001f62d, 0x0001f630, 3}, + {0x0001f631, 0x0001f633, 1}, + {0x0001f635, 0x0001f640, 1}, + {0x0001f645, 0x0001f64f, 1}, + {0x0001f680, 0x0001f6c5, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 4898 bytes (4 KiB) +var assigned7_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b2, 1}, + {0x08e4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0b01, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c59, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c81, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d60, 9}, + {0x0d61, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f4, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20bd, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x2189, 1}, + {0x2190, 0x23fa, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e42, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fcc, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa69d, 1}, + {0xa69f, 0xa6f7, 1}, + {0xa700, 0xa78e, 1}, + {0xa790, 0xa7ad, 1}, + {0xa7b0, 0xa7b1, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fb, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab5f, 1}, + {0xab64, 0xab65, 1}, + {0xabc0, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe2d, 1}, + {0xfe30, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018c, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x00010900, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109be, 0x000109bf, 1}, + {0x00010a00, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111c8, 1}, + {0x000111cd, 0x000111d0, 3}, + {0x000111d1, 0x000111da, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123d, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011301, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011357, 0x0001135d, 6}, + {0x0001135e, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115c9, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00012000, 0x00012398, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1dd, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001d7ff, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f32c, 1}, + {0x0001f330, 0x0001f37d, 1}, + {0x0001f380, 0x0001f3ce, 1}, + {0x0001f3d4, 0x0001f3f7, 1}, + {0x0001f400, 0x0001f4fe, 1}, + {0x0001f500, 0x0001f54a, 1}, + {0x0001f550, 0x0001f579, 1}, + {0x0001f57b, 0x0001f5a3, 1}, + {0x0001f5a5, 0x0001f642, 1}, + {0x0001f645, 0x0001f6cf, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f3, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x00020000, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5048 bytes (4 KiB) +var assigned8_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b4, 1}, + {0x08e3, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0b01, 8}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c7f, 1}, + {0x0c81, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4e, 1}, + {0x0d57, 0x0d5f, 8}, + {0x0d60, 0x0d63, 1}, + {0x0d66, 0x0d75, 1}, + {0x0d79, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c7f, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfc, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20be, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x23fa, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e42, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fd5, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ad, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c4, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018c, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123d, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f19a, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23a, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f579, 1}, + {0x0001f57b, 0x0001f5a3, 1}, + {0x0001f5a5, 0x0001f6d0, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f3, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f910, 0x0001f918, 1}, + {0x0001f980, 0x0001f984, 1}, + {0x0001f9c0, 0x00020000, 1600}, + {0x00020001, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// size 5348 bytes (5 KiB) +var assigned9_0_0 = &unicode.RangeTable{ + R16: []unicode.Range16{ + {0x0000, 0x0377, 1}, + {0x037a, 0x037f, 1}, + {0x0384, 0x038a, 1}, + {0x038c, 0x038e, 2}, + {0x038f, 0x03a1, 1}, + {0x03a3, 0x052f, 1}, + {0x0531, 0x0556, 1}, + {0x0559, 0x055f, 1}, + {0x0561, 0x0587, 1}, + {0x0589, 0x058a, 1}, + {0x058d, 0x058f, 1}, + {0x0591, 0x05c7, 1}, + {0x05d0, 0x05ea, 1}, + {0x05f0, 0x05f4, 1}, + {0x0600, 0x061c, 1}, + {0x061e, 0x070d, 1}, + {0x070f, 0x074a, 1}, + {0x074d, 0x07b1, 1}, + {0x07c0, 0x07fa, 1}, + {0x0800, 0x082d, 1}, + {0x0830, 0x083e, 1}, + {0x0840, 0x085b, 1}, + {0x085e, 0x08a0, 66}, + {0x08a1, 0x08b4, 1}, + {0x08b6, 0x08bd, 1}, + {0x08d4, 0x0983, 1}, + {0x0985, 0x098c, 1}, + {0x098f, 0x0990, 1}, + {0x0993, 0x09a8, 1}, + {0x09aa, 0x09b0, 1}, + {0x09b2, 0x09b6, 4}, + {0x09b7, 0x09b9, 1}, + {0x09bc, 0x09c4, 1}, + {0x09c7, 0x09c8, 1}, + {0x09cb, 0x09ce, 1}, + {0x09d7, 0x09dc, 5}, + {0x09dd, 0x09df, 2}, + {0x09e0, 0x09e3, 1}, + {0x09e6, 0x09fb, 1}, + {0x0a01, 0x0a03, 1}, + {0x0a05, 0x0a0a, 1}, + {0x0a0f, 0x0a10, 1}, + {0x0a13, 0x0a28, 1}, + {0x0a2a, 0x0a30, 1}, + {0x0a32, 0x0a33, 1}, + {0x0a35, 0x0a36, 1}, + {0x0a38, 0x0a39, 1}, + {0x0a3c, 0x0a3e, 2}, + {0x0a3f, 0x0a42, 1}, + {0x0a47, 0x0a48, 1}, + {0x0a4b, 0x0a4d, 1}, + {0x0a51, 0x0a59, 8}, + {0x0a5a, 0x0a5c, 1}, + {0x0a5e, 0x0a66, 8}, + {0x0a67, 0x0a75, 1}, + {0x0a81, 0x0a83, 1}, + {0x0a85, 0x0a8d, 1}, + {0x0a8f, 0x0a91, 1}, + {0x0a93, 0x0aa8, 1}, + {0x0aaa, 0x0ab0, 1}, + {0x0ab2, 0x0ab3, 1}, + {0x0ab5, 0x0ab9, 1}, + {0x0abc, 0x0ac5, 1}, + {0x0ac7, 0x0ac9, 1}, + {0x0acb, 0x0acd, 1}, + {0x0ad0, 0x0ae0, 16}, + {0x0ae1, 0x0ae3, 1}, + {0x0ae6, 0x0af1, 1}, + {0x0af9, 0x0b01, 8}, + {0x0b02, 0x0b03, 1}, + {0x0b05, 0x0b0c, 1}, + {0x0b0f, 0x0b10, 1}, + {0x0b13, 0x0b28, 1}, + {0x0b2a, 0x0b30, 1}, + {0x0b32, 0x0b33, 1}, + {0x0b35, 0x0b39, 1}, + {0x0b3c, 0x0b44, 1}, + {0x0b47, 0x0b48, 1}, + {0x0b4b, 0x0b4d, 1}, + {0x0b56, 0x0b57, 1}, + {0x0b5c, 0x0b5d, 1}, + {0x0b5f, 0x0b63, 1}, + {0x0b66, 0x0b77, 1}, + {0x0b82, 0x0b83, 1}, + {0x0b85, 0x0b8a, 1}, + {0x0b8e, 0x0b90, 1}, + {0x0b92, 0x0b95, 1}, + {0x0b99, 0x0b9a, 1}, + {0x0b9c, 0x0b9e, 2}, + {0x0b9f, 0x0ba3, 4}, + {0x0ba4, 0x0ba8, 4}, + {0x0ba9, 0x0baa, 1}, + {0x0bae, 0x0bb9, 1}, + {0x0bbe, 0x0bc2, 1}, + {0x0bc6, 0x0bc8, 1}, + {0x0bca, 0x0bcd, 1}, + {0x0bd0, 0x0bd7, 7}, + {0x0be6, 0x0bfa, 1}, + {0x0c00, 0x0c03, 1}, + {0x0c05, 0x0c0c, 1}, + {0x0c0e, 0x0c10, 1}, + {0x0c12, 0x0c28, 1}, + {0x0c2a, 0x0c39, 1}, + {0x0c3d, 0x0c44, 1}, + {0x0c46, 0x0c48, 1}, + {0x0c4a, 0x0c4d, 1}, + {0x0c55, 0x0c56, 1}, + {0x0c58, 0x0c5a, 1}, + {0x0c60, 0x0c63, 1}, + {0x0c66, 0x0c6f, 1}, + {0x0c78, 0x0c83, 1}, + {0x0c85, 0x0c8c, 1}, + {0x0c8e, 0x0c90, 1}, + {0x0c92, 0x0ca8, 1}, + {0x0caa, 0x0cb3, 1}, + {0x0cb5, 0x0cb9, 1}, + {0x0cbc, 0x0cc4, 1}, + {0x0cc6, 0x0cc8, 1}, + {0x0cca, 0x0ccd, 1}, + {0x0cd5, 0x0cd6, 1}, + {0x0cde, 0x0ce0, 2}, + {0x0ce1, 0x0ce3, 1}, + {0x0ce6, 0x0cef, 1}, + {0x0cf1, 0x0cf2, 1}, + {0x0d01, 0x0d03, 1}, + {0x0d05, 0x0d0c, 1}, + {0x0d0e, 0x0d10, 1}, + {0x0d12, 0x0d3a, 1}, + {0x0d3d, 0x0d44, 1}, + {0x0d46, 0x0d48, 1}, + {0x0d4a, 0x0d4f, 1}, + {0x0d54, 0x0d63, 1}, + {0x0d66, 0x0d7f, 1}, + {0x0d82, 0x0d83, 1}, + {0x0d85, 0x0d96, 1}, + {0x0d9a, 0x0db1, 1}, + {0x0db3, 0x0dbb, 1}, + {0x0dbd, 0x0dc0, 3}, + {0x0dc1, 0x0dc6, 1}, + {0x0dca, 0x0dcf, 5}, + {0x0dd0, 0x0dd4, 1}, + {0x0dd6, 0x0dd8, 2}, + {0x0dd9, 0x0ddf, 1}, + {0x0de6, 0x0def, 1}, + {0x0df2, 0x0df4, 1}, + {0x0e01, 0x0e3a, 1}, + {0x0e3f, 0x0e5b, 1}, + {0x0e81, 0x0e82, 1}, + {0x0e84, 0x0e87, 3}, + {0x0e88, 0x0e8a, 2}, + {0x0e8d, 0x0e94, 7}, + {0x0e95, 0x0e97, 1}, + {0x0e99, 0x0e9f, 1}, + {0x0ea1, 0x0ea3, 1}, + {0x0ea5, 0x0ea7, 2}, + {0x0eaa, 0x0eab, 1}, + {0x0ead, 0x0eb9, 1}, + {0x0ebb, 0x0ebd, 1}, + {0x0ec0, 0x0ec4, 1}, + {0x0ec6, 0x0ec8, 2}, + {0x0ec9, 0x0ecd, 1}, + {0x0ed0, 0x0ed9, 1}, + {0x0edc, 0x0edf, 1}, + {0x0f00, 0x0f47, 1}, + {0x0f49, 0x0f6c, 1}, + {0x0f71, 0x0f97, 1}, + {0x0f99, 0x0fbc, 1}, + {0x0fbe, 0x0fcc, 1}, + {0x0fce, 0x0fda, 1}, + {0x1000, 0x10c5, 1}, + {0x10c7, 0x10cd, 6}, + {0x10d0, 0x1248, 1}, + {0x124a, 0x124d, 1}, + {0x1250, 0x1256, 1}, + {0x1258, 0x125a, 2}, + {0x125b, 0x125d, 1}, + {0x1260, 0x1288, 1}, + {0x128a, 0x128d, 1}, + {0x1290, 0x12b0, 1}, + {0x12b2, 0x12b5, 1}, + {0x12b8, 0x12be, 1}, + {0x12c0, 0x12c2, 2}, + {0x12c3, 0x12c5, 1}, + {0x12c8, 0x12d6, 1}, + {0x12d8, 0x1310, 1}, + {0x1312, 0x1315, 1}, + {0x1318, 0x135a, 1}, + {0x135d, 0x137c, 1}, + {0x1380, 0x1399, 1}, + {0x13a0, 0x13f5, 1}, + {0x13f8, 0x13fd, 1}, + {0x1400, 0x169c, 1}, + {0x16a0, 0x16f8, 1}, + {0x1700, 0x170c, 1}, + {0x170e, 0x1714, 1}, + {0x1720, 0x1736, 1}, + {0x1740, 0x1753, 1}, + {0x1760, 0x176c, 1}, + {0x176e, 0x1770, 1}, + {0x1772, 0x1773, 1}, + {0x1780, 0x17dd, 1}, + {0x17e0, 0x17e9, 1}, + {0x17f0, 0x17f9, 1}, + {0x1800, 0x180e, 1}, + {0x1810, 0x1819, 1}, + {0x1820, 0x1877, 1}, + {0x1880, 0x18aa, 1}, + {0x18b0, 0x18f5, 1}, + {0x1900, 0x191e, 1}, + {0x1920, 0x192b, 1}, + {0x1930, 0x193b, 1}, + {0x1940, 0x1944, 4}, + {0x1945, 0x196d, 1}, + {0x1970, 0x1974, 1}, + {0x1980, 0x19ab, 1}, + {0x19b0, 0x19c9, 1}, + {0x19d0, 0x19da, 1}, + {0x19de, 0x1a1b, 1}, + {0x1a1e, 0x1a5e, 1}, + {0x1a60, 0x1a7c, 1}, + {0x1a7f, 0x1a89, 1}, + {0x1a90, 0x1a99, 1}, + {0x1aa0, 0x1aad, 1}, + {0x1ab0, 0x1abe, 1}, + {0x1b00, 0x1b4b, 1}, + {0x1b50, 0x1b7c, 1}, + {0x1b80, 0x1bf3, 1}, + {0x1bfc, 0x1c37, 1}, + {0x1c3b, 0x1c49, 1}, + {0x1c4d, 0x1c88, 1}, + {0x1cc0, 0x1cc7, 1}, + {0x1cd0, 0x1cf6, 1}, + {0x1cf8, 0x1cf9, 1}, + {0x1d00, 0x1df5, 1}, + {0x1dfb, 0x1f15, 1}, + {0x1f18, 0x1f1d, 1}, + {0x1f20, 0x1f45, 1}, + {0x1f48, 0x1f4d, 1}, + {0x1f50, 0x1f57, 1}, + {0x1f59, 0x1f5f, 2}, + {0x1f60, 0x1f7d, 1}, + {0x1f80, 0x1fb4, 1}, + {0x1fb6, 0x1fc4, 1}, + {0x1fc6, 0x1fd3, 1}, + {0x1fd6, 0x1fdb, 1}, + {0x1fdd, 0x1fef, 1}, + {0x1ff2, 0x1ff4, 1}, + {0x1ff6, 0x1ffe, 1}, + {0x2000, 0x2064, 1}, + {0x2066, 0x2071, 1}, + {0x2074, 0x208e, 1}, + {0x2090, 0x209c, 1}, + {0x20a0, 0x20be, 1}, + {0x20d0, 0x20f0, 1}, + {0x2100, 0x218b, 1}, + {0x2190, 0x23fe, 1}, + {0x2400, 0x2426, 1}, + {0x2440, 0x244a, 1}, + {0x2460, 0x2b73, 1}, + {0x2b76, 0x2b95, 1}, + {0x2b98, 0x2bb9, 1}, + {0x2bbd, 0x2bc8, 1}, + {0x2bca, 0x2bd1, 1}, + {0x2bec, 0x2bef, 1}, + {0x2c00, 0x2c2e, 1}, + {0x2c30, 0x2c5e, 1}, + {0x2c60, 0x2cf3, 1}, + {0x2cf9, 0x2d25, 1}, + {0x2d27, 0x2d2d, 6}, + {0x2d30, 0x2d67, 1}, + {0x2d6f, 0x2d70, 1}, + {0x2d7f, 0x2d96, 1}, + {0x2da0, 0x2da6, 1}, + {0x2da8, 0x2dae, 1}, + {0x2db0, 0x2db6, 1}, + {0x2db8, 0x2dbe, 1}, + {0x2dc0, 0x2dc6, 1}, + {0x2dc8, 0x2dce, 1}, + {0x2dd0, 0x2dd6, 1}, + {0x2dd8, 0x2dde, 1}, + {0x2de0, 0x2e44, 1}, + {0x2e80, 0x2e99, 1}, + {0x2e9b, 0x2ef3, 1}, + {0x2f00, 0x2fd5, 1}, + {0x2ff0, 0x2ffb, 1}, + {0x3000, 0x303f, 1}, + {0x3041, 0x3096, 1}, + {0x3099, 0x30ff, 1}, + {0x3105, 0x312d, 1}, + {0x3131, 0x318e, 1}, + {0x3190, 0x31ba, 1}, + {0x31c0, 0x31e3, 1}, + {0x31f0, 0x321e, 1}, + {0x3220, 0x32fe, 1}, + {0x3300, 0x4db5, 1}, + {0x4dc0, 0x9fd5, 1}, + {0xa000, 0xa48c, 1}, + {0xa490, 0xa4c6, 1}, + {0xa4d0, 0xa62b, 1}, + {0xa640, 0xa6f7, 1}, + {0xa700, 0xa7ae, 1}, + {0xa7b0, 0xa7b7, 1}, + {0xa7f7, 0xa82b, 1}, + {0xa830, 0xa839, 1}, + {0xa840, 0xa877, 1}, + {0xa880, 0xa8c5, 1}, + {0xa8ce, 0xa8d9, 1}, + {0xa8e0, 0xa8fd, 1}, + {0xa900, 0xa953, 1}, + {0xa95f, 0xa97c, 1}, + {0xa980, 0xa9cd, 1}, + {0xa9cf, 0xa9d9, 1}, + {0xa9de, 0xa9fe, 1}, + {0xaa00, 0xaa36, 1}, + {0xaa40, 0xaa4d, 1}, + {0xaa50, 0xaa59, 1}, + {0xaa5c, 0xaac2, 1}, + {0xaadb, 0xaaf6, 1}, + {0xab01, 0xab06, 1}, + {0xab09, 0xab0e, 1}, + {0xab11, 0xab16, 1}, + {0xab20, 0xab26, 1}, + {0xab28, 0xab2e, 1}, + {0xab30, 0xab65, 1}, + {0xab70, 0xabed, 1}, + {0xabf0, 0xabf9, 1}, + {0xac00, 0xd7a3, 1}, + {0xd7b0, 0xd7c6, 1}, + {0xd7cb, 0xd7fb, 1}, + {0xd800, 0xfa6d, 1}, + {0xfa70, 0xfad9, 1}, + {0xfb00, 0xfb06, 1}, + {0xfb13, 0xfb17, 1}, + {0xfb1d, 0xfb36, 1}, + {0xfb38, 0xfb3c, 1}, + {0xfb3e, 0xfb40, 2}, + {0xfb41, 0xfb43, 2}, + {0xfb44, 0xfb46, 2}, + {0xfb47, 0xfbc1, 1}, + {0xfbd3, 0xfd3f, 1}, + {0xfd50, 0xfd8f, 1}, + {0xfd92, 0xfdc7, 1}, + {0xfdf0, 0xfdfd, 1}, + {0xfe00, 0xfe19, 1}, + {0xfe20, 0xfe52, 1}, + {0xfe54, 0xfe66, 1}, + {0xfe68, 0xfe6b, 1}, + {0xfe70, 0xfe74, 1}, + {0xfe76, 0xfefc, 1}, + {0xfeff, 0xff01, 2}, + {0xff02, 0xffbe, 1}, + {0xffc2, 0xffc7, 1}, + {0xffca, 0xffcf, 1}, + {0xffd2, 0xffd7, 1}, + {0xffda, 0xffdc, 1}, + {0xffe0, 0xffe6, 1}, + {0xffe8, 0xffee, 1}, + {0xfff9, 0xfffd, 1}, + }, + R32: []unicode.Range32{ + {0x00010000, 0x0001000b, 1}, + {0x0001000d, 0x00010026, 1}, + {0x00010028, 0x0001003a, 1}, + {0x0001003c, 0x0001003d, 1}, + {0x0001003f, 0x0001004d, 1}, + {0x00010050, 0x0001005d, 1}, + {0x00010080, 0x000100fa, 1}, + {0x00010100, 0x00010102, 1}, + {0x00010107, 0x00010133, 1}, + {0x00010137, 0x0001018e, 1}, + {0x00010190, 0x0001019b, 1}, + {0x000101a0, 0x000101d0, 48}, + {0x000101d1, 0x000101fd, 1}, + {0x00010280, 0x0001029c, 1}, + {0x000102a0, 0x000102d0, 1}, + {0x000102e0, 0x000102fb, 1}, + {0x00010300, 0x00010323, 1}, + {0x00010330, 0x0001034a, 1}, + {0x00010350, 0x0001037a, 1}, + {0x00010380, 0x0001039d, 1}, + {0x0001039f, 0x000103c3, 1}, + {0x000103c8, 0x000103d5, 1}, + {0x00010400, 0x0001049d, 1}, + {0x000104a0, 0x000104a9, 1}, + {0x000104b0, 0x000104d3, 1}, + {0x000104d8, 0x000104fb, 1}, + {0x00010500, 0x00010527, 1}, + {0x00010530, 0x00010563, 1}, + {0x0001056f, 0x00010600, 145}, + {0x00010601, 0x00010736, 1}, + {0x00010740, 0x00010755, 1}, + {0x00010760, 0x00010767, 1}, + {0x00010800, 0x00010805, 1}, + {0x00010808, 0x0001080a, 2}, + {0x0001080b, 0x00010835, 1}, + {0x00010837, 0x00010838, 1}, + {0x0001083c, 0x0001083f, 3}, + {0x00010840, 0x00010855, 1}, + {0x00010857, 0x0001089e, 1}, + {0x000108a7, 0x000108af, 1}, + {0x000108e0, 0x000108f2, 1}, + {0x000108f4, 0x000108f5, 1}, + {0x000108fb, 0x0001091b, 1}, + {0x0001091f, 0x00010939, 1}, + {0x0001093f, 0x00010980, 65}, + {0x00010981, 0x000109b7, 1}, + {0x000109bc, 0x000109cf, 1}, + {0x000109d2, 0x00010a03, 1}, + {0x00010a05, 0x00010a06, 1}, + {0x00010a0c, 0x00010a13, 1}, + {0x00010a15, 0x00010a17, 1}, + {0x00010a19, 0x00010a33, 1}, + {0x00010a38, 0x00010a3a, 1}, + {0x00010a3f, 0x00010a47, 1}, + {0x00010a50, 0x00010a58, 1}, + {0x00010a60, 0x00010a9f, 1}, + {0x00010ac0, 0x00010ae6, 1}, + {0x00010aeb, 0x00010af6, 1}, + {0x00010b00, 0x00010b35, 1}, + {0x00010b39, 0x00010b55, 1}, + {0x00010b58, 0x00010b72, 1}, + {0x00010b78, 0x00010b91, 1}, + {0x00010b99, 0x00010b9c, 1}, + {0x00010ba9, 0x00010baf, 1}, + {0x00010c00, 0x00010c48, 1}, + {0x00010c80, 0x00010cb2, 1}, + {0x00010cc0, 0x00010cf2, 1}, + {0x00010cfa, 0x00010cff, 1}, + {0x00010e60, 0x00010e7e, 1}, + {0x00011000, 0x0001104d, 1}, + {0x00011052, 0x0001106f, 1}, + {0x0001107f, 0x000110c1, 1}, + {0x000110d0, 0x000110e8, 1}, + {0x000110f0, 0x000110f9, 1}, + {0x00011100, 0x00011134, 1}, + {0x00011136, 0x00011143, 1}, + {0x00011150, 0x00011176, 1}, + {0x00011180, 0x000111cd, 1}, + {0x000111d0, 0x000111df, 1}, + {0x000111e1, 0x000111f4, 1}, + {0x00011200, 0x00011211, 1}, + {0x00011213, 0x0001123e, 1}, + {0x00011280, 0x00011286, 1}, + {0x00011288, 0x0001128a, 2}, + {0x0001128b, 0x0001128d, 1}, + {0x0001128f, 0x0001129d, 1}, + {0x0001129f, 0x000112a9, 1}, + {0x000112b0, 0x000112ea, 1}, + {0x000112f0, 0x000112f9, 1}, + {0x00011300, 0x00011303, 1}, + {0x00011305, 0x0001130c, 1}, + {0x0001130f, 0x00011310, 1}, + {0x00011313, 0x00011328, 1}, + {0x0001132a, 0x00011330, 1}, + {0x00011332, 0x00011333, 1}, + {0x00011335, 0x00011339, 1}, + {0x0001133c, 0x00011344, 1}, + {0x00011347, 0x00011348, 1}, + {0x0001134b, 0x0001134d, 1}, + {0x00011350, 0x00011357, 7}, + {0x0001135d, 0x00011363, 1}, + {0x00011366, 0x0001136c, 1}, + {0x00011370, 0x00011374, 1}, + {0x00011400, 0x00011459, 1}, + {0x0001145b, 0x0001145d, 2}, + {0x00011480, 0x000114c7, 1}, + {0x000114d0, 0x000114d9, 1}, + {0x00011580, 0x000115b5, 1}, + {0x000115b8, 0x000115dd, 1}, + {0x00011600, 0x00011644, 1}, + {0x00011650, 0x00011659, 1}, + {0x00011660, 0x0001166c, 1}, + {0x00011680, 0x000116b7, 1}, + {0x000116c0, 0x000116c9, 1}, + {0x00011700, 0x00011719, 1}, + {0x0001171d, 0x0001172b, 1}, + {0x00011730, 0x0001173f, 1}, + {0x000118a0, 0x000118f2, 1}, + {0x000118ff, 0x00011ac0, 449}, + {0x00011ac1, 0x00011af8, 1}, + {0x00011c00, 0x00011c08, 1}, + {0x00011c0a, 0x00011c36, 1}, + {0x00011c38, 0x00011c45, 1}, + {0x00011c50, 0x00011c6c, 1}, + {0x00011c70, 0x00011c8f, 1}, + {0x00011c92, 0x00011ca7, 1}, + {0x00011ca9, 0x00011cb6, 1}, + {0x00012000, 0x00012399, 1}, + {0x00012400, 0x0001246e, 1}, + {0x00012470, 0x00012474, 1}, + {0x00012480, 0x00012543, 1}, + {0x00013000, 0x0001342e, 1}, + {0x00014400, 0x00014646, 1}, + {0x00016800, 0x00016a38, 1}, + {0x00016a40, 0x00016a5e, 1}, + {0x00016a60, 0x00016a69, 1}, + {0x00016a6e, 0x00016a6f, 1}, + {0x00016ad0, 0x00016aed, 1}, + {0x00016af0, 0x00016af5, 1}, + {0x00016b00, 0x00016b45, 1}, + {0x00016b50, 0x00016b59, 1}, + {0x00016b5b, 0x00016b61, 1}, + {0x00016b63, 0x00016b77, 1}, + {0x00016b7d, 0x00016b8f, 1}, + {0x00016f00, 0x00016f44, 1}, + {0x00016f50, 0x00016f7e, 1}, + {0x00016f8f, 0x00016f9f, 1}, + {0x00016fe0, 0x00017000, 32}, + {0x00017001, 0x000187ec, 1}, + {0x00018800, 0x00018af2, 1}, + {0x0001b000, 0x0001b001, 1}, + {0x0001bc00, 0x0001bc6a, 1}, + {0x0001bc70, 0x0001bc7c, 1}, + {0x0001bc80, 0x0001bc88, 1}, + {0x0001bc90, 0x0001bc99, 1}, + {0x0001bc9c, 0x0001bca3, 1}, + {0x0001d000, 0x0001d0f5, 1}, + {0x0001d100, 0x0001d126, 1}, + {0x0001d129, 0x0001d1e8, 1}, + {0x0001d200, 0x0001d245, 1}, + {0x0001d300, 0x0001d356, 1}, + {0x0001d360, 0x0001d371, 1}, + {0x0001d400, 0x0001d454, 1}, + {0x0001d456, 0x0001d49c, 1}, + {0x0001d49e, 0x0001d49f, 1}, + {0x0001d4a2, 0x0001d4a5, 3}, + {0x0001d4a6, 0x0001d4a9, 3}, + {0x0001d4aa, 0x0001d4ac, 1}, + {0x0001d4ae, 0x0001d4b9, 1}, + {0x0001d4bb, 0x0001d4bd, 2}, + {0x0001d4be, 0x0001d4c3, 1}, + {0x0001d4c5, 0x0001d505, 1}, + {0x0001d507, 0x0001d50a, 1}, + {0x0001d50d, 0x0001d514, 1}, + {0x0001d516, 0x0001d51c, 1}, + {0x0001d51e, 0x0001d539, 1}, + {0x0001d53b, 0x0001d53e, 1}, + {0x0001d540, 0x0001d544, 1}, + {0x0001d546, 0x0001d54a, 4}, + {0x0001d54b, 0x0001d550, 1}, + {0x0001d552, 0x0001d6a5, 1}, + {0x0001d6a8, 0x0001d7cb, 1}, + {0x0001d7ce, 0x0001da8b, 1}, + {0x0001da9b, 0x0001da9f, 1}, + {0x0001daa1, 0x0001daaf, 1}, + {0x0001e000, 0x0001e006, 1}, + {0x0001e008, 0x0001e018, 1}, + {0x0001e01b, 0x0001e021, 1}, + {0x0001e023, 0x0001e024, 1}, + {0x0001e026, 0x0001e02a, 1}, + {0x0001e800, 0x0001e8c4, 1}, + {0x0001e8c7, 0x0001e8d6, 1}, + {0x0001e900, 0x0001e94a, 1}, + {0x0001e950, 0x0001e959, 1}, + {0x0001e95e, 0x0001e95f, 1}, + {0x0001ee00, 0x0001ee03, 1}, + {0x0001ee05, 0x0001ee1f, 1}, + {0x0001ee21, 0x0001ee22, 1}, + {0x0001ee24, 0x0001ee27, 3}, + {0x0001ee29, 0x0001ee32, 1}, + {0x0001ee34, 0x0001ee37, 1}, + {0x0001ee39, 0x0001ee3b, 2}, + {0x0001ee42, 0x0001ee47, 5}, + {0x0001ee49, 0x0001ee4d, 2}, + {0x0001ee4e, 0x0001ee4f, 1}, + {0x0001ee51, 0x0001ee52, 1}, + {0x0001ee54, 0x0001ee57, 3}, + {0x0001ee59, 0x0001ee61, 2}, + {0x0001ee62, 0x0001ee64, 2}, + {0x0001ee67, 0x0001ee6a, 1}, + {0x0001ee6c, 0x0001ee72, 1}, + {0x0001ee74, 0x0001ee77, 1}, + {0x0001ee79, 0x0001ee7c, 1}, + {0x0001ee7e, 0x0001ee80, 2}, + {0x0001ee81, 0x0001ee89, 1}, + {0x0001ee8b, 0x0001ee9b, 1}, + {0x0001eea1, 0x0001eea3, 1}, + {0x0001eea5, 0x0001eea9, 1}, + {0x0001eeab, 0x0001eebb, 1}, + {0x0001eef0, 0x0001eef1, 1}, + {0x0001f000, 0x0001f02b, 1}, + {0x0001f030, 0x0001f093, 1}, + {0x0001f0a0, 0x0001f0ae, 1}, + {0x0001f0b1, 0x0001f0bf, 1}, + {0x0001f0c1, 0x0001f0cf, 1}, + {0x0001f0d1, 0x0001f0f5, 1}, + {0x0001f100, 0x0001f10c, 1}, + {0x0001f110, 0x0001f12e, 1}, + {0x0001f130, 0x0001f16b, 1}, + {0x0001f170, 0x0001f1ac, 1}, + {0x0001f1e6, 0x0001f202, 1}, + {0x0001f210, 0x0001f23b, 1}, + {0x0001f240, 0x0001f248, 1}, + {0x0001f250, 0x0001f251, 1}, + {0x0001f300, 0x0001f6d2, 1}, + {0x0001f6e0, 0x0001f6ec, 1}, + {0x0001f6f0, 0x0001f6f6, 1}, + {0x0001f700, 0x0001f773, 1}, + {0x0001f780, 0x0001f7d4, 1}, + {0x0001f800, 0x0001f80b, 1}, + {0x0001f810, 0x0001f847, 1}, + {0x0001f850, 0x0001f859, 1}, + {0x0001f860, 0x0001f887, 1}, + {0x0001f890, 0x0001f8ad, 1}, + {0x0001f910, 0x0001f91e, 1}, + {0x0001f920, 0x0001f927, 1}, + {0x0001f930, 0x0001f933, 3}, + {0x0001f934, 0x0001f93e, 1}, + {0x0001f940, 0x0001f94b, 1}, + {0x0001f950, 0x0001f95e, 1}, + {0x0001f980, 0x0001f991, 1}, + {0x0001f9c0, 0x00020000, 1600}, + {0x00020001, 0x0002a6d6, 1}, + {0x0002a700, 0x0002b734, 1}, + {0x0002b740, 0x0002b81d, 1}, + {0x0002b820, 0x0002cea1, 1}, + {0x0002f800, 0x0002fa1d, 1}, + {0x000e0001, 0x000e0020, 31}, + {0x000e0021, 0x000e007f, 1}, + {0x000e0100, 0x000e01ef, 1}, + {0x000f0000, 0x000ffffd, 1}, + {0x00100000, 0x0010fffd, 1}, + }, + LatinOffset: 0, +} + +// Total size 44206 bytes (43 KiB) diff --git a/vendor/modules.txt b/vendor/modules.txt index aefc89195..bb8b90345 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1,6 +1,6 @@ # cloud.google.com/go v0.67.0 cloud.google.com/go/compute/metadata -# github.com/766b/chi-prometheus v0.0.0-20180509160047-46ac2b31aa30 +# github.com/766b/chi-prometheus v0.0.0-20211217152057-87afa9aa2ca8 ## explicit github.com/766b/chi-prometheus # github.com/99designs/basicauth-go v0.0.0-20160802081356-2a93ba0f464d @@ -77,7 +77,7 @@ github.com/disintegration/imaging # github.com/dlclark/regexp2 v1.4.1-0.20201116162257-a2a8dda75c91 github.com/dlclark/regexp2 github.com/dlclark/regexp2/syntax -# github.com/dop251/goja v0.0.0-20210726224656-a55e4cfac4cf +# github.com/dop251/goja v0.0.0-20220102113305-2298ace6d09d ## explicit github.com/dop251/goja github.com/dop251/goja/ast @@ -87,7 +87,7 @@ github.com/dop251/goja/ftoa/internal/fast github.com/dop251/goja/parser github.com/dop251/goja/token github.com/dop251/goja/unistring -# github.com/edwvee/exiffix v0.0.0-20180602190213-b57537c92a6b +# github.com/edwvee/exiffix v0.0.0-20210922235313-0f6cbda5e58f ## explicit github.com/edwvee/exiffix # github.com/evanw/esbuild v0.12.16 @@ -292,7 +292,7 @@ github.com/mitchellh/copystructure github.com/mitchellh/go-homedir # github.com/mitchellh/reflectwalk v1.0.0 github.com/mitchellh/reflectwalk -# github.com/ngrok/sqlmw v0.0.0-20200129213757-d5c93a81bec6 +# github.com/ngrok/sqlmw v0.0.0-20211220175533-9d16fdc47b31 ## explicit github.com/ngrok/sqlmw # github.com/pkg/errors v0.9.1 @@ -368,13 +368,14 @@ go.uber.org/zap/internal/color go.uber.org/zap/internal/exit go.uber.org/zap/zapcore go.uber.org/zap/zaptest/observer -# golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad +# golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3 ## explicit golang.org/x/crypto/argon2 golang.org/x/crypto/bcrypt golang.org/x/crypto/blake2b golang.org/x/crypto/blowfish golang.org/x/crypto/curve25519 +golang.org/x/crypto/curve25519/internal/field golang.org/x/crypto/ed25519 golang.org/x/crypto/ed25519/internal/edwards25519 golang.org/x/crypto/pbkdf2 @@ -387,7 +388,7 @@ golang.org/x/image/bmp golang.org/x/image/ccitt golang.org/x/image/tiff golang.org/x/image/tiff/lzw -# golang.org/x/net v0.0.0-20210614182718-04defd469f4e +# golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 golang.org/x/net/context golang.org/x/net/context/ctxhttp golang.org/x/net/html @@ -399,7 +400,7 @@ golang.org/x/net/idna golang.org/x/net/internal/timeseries golang.org/x/net/publicsuffix golang.org/x/net/trace -# golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914 +# golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8 ## explicit golang.org/x/oauth2 golang.org/x/oauth2/authhandler @@ -409,7 +410,7 @@ golang.org/x/oauth2/google/internal/externalaccount golang.org/x/oauth2/internal golang.org/x/oauth2/jws golang.org/x/oauth2/jwt -# golang.org/x/sys v0.0.0-20210423082822-04245dca01da +# golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1 golang.org/x/sys/cpu golang.org/x/sys/internal/unsafeheader golang.org/x/sys/plan9 @@ -433,6 +434,7 @@ golang.org/x/text/secure/bidirule golang.org/x/text/transform golang.org/x/text/unicode/bidi golang.org/x/text/unicode/norm +golang.org/x/text/unicode/rangetable # google.golang.org/appengine v1.6.6 google.golang.org/appengine google.golang.org/appengine/internal